Commit Graph
2511 Commits
Author SHA1 Message Date
eomsangdonandClaude Opus 5 c8872234e6 Merge remote-tracking branch 'origin/sub_desktop_1' into main_laptop_1 — 줄 구실 잣대 axis_policy.json 받음 · 열쇠 모듈은 그쪽 설계(잣대를 자료에서 읽음) 취함 · 건설 총칙 뿌리를 잣대에서 읽어 CP-01-01(37줄) 표시(미확정 둘은 안 넣음) · 평평한 목록을 잣대대로 표가 붙은 줄(산림 365 · 건설 997 · stats.work_items) · 이름표 건설 칸을 대기 자리에서 merged_tables 로 옮김(서버가 kind 를 냄)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BW6Jdsh18WPtYUR6THZJqn
2026-09-17 13:27:14 +09:00
eomsangdonandClaude Opus 5 0d56e727cb fix(b08): 건설 산출 이름을 const_ 앞꼬리로 — 뒤꼬리(work_item_master_const_…)면 work_item_master_* 로 끝 파일을 고르는 B08 밑수 대조가 건설을 집어 대조가 통째로 빠졌음(전체 시험 빨강 2) · 고르는 쪽이 산림을 집는지 시험 하나
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BW6Jdsh18WPtYUR6THZJqn
2026-09-17 12:58:44 +09:00
eomsangdonandClaude Opus 5 642a5be937 feat(b08): 건설 공종 축 뽑기 — 뽑는 스크립트가 산림·건설 둘 다 · 건설 목차는 합본 원문 머리 「목 차」 글줄(쪽 번호 붙은 꼴 가름 · 부문 5 · 장 45 · 1,367줄) · 표는 본문 절 제목으로 붙음(2,192 전부 · 인용 거름) · 열쇠 CW-00001 꼴(장부 따로) · 총칙 표시·갈래 키는 비움 · 표 한 장 읽기를 _Table 로 떼어 두 뽑기가 한 벌 씀(890 → 442줄 · 산림 산출 한 글자도 안 바뀜) · Z01 건설 kind 이름 work_item_const · 이름표 한 벌 · 목차 오기 없음 시험(연혁 붙은 본문 제목 683)(브레인)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BW6Jdsh18WPtYUR6THZJqn
2026-09-17 12:44:42 +09:00
eomsangdonandClaude Opus 5 1de5c8ab5b fix(b08): 공종 축 목차 오기 둘을 본문 절 번호로 — 12-17-2 무근진동기 제외 → 12-17-3 · 12-24-1 지수판 설치 → 12-27-1(코덱스 원문 대조) · 혼성 줄 풀어 네 줄 제자리(F0363·F0364·F0371·F0375) · orphan 17 → 15 · 열쇠는 그대로(장부에 손으로 이음) · 바로잡은 기록 toc_corrections · 「표 절 제목이 다른 줄을 가리키면 빨강」 시험(옛 자료에서 빨강 확인) · 잎 358 → 360(브레인)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BW6Jdsh18WPtYUR6THZJqn
2026-09-17 12:31:28 +09:00
eomsangdonandClaude Opus 5 d4f75212e2 feat(b08): 줄 구실 잣대를 자료로 — axis_policy.json · 건설 축 자리와 덜어낼 잣대 미리 세움
- 총칙 뿌리를 코드에서 꺼냄 — `general_provision_roots()` 가 `axis_policy.json` 을 읽음
  (기관이 정하는 범위라 코드에 박으면 관리자가 못 고침)
- 방침 못박음 — `never_delete: true` · 평평한 목록은 `pum_tables > 0`(「잎」 아님)
- 구실 넷에 「지우지 않음」 딱지 — 브레인 승인(2026-09-17)
- 건설 축 자리 — `CP`/`CW` · 총칙 뿌리 `01_공통부문/제1장_적용기준.md` ·
   미확정 둘(제8장 건설기계 351표 · 유지관리 제1장 공통 40표 · 안티그래비티 조사 대기)
- ⚠ 건설 코드 꼴 경고 — 부문마다 장 번호가 1부터 다시 시작(공통 제1장=적용기준 ·
  토목 제1장=도로포장) · 장 번호만으로 코드를 지으면 부문이 다른 공종끼리 덮음
  계층 근거는 목차표가 아니라 장 파일 46개(`source_file` 칸)
