diff --git a/docs/raw/plans/2026-10-10_plan_162-167_넷째.md b/docs/raw/plans/2026-10-10_plan_162-167_넷째.md new file mode 100644 index 000000000..1d006e6a3 --- /dev/null +++ b/docs/raw/plans/2026-10-10_plan_162-167_넷째.md @@ -0,0 +1,59 @@ +# 2026-10-10 새벽 계획 162~167장 기록 — M02 자재 기본값 · B08 모달 · B06 상세 · 노면공 · B09 요율 · 내역 · 재료비 · 견적 · 브레인 검증 흠 + +근거 = `docs/raw/요구_1009_4/`(원문 · 조사 K · L · M · N) · 메인 합침 cc29f8482 · 브레인 ORCA 검증(검증_랩탑메인 · 엄상준_검증 읽기) 끝. + +## 162. M02 자재목록 세 칸 기본값 (sub3) +정함(브레인) = `docs/raw/요구_1009_4/조사_M_M02자재구분.md` · 로직 자재 줄 · 직접 넣은 줄 둘 다 한 벌(선택지 · 기본값 같음 · 서버 MARKS 도 「일반」 뺌) +- [x] 162-1 자재구분 「일반」 지움(관급 · 사급) · 읽을 때 기본값 = 사급 · 별도계상 · 운반비 포함(서버 · 화면 한 벌 MARK_DEFAULT · 저장은 그대로 · 옛 「일반」 값은 사급으로 읽음) · 별도계상이면 운반비 드롭다운 비활성(값 「포함」 그대로) — test_m02_labor_mat_marks + - 검증완료 — test_m02_labor_mat_marks · labor_doc 32 · promote_flag · logic_mats 17 통과(새 셋 = 기본값 · 일반→사급 · 운반비 꺼짐) · typecheck 0 + +## 163. B08 구조물도 모달 — 연결 칩 · 배치 · 사본 고침 · [업데이트] · 콘크리트소요 줄 (sub8) +정함(브레인) = `docs/raw/요구_1009_4/조사_L_B08모달콘크리트.md` · 브레인 ORCA 확인(콘크리트소요 = 머리만 · 줄 0) +- [x] 163-1 「조합 연결」 = 시설 제목 + 칸 칩(flex-wrap) + 공용 접기(모두 연결이면 접힘 · 미연결 있으면 펼침) — test_156_1 + - 검증완료 — test_163 · test_156_1 통과(시설 한 줄 · 칩 · 작은 ghost · 접기 조건 · 이름 툴팁) · typecheck 0 +- [x] 163-2 카드 배치 2:3:3 · 도면 맨 오른쪽(일위대가 · 면적산출 넓게) — test_156_1 · test_61_2 + - 검증완료 — test_156_1 · test_61_2 통과(보이는 차례 일위대가 3 · 면적산출 3 · 도면 2 = `3fr 3fr 2fr` + 도면 order 3) +- [x] 163-3 모달에서 프로젝트 사본 고침 = 카드 [수정] → 사본 전용 편집 화면(picker_edit · 도면 · 면적 · 입력값 · 고른 자재) 재사용 · 저장 뒤 카드 · 집계표 다시 읽음 — 새 시험 + - 검증완료 — test_163 · test_61_2 · test_161_1 통과(createEditView 재사용 · 일위대가 카드 = 넣을 값만 안내 · 뒤로 = 카드 다시 읽음 · 닫을 때 onLinked · 층 쓰기 0) · typecheck 0 +- [x] 163-4 칩마다 배지(「마스터가 바뀜」 · 「고침 있음」 · projectItems.list) + [업데이트](늘 보임 · 바뀜 없으면 꺼짐 · 확인 창 → reapply · 입력값 · 고른 자재 살림 · 덮임 알림) — 새 시험 + - 검증완료 — test_163 통과(list(사본 폴더) 배지 셋 · 대조 전 꺼짐 · 마스터바뀜만 켬 · 확인 창 → reapply → onLinked · 서버 안 고침) +- [x] 163-5 콘크리트소요 5줄 늘 보임(qty 없으면 빈칸) + 콘크리트 전용 까닭 한 줄(사본 자재에 콘크리트 · 모르터 없음 · 단위수량 비었음 등) · 배합 칸은 늘 고칠 수 있게 — 새 시험 + - 검증완료 — test_163 · test_143_3 · test_160_4 통과(콘크리트 숨김 거름 뺌 · 까닭 줄 = 단위수량 빈 줄 n(사본 자재에 없음 a · 사본 자재 없음 · 미연결 b) · 짝 계산 안 건드림) + +## 164. B06 [상세] 그림 팬 · 줌 · 표 강조 (sub2) +정함(브레인) = `docs/raw/요구_1009_4/조사_K_B06상세노면공.md` K1 · K2 · 브레인 ORCA 확인(휠 · 가운데 단추 반응 없음 · 강조 띠마다 색 다름 · 라벨 칸 안 눌림) +- [x] 164-1 [상세] 그림 = 공용 b_svg_zoom_pan(휠 = 커서 고정 줌 · 가운데 단추 팬 · 더블클릭 원복 · [+ − ⤢] buildZoomControls) · 복제 자식을 g 하나로 감쌈(축 · 눈금째) · aspect-ratio — 새 시험 + - 검증완료 — test_164_detail_zoom 통과(휠 당김 배율 1.15 · 커서 아래 x 300 고정 · 상한 16 · 가운데 단추 화면 200·40 px = 팬 100·20 · 좌클릭 팬 0 · 재복제 배율 유지 · 더블클릭 원복) · typecheck 0 +- [x] 164-2 표 강조 = 모든 키 붉은 계통 한 벌(--color-danger · 모달 어두운 바탕에서 보라 판정 선 안 보이던 10 키 포함) · 칸 고름 색 붉게 · 줄(tr) 고름 표시 · 대상 없는 칸 data-empty 회색(누름 없음) · 이름 칸(「깍기」 등)도 그 줄 첫 키로 눌림 — test_150_detail_pick + - 검증완료 — test_150_detail_pick · test_164_detail_zoom · test_138_cross_detail 19 통과(presentKeys = 암석 띠 · 사토장 없는 그림에서 cut_rock · spoil_fill 빠짐 · 강조 4 선택자 danger · 고름 18% ≠ hover 8%) + +## 165. B06 노면공 고름 일관성 (sub7) +정함(브레인) = 조사 K K4 · 브레인 ORCA 확인(엄상준_검증 d2245e3b 읽기만: 알약 → 포장 13 켜짐 · 좌측 폼 「관」 그대로 / 범위 안 카드 → 「배관 1」로 튐 · 포장 0 / 벽 누름 → 알약 없음 · 폼 관 그대로) +- [x] 165-1 범위 안 카드(관 · 벽 없음) 누름 = 노면공 고름 유지 · 카드만 옮김(showAtChainage · selectMark) · 포장층 강조 유지 — test_152_5 · test_106 + - 검증완료 — test_165_pavement_flow 2단계(범위 안 140 · 100 카드 = 폼 · 알약 · 포장층 12장 · sid 모두 노면공 · 옛 코드는 모두 풂) · test_152_5 · test_106 · test_137 · test_b05_b06_selection_single 48 통과 · typecheck 0 +- [x] 165-2 고름 상태 한 벌 = 알약 · 목록 · 좌측 폼 · 카드 포커스가 늘 같은 것(노면공 고르면 좌측이 노면공 상세 · 벽 · 관 고르면 알약 · 폼 함께) · 되감기(끄고 다시 켜기) 대신 한 번에 — 새 시험(재현 차례 6단계) + - 검증완료 — test_165_pavement_flow 6단계 7건(고른 카드 벽 = 관 폼 + 관 알약 · 옛 차례는 알약 0 / 알약 · B05 복귀 = 범위 안 카드 40(옛 20 범위 밖) / 겹친 노면공 = 그 층 6장만) · 포장층은 selectMark 끔에도 켜짐(되감기 없음) + +## 166. B09 요율 자동 · 설계내역서 손 줄 · 재료비 수량 총액 · 견적가 · 경비집계 · 목록표 합 (sub4 · 데스크탑 보조 · sub5 · sub1) +정함(브레인) = `docs/raw/요구_1009_4/조사_N_B09내역요율재료비.md` · ⬜ 여섯 = 추천대로(환경보전비 그 밖 0.8 기본 + 선택 · 손 줄 연결 = 호표 + M01 로직 · 총액 ROUND 0 · 견적 최저 자동 포함 · 경비집계 안내만 · 블록 합 = 아는 줄 합 + 빈 줄 n) +- [x] 166-1 원가계산서 요율 = 고르는 값 칸(추정가격 · 공기 · 공종) 화면 + Rates.py M01 표 payload + Calc_Total 짝 자동 고름 · 사용자 값 앞섬 · 「자동」 되돌리기 — 거울 · 엑셀 검산 (sub4 · 먼저 push) + - 검증완료 — test_166_1 10 · test_145_4 8 통과(10억 · 184일 · 50억 · 안전 5억 + 기초액 3,300,000 · 연금 2026 4.75 · 환경 0.8/0.9 · 사용자 앞섬 · 엑셀 손값 총공사비 1,201,879,000 · TS 거울 8 경우) · typecheck 0 +- [x] 166-2 설계내역서 = 수량 입력 · 손 줄(우클릭 추가 · 지우기) · 일위대가 · 산근 · M01 로직 연결(새 산근 Solver.add) · user_values › bill · Calc_Bill price_of · 호표 탭 넷 연동 — 거울 · 엑셀 검산 (데스크탑 보조 · 체크는 브레인) + - 검증완료 — 데스크탑 보조 cb09ab96 · 시험 66(새 test_166_2 6 · 145-1~5 · 155 · 166-1) · typecheck 0 · 남김 = M02 서고 일위대가 문서 연결은 뒤 걸음 +- [x] 166-3 재료비목록표 = B08 총괄 줄 + 수량 + 총액(× 적용 단가 · ROUND 0) · 공제 줄 거름 · MT 합침 — 거울 (sub5) + - 검증완료 — test_166_3(10.25 × 1,234.5 = 12,654 · 3.333 × 7,000.5 = 23,333 · 빈칸 둘 · 공제 거름 · MT1 합침 · TS 거울) · test_144 · 145_2 · 145_3 25 통과 · typecheck · 189fc1d6d +- [x] 166-4 자재단가대비표 「견적」 열 + 적용 출처 고르기(견적 높아도) + 견적서 여러 파일 첨부(Router_Quotes · v1/quotes/) — 새 시험 (sub5) + - 검증완료 — test_166_4(견적 최저 자동 21,000 · 견적 고름 12,712 > 최저 12,000 · 견적만 520,000 · 고름 › 손 수 · TS 거울 · 임시 storage 두 파일 올림 · 내려받기 · 지움 · 경로 탈출 404/400) · 166_3 · 144 · 145_2 · 144_skeleton · 166_1 37 통과 · typecheck · 8007 openapi 새 길 둘(무인증 401) · 9ec85bdd4 · 40b80ff1b +- [x] 166-5 경비수량금액집계표 = 경비 갈래 자원 0(설계상 · 기계 → 중기 · 구역화물 → 자재) → 안내 한 줄 · 새 갈래 안 만듦 — test_145_5 (sub1) + - 검증완료 — test_145_5(산근 블록 꼴 sum_expense 0 줄 → 표 위 안내 맨 앞 · 합성 경비 줄 1 이면 안내 없음 · 678,345 그대로) · typecheck · 4e382a703 +- [x] 166-6 일위대가목록표 합 = 일위대가표와 같은 셈(어긋남 없음) · 빈 줄 있는 블록 = 「아는 줄 합 + 빈 줄 n」 · 내역엔 안 넘김 — 거울 (sub1) + - 검증완료 — test_166_6(A 82,772 + 빈 줄 1 · 겹 대가 B 16,554 + 빈 줄 1 · C 165,545 · 내역 단가 빈칸 · TS 거울 · 목록 「빈 줄 1」 풍선) · test_145_2(DG2 6,013 + 빈 줄 2 · DG14 53,926 + 빈 줄 3) · 145_1 · 145_3 · 155 · 157_4 43 통과 · typecheck · 71f96a190 + +## 167. 브레인 ORCA 검증 흠 (sub8 · sub5) +정함(브레인) = 검증_랩탑메인 사용자 길(미연결 → [선택] 연결 → 모달 · 자재 · B09) +- [x] 167-1 B08 모달 — 일부 칸만 연결 때 조합 카드 section 없음(request.combos 빈 배열) — 재현 · 고침 · 새 시험 (sub8) + - 검증완료 — 까닭 = 관 지점 응답 측점 둘째 자리(80.17) 대 사본 id 셋째 자리(pipe@80.167) · 서버 id(사본 · 시설) ±6mm 맞춤 · test_167_1(고치기 전 0 → 1) · test_61_1 · 61_2 · 143_1 · 160_2 · 161_1 · 163 = 29 통과 · typecheck 0 +- [x] 167-2 B09 재료비목록표 — B08 총괄 줄(파형강관 · 커플링 · 합판) 안 들어옴 · 수량 빈칸 — 열면 바로 B08 총괄 전부 + 수량 · 총액 (sub5) + - 검증완료 — 까닭 = B08 답 {source, sheets:{material}} 을 B09 가 한 층 위에서 읽음(운반 수량도 같은 흠) → Router._b08 한 곳에서 sheets 로 · 검증_sub5 pipe@85.05 SS000055 연결 재현: GET estimation 재료비목록표 = 사본 셋 + B08 파형강관 Φ1000 8(관급) · 커플링 0 · 합판 8 → 연결 되돌림 · test_166_3(167_2 새) · 166_4 · 144 · 145_3 · 145_5 · 144_skeleton 32 통과 · typecheck · ad8b9e626 +- [x] 167-3 B06 노면공 — 실제 화면에서 범위 안 빈 카드 누르면 다 풀림 · 알약 뒤 좌측 폼이 노면공 아님 — ORCA 재현 · 고침 (sub7) + - 검증완료 — ORCA 5182 엄상준_검증 읽기만: ① 알약 = 포장 13 · 카드 40 · 폼 G 노면공/콘크리트 포장(상세 내용 · 확폭 구간 · 관 칸은 숨김) / ② 고른 카드 40 재누름 = 포장 13 · 알약 · 폼 그대로(옛 = 재누름 해제로 모두 풂) · 140 누름 · 재누름도 그대로 / ③ 벽 = 배관 1 · 관 폼 · 포장 0 / ④ 알약 = 포장 13 · 노면공 폼 / 빈 자리 = 모두 풂 · 범위 밖 280 재누름 = 해제 · test_165 등 48 통과 · typecheck 0