diff --git a/B03_FileInput/B03_FileInput_Service_Chain.py b/B03_FileInput/B03_FileInput_Service_Chain.py index a2c96f2b..b7b69883 100644 --- a/B03_FileInput/B03_FileInput_Service_Chain.py +++ b/B03_FileInput/B03_FileInput_Service_Chain.py @@ -149,7 +149,7 @@ async def run_auto_design_chain( save_initial_snapshot, ) from common_util.common_util_storage import resolve_stored_project_path - from common_util.common_util_surface_confirmation import surface_confirmation_defaults + from common_util.common_util_surface_confirmation import get_surface_confirmation_params from config.config_db import get_db_pool pool = get_db_pool() @@ -177,8 +177,11 @@ async def run_auto_design_chain( logger.warning("자동 설계 체인 중단(계획노선 CSV 없음): project_id=%s", project_id) return None - # 3) B05 경로 계산 — WF1 자동 확정과 같은 config 기본값을 쓴다. - defaults = surface_confirmation_defaults() + # 3) B05 경로 계산 — WF1이 **실제로 확정한** 선택값(stage 1 스냅샷)을 그대로 쓴다. + # config 기본값(csf/dtm)을 쓰면 LAS 없이 설계한 프로젝트에서 있지도 않은 모델을 + # 가리켜 404로 체인이 끊긴다(2026-08-30 실사고). + async with pool.acquire() as connection: + defaults = await get_surface_confirmation_params(connection, str(project_id)) request = RouteSolveRequest( filter_key=str(defaults["source_filter"]), method=str(defaults["method"]),