- 이름표에 건설 kind 자리 — `pending_merged_tables` (서버가 kind 를 내는 날 옮겨 담을 것)
- 시험 둘 더 — 잣대가 자료에 있음 · 어느 구실도 안 지움

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QsGw1Dz9HmhuAxGisxmDPF
2026-09-17 12:17:04 +09:00
eomsangdonandClaude Opus 5 7b6038b524 Merge remote-tracking branch 'origin/main_laptop_1' into sub_desktop_1
이름표 충돌 해소 — 같은 자리는 랩탑 쪽(`merged_tables` 의 `work_item_forest`)을 취하고,
내 쪽에서 빠진 것만 되살림:

- `work_item_master` 새 표 `toc_duplicate_rows` · 새 값 묶음 `toc_edition`
- `work_items` 새 칸 여섯(work_item_key·toc_code·toc_number·toc_edition·path_name·axis_role)
- 공용 `columns` 여덟 — 랩탑엔 없어 영문으로 뜨던 것
- `value_overrides` — axis_role 넷 · rule 둘 낱말
- 내 `work_item_axis` 구획은 버림(두 곳에 같은 이야기를 두지 않음)

시험 둘 손질 — 열쇠가 실제로 오면서 뜻이 뒤집힌 자리:
- `test_z01_work_items.py` 「불변 열쇠 없음」 알림이 **사라지는 것**이 곧 열쇠가 섰다는 증거
- `test_z01_master_data.py` 표 수 91 → 92 (`toc_duplicate_rows`)

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QsGw1Dz9HmhuAxGisxmDPF
2026-09-17 12:16:45 +09:00
eomsangdon 85c234871e Merge remote-tracking branch 'origin/dev' into main_laptop_1 2026-09-17 12:15:36 +09:00
eomsangdon 02d4cf1b36 Merge remote-tracking branch 'origin/sub_laptop_1' into sub_desktop_1 2026-09-17 12:06:59 +09:00
eomsangdon 7f32f1c5d0 docs(cost): classify unresolved item links 2026-09-17 12:05:19 +09:00
eomsangdonandClaude Opus 5 7ed9e6c101 Merge remote-tracking branch 'origin/sub_desktop_1' into main_laptop_1 — 공종 축 불변 열쇠 받음 · 이름표 갈래 이름 한 자리 충돌(「공종 축」 취하고 설명은 양쪽 합침) · 산림 줄 열쇠 판정을 work_item_key 로 · 시험이 FW- 열쇠를 봄
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BW6Jdsh18WPtYUR6THZJqn
2026-09-17 12:02:08 +09:00
eomsangdon 06e1f4ef3a docs(cost): add work item link dataset 2026-09-17 12:01:25 +09:00
eomsangdon 2d87cadd5c Merge remote-tracking branch 'origin/sub_laptop_1' into main_laptop_1 2026-09-17 11:58:45 +09:00
eomsangdonandClaude Opus 5 287027f810 feat(z01): 공종 축 API 틀 — GET /base-prices 에 갈래 work_item · 산림 kind(잎 358 · 갈래 편 618) · 이름은 전체 경로 · 계산 규칙(choose_one 91 · sum_steps 3)을 표 수준 rules 와 줄 칸 rule·step_weight 로 · 불변 열쇠(FW-) 오면 @id 로(칸 이름 한 곳) · 건설은 자료가 오면 저절로 섬 · 고치기 막힘 · 이름표 한 벌(브레인)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BW6Jdsh18WPtYUR6THZJqn
2026-09-17 11:06:26 +09:00
eomsangdonandClaude Opus 5 7dd2c51530 feat(b08): 공종 축에 불변 열쇠 — FW-00001 꼴 5자리 · 목차 번호는 칸으로 내림
- 열쇠 장부 `work_item_keys.json` — 판 없는 영구 장부 · 판(고시 2025-82)+목차 자리로만 이음
  · 장부에 없으면 새 열쇠 + 「새로 난 공종」 목록(짐작으로 안 이음)
- 새 칸 여섯 — work_item_key · toc_code · toc_number · toc_edition · path_name · axis_role
  `work_item_code`(FP-…) 는 이름째 그대로 둠 — 164 파일이 씀
- 잎 경로 이름 — 「토공 › 토사깍기 › 인력」 · 이름 겹침 35줄이 갈림
- 줄 구실 넷 — 공종 304 · 묶는 마디 82 · 총칙 78 · 빈 잎 13 (지우지 않고 가름만)
  ⚠ 총칙 2장은 B09 연료·손료가 읽어 못 지움(Consumables.py:44~99)
