Commit Graph
29 Commits
Author SHA1 Message Date
eomsangdonandClaude Opus 5 a6f12fb07f feat(master_data): 기계 갈래 칸 이름 원문으로 · 틀 문서를 지금 데이터 모양에 맞춤
- `기계.json` — 갈래 칸 「세부분류」 → 「원문」(머리 묶음·줄 654) · 줄의 원문 글 칸은 「값원문」 으로(34 줄) · 줄의 `구분`·`상세구분` 과 이름이 겹치지 않게 함
- `check_master` MERGED 는 `master_keys.MERGED` 에서 받음 — 칸 이름을 한 곳에서만 적음 · 머리 「원문」 이 묶음인 파일도 틀 검사가 돎
- `master_keys.MERGED` · `build_기계_건설품셈.py` · `compare_estx.py` — 새 칸 이름
- `M01 서버` — 갈래 칸을 MERGED 에서 찾음(박은 이름 없앰) · 머리 원문이 묶음이면 `book` 은 빈 값
- `_틀.md` — 기계 원문·구분·값원문 · 자재품목 구분 채움과 묶음 문서 · 소요량·계수 「용도」 칸 · 인력 줄 갈래 칸 바로잡음
- `ref/_묶음_기계.md` 새로 — 구분 11 · 상세구분 174 (654 줄)
- `_갱신절차.md` 기계 절 칸 이름
- 검사 — `check_master` 틀 0 · 로직 0 · 시험 83 통과(test_m01_api 25 · test_masterdata_check 58)

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-20 22:24:13 +09:00
eomsangdonandClaude Opus 5 1bcc957e9a feat(master_data): 품셈재료 고르기 칸 · 로직 재료 줄 일괄 변환 · 후보 값 열 다섯
- `재료_품셈재료.json` 363 줄에 「고르기」 칸 — 자재품목 구분·상세구분[·규격] · 212 줄 채움(규격 조건 19) · 짝 없는 줄은 null + 비고에 까닭
- `scripts/build_품셈재료_고르기.py` — 자재품목을 가른 바로 그 품명 글자 규칙 재사용 · 손으로 바로잡은 25 줄은 OVERRIDE · 연결이 이미 있는 줄은 옛 방식 그대로
- `scripts/build_로직_재료_고르기.py` — 호표 요소 `MP…` 를 고르기 조건으로 바꿈(로직 32 파일 287 줄) · 고르기 빈 줄과 `{이름}` 낀 원문번호 줄은 그대로
- 일괄 시험 계산 전후 — 통과 1119 → 1203 · 새로 멈춤 0 · 앞뒤 다 통과한 1119 줄 금액 변동 0
- `check_master` — 품셈재료 「고르기」 칸 검사(조건 모양 · 없는 구분·상세구분 · 조건 밖 대표 · 후보 0)
- `GET /api/m01/materials` — 후보마다 값 열 다섯(`값들`) · `값` 은 시험 계산이 쓸 낮은 값 · 값 있는 줄을 맨 앞에
- `GET /api/m01/logic` 의 `prices` — 고르기 조건 줄도 실음 · 열쇠는 조건 글 `mf.cond_text` · 후보 수 포함
- `_틀.md` 5장에 고르기 칸 · 일괄 변환 스크립트

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-20 22:02:28 +09:00
eomsangdonandClaude Opus 5 999f3363db feat(master_data): 로직 재료 줄 고르기 조건 — 구분·상세구분·규격 후보 · 대표 줄 · 후보 목록 API
- `_틀.md` 7장에 재료 고르기 문법 — 호표 `요소` 를 조건 묶음으로 · 규격 낱말 조건 · 대표 줄 지정
- 엔진 `candidates`·`pick`·`check_pick` — 조건 안 후보 목록(화면·테스트 컨테이너 공용) · 시험 계산은 대표 줄, 없으면 값 있는 첫 줄(자재지역 우선)
- 로직 검사에 고르기 조건 검사 — 칸 이름 · 자재품목에 없는 구분·상세구분 · 조건 밖 대표 · 후보 0
- M01 서버 `GET /api/m01/materials` — 구분·상세구분·규격·자재지역으로 좁힌 후보와 기본 줄
- 옛 방식 재료 줄(`MP…`·`MT…` 키)은 그대로 돎

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-20 21:33:34 +09:00
eomsangdonandClaude Opus 5 819c5019ec knowledge(마스터): 미확보 9 직종을 사용자 지정 추정으로 · 구분 미확보 뺌
- 인력.json — 절단공·사진제판공·사진식자공·측량사·측량기사·시공측량기사·측량조수·시공측량조수·특수운전공 상태 「추정」 · 값은 준용 직종 노임 · 출처는 근거 문서 · 비고 한마디
- 구분 「미확보」 등록부·빌더 짝짓기 없앰 · check_master BOOKS 에 공간정보법
- 근거 md 에 「사용자 지정 추정」 절
- 로직 일괄 시험 계산 통과 1,109 → 1,119 · 멈춤 245 → 235

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-20 20:27:44 +09:00
eomsangdonandClaude Opus 5 7a9bcac924 knowledge(마스터): 추정 줄에 준용 직종 값 채움 · 출처는 근거 문서
- 상태 「추정」 아홉 줄 — 값·단위·일시간을 준용 직종 것으로 채움 · 출처 짧게(건설품셈 기계설비 13-06 · 제조노임 직종해설 · 엔산법 시행령 별표2 · 건설노임 명칭변경표 2010.1) · 비고는 공작기계공 「밀링원일 수 있음」 만 남김
- 시험사1급 준용 비파괴시험공 → 특급품질관리원
- 빌더 refill_estimated — 다시 지을 때마다 준용 직종에서 값 되채움
- check_master — 추정 줄 값 = 준용 직종 값 검사 · 출처 낱말에 엔산법
- 엔진 — 추정 줄은 제 값 · 호표 출처 「추정(준용: ○○)」

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-20 19:44:33 +09:00
eomsangdonandClaude Opus 5 a367f2afe1 knowledge(마스터): 엔산법 등급 적용 · 상태 「추정」 들임 — 미확보 28 → 9
- 기술사·특급~초급기술자·고급~초급숙련기술자·기계기사·기계산업기사 열 줄을 엔지니어링 현행 줄 옛이름으로 옮김(부문은 일반값 · 기계기사류는 기계·설비) · 로직 참조 326 곳 갈아 끼우고 호표에 「옛이름: ○○」
- 상태 「추정」 신설 — 구분은 대응 직종 것 · 값은 비움 · 준용에 대응 직종 키 · 호표 출처 「준용: ○○(추정)」 · M01 고르기에서 거름
- 추정 아홉 — 제관공·마킹공·현도공·산소절단공 → 플랜트제관공 · 제도공 → CAD설계사(기계) · 공작기계공 → 선반기조작원 · 옵셋인쇄공 → 종이및합성수지인쇄기계조작원 · 정보처리기사 → 초급기술자(정보통신) · 시험사1급 → 비파괴시험공
- 원문이 대응을 정하지 않은 아홉(절단공 · 사진제판공 · 사진식자공 · 측량조수 · 시공측량조수 · 시공측량기사 · 측량기사 · 측량사 · 특수운전공)은 미확보 그대로

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-20 19:29:47 +09:00
eomsangdonandClaude Opus 5 76ee8acb4b knowledge(마스터): 전력을 재료_유가전력으로 연결 — 자재품목 전력 2줄 뺌
- 품셈재료 「전력」 연결 = {이름: 전력량요금, 계약종별: 입력} — 유가전력 전력 줄을 가리킴
- 전력 쓰는 로직 8 줄에 입력 「전력 계약종별」(주택용 저압 · 일반용(갑)Ⅰ 저압 · 산업용(갑)Ⅰ 저압) — 품셈·계약예규에 계약종별 규정 없어 기본값 두지 않음
- 임시전력(갑)은 주택용 저압 요금 그대로(요금표 6.가) — 따로 고르기에 두지 않음
- master_material: 자재품목 아닌 줄은 「값」 한 칸으로 읽고 계약종별 후보를 고름 · check_master 연결 모양·끊김 검사도 맞춤
- 자재품목 MT000006 · MT000007 삭제 → _키대장.json 「폐기」 · 빌더 DROP 에 더해 다시 만들어도 같음
- _틀.md 재료 절 · 시험 둘 고침(전력 계약종별 · 연결 낮은 값은 시멘트로)

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-20 19:11:34 +09:00
eomsangdonandClaude Opus 5 991b671c32 knowledge(마스터): 되풀이 기호 바로잡기 · 미공표 산정 버림 · 자재품목 유류·원문번호 정리
되풀이 기호(〃 · ″ · " · 上同)
- 값·칸이름이 통째로 되풀이 기호인 자리 167 곳을 윗줄 값으로 — 단위 · 장비구분 · 장비명 · 항목 · 비고 · 재질
- 소요량 13-6-3 · 13-6-5 · 13-6-9 의 직종 칸 「〃」·「"」 는 윗줄 직종(플랜트제관공)으로 합치고 로직 식 8 곳도 함께
- 인력 LB000399(이름 「〃」)는 직종이 아니라 되풀이 기호 — 줄을 떼고 대장에 폐기
- 인치 기호(1/2〃 · ø12〃)와 설명 글 속 기호는 그대로

건설노임 미공표 산정
- 회차마다 증가율을 곱할 때 원 미만 버림 — 다산소프트와 같은 방식 · 값은 원 단위 정수
- 비고 「4-라 산정: 2025.9 210,772원 × 증가율(원 미만 버림)」
- 미공표직종_추적.md 5절 「단계마다 버림(채택)」 열을 채택으로 바꾸고 산정값(처리 없음)은 견주기용으로 남김

자재품목
- 유류 5줄(휘발유 · 경유 · 선박용경유 · 중유 · 등유) 뗌 — 값이 비고 글뿐 · 대장에 폐기 · 빌더도 뺌
- 품셈재료 중유(MP000359)는 미연결 — 중유는 받지 않기로 함 · 전력 2줄은 그대로 둠
- 원문번호(다산소프트 품번 M000…) 열 삭제 — 대조는 _키대장.json 에만
- 로직·품셈재료의 품번 참조 330 곳을 키로 · master_formula 는 「ID:키」 도 받음
- check_master · master_keys.stamp · M01 저장은 NO_NUMBER 테이블을 알아봄 · _틀.md · _화면_계약.md 도 맞춤

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-20 18:36:08 +09:00
eomsangdonandClaude Opus 5 4ab369c841 knowledge(마스터): 원문번호에서 번호 뒤 제목 뺌 — 절 번호만
- 소요량 · 계수 · 로직 · 기계 4,418 줄의 원문번호를 절 번호만으로(부문·제목 뗌) — 건설품셈 부문은 구분 칸에 있음
- 한 절에 표가 여럿이어도 번호는 같게 둠 — 식별은 키
- 대장 _키대장.json 의 원문번호는 옛 열쇠 그대로(빌더가 키를 다시 찾는 열쇠) · master_keys.stamp 가 줄에만 절 번호를 씀
- check_master — 부문 앞붙임 검사를 「절 번호만」 검사로 · 원문번호 겹침은 인력·재료만 · 대장 대조는 옛 열쇠·절 번호 둘 다 받음
- master_formula — 겹친 원문번호를 「ID:원문번호」 로 부르면 멈춤
- compare_estx · 시험의 「ID:원문번호」 참조를 키로 갈아 끼움 · M01 새 로직 초안 번호에서 부문 뺌
- test_자재품목_열_한_벌 의 낡은 기대값을 지금 데이터에 맞춤(관급 열이 조달청 값으로 바뀜)

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-20 18:03:54 +09:00
eomsangdonandClaude Opus 5 eb7cc60070 knowledge(마스터): 조종원 노임 시간 환산 · 빠진 기계 줄 되살리기
- 조종원 시간 환산 계수 셋(1/8 · 16/12 · 25/20)을 CC000336 으로 올림 — 출처 질의회신 건협기술-2230(2001.05.29)
- 기계 시간당 경비 계열 로직 여덟 줄의 조종원 수량을 하루 노임 × 1/8 × 16/12 × 25/20 으로 바꿈(비고 「환산 근거 미확인」 걷음)
- 다산소프트 기계경비 차이 중앙값 -16.7% → +0.2% · 조종원 -40.0% → +0.0% · 일위대가 중앙값 -0.6% → +0.0%
- 마스터에 있으나 로직에서 빠져 있던 기계 줄 열여섯 자리를 되살림(래머 · 소형브레이커 · 배관파이프 · 프라즈마 절단기 · 크레인 150ton · 트럭 2.5~10.5ton · 노면파쇄기 · 라인마커 · 종자살포기 · Trailor 30ton)
- 산림 09장 돈 로직 셋(GF000249 다짐 · GF000250 표토제거 답외 · GF000251 비다짐) 새로 세움
- 손료만 쓰는 로직(GC000273)의 손료 식을 「가격 × 손료계수」 로 — 상각·정비·관리를 안 나눈 기종도 셈이 됨
- 검사 도구: 품셈 본문이 아닌 출처(질의회신)는 절 대조 대상에서 뺌

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-20 17:29:17 +09:00
eomsangdonandClaude Opus 5 b2a762d8e1 knowledge(마스터): 나라장터 빼기 — 로직 호표를 자재품목으로 갈아 끼우고 MN 폐기
- 로직이 가리키던 나라장터 자리 121(정적 키 18 · 고르기 13벌)을 자재품목(MT) 줄로 갈아 끼움 — 이름·규격·단위가 맞는 줄 · 지역이 갈리는 품목은 서울 줄.
- 자재품목에 맞는 줄이 없는 넷은 품셈재료 미연결로 돌림 — 시너(MP000266) · 동 및 동합금용 용접봉 BCUP3 · 폴리에틸렌필름 0.04㎜ · 아스팔트싱글(새 줄 셋).
- 엔진이 자재품목 키를 바로 받으면 값 열 다섯 가운데 낮은 값(시험 계산용) · 출처는 「키.열」.
- 재료_나라장터자재.json 과 그 빌더를 old 로 옮기고 키 대장에 MN 폐기 · check_master · 키 대장 · M01 서버·화면 · _틀.md · compare_estx 의 나라장터 자리 정리.
- 끝 검사: check_master 틀 0 · 로직 0 · 일괄 시험 계산 통과 988 · 멈춤 363(앞 989 · 362 — 아스팔트싱글 한 줄) · pytest 67 통과 · typecheck 깨끗.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-20 16:49:47 +09:00
eomsangdonandClaude Opus 5 10418ccbd4 knowledge(마스터): 소요량·계수·로직에 구분·상세구분 — 표·줄마다 칸 · 갈래 목록은 서버가 줌
- 장 파일 137 개의 표 3,028 · 로직 1,351 줄에 구분(원문 + 부문 · 「건설품셈 공통」) · 상세구분(「03장 토공사」) 칸을 직접 둠 · 파일 머리의 부문·차례는 목록 차례로 남김
- 열 차례 — 표는 키 · 원문번호 · 구분 · 상세구분 · 이름 · 기준 · 출처 · 비고 · 조건 · 범위규칙 · 값칸 · 줄 · 주 · 그룹(맨 뒤) · 로직은 소유 다음에 비고
- 서버 — GET /subs?group= 이 구분·상세구분 목록(장 차례대로) · GET /tables 가 파일을 가로질러 구분·상세구분·찾기로 거르고 쪽 나눔 · GET /logics 도 구분·상세구분으로 거름 · 새 줄은 서버가 갈래를 채움 · 죽은 book 칸 걷어냄
- check_master 가 구분·상세구분이 파일 머리·이름과 맞는지 봄 · adopt 가 빌더 줄에 갈래를 찍어 되돌리기 시험 글자까지 같음 · _틀.md · 화면 계약 · 화면 트리 · 시험 같이 고침

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-20 16:30:48 +09:00
eomsangdonandClaude Opus 5 9de61eb251 knowledge(마스터): 재료 열 한 벌 정리 — 시중물가 → 자재품목 · 값 다섯 열 · 유가·환율도 같은 열
- 재료_시중물가.json → 재료_자재품목.json(테이블ID MT · 키 그대로) · 모든 줄이 같은 열 한 벌(키 · 원문번호 · 구분 · 상세구분 · 이름 · 규격 · 단위 · 물가자료 · 유통물가 · 물가정보 · 거래가격 · 관급 · 출처 · 비고 · 면수)
- 값 묶음(시중·조달)을 풀어 다섯 값을 열로 · 관급 = 조달 값(4,552 줄 · 기간은 비고 「조달 26.7」) · 원문 가격정보만 남은 72 줄은 값 열에 안 넣고 비고 「가격정보 ○○」 · 구분·상세구분은 원문에 분류가 없어 비움
- 재료_오피넷유가 · 환율_한국은행환율도 열 한 벌(기준일 → 규격 · 유가 구분 = 전국평균/시도별 · 상세구분 = 지역) · 상품코드·지역코드 삭제
- 엔진 단가(연결된 줄의 낮은 값 · 출처 = 「<키>.<열>」) · check_master 열 검사 · M01 고르기(procure 걷어냄) · 빌더 · _틀.md · 화면 계약 · 시험 같이 고침

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-20 15:55:40 +09:00
eomsangdonandClaude Opus 5 1447750e89 knowledge(마스터): 인력 열 한 벌 정리 — 조사 → 구분 · 상세구분 · 상태 · 일시간 · 준용 공통 칸
- 인력.json 392 줄이 같은 열 한 벌(키 · 원문번호 · 구분 · 상세구분 · 이름 · 규격 · 단위 · 값 · 출처 · 일시간 · 상태 · 옛이름 · 비고 · 준용)
- 건설업 미공표 14 는 4-라 산정값을 값에 · 상태 「산정」 · 근거는 비고 한 줄 · 산정·신뢰도·업종·부문·환산비·후보 등 열두 칸 없앰
- 머리 「구분」 에 원문 · 기관 · 판 · 공표일 · 원천 · 상세구분 등록 — 새 조사는 한 항목 더하고 줄만 붙이면 끝
- 엔진은 준용이 있으면 그 직종 값 · 없으면 값 · check_master 인력 열 검사 · M01 구분·상세구분 거름과 구분 목록 API · 빌더도 새 열

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-20 15:12:54 +09:00
eomsangdonandClaude Opus 5 260c9c99cb knowledge(마스터): 옛 직종 이름 적용 — 준용대상 16 직종을 현행 줄 「옛이름」 으로 옮김 · 엔진 통합 차례 없앰
- 인력.json — 원문 확인 대응만 현행 줄에 옛이름 칸 + 짧은 이력 비고 · 옮긴 준용대상 16 줄 삭제(48 → 32) · 절단공은 철근 작업 한 줄만 철근공으로 가름
- _키대장.json — 옮긴 16 키에 「폐기 → 새 키」
- 로직 5 파일 89 호표 줄 — 현행 직종 키로 갈음 · 줄 비고에 「옛이름: ○○」
- 엔진·틀·빌더·M01 — 값 → 준용 → 산정 차례 · 옛이름 칸 읽기 전용 · 이름 찾기에 옛이름 걸림

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-20 09:38:53 +09:00
eomsangdonandClaude Opus 5 32b19c547d feat(master_data): 키 개편 뒤따름 — _틀.md 새 규칙 · 빌더 잇기(adopt) · ESTX 비교 · 화면 계약
- _틀.md: 파일 이름(인력.json · 기계.json · NN장_장 제목) · 머리 부문·차례 · 키·테이블ID·대장 · 변수(키 · ID:원문번호 · 찾기(QF…) · 로직(GC…))
- master_keys: old_view(옛 이름으로 읽기) · adopt(빌더 옛 모양 → 키·한 테이블·장 이름 · 부문 앞말 · 참조 변환) · order_chapters(차례)
- 빌더 7개 끝에서 adopt · 노임·시중물가 빌더 다시 돌려 결과 같음(시중물가 머리 비고 글 한 줄만 「키」) · 기계·기계설비 7장은 사본 폴더에서 같음
- compare_estx: 인력.json 조사 · 기계.json 세부분류 · 로직 GC:원문번호 · 네 갈래 모두 돌아감
- _화면_계약.md: key = 키 · 새 줄 키는 서버가 대장 다음 번호 · 키 못 고침

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-20 02:09:04 +09:00
eomsangdonandClaude Opus 5 3f4fd66d21 feat(master_data): 노임 마스터화 — 원문 md 다섯 갈래 노임 · 준용대상 짝짓기·통합 · 미공표 산정 · ESTX 항목 비교
- 새 요소 파일(우리 md 에서만 · 판 2026-01-01): 엔지니어링노임 56 · 측량노임 20 · 건설사업관리노임 4 · SW노임 17 · 산림노임 2 — 빌더 build_인력_노임.py · 줄 수·값 md 기계 대조
- 준용대상 49 → 48: 측량중급기술자 옮김(로직 참조 8) · 원문 통합 목록 5 직종 통합 칸(목도 · 특수비계공 · 함석공 · 갱부 · 스레이트공) · 절단공 갈림 · 비슷한 이름 21 후보
- 건설노임 미공표 14 산정{값 · 근거 · 마지막공표} — 원문 회차 평균 그대로 이음 · 석조각공·드잡이공편수 다산소프트와 이음 계열 다름 비고 · 2026-09-01 적용분 확보됨 비고
- 엔진 차례 값 → 준용 → 통합 → 산정 · 호표 출처 · M01 준용 후보 7 노임 파일 · 통합·산정·후보 칸 읽기 전용
- ref/_비교_estx.md 10절: ESTX 378 줄 중 371 짝 · 짝 없는 직종 42 · 일괄 시험 계산 통과 1104 → 1115

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-20 01:34:24 +09:00
eomsangdonandClaude Opus 5 91640faf54 fix(master_data): ESTX 다섯 갈래 노임 파일 뺌 · 값 확인 못 한 직종은 모두 준용 — 인력_준용대상
- 인력_엔지니어링노임 · 측량노임 · 건설사업관리노임 · SW노임 · 산림노임 뺌(출처 모르는 105 줄 · 원문 확보 뒤에만)
- 인력_미확보 → 인력_준용대상 49 직종(18 직종 되돌림) · 줄마다 준용 칸 null · 로직 참조 526 곳 되돌림
- M01 준용 고르기 — 준용대상 파일도 · 후보 = 건설노임·제조노임 공표 직종 · ref = 인력:원문:열쇠
- 로직 일괄 시험 계산: 통과 1011 · 인력 준용대상 값 없음 176 · check 틀·로직 0

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PAdA5ThqmtVSsbzjusk1cJ
2026-09-20 00:00:36 +09:00
eomsangdonandClaude Sonnet 5 796b0f8efc merge: origin/sub_laptop_1 받기 — 노임 준용 + 품셈재료 연결 양쪽 살림
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-19 23:42:11 +09:00
eomsangdonandClaude Opus 5 4277906258 feat(master_data): 재료 마스터 모양 확정 반영 — 시중물가 시중·조달 두 묶음 · 재료_품셈재료 연결 · 낮은 값과 출처
- 재료_시중물가: 채택 · 견적가 칸 뺌 · 값 = 시중{다섯 칸 + 면수} · 조달{값·출처·기준}
- 관급 줄 가격정보 4,552 → 조달(출처 가격정보 · 기준 = 원천 면수) · 나라장터 온전 짝 54 → 조달 출처 「나라장터:<열쇠>」(값 안 베낌)
- 재료_나라장터자재 머리 「자료」 = 조달 자료
- 재료_자체 → 재료_품셈재료: 값·출처 칸 없음 · 요구절 · 연결(열쇠 5 · 후보 조건 3 · 못 이음 352)
- 엔진(master_material): 연결된 줄의 시중·조달 가운데 낮은 값 · 호표 줄 출처 · 후보 조건은 로직 입력 「자재지역」 — 줄 없으면 「지역 값 없음」 · 규격 여럿이면 「후보 여럿」
- 로직: 재료:자체 → 재료:품셈재료 516줄 · 자재지역 입력 24 로직 · check_master 품셈재료 틀·연결 검사 · M01 prices 출처
- 일괄 시험 계산(울진): 계산됨 1,109 · 값 없음 232 · 후보 여럿 8 · 미공표 2

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-19 23:38:09 +09:00
eomsangdonandClaude Opus 5 a8a8e49b52 feat(master_data): 노임 준용 칸 · ESTX 다른 조사 다섯 갈래 노임 파일 · 인력_자체 → 새 노임 열쇠와 인력_미확보
- 역산: ESTX 미공표 추정 = 마지막 공표값 × 전체직종 평균 증가율 공표일마다 이어 곱·원 미만 버림 (5 직종 원 단위 일치 · 9 직종 앞 값 없음)
- 건설노임 미공표 14 줄에 준용 칸(null) · 엔진은 값이 비면 준용 직종 값 · 호표 출처 「준용: <직종>」 · M01 계산표에 표시
- 새 파일: 엔지니어링노임 59 · 측량노임 20 · 건설사업관리노임 7 · SW노임 17 · 산림노임 2 (줄 수·값 합 ESTX 와 같음)
- 인력_자체 49 → 새 노임 열쇠 18 · 인력_미확보 31 · 로직 참조 526 곳
- 로직 일괄 시험 계산: 통과 1011 → 1088 · 인력 값 없음 멈춤 176 → 84

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PAdA5ThqmtVSsbzjusk1cJ
2026-09-19 23:31:02 +09:00
eomsangdonandClaude Opus 5 14e3261bbb feat(master_data): 재료_시중물가 — 다산소프트 EST 2026-07 자재 23,980줄(개발용 · 배포 전 판권 구매)
- 값 묶음 채택·가격정보·물가자료·유통물가·물가정보·거래가격·견적가 · 면수 묶음 · 0 은 null
- 원문 이름 「시중물가」 — _틀.md 2장 · check_master BOOKS
- 옮기는 스크립트 build_재료_시중물가.py — 원본 대조(줄 수 · 출처별 합 · 표본 50줄) 포함

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-19 22:28:54 +09:00
eomsangdonandClaude Opus 5 eeaa8ac504 refactor(master_data): 건설품셈 표형 요소·로직 열쇠 앞에 부문 — 「건축 1-1-1 계수」 · 「공통 8 기계 시간당 경비」
- 소요량 2059 · 계수 335 · 로직 1102 열쇠에 부문 붙임 · 찾기·로직 부르기 참조 모두 바꿈(산림품셈 로직 포함)
- 검사 도구: 건설품셈 표·로직 열쇠에 부문 없으면 틀 알림 · 파일 사이 열쇠 겹침 검사 그대로
- M01 새 로직 열쇠에 부문 앞말 · _틀.md 규칙 · 시험 열쇠

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-19 20:23:57 +09:00
eomsangdonandClaude Opus 5 31dd7a7e24 feat(master_data): 인력_자체 — 막힌 절 7개 세움 · 범위규칙 이상·이하
- 인력_자체.json: 중급기술자 · 절단공 · 특수비계공(값 null · 관리자가 채움)
- 2-9-12 · 2-11-8 · 2-11-9 · 2-12-4(조립해체 · 추진 · 이동설치) · 5-1-7 인장 · 6-2-5 · 6-3-6 해체 로직
- 2-1-1 · 2-1-2 범위규칙 이상·미만 · 2-12-4 범위규칙 이상·이하
- master_formula: 이상·이하(양 끝 포함 · 겹치면 위 끝이 가장 작은 줄) · _틀.md 한 줄
- 재료_자체: 아세틸렌가스(ℓ)

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V1MKKZKpUHTPKb513FneU8
2026-09-19 18:14:16 +09:00
eomsangdonandClaude Opus 5 7f4fe9a8f5 feat(master_data): 건설품셈 공통 2장 로직 76개 — 가설공사
- 로직_건설품셈_공통2장.json: 가설건축물 손료·설치 · 울타리 · 규준틀 · 동바리 · 비계 · 안전시설 · 흙막이 · 보양·청소 · 리프트
- 공구손료율은 장 계수 표에서 찾기 · 재료 손료 = 재료량 × 2-2 손율
- 재료_자체: 조립식 가설건축물 주자재 · 콘테이너 · 축중계 · 조립말비계 부재 · 방지망·보호망 재료
- 식 엔진: 조건 이름도 작은따옴표 허용(「규준틀 높이」)
- 막힘: 2-9-12 · 2-11-8 · 2-11-9 · 2-12-4(「중급기술자」 노임 요소 없음) · 2-1(면적 기준표 — 범위규칙 글이 엔진 규칙 이름 아님)

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V1MKKZKpUHTPKb513FneU8
2026-09-19 17:47:38 +09:00
eomsangdonandClaude Opus 5 c68e26e882 feat(master_data): 건설품셈 공통 6장 로직 60개 — 철근콘크리트공사
- 로직_건설품셈_공통6장.json: 콘크리트 · 철근 · 거푸집 · PSC · 교량 가설·부대공 · 조립식 구조물
- 일당 편성 표 = 편성 ÷ 시공량 · 기계 1대 × 8시간 ÷ 시공량 · 공구손료는 인력품(작업조 노임)의 %
- 8장: 기계 고르기 더함 · 조종원직종 입력 로직 새로(고소작업차 — 원문 운전사 구분에 이름 없음)
- 재료_자체: 에폭시 접착제 · 폼타이 규격 · 강재거푸집 · 문양거푸집 · 원형맨홀거푸집 · 쉬즈관
- 식 엔진: 맞는 줄이 여럿이면 찾는 값 칸이 있는 줄만 · 괄호 든 칸 이름은 작은따옴표
- 막힘: 6-2-5(절단공 노임 요소 없음) · 6-3-6 해체(특수비계공 노임 요소 없음)

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V1MKKZKpUHTPKb513FneU8
2026-09-19 17:42:08 +09:00
eomsangdonandClaude Opus 5 6a911c04cf feat(master_data): 검사 도구 check_master.py · 틀 판정 반영
- 검사 넷: 틀 · 본문 대조(표 허구 · 절 결손) · 로직 검사(요소·표·칸 · 찾기 조건 · 로직 입력 · 돌고 도는 참조) · 시험 계산(호표 줄 · 비목 합)
- 식 읽기·계산은 master_formula.py(틀 7장 범위 · eval 없음 · Decimal)
- 틀: 번호로 적은 값은 원문 이름을 비고에 · 분수·식 값 · 짝 칸 · 8장 검사
- 기계 아홉 줄 비고에 조종원직종 원문 이름(건설기계운전사)
- 시험 test_masterdata_check.py: 견본 셋 손 계산 그대로 · 견본 파일 검사 통과

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-19 15:59:18 +09:00
eomsangdonandClaude Opus 5 d24d2606d4 feat(master_data): 틀 판정 13 반영 · 견본 여섯 파일 맞춤
- _틀.md: 표 칸 · 단위 묶음 · {이름} 끼우기 · 비교·그리고·또는 · 값 범위 · 빈 조건 · 원문 칸 · 줄 단위 · 작은따옴표 · 로직 결과 비목 묶음 · 호표 비고
- 기계: 상각비·정비비·관리비·계 · 주연료종류 · 조종원직종
- 계수_건설품셈_공통8장: 8-1-7 손료보정 표
- 굴착기 로직: 8-1-7 보정 · 지역 유가 · 비목별 결과
- 노체포설: 비목별로 나눠 얹음 · 찾기 글자 값 따옴표

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-19 15:40:52 +09:00
eomsangdonandClaude Fable 5.1 291e8a8cfe feat(master_data): 요소·일위대가 로직 파일 틀 초안
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QqkvdyxUtANWroVKpQUyxE
2026-09-19 15:25:08 +09:00