Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016VBGFXB9AbJBwXP19z75Qq
21 KiB
완료분 이관 — 2026-09-13 (데스크탑 메인)
PLAN.md 에서 미체크 항목이 하나도 없는 절을 통째로 옮긴 것. 원문 그대로이고 줄여 쓰지 않음.
같이 옮긴 것은 그 절이 낳은 참고 자료(검증 기록 · 실측값 · 커밋 번호 · 계획 대비 차이)임.
옮긴 날 2026-09-13 · 옮긴 창 데스크탑 메인(main_desktop_1) · 그때 저장소 7bd6d101
남겨 둔 것 — 아래 절은 완료로 보이나 살아 있는 실마리가 붙어 있어 계획서에 그대로 둠.
| 절 | 남긴 까닭 |
|---|---|
| 사토장 | 「아직 정할 것」 셋이 열려 있음 |
| 사용자 확정 5차 | 큰 것 3·8 · 여섯째 · 작은 것 5 가 자료·답 대기(⏸) |
| 사용자 확정 4차 (흙막이) | 일곱 형식 원단위가 자료 대기 |
| 사용자 확정 2차 | ② 벽 평균두께가 미체크 |
| 확정 1~11 | 3·4·5·8-3·8-4 가 대기(⏸) |
| 4-13 중간 점검 상태 | 물구멍 관 길이 · 뒷채움 폭 두 물음이 살아 있음 |
| 8-7 이중계상 금지 규칙 | 「원문을 남기는 자리」로 못 박은 절 |
| 8-31 개발용 단추 | 오해를 막는 경고라 계획서에 있어야 함 |
| 9-9 카탈로그 열한 줄 | 9-10 이 이 절을 가리킴 |
사용자 확정 3차 — 2026-09-09 밤 (여섯 중 다섯)
⭐ 사용자 확정 3차 — 2026-09-09 밤 (여섯 중 다섯)
「1~6번은 권장하던 대로, 6번은 자재로」 — 사용자 원문. 아래가 정본임.
| # | 물음 | 확정 |
|---|---|---|
| 1 | 흙깎기 작업효율 E | 0.50 (영월 방식 · 현행 산림품셈 인자와 전부 일치) |
| 2 | 기초잡석 두께 | 0.2 m (폭 1.5m 는 관측 역산 ⇒ 옹벽 0.30㎥/m) |
| 3 | 사토장까지 거리 | ⚠미정 — 권고한 값이 없어 그대로 물음으로 남김(현장값) |
| 4 | 구조물 터파기 용수 | 육상(용수 없음) ⚠ 내가 권고한 적 없어 통상값으로 적용 + 노티스. 사용자가 뒤집을 수 있게 |
| 5 | 관급 자재 | 전부 사급 |
| 6 | 콘크리트 자리 | 자재 축에 세움(㉮) — 사용자 명시 |
⚠ 3·4 는 내가 권고를 낸 적이 없는 자리임. 3 은 물음으로 남기고, 4 는 통상값으로 넣되 **「사용자 확정이 아니라 통상값 적용」**을 사유·노티스에 적을 것. 뒤집히면 한 줄임.
⚠⚠ 그리고 사용자 지시 — 「대신 페이지에 남길 것」. 여섯 값 전부를 코드에 박고 끝내지 말 것. 화면에 칸으로 세우고, 지금 값과 그 근거를 보이고, 사용자가 바꿀 수 있게 할 것.
흙깎기 작업효율 0.50 칸 + 근거(현행 산림품셈 9-3-2 · 영월 방식)
기초잡석 두께 0.2 m 칸 + 근거(폭 1.5m 는 관측 역산 · 두께는 원문에 없음)
사토장 거리 칸(비어 있음) — 넣으면 덤프 금액이 섬
용수 유무 칸(기본 육상) + **「통상값 · 사용자 확정 아님」** 표시
관급/사급 칸이 이미 있음 — 전부 사급으로 세움
콘크리트 자재 축에 섬
⇒ 정한 값이 화면에서 안 보이면 다음 사람이 왜 그 값인지 모름. 오늘 지켜 온 「사유를 드러낸다」와 같은 결임.
- 구현 상태 (2026-09-13 전수 대조) — 1(
5780eb93E 0.50) · 2(992484400.2m) · 4(용수 육상+통상값 표기) · 6(a57e1bbe자재 축) 코드에 섬. 화면 칸도 섬 — 흙깎기 E(B09 기초자료 탭) · 기초잡석 두께·사토장 거리·용수(B08 설정,ab51fa38) · 콘크리트(자재총괄). 3 은 칸만 서고 값은 물음 그대로. 검증 대기.- 5(전부 사급) — 검증 기록
2026-09-09b_확인으로_닫은것.md로 닫힘(79da822d 자재 여덟 줄 사급 실측). ⚠ 단 새 프로젝트의 기본값은 여전히 「미정(발주기관 결정)」 으로 섬(common_util_project_settings.py:97주석 「발주 결정이라 비워 둠」). 기본값을 사급으로 바꿀지는 사용자 확인 자리로 남김.
- 5(전부 사급) — 검증 기록
확정 12~16 · 확정에 딸려 나온 남은 물음 넷
확정 12~16 (알려만 드린 다섯 → 전부 「하라」로 바뀜)
| # | 무엇 | 확정 |
|---|---|---|
| 12 | 내야 할 표 | 16개 전체가 있어야 함. 안 내던 7개(중기경비계산서 등)를 다 만들 것. 실무 문서에서 확인 가능 |
| 13 | 부대시설 다섯 줄 | 산출에 추가 반영. 들어가야 할 내용임 (국가지점번호판·안내판·차단기·가설창고·수방자재) |
| 14 | 버림 콘크리트 | 추가. ⚠ 실무문서 최신본을 따르되 법령·시행령·지침이 있으면 그 값이 우선 |
| 15 | 옛 프로젝트 금액 | 옛 테스트 버전이면 삭제해도 됨. ⚠ 유가정보는 전국단위 공시가 / 지역단위 공시가를 고를 수 있어야 함 |
| 16 | 도자 한계거리 | 60m. 상수는 이미 60(config_system_design.py)이었고 설명 주석만 70으로 낡아 있어 맞춤(2026-09-09) |
- 구현 상태 (2026-09-13 전수 대조) — 12(
3257fe9716장) · 13(42cd2b8f부대시설 다섯 줄 — 금액 넷은 5차 3번 대기) · 14(48597351버림 KDS 100㎜ — 화면에서 빼는 칸은 위 8-2) · 15(f39c195b유가 전국/지역) · 16(674d4ef160m) 코드에 섬. 검증 대기.
⚠ 남은 물음 넷 — 확정에 딸려 나온 것
-
⭐ 중기 조종원 노임 산식 — 우리 값이 실무보다 −36%. 실무 두 공사지가 쓰는 계수
× 16/12 × 25/20를 우리가 안 씀. 고칠 자리는record.operator_person_days / 8한 줄. 넣으면 굴착기 0.7 시간당 86,096 → 106,384(+23.6%) · 불도저 19톤 124,842 → 148,861(+19.2%) — 기계가 든 공종 전부가 오름. ⚠ 아직 안 넣었음 — 계수의 원문(기재부 예규)이 저장소에 없어 **「원문 미보유」**로 남기고 중기목록표 비고에 사실만 드러내 뒀음. 사용자 확정 자리. -
ⓘ 위 서술은 낡았음 (2026-09-13 대조) — 계수는 이미 들어가 있음: 커밋
6d607934·B09_Estimation_MachineCost.py:51-78(16/12 × 25/20 ≒ 1.667) · 조종원 줄 비고 「1일 8시간 × 제수당·상여·퇴직충당 16/12 × 25/20」. 25/20 의 원문 확인 못 함은 주석에 그대로 남아 있음. 검증 대기.
0-13. 계획노선 편집 손질 여덟
0-13. 계획노선 편집 손질 여덟 (2026-09-12 사용자 지시, 랩탑 메인) — 검증 대기
대상은 B05_Profile/B05_Profile_UI_RouteEdit*.ts 와 B05_Profile_UI_Style_RouteEdit.css 한 벌임.
④ 「표고의 뜻」은 물음이라 답으로 닫음 — 횡단 판 아래 줄의 표고는 그 횡단에 그려진 선(원지반+계획 횡단)의 해발 범위(최저~최고) 이고 계획고·절토고가 아님.
-
① 교각점 고정 단추 — 곡선 패널에 「교각점 고정」 한 줄. 켜면 그 꺾임점의 X·Y 를 못 박아 노드 끌기·손잡이 끌기가 둘 다 막히고 반지름·곡선길이 칸 입력으로만 바뀜. 상태는
apexLock: boolean[]로curveLock옆에 두어 되돌리기·초기화에 같이 실림.- 검증 — 랩탑_메인 프로젝트(노드 28개) 편집 창에서 23번째 꺾임점을 잡고 잼. 안 잠근 채 끌면 계획노선 1078.0m → 1067.2m 로 바뀌고, 잠그고 같은 만큼 끌면 1078.0m 그대로임. 상태줄이 「교각점을 고정했습니다 … 고정 1곳」으로 뜨고, [초기화] 뒤 「고정」 표기가 사라져 사진첩에 함께 실린 것도 확인함.
-
② 절·성토 교차점 밖은 계획선을 안 그림 — ⚠ 계획 대비 바뀐 점: 처음에는 「원지반을 자른다」로 적었으나, B06 횡단 카드가 2026-08-20 같은 지적을 받아 이미 계획선을 끊고 있음(
appendCrossDesignOverlay주석 「사면 끝 바깥은 손대지 않는 원지반이라 지반선이 이미 표현한다」). 두 화면이 달라지면 안 되므로 계획 횡단선을 교차점에서 끊고 원지반선은 전 폭을 그대로 둠. 교차점 찾기는B06_Section_UI_Cross_Fit.ts에toeOffsets를 열어 씀(좌·우 따로, 외삽 자리는 안 씀).- 검증 — 측점 1+0.0 에서 SVG 점을 읽음. 고치기 전에는 원지반·계획선이 둘 다 10~368px(±20m 전 폭) 이라 겹쳐 그려졌고, 고친 뒤 원지반 10
368px · 계획선 **110258px**(사면 끝 사이)로 갈림. 성토사면·절성토 면적 표기는 8.85m · 7.20㎡ · 6.69㎡ 로 안 바뀜.
- 검증 — 측점 1+0.0 에서 SVG 점을 읽음. 고치기 전에는 원지반·계획선이 둘 다 10~368px(±20m 전 폭) 이라 겹쳐 그려졌고, 고친 뒤 원지반 10
-
③ 횡단을 벡터로 + 휠 줌·팬 (공용화) — 캔버스 그림을 SVG 선으로 바꿈. 줌·팬 본문을 공용 조각(
A00_Common/b_svg_zoom_pan.ts)으로 빼고B06_Section_UI_Cross_View_Zoom.ts는 여백만 씌우는 감싸개로 남김(B06 부르는 쪽은 안 고침). B06 은 휠을 줌에 안 묶고 B05 는 휠 = 줌 —wheelZoom한 칸으로 가름.- 검증 — 휠 한 칸에 배율 1 → 1.15 → 1.3225, 반대로 돌리면 1.1506, 더블클릭에
scale(1)로 되돌아옴. 가운데 버튼으로 (40, 20)px 끌면translate가 그만큼 따라옴.viewBox378×312 가 판 크기 377×311 과 1:1 이라 커서 자리가 안 밀림.
- 검증 — 휠 한 칸에 배율 1 → 1.15 → 1.3225, 반대로 돌리면 1.1506, 더블클릭에
-
⑤ 이전 횡단 판은 계획선이 바뀔 때만 — 측점 누르기로는 아래 판을 안 채우고, 계획 평면선을 고쳤을 때만 고치기 전 것이 내려감.
- 검증 — 측점 1+0.0 을 두 번 눌러도 아래 판이 「노선을 고치면 …」 빈 상태 그대로임. 노드를 끌어 계획노선 1078.0 → 1075.7m 로 고친 뒤에야 아래 판에 1+0.0 횡단이 앉음.
-
⑥ 「거리 재기」 눌린 표시 —
is-active가 붙는데 꼴이 없어 겉모습이 안 바뀌던 것..b05-routeedit__actions .ui-btn.is-active한 줄 추가.- 검증 — 단추를 누르면 바탕
rgb(185,154,255)(--color-primary) · 글자 흰색 · 테두리 투명. 다시 누르면 원래 꼴로 돌아옴.
- 검증 — 단추를 누르면 바탕
-
⑦ 등고선 높이 라벨 맨 위로 + 촘촘히 — 라벨을 노선·측점 눈금보다 나중에 그려 안 가려지게 함(띠 300m 는 다시 씌움). 촘촘함은 라벨 솎기 예산을 이 화면에서만 350 → 1200 으로 올려서 냄.
- 검증 — 화면 갈무리에서 905·910·915m 가 나란히 떠 5m 눈금(LAS 등고선이 낼 수 있는 가장 촘촘한 단위)까지 내려온 것을 봄. 그리기 차례는 등고선 → 노선·눈금 → 라벨 순으로 바뀜.
-
⑧ 곡선 길이(L) 하한도 지킴 (2026-09-12 사용자 추가 지시 「반경과 길이 둘 다 지켜야 함」) — L = R·Δ 라 한 자리의 하한을 반지름 하나로 모아 봄(
radiusFloorM= max(R 하한, L 하한/Δ)). 값 끌어올리기·모자란 양 판정·칸 막기가 모두 이 값을 씀.⚠ 예외 — 내각 155° 이상(별표2 Ⅰ.2.다.(1) 「곡선을 설치하지 아니할 수 있다」)은 L 하한을 안 걺. 거기서 L 을 채우라 하면 교각이 0 에 가까워 R 이 수십 배로 부풀어 안 고친 구간이 휨. 그 자리는 곡선 패널에 「155° 이상 — 곡선 생략 가능」으로 적어 냄.
- 검증 — 실측: 곡선 26곳 중 L 5m 미달 6곳이 전부 내각 158.8~174.8°(예외 구간)이고 155° 미만 미달은 0곳. 창을 열어도 계획노선 1078.0m 그대로(조용한 변형 없음). 패널에서 내각 115~147° 자리는 R 하한 12 · L 하한 5 가 걸리고, 157° 자리는 L 하한이 안 걸림(
min1). 내각 134° 자리에 L 을 3m 로 적으면 5m 에서 멈추고 R 하한 12m 이 이겨 L 9.7m 로 되돌아옴. - 시험 —
resources/tester/test_b05_curve_radius_floor.py7건(Node 헬퍼가_Edits.ts를 그 자리에서 트랜스파일). L 하한이 R 을 끌어올리는 자리(내각 150° · L 20m → R 38.2m)까지 못박음.
- 검증 — 실측: 곡선 26곳 중 L 5m 미달 6곳이 전부 내각 158.8~174.8°(예외 구간)이고 155° 미만 미달은 0곳. 창을 열어도 계획노선 1078.0m 그대로(조용한 변형 없음). 패널에서 내각 115~147° 자리는 R 하한 12 · L 하한 5 가 걸리고, 157° 자리는 L 하한이 안 걸림(
-
자체검증 한 벌 —
tsc --noEmit통과 ·prettier적용 ·pytest resources/tester/ -q1330 통과 · 22 건너뜀. 화면 검증은 ORCA 탭에서 사용자처럼 조작해 위 수치로 판정함.- ⚠ 못 본 것 — ORCA 내장 창이 637px 라 오른쪽 횡단 칸이 접히는 폭임. 검증 동안만 칸을 띄워 두고 봤으므로, 1500px 이상 창에서의 실제 배치는 사용자 화면에서 한 번 봐 주셔야 함.
3-17. 횡단도 손질 다섯
3-17. 횡단도 손질 다섯 (2026-09-12 사용자 지시, 랩탑 보조)
① 노면이 넓어 보이는 까닭 — 조사 끝
노견은 안 늘어남 — 좌·우 각 0.5m 고정(config_system_design.py 표준값). 넓어진 것은 차도이고, 까닭이 둘이라 겹쳐 보임.
-
곡선부 확폭 — 평면 곡선반경 표(별표2 Ⅰ.2.나.(4))로 곡선 바깥쪽 편측에만 붙음. 화면 라벨이
규격 3.00 + 확폭 1.50으로 이미 갈라 보여 줌. 1.50m 은 반경 15~18m 구간값이고, 확폭 뒤 유효너비 상한은 5.0m. -
기슭막이 노폭 연장 — 벽이 1:1.2 성토사면 착지점보다 바깥에 서면 물매를 눕히지 않고 노견을 그만큼 수평 연장함(
fillSlopeOf()). 몫은 벽 라벨· 노폭 연장 N.NNm으로 뜸. -
⚠
**B06_Section_UI_Page.ts828줄** — 700줄 한도 넘음(계획선 편집 배선 +28줄, 손대기 전 800줄). 다음 손질 대상.자체검증 (2026-09-13, 랩탑 보조) — 착수 시점 실측은 853줄(적힌 828줄보다 25줄 더 늘어 있었음). 순수 이동으로 둘로 뗌 — 동작 변경 없음.
B06_Section_UI_Page_Design_Sync.ts(218줄) — 설계 선택 반영·낡음 재계산·소단 동기화·[전체 반영]B06_Section_UI_Page_Grade_Edit.ts(85줄) — 종단 계획선 ▲▼ 제공자- 남은
B06_Section_UI_Page.ts644줄 (한도 안) - 검사 —
npm run typecheck통과 ·prettier적용 ·pytest resources/tester/ -q1330 passed, 22 skipped (소스 문자열 감시 시험 셋이 옮겨 간 자리를 못 봐 실패 → 시험이 분리 모듈까지 읽게 고침:test_b05_stale_design_sync.py·test_b06_ditch_choice.py·test_masshaul_single_source.py) - 화면 판정 (ORCA 탭 · 포트 5174 · 프로젝트
랩탑_보조) — 측점 20.0m 기준 · 계획선 ▲ 한 번 — 계획고 871.93m → 872.03m(+0.10), 세션 초안에station_offsets {"20.000": 0.123218}기록 · 이어 전 측점 재계산이 돌아 그 카드가 바뀜 — 성토사면 8.85m → 9.24m, 절토 계 3.33㎡ → 3.52㎡ · 카드(측점) 선택 — 4번째 카드 클릭 → 구조물 넘김값{"at":60}기록(선택 연동 정상) · 되돌림 — 세션 초안·넘김값 지우고 새로고침 → 871.93m · 8.85m · 절토 1.79/1.54 · 카드 62개로 복귀 - 계획 대비 차이 — 없음(파일 이동만). 다만 700줄을 넘는 B06 파일이 더 남음:
_UI_Cross_Design.ts782 ·_UI_Cross_View.ts756 ·_UI_Section_View.ts720 ·_UI_Cross_Culvert_Geom.ts720.
3-15. B06_Section_Engine_Design.py 700줄 내리기
3-15. B06_Section_Engine_Design.py 가 700줄을 넘음 (2026-09-09)
남길 것 compute_cross_design 본체 + 결과 조립 (짝이 걸린 자리)
떼는 것 ① SectionGeometry 클래스 → B06_Section_Engine_Design_Geometry.py
(TS 짝은 이미 common_util_cross_design_geometry.ts 로 떨어져 있음 — 같은 선)
② 표준값 해석·저장분 읽기 도우미 → B06_Section_Engine_Design_Specs.py
(_resolve_group · _as_float · curve_widening_args — TS 에 짝이 없는 파이썬 전용)
⇒ ①은 **TS 가 이미 그 선으로 갈라 둔 자리**라 거울이 안 깨지고, ②는 짝이 없는 몫임.
착수 전 이 축을 한 번 더 보이고 승인받을 것.
- 700줄 이하로 내림 — ①만 떼어 냄(커밋
2972e4cc· 924 → 522줄). ②는 안 뗌 — ① 만으로 한도 안에 들어와 뗄 까닭이 없어짐(계획 대비 차이).- 검증 (2026-09-13 랩탑 메인) — 줄 수 실측:
B06_Section_Engine_Design.py485줄 ·_Geometry.py412줄. 검증 대기.
- 검증 (2026-09-13 랩탑 메인) — 줄 수 실측:
검증 V-11 · V-12 · V-16 · V-17 — 닫힌 네 건
지금 사람이 볼 수 있는 것 — 4건
| # | 확인할 것 | 어떻게 | 안 하면 |
|---|---|---|---|
| 반대 방향 검사가 새 칸에도 걸리나 | ✅ 시험으로 옮김(2026-09-09 밤 · test_b09_verify_guards) — 칸을 늘려도·빠뜨려도 걸리는 것을 못 박음 |
— | |
| 준비공 여섯 줄이 B09 에 다 가나 | ✅ 시험으로 옮김(2026-09-13 · 5e09a861 · test_b09_prep_handoff_bill) — 준비공·부대시설 14줄 전부가 B09 에서 내역 본체(표토제거·뿌리 적재·제근) 또는 제외 줄(사유째)로 섬, 어디에도 없는 줄 0. 표토제거 2,359.035㎥ 가 수량째 본체에 섬. ⚠ 단가는 아직 안 붙음 — 표토제거 「일위대가 없음」(시트 9번 표토 축) · 제근 「후보 6건」(임목축적 입력) · 뿌리 적재 「단위 불일치 ㎡ vs 주당」 — 셋 다 답·입력 대기 자리라 이 줄에서 안 다룸 |
— | |
| 불도저 운반 네 줄이 금액으로 서나 | ✅ 화면 실측(2026-09-09 밤) — 「네 줄」은 실은 불도저 둘 + 덤프 둘이었고 불도저 둘은 금액으로 섬: 3-1 dozer 운반 토사 17.39㎥ × 1,712.0 = 29,770원 · 3-2 리핑암 61.13㎥ × 3,911.3 = 239,105원. 덤프 둘은 「일위대가가 아직 없습니다」 로 뜸(운반거리 대기 — 아래 사토장 줄과 같은 것). 갈래마다 단가가 서는지 시험으로도 못 박음 |
— | |
| 공구손료가 이중으로 안 붙나 | ✅ 밑수가 겹치지 않음(2026-09-09 밤) — 공구손료는 주재료비 → 재료비, 제잡비는 노무비 → 경비. 한 공종에 둘 다 있어도 이중계상이 아님(시험으로 못 박음). 지금은 주재료비가 0 이라 3% 를 넣어도 한 원도 안 움직임. ⚠ **석공사·철골공사는 특수공구라 건설품셈 1-2-6 이 「별도 계상」**으로 둠 — 일반 비율을 그대로 붙이면 안 되는 자리라 칸 사유에 적어 둠 | — |
검증 V-14 — 관급/사급 「발주기관 결정」 문구
| V-14 ⭕ | 관급/사급 「발주기관 결정」 표시 문구 | ✅ 고쳤음(2026-09-09 밤 · 커밋 89effeca) — 표기를 「미정(발주기관 결정)」 으로, 경고 머리를 「관급/사급 미정 — 발주기관이 정하는 자리입니다」 로. 값(unknown)·판정은 그대로이고 문구만 바꿨음(시험도 그 낱말로 고침) |
검증 닫은 것 — V-8 · V-9 · V-10 · V-15
닫은 것 (2026-09-09 밤 · 근거는 검증 폴더와 아래 절)
- V-8 산출근거 문구 ↔ 길이 — ⭕ 어긋날 자리 없음. B08 줄이
「돌쌓기(찰) H=2.5 · L=10.0m · NO.4 ~ NO.4+10」로 뜨고 정본 구간 80~90m 와 한 값
(표기는
stationLabel한 벌로 냄, 커밋 참조). - V-9 표준도 하단표 — ⭕ 뜨고 있음.
standard_sheet_3에 Table 엔티티 22행이 들어 있고 갈무리로도 찰 15줄이 수량·단위까지 차 있음(메는 13줄). 「찰 11 · 메 8」은 옛 값. - V-10 표준도 4장 — ⭕ 도면 목록에 넷 다 뜨고 blank 0. 전체 장수는 기준이 못 됨.
- V-15 층따기 길이 칸 — ⭕ 칸이 서 있고 면적 × 길이 → ㎥ 로 곱해짐. 길이가 비면
막고 사유(
input_missing). 시험 둘이 잠금.