- ⚠ 목차 번호 겹침 둘 발견 — 12-17-2 · 12-24-1 이 서로 덮고 있었음 · 줄마다 제 열쇠로 갈라
  `toc_duplicate_rows` 목록으로 냄
- 이름표 — 공종 축 구획(`work_item_axis`) 새로 · 갈래 「공종」 · kind 둘 · 열 열하나
- 금액 불변 시험 14개 — 새 칸 떼면 옛 벌과 지문(sha256) 같음

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QsGw1Dz9HmhuAxGisxmDPF
2026-09-17 11:04:04 +09:00
eomsangdonandClaude Opus 5 7cb15af1e7 feat(z01): 상자 이름을 서버 group_label 로 — 안 오면 group 키 그대로(화면에 한글 이름 안 박음)
- 지금 서버가 갈래 키(base_price·pumsem_basis)만 줘 상자 제목이 영문으로 뜨던 자리
- 공종 축(work_item) 상자는 코드 추가 없이 섬 — 가짜 응답으로 확인(산림 358 · 건설 가짜 2,199 · 찾기·끝 쪽)
- 시험: 갈래 이름이 오면 그 이름 · 안 오면 키가 드러남

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016VBGFXB9AbJBwXP19z75Qq
2026-09-17 10:54:44 +09:00
eomsangdon 459033786b docs(cost): map forest and construction links 2026-09-17 10:16:47 +09:00
eomsangdon ba59328187 Merge remote-tracking branch 'origin/dev' into main_desktop_1 2026-09-16 16:38:40 +09:00
eomsangdon 492c5f1ea8 knowledge(실무문서): 울진 1공구 수량산출 xls 메타 변경 반영 — 엑셀 열람으로 생긴 것, 내용 변경 아님 2026-09-16 16:38:33 +09:00
eomsangdon 01013ea250 Merge remote-tracking branches 'origin/sub_desktop_1' and 'origin/sub_laptop_1' into main_laptop_1 2026-09-16 16:21:56 +09:00
eomsangdonandClaude Opus 5 f0d25621c3 feat(z01): 화면이 들고 있던 kind 목록·이름 열다섯을 지움 — GET /base-prices 가 준 갈래·kind·이름·줄 수로 상자를 세움(차례도 서버 것) · 단추 옆 줄 수 · 모아 보기 갈래 이름도 서버 label · kind 가 늘면 저절로 서는지 시험 하나(브레인)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016VBGFXB9AbJBwXP19z75Qq
2026-09-16 16:01:42 +09:00
eomsangdonandClaude Opus 5 9698c7b14a feat(z01): 기초단가 상자 이름 둘 — base_price 「기초단가」 · pumsem_basis 「품셈 기준」
- 서버 `kind_group()` 이 내는 갈래 둘에 한글 이름을 붙임. 상자 설명도 한 줄씩 —
  기초단가는 「**얼마인가** · 때가 되면 갈아 끼우는 값」, 품셈 기준은 「**얼마나 드나** · 품셈·법령이 정한 계수」
-  **서버가 읽을 자리를 못박음** — `labels["base_price_groups"][group]["name_ko"]`.
  지금 서버에 갈래 이름 읽는 코드가 아직 없어, 두 창이 서로 다른 자리를 보면
  2026-09-15 의 「26칸이 영문으로 뜸」 사고가 되풀이됨
- 시험 둘 더함 — 서버가 내는 갈래마다 이름표에 이름이 있는지 · 상자마다 kind 가 서고
  그 kind 이름이 영문 그대로가 아닌지(빈 상자·영문 상자 막음)
