- 사용자 「완전히 되돌려」 뒤 dev 를 거쳐 다시 들어온 1-2·1-3·1-4 코드 26 경로를 9629430a 모습으로(고친 17 되돌림 · 새로 생긴 9 지움)
- 대상: Z01_MasterData 17 · main.py · ui_template_locale_b3.ts · resources/tester 의 Z01 시험 7
- 품셈 md·도구는 안 건드림 · 이력 재작성 없음(되돌림 커밋)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0145cr1DMC5Ft8fouQSXtp69
- Z01_MasterData_Repository_BasePrices.py 신설 — master_base_price·master_revision Raw SQL(읽기·줄 수·판번호·저장·되돌리기) · 판번호 줄을 잠그고 다시 봄 · 틀리면 통째로 되돌림
- GET /base-prices/{kind} 가 DB 를 읽음 · 응답에 revision · 줄마다 changed_columns·is_added 추가
- PUT /base-prices/{kind} {base_revision, edits, added, deleted} — 판 다르면 409 · 하나라도 틀리면 아무것도 안 씀 · edits 500 상한 · 모르는 칸 거절
- POST /base-prices/{kind}/reset {row_keys} — 주입 줄은 data := seed(지운 줄도 되살림) · 추가 줄은 지움
- 기계 시간당 단가는 DB 노임·유가로 읽을 때마다 셈 · 제원은 줄 값에서(추가한 기종도 섬)
- 옛 덮개 층 삭제 — Z01_MasterData_Overrides.py · 칸 단위 PUT · /overrides·/overrides/clear
- 새 줄 열쇠는 서버가 줌(added/{난수}) · 주입 data 에 '@' 칸이 없어도 축 잠금은 파일 원본으로 섬
- 시험: DB 가짜(helper_z01_fake_repo.py) 로 API 손질 · 저장소 SQL 흐름은 가짜 커넥션으로 잼
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V1MKKZKpUHTPKb513FneU8
- 새 칸·값 묶음 열넷에 한글 이름 — `alt_rate_range`·`plywood_material_pct`·`plywood_labor_pct`·
`timber_absent`·`loading_efficiency_basis`·`specialty_note`·`industry_note`·`basis` 따위
- Z01 제비율 줄 수 218 → 220 — 전문공사 일반관리비 300억~1000억·1000억 이상 두 구간을 채운 몫
⚠ **다시 뽑기는 아직 못 함 — 원천 벌 재추출이 먼저임** (아래 근거)
· 코덱스가 md 를 고치자(줄 아홉 보탬) `pum_forest_2026.json` 이 들고 있는 **옛 줄 번호가 밀려**
본문에서 밑수를 못 찾아 산림 밑수 확보가 **238 → 105 로 떨어졌음**
· 줄 번호를 머리글로 다시 찾게 해 봤으나(238 → 243), 12장에 「구 분 | 적 용 | 비 고」 머리글이
수두룩해 **이웃 표를 집어 밑수가 표끼리 돌아갔음** — 직접공사비가 5,983,724 → 5,811,903 으로
**조용히 움직였음.** 첫 줄까지 맞대 좁히면 이번엔 218 로 더 떨어짐(원천 벌 셀이 md 와 다름)
⇒ 앵커링을 물리고 **옛 산출을 그대로 둠**(238/92). 고칠 자리는 마스터가 아니라
**`pum_forest_2026.json`·`pum_const_2026.json` 을 고친 md 에서 다시 뽑는 것**임
⚠ 코덱스의 md 손질로 `test_base_prices_source_match` 가 15건 오류 —
손료표 머리글 「시간당(10-7)」 을 못 찾음(그 표를 읽는 쪽은 메인·코덱스 몫)
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QsGw1Dz9HmhuAxGisxmDPF