eomsangdon and Claude Opus 5
9b4abecf9d
refactor(B05/B06): 유토곡선 일원화 — 보는 노선·횡단 재계산 창구·낡음 판정 통합
...
같은 데이터를 두 화면에 보여 주는 기능인데 세 곳이 갈려 값이 달랐다(실측: 절토(자연)
B06 3,704.6㎥ ↔ B05 4,526.8㎥).
① 보는 노선 — B05는 최신 경로, B06은 최신 **확정** 경로를 열어 노선을 다시 탐색한
프로젝트에서 서로 다른 노선을 봤다(route 126 DRAFT ↔ 125 CONFIRMED, 같은 20m
측점 성토 4.82㎡ ↔ 85.9㎡). `get_workflow_route_context()`(최신 경로) 신설해 B06
화면 context가 그것을 쓴다. 납품 도면(B07)이 쓰는 확정 전용 창구는 그대로 둔다.
② 횡단 재계산 — 호출이 두 벌이라 인자가 갈렸다(B06만 표준 단면값·암 경계 오프셋 전달,
보존하는 사용자 부속값도 2개 ↔ 7개). `B06_Section_Cross_Refresh.refreshCrossDesigns()`
한 창구로 모으고 세션 편집값은 저장소에서 직접 읽어 패널 없는 B05도 같은 값을 보낸다.
③ 낡음 판정 — 「옛 암 2단계 필드 누락」 조건이 B06 페이지에만 있어 B05는 재계산을
건너뛰었다. 공용 `staleDesignChainages()` 안으로 옮겨 두 화면이 같은 시점에 같은
조치를 한다.
검증 — 공용 브라우저 실측: 두 화면 모두 route 126, 요약줄 문자열 완전 일치
(`절토(자연) 4,526.8㎥ · 성토 14,881.8㎥ · 토취 10,213.3㎥ · 최종 누가토량 −10,213.3㎥`).
pytest 370 passed·17 skipped(일원화 검사 4건 신설), typecheck·prettier·ruff 통과.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-09-03 09:50:14 +09:00
..
2026-09-02 18:03:18 +09:00
2026-08-29 11:15:29 +09:00
2026-08-08 10:03:11 +09:00
2026-08-08 10:03:11 +09:00
2026-09-02 19:30:16 +09:00
2026-09-02 19:30:16 +09:00
2026-08-08 10:03:11 +09:00
2026-09-02 19:30:16 +09:00
2026-09-02 16:15:25 +09:00
2026-09-02 16:15:25 +09:00
2026-08-28 08:38:58 +09:00
2026-09-02 19:30:16 +09:00
2026-08-08 10:03:11 +09:00
2026-08-30 19:38:24 +09:00
2026-08-08 10:03:11 +09:00
2026-08-08 10:03:11 +09:00
2026-08-30 12:54:29 +09:00
2026-08-28 15:41:24 +09:00
2026-09-02 18:03:18 +09:00
2026-09-02 16:20:17 +09:00
2026-09-02 19:30:16 +09:00
2026-08-28 19:09:28 +09:00
2026-09-01 20:18:33 +09:00
2026-08-24 19:56:40 +09:00
2026-09-01 20:18:33 +09:00
2026-08-28 12:54:45 +09:00
2026-09-02 16:52:38 +09:00
2026-09-02 16:52:38 +09:00
2026-09-02 10:50:10 +09:00
2026-09-02 11:27:25 +09:00
2026-08-27 22:32:01 +09:00
2026-09-02 12:06:54 +09:00
2026-08-25 20:03:42 +09:00
2026-09-02 11:41:41 +09:00
2026-08-27 22:13:26 +09:00
2026-08-27 22:13:26 +09:00
2026-08-27 18:42:15 +09:00
2026-08-27 18:42:15 +09:00
2026-08-23 13:58:00 +09:00
2026-08-27 22:13:26 +09:00
2026-08-28 12:54:45 +09:00
2026-08-27 22:13:26 +09:00
2026-09-02 16:52:38 +09:00
2026-08-29 12:01:22 +09:00
2026-08-26 18:38:30 +09:00
2026-09-02 16:52:38 +09:00
2026-08-23 13:11:49 +09:00
2026-08-26 17:18:47 +09:00
2026-09-02 12:06:54 +09:00
2026-08-19 19:46:03 +09:00
2026-08-30 12:05:22 +09:00
2026-08-30 12:23:38 +09:00
2026-08-17 18:19:46 +09:00
2026-09-02 16:52:38 +09:00
2026-09-02 16:52:38 +09:00
2026-08-18 19:38:52 +09:00
2026-08-19 18:32:55 +09:00
2026-08-08 10:03:11 +09:00
2026-08-17 17:09:05 +09:00
2026-08-19 18:33:03 +09:00
2026-09-02 16:48:01 +09:00
2026-08-28 19:09:28 +09:00
2026-08-29 11:15:29 +09:00
2026-09-02 16:48:01 +09:00
2026-09-02 19:30:16 +09:00
2026-09-02 19:30:16 +09:00
2026-09-02 19:30:16 +09:00
2026-08-17 14:05:32 +09:00
2026-09-02 19:30:16 +09:00
2026-08-17 18:51:21 +09:00
2026-09-02 19:30:16 +09:00
2026-08-17 18:51:21 +09:00
2026-09-03 09:10:46 +09:00
2026-09-02 20:34:18 +09:00
2026-09-02 20:34:18 +09:00
2026-09-02 20:34:18 +09:00
2026-09-03 09:50:14 +09:00
2026-09-03 09:10:46 +09:00
2026-09-02 19:30:16 +09:00
2026-09-02 19:30:16 +09:00
2026-08-08 10:03:11 +09:00
2026-08-08 10:03:11 +09:00
2026-09-02 19:30:16 +09:00
2026-08-18 19:14:05 +09:00
2026-08-18 19:51:08 +09:00
2026-08-19 18:17:22 +09:00
2026-08-19 18:56:06 +09:00
2026-08-29 18:37:16 +09:00
2026-08-28 12:16:38 +09:00
2026-08-08 10:03:11 +09:00
2026-08-30 12:05:22 +09:00
2026-09-02 19:30:16 +09:00
2026-08-25 20:03:42 +09:00
2026-09-02 16:30:59 +09:00
2026-08-19 18:32:55 +09:00
2026-09-02 16:30:59 +09:00
2026-08-17 09:06:19 +09:00