- 새 kind 열 15칸은 앞 커밋(`46fe2bc0`)에서 이미 이름 붙음 — 지금 영문으로 뜨는 열 0

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FFCnEYNH4tsS2MbHvzBhZk
2026-09-16 15:59:14 +09:00
eomsangdon 0bb31e20ab Merge remote-tracking branches 'origin/main_laptop_1' and 'origin/sub_desktop_1' into sub_laptop_1 2026-09-16 15:57:29 +09:00
eomsangdon 3251ad3945 Merge remote-tracking branch 'origin/main_laptop_1' into sub_desktop_1 2026-09-16 15:57:29 +09:00
eomsangdon 8f6dbc4781 Merge remote-tracking branch 'origin/dev' into sub_desktop_1 2026-09-16 15:57:27 +09:00
eomsangdonandClaude Opus 5 28a5bcb636 feat(z01): 표 목록을 서버가 냄 — GET /api/master-data/base-prices 가 갈래(base_price·pumsem_basis) · kind · 한글 이름(이름표에서) · 줄 수를 줌 · 화면이 kind 목록을 제 코드에 들면 새 kind 가 조용히 안 뜸(기계 작업량이 그랬음) · kind 를 하나 더하면 목록이 저절로 느는지 시험으로 못박음(브레인)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BW6Jdsh18WPtYUR6THZJqn
2026-09-16 15:56:24 +09:00
eomsangdonandClaude Opus 5 8a563f5148 feat(z01): 품셈 기준에 「기계 작업량」(machine_productivity) 단추 더함 — 아홉 → 열(불도저 속도·삽날·덤프 운반 밑값 47줄) · 이름표 오기 전이라 열 15 는 영문으로 뜸(정상)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016VBGFXB9AbJBwXP19z75Qq
2026-09-16 15:51:24 +09:00
eomsangdonandClaude Opus 5 46fe2bc010 feat(z01): 기계 시공능력 이름표 — 새 kind 열 21칸(영문 15칸 0)
- 코드에 박혀 있던 표를 꺼낸 벌(메인 b6fb3725) — 불도저 속도·삽날 용량(건설품셈 8-2-1) ·
  덤프 운반 낱값·재료별 계수(산림품셈 10-12) 47 줄
- 영문으로 뜨던 15칸에 이름 — 주행 장치·기계 규격·변속 단·전진/후진 속도·삽날 용량 ·
  낱값 키·무엇인가 · 단위중량·체적변화율·버킷계수·적재/운반/적재 작업효율·적재 비고
- ⚠ `loader_efficiency`(E0)는 운반 식의 `truck_efficiency`(Es)와 **다른 기호**임을 이름에 적음 —
  섞으면 작업량이 갈림
- 줄 열쇠 — id 칸이 없고 **표마다 축이 다름**(속도표 넷 · 삽날표 셋 · 낱값 둘 · 재료별 둘).
  서버가 줄마다 `@axis` 로 알려 주는 대로 적음
- 시험 상수에 kind 하나 더함(열넷 → 열다섯)

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FFCnEYNH4tsS2MbHvzBhZk
2026-09-16 15:50:02 +09:00
eomsangdonandClaude Opus 5 389d014018 fix(z01): 코덱스 검증 둘 — 철근 단가 참고값은 B09 계산값이라 고칠 칸에서 빼고 「계산값 · 표시 전용」 까닭·식을 실음(사용자 잣대 「마스터 = 계산으로 나오는 값이 아님」) · 돌쌓기 갈래 표에 같은 1:0.3 이 두 자리인 까닭 알림(품셈 13-4-4 [주]⑪ 직고·성절토 축 ↔ 교본 7-3 형식별 기본값 — 축과 근거가 다름)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BW6Jdsh18WPtYUR6THZJqn
2026-09-16 15:48:20 +09:00
eomsangdonandClaude Opus 5 3c4b915f7e fix(b09): 기계 수송비가 조용히 0 으로 빠지던 자리 — 거리(인근 시·군·구청 → 현장)가 비어 중기운반(10-4) 줄이 안 설 때 사유를 그 공종에 붙임(아래 층 문구 그대로 · 금액은 안 지어냄) · 줄이 서면 사유 안 붙음 · 조사에서 모든 프로젝트가 수송비 0 이고 사유도 없던 것을 확인(브레인)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BW6Jdsh18WPtYUR6THZJqn
2026-09-16 15:41:58 +09:00
eomsangdon b6fb372543 auto: 2026-09-16 15:19 (ESD_LAPTOP) 2026-09-16 15:19:09 +09:00
eomsangdonandClaude Opus 5 028a6be247 feat(z01·b09): 코드에 박혀 있던 기계 작업량 밑값을 마스터로 꺼냄 — 새 자료 data_machine_productivity(불도저 속도 25 · 삽날 10 · 덤프 운반·적재 밑값 9 · 재료별 3) · B09 는 그 파일을 읽음(값은 한 칸도 안 바꿈 · 원문 pum_const C0426·C0427 대조 시험) · Z01 kind machine_productivity 로 관리자가 고칠 수 있게 · 식은 값이 아니라 로직이라 코드에 남김 · 이름표에 없는 새 자료는 폴더에서 찾음(사용자 원칙 「마스터 = 관리자가 제어할 값 · 코드 안에 있으면 안 됨」 · 브레인)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BW6Jdsh18WPtYUR6THZJqn
2026-09-16 15:19:08 +09:00
eomsangdon 75a84552f1 docs(cost): add manufacturing wage source 2026-09-16 14:07:14 +09:00
eomsangdon 845501d38f Merge remote-tracking branches 'origin/main_laptop_1', 'origin/sub_desktop_1' and 'origin/sub_laptop_1' into CODEX 2026-09-16 14:06:47 +09:00
eomsangdonandClaude Opus 5 d9f06913f1 feat(z01): 돌쌓기 표준경사 표에 알림 한 줄 — 고치면 횡단 도면 모양도 함께 바뀜(B06 이 같은 값으로 벽 기울기를 그림) · 아홉 중 그림에도 닿는 하나 · 문구는 서버가 냄(화면 사전이 생기면 두 벌 · 브레인)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BW6Jdsh18WPtYUR6THZJqn
2026-09-16 14:06:36 +09:00
eomsangdonandClaude Opus 5 7f2e221585 feat(z01): 출처표 빈칸 일곱 채움 — 받는 자리 빈 칸 0
- 안티그래비티가 찾아 준 주소 일곱(2026-09-16) — 제조노임(중소기업중앙회 kbiz 게시판 mnSeq=325) ·
  기계·기계 운전경비(공사비원가관리센터 cost.kict.re.kr · CODIL 대체) · 자재(나라장터 g2b 가격정보) ·
  유가 전국·지역(오피넷 평균판매가격 · API avgAllPrice/avgSidoPrice) · 요율(조달청 시설공사 제비율)
- 채운 줄은 `checked_on` 을 2026-09-16 으로 · 건설노임 한 줄은 2026-09-15 그대로
- 주소가 온 자리를 `policy.address_found_on` 에 적음 · 「주소를 지어내지 않는다」 방침은 그대로 둠
- 제조노임 비고에서 「받는 자리를 아직 못 받았다」 문구를 걷고 「최신 공표일은 게시판에서 봐야 함」으로 바꿈
- ⚠ 최신 공표일은 여전히 넷이 모름 — 자재·유가 셋은 수시·일별이라 한 날로 안 정해짐(주소와 별개)

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FFCnEYNH4tsS2MbHvzBhZk
2026-09-16 14:06:14 +09:00
eomsangdonandClaude Opus 5 566e0c885e feat(z01): 좌측을 둘로 가름 — ①기초단가 다섯(얼마인가 · 시장이 정함) ②품셈 기준 아홉(얼마나 드나 · 품셈이 해마다 한 번 · 토량환산·자재할증·거푸집·철근·목구조·돌쌓기 경사·뒷길이·돌종류·갈래) · 축 칸 잠금·구간 이름은 서버가 준 대로 그대로(사용자 ①② 지시)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016VBGFXB9AbJBwXP19z75Qq
2026-09-16 14:03:03 +09:00
eomsangdonandClaude Opus 5 ede97d30fb feat(z01): 기초데이터 아홉 이름표 — 열 21칸 · 줄 열쇠 아홉 · 축 시험 셋
- kind 아홉을 이름표 `merged_tables` 에 더함(다섯 → **열넷**) — coef · material_surcharge ·
  formwork_reuse · rebar_complexity · timber_structure_class · masonry_slope ·
  masonry_back_length · stone_kind · masonry_class. 영문으로 뜨던 21칸 **0**
- ⚠ 구간 이름은 **원문 표기 그대로**(`~1.5`·`~3`·`~5`·`~7`·`7이상` · 돌 직경 `40~60`) —
  열쇠의 몸이라 예쁘게 고치면 덮개가 주인을 잃음. 시험이 그 표기를 박아 둠
- 축 칸(`table`·`bond`·`face`·`height_bracket`·`stone_kind`·`back_length_cm`·`class`·
  `soil_type`·`type_id`·`material`)은 이름에 「줄을 가리는 축 — 못 고침」을 적음
- `coef/source_rows`·`duplicate_note` 는 암괴 중복 두 줄을 한 줄로 합친 사유 칸으로 이름 붙임
- 줄 열쇠 아홉을 `row_keys` 에 더함 — 서버가 줄마다 내는 `@axis` 가 곧 열쇠 ·
  넷은 **id 칸이 없어 축으로만 가려짐**(masonry_slope·masonry_back_length·stone_kind·masonry_class)
- 시험 셋 더함(12건) — 이름표 축이 서버 `@axis` 를 다 덮는지 · 구간 표기가 원문 그대로인지 ·
  축 칸이 고칠 수 있는 칸으로 서 있지 않은지
- ⚠ 예외 하나 적어 둠 — `formwork_reuse.reuse_count` 는 갈래표에서는 **값**, 비율표에서는 **축**이라
  서버가 한 판정만 내는 지금은 고칠 수 있는 칸으로 섬(판정 대기)

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FFCnEYNH4tsS2MbHvzBhZk
2026-09-16 13:12:58 +09:00
eomsangdon 651efae409 Merge remote-tracking branch 'origin/main_laptop_1' into sub_desktop_1 2026-09-16 13:09:00 +09:00
eomsangdon d3d76e65a0 Merge remote-tracking branch 'origin/dev' into sub_desktop_1 2026-09-16 13:08:58 +09:00
eomsangdonandClaude Opus 5 75ae9375d9 fix(z01): 자재 할증 두 벌 관계 명기 · coef 암괴 중복 한 줄로 · 참고 사례 갈래 둘
- **이원화가 아님을 두 자리에 못박음** — `material_surcharge.original_tables`
  「원문 표는 coef/surcharge_mat」 · `coef.variables.surcharge_mat.used_value_at`
  「읽어 쓰는 값은 material_surcharge/rates_pct」. 저쪽은 원문 보관이라 읽는 코드가 0
- **암괴 중복 두 줄** — L·C 둘 다 첫 줄에 `duplicate_same_value`, 둘째 줄에 `hidden_duplicate` +
  사유 「원문 두 줄 · 값 같음 — 화면에는 한 줄로 보임. 원문은 그대로 둠」.
  ⚠ 원본 줄은 안 지움 · `selection: pending` 과 「원문 오기 가능성」 주석 그대로 살림
  ⚠ 「역이 섞인 점질토」는 값이 달라 안 접음(L 1.35~1.4 ↔ 1.3~1.4)
- **참고 사례 갈래(`reference`) 새로 둠** — `structure_unit_observed`(울진소광 한 현장 관찰값) ·
  `revetment_sabang`(교본값에 설명 글 섞임). 트리엔 남되 기초데이터가 아님(사용자 판정).
  갈래 셈 로직 17 → 15 · 참고 사례 2
- 마스터 둘이 바뀌어 폴더 지문(`_manifest`) 둘 갱신 · 새 열 넷·값 묶음 둘 이름표 추가
- ⚠ `test_z01_master_data.py`(랩탑 메인)가 갈래 수를 박아 두어 함께 고침 — 데이터가 바뀌면
  따라가야 하는 상수임

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FFCnEYNH4tsS2MbHvzBhZk
2026-09-16 13:08:52 +09:00
eomsangdonandClaude Opus 5 4a6de21552 feat(z01): 기초데이터 아홉을 기초단가와 같은 길로 — kind 열넷(coef 토량환산 · material_surcharge · formwork_reuse · rebar_complexity · timber_structure_class · masonry_slope · masonry_back_length · stone_kind · masonry_class) · 열쇠는 축을 슬래시로(구간 이름은 품셈 원문 표기) · 축 칸은 못 고침(같은 이름이 줄마다 값·축으로 갈리는 자리도 줄마다 막음) · 원문 중복 두 줄은 값이 같을 때만 한 줄 + 사유(갈리면 멈춤) · 이음표·품셈 원문 표·글·구조물 실측·기슭막이 교본값은 안 태움(사용자 잣대 · 브레인 승인)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BW6Jdsh18WPtYUR6THZJqn
2026-09-16 13:08:09 +09:00
eomsangdon 630d3abd7d Merge remote-tracking branch 'origin/CODEX' into main_laptop_1 2026-09-16 12:58:30 +09:00
eomsangdonandClaude Opus 5 c58c38142c fix(z01): 자재 0원 70 줄 — 값이 안 실린 공시를 건너뛰고 앞 제값 채택 · 사유 남김
- 까닭 — 고르기 규칙이 「물품코드마다 가장 나중 공시」인데 값이 안 실린 공시(`prce=0`)가 옛 제값을 덮음.
  각형강관 25*25*1.4t `1,460 → 1,500 → 0`. 「가격이 0」이 아니라 **그 공시에 값이 안 실린 것**임
- 새 규칙 `_build_mat_price.py` — **원천 스냅숏은 읽기만** · 마스터 0원 줄만 손댐 ·
  6,999 중 **70 줄만 바뀌고 나머지 6,929 줄은 한 글자도 안 바뀜**(줄 수 그대로) · 0원 0 남음
- ⚠ 같은 날짜에 0 과 제값이 함께 실림(2025-04-24) — 날짜만 보면 0 을 집음.
  **0 을 건너뛴 뒤** 가장 나중 공시를 고름
- 조용히 안 바꿈 — 줄마다 `price_adopted_reason` 「○ 공시에 값이 없어 ○ 값을 씀」 ·
  공시 **날짜·번호도 채택한 공시의 것**으로(어느 판 값인지 화면에서 보임) ·
  `selection_policy` 에 0 건너뛰기 명시 · 못 고칠 줄 자리 `zero_price_unrecovered`(오늘은 빔)
- 이름표에 새 열 「값을 고른 사유」 · 마스터가 바뀌어 폴더 지문(`_manifest`) sha·크기 갱신
- 새 시험 7건 — 0원이 남는지 · 사유가 붙는지 · 날짜·번호가 채택 공시와 같은지 ·
  같은 날 0 과 제값이 섞여도 제값을 집는지 · 0원 아닌 줄을 안 건드렸는지 ·
  앞 제값이 없으면 빨강이 아니라 목록에 남는지

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FFCnEYNH4tsS2MbHvzBhZk
2026-09-16 11:57:21 +09:00
eomsangdon 0731f03f2f docs(cost): record base-data update history 2026-09-16 11:32:12 +09:00
eomsangdon 126f3d0ff7 Merge remote-tracking branch 'origin/sub_laptop_1' into main_laptop_1 2026-09-16 11:28:13 +09:00
eomsangdon f0103cff7c Merge remote-tracking branch 'origin/dev' into main_laptop_1 2026-09-16 11:28:12 +09:00
eomsangdonandClaude Opus 5 85743ee754 feat(z01): 덮개에 넷째 낱말 meaning_changed — 고칠 때 그 줄의 값 아닌 글자 칸(이름·규격·단위·인도조건)을 함께 적고 갱신 뒤 달라지면 「줄의 뜻이 바뀜」(같은 코드에 다른 기준 — 노임 국가유산직종 개편 · 자재 KS 개정) · was/now 는 서버가 한 줄로 합쳐 냄(이름 칸이 여럿인 자료가 있어 화면이 합치면 판정 두 벌) · 모아 보기 차례 맨 위 · 판·공표 날짜는 뜻 칸에서 뺌(브레인)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BW6Jdsh18WPtYUR6THZJqn
2026-09-16 11:28:10 +09:00
eomsangdonandClaude Opus 5 aa42700382 fix(z01): 뜻 바뀐 줄 이름이 안 오면 물음표 대신 「 옛 이름·지금 이름을 서버가 안 줌 — 버그」 · 서버가 합쳐 준 한 줄 그대로 보임(쪼개지도 잇지도 않음 · 브레인)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016VBGFXB9AbJBwXP19z75Qq
2026-09-16 11:23:01 +09:00
eomsangdon ea0ff63cf0 Merge remote-tracking branch 'origin/dev' into sub_laptop_1 2026-09-16 11:21:22 +09:00
eomsangdonandClaude Opus 5 fe10ef86ab feat(z01): 덮개 판정 넷째 meaning_changed — 같은 번호에 딴 물건(문화재목공 → 한식목공) · 값 어긋남보다 세게(줄 진한 붉음 · 칸 꽉 찬 붉음 · ) · 옛 이름/지금 이름 나란히 · 「새 원본 값으로 받기」 대신 「고친 값 버리고 지금 줄 값 ○ 쓰기」 + 한 번 더 물음 · 모아 보기 이름 「 뜻 바뀜」
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016VBGFXB9AbJBwXP19z75Qq
2026-09-16 11:19:55 +09:00