- 새 순수 계산 logic/M01_MasterData_logic_source_notes.ts (서술 줄 가르기 · 줄바꿈 칸 판정) · 원문 글 · 차례 그대로
- 원문 표 2,573 · 폭 420 기준 서술 줄 때문에 넘친 표 138 → 0 · 넘침 1,228 → 1,020
- 시험 test_833_1_source_notes (보기 + 전수 글 보존)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- 행정구역 표 = 시도 17(짧은 이름) + 전국 · 시도별 시군구 229(자치 227 + 제주 행정시 2 · 2026-07-01 인천 제물포 · 영종 · 검단 반영) · 옛 이름(강원도 · 전라북도 · 청원 · 마산 · 진해 · 연기 · 인천 남구 · 중구 · 동구 · 경북 군위) · 별칭(영종도 · 용유도 · 세종시 · 제주도)
- 풀이 master_region.split — 시도만 = 시군구 「전체」 · 시군구만 = 시도 찾음 · 읍면 = 시군구(읍면) · 여러 시도 = 쉼표 · 제외 조건 = 끝에 「 제외」 · 조합 이름 = 비고 · 잘린 끝 낱말 = 하나뿐인 시군구(동두 → 동두천 · 금 → 금천)
- 지역 글 242 종 모두 풀림(못 푼 것 0) · 옛 이름 바꾼 줄 648 · 줄 · 키 · 값 그대로(24,027 · 비고만 조합 121 줄)
- 쓰는 곳: 지역 글 = material_merge.where(시도 + 시군구) — M01 찾기(label · 검색어 · 자재지역) · 표 찾기 · 후보 글 · 불러오기(M02_Mat_Place · Hopyo_Match · Hopyo_Material — 가져온 지역 낱말도 짧은 이름으로 · 시군구가 있으면 그것으로 맞댐)
- M01 화면: 시도 = 고르기(목록 밖 값 「대전,충남」 은 끝에) · 시군구 = 글 · 새 줄 - · -
- 로직 1,520 시험 계산 전후 다름 0 · check_master 틀 · 본문 · 로직 · 조합 · 목차 0 · 단위 27 · 배 7(전과 같음)
- 빌더 adopt 가 로직 장 파일 「차례」 를 하나씩 미는 것은 이번 일 밖 — 되돌림(로직 파일 손대지 않음)
- 새 지킴 test_830_11_material_sido · 낡은 시험 고침: test_830_10 · test_830_2(열 · 지역 기대를 두 칸으로 · 830-11 새 겹침 38 묶음 = 청원 → 청주 4 · 조합 비고 34) · test_m02_hopyo_match(강원도(강릉시) → 강원 강릉)
- 틀 문서 _틀.md 11 절 행정구역 표
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- 정본 = 장 파일 머리 「차례」(order_chapters) — 건설 공통·토목·건축·기계설비·유지관리 → 산림 → 자체 로 다시 매김(소요량 · 계수 · 로직 144 파일 머리 한 줄씩)
- 「차례」 없는 파일(자체)은 맨 뒤 — chapter_order 한 곳 · M01 목록 · 로직 목록 · M02 기준 목록 셈 순서가 같이 따름
- 낡은 시험 test_m01_api 의 산림 먼저 단정 2 줄 고침 · 지킴 시험 test_843_book_order 추가
- 로직 내용 · 키 · 금액 그대로
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- 새 M02_Mat_Place: 가져온 이름 · 규격 → (뺀 이름, 뺀 규격, 지역, 상하차)(material_merge 판독 한 벌) · 고르는 차례 rank
- 고르는 차례 = 상하차 맞음(글 없으면 -) › 값 있는 줄 › 줄 지역 › 전국 · 지역 모름 › 서울 › 경기 › 그 밖(값 가운데에 가까운 줄)
- Elem_Alias(_same · one · region_of) · Hopyo_Match(목록에 지역 · 상하차 · 값 · 이름 같음 = 뺀 이름 + 지역 · 상하차 같음) · Hopyo_Material(_places · 변형 지역 = 지역 칸 · _prefer) · MatSame._pick · MatFind 후보 글 = 지역 칸
- 다시 고르기 · 찾기 창 · 줄 풍선말 후보 글에 지역 · 상하차(M01 placeNote 한 벌)
- 시험: 814_1 · m02_hopyo_match 기대를 지역 칸 꼴로 · 새 지킴 test_830_10_material_region 21
- 불러오기 지킴 812_1 · 814_1 · 815_1 · 817_1 · 827_2 · 827_3 · 828_1 · 828_2 · 778_5 ×2 · 793_2 ×2 · 797_1 ×2 · m02_hopyo_match 통과 · typecheck 0
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- master_material.label = 이름 + 지역 칸 · 검색어 지역 낱말 · 자재지역 입력 · 고르는 차례(master_pick)가 이름 글 대신 지역 칸과 맞대짐
- 로직 1,520: 같음 1,517 · 전부터 멈춤 3(GC001199 ~ 1201) — 지역 칸만 고쳤을 때 다르던 11(시멘트 전국 · 포항 모래 · 포항 레미콘)이 원래 줄로
- 계산 줄 품목 칸에 지역 · 상하차 · M01 고르기 창(가격 연결 · 로직 재료 후보) 글에 지역 · 상하차(모름 「-」 뺌)
- M01 표 찾기(Store_Find) 낱말이 지역 칸에도 맞음 — 「레미콘 서울」 · 저장 뒤 찾기 기억 지움도 지역 칸 포함
- 새 줄 지역 기본 「-」 · test_m01_pick 합판 서울 기대를 지역 칸으로
- check_master 틀 · 본문 · 로직 · 조합 · 목차 0 · 단위 27 · 배 7(전과 같음)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- 지역 칸 = 단위 바로 뒤 · 상하차 앞 · 적힌 지역 글 그대로(꼴 일곱 F1 ~ F6 · 6,604 줄 · 242 종) · 없음 = -(17,423 줄)
- 이름 꼴: 레미콘(서울)-사급 → 레미콘-사급 · 레미콘(관급)-경상북도(칠곡군) → 레미콘(관급) · 이형철근(SD400,제주)-관급 → 이형철근(SD400)-관급 · 모래(건조상태·전국) → 모래(건조상태) · 관급 · 사급 글은 남김
- 지역 아님은 그대로: 업체 · 산지(농산개발(홍성) · 보령웅천석) · 수종 · 상표
- EST 이름 칸 30 자에서 잘린 지역 글 30 줄 = 잘린 그대로 · 비고 「지역 글 잘림」
- 상하차: 폐기물운반비(상차포함) = 상차 · (상차제외) = - · 글은 이름에서 뺌(상차 125 → 135)
- 줄 · 키 · 차례 · 물가지 값 · 면수 · 출처 그대로(24,027) · 새 겹침 0(겹침 422 묶음 = 830-9 때부터)
- 손 값(지역 · 상하차 · 일반가격) 빌더가 이어 받음 · 「-」 은 손 값 아님
- check_master 지역 빈 칸 검사 · test_830_2 기대를 지역 칸 꼴로
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- 요구 834 · 835 · 836 · 837 — 보기 · 관리 방식(열 구성 · 조달청 0 · 일반가격 · 상하차 고르기 · 가장 낮은 값 규칙) 그대로 · 항목 목록만 EST 그대로
- 빌더 통합 단계 걷음 — material_merge = 열 한 벌 · 상하차 판독(split_load) · place 만 남김(지역 · 관급/사급 묶기 걷음)
- 재료_자재품목 17,692 → 24,027 줄 = 830-1 24,092 − 재료 아닌 줄 65 · 키 = 830-1 키 · 새 키 0 · 키대장 = 830-1 대장 − 65 · 「다음」 그대로
- 830-1 대조: 키 · 구분 · 상세구분 · 단위 · 물가지 넷 · 출처 · 면수 같음 · 다른 것 = 열 구성 · 조달청 값 0 · 비고(조달 4,552 · 가격정보 2) · 상하차 글 뺌 384(이름 297 · 규격 87 — 요구 836)
- 상하차 = 이름 · 규격 끝 인도 조건 글(도착도 259 = 하차 · 상차도 류 125 = 상차)을 칸으로 옮기고 글은 뺌 · 나머지 -
- 빌더가 손 값(상하차 · 일반가격)을 원문번호로 이어 받음 · 빌더 두 번 = 같은 파일
- 사급/관급 열은 두지 않음(요구 837 — 단가산출 쪽 몫)
- 품셈재료 옮긴 줄 2(모래 · 자갈 건조상태 전국)의 830-2 통합 이름 · 비고를 830-1 글로 되살림
- 시험: test_830_2 를 이번 상태로(통합 규칙 시험 지움 · 상하차 글 뺌 · 줄 = EST 그대로 · 24,027) · 830-2 가 통합에 맞춰 바꾼 기대를 830-1 판으로 되돌림(814_1 · 815_1 · 827_2 · 827_3 · m02_hopyo_match · m01_pick · m01_api 「시멘트 전국」 xfail 걷음 · masterdata_check 자재지역) · 울진 레미콘 = 관급 줄뿐 → 「지역 값 없음」 · check_links 0
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- 열 한 벌 = 키 · 구분 · 상세구분 · 이름 · 규격 · 단위 · 상하차 · 조달청 · 물가자료 · 유통물가 · 물가정보 · 거래가격 · 일반가격 · 출처 · 비고 · 면수(material_merge.COLUMNS 한 곳 · check_master 가 씀)
- 「관급」 칸 → 「조달청」(값 0 · EST 가격정보 값 안 씀) · 새 칸 「일반가격」(빈칸 · 시스템 관리자 손 입력 · 빌더가 원문번호로 이어 받음) · 상하차 = 단위 바로 뒤
- 남는 줄 지역 기준 = 전국 › 지역 없음 › 서울 › 서울 권역 › 경기 › 그 밖(값 중간) · 기준 지역은 비고 「통합: 기준 지역 …」(지역 없는 묶음은 안 적음)
- 재료 아닌 줄 삭제(요구 832) — 품질시험 수수료 60(가격정보 출처 「2026(경북)」) · 일반 도로용 블록 5(「~26.10.16」) · 치즐 2 줄은 남김 · 값 없음
- 재료_자재품목 24,092 → 17,692 줄(통합 6,335 · 재료 아닌 줄 65) · 남는 줄 키 = 830-1 키(7565ee787 이 지운 대장 키를 되살려 다시 지음 · 새 키 0) · 남는 줄 물가지 값 바뀐 것 0 · 빌더 두 번 = 같은 파일
- 가장 낮은 값 = 사급 칸(물가지 넷 + 일반가격) — master_material.SLOTS · M02_Elem_Alias.PRICES · M02 PRICE_SLOTS · 조달청 칸 안 봄 · M01 고르기 「관급」 표시 = 조달청 칸 · B09 대비표 「관급」 출처 = M01 조달청 칸(이름 그대로)
- M01 재료 화면 상하차 = 고르기(부품 createSelectField) · 새 줄 기본 「-」 · 로직 고르기 표 · 시험 계산 값 줄에 일반가격
- check_master 틀 · 로직 · 조합 0 · 단위 27 · 배 7(전과 같음) · _틀.md · _갱신절차.md 열 정의
- 시험: 새 test_830_2_material_merge · test_830_1 지움(EST 그대로 상태 = 830-2 로 끝남 · 남는 검사는 830_2 로) · 지역 줄 · 관급 이름 · 관급 칸을 보던 시험 기대값 고침(m01_api · m01_pick · masterdata_check · 814_1 · 815_1 · 827_2 · 827_3 · 750_1 · m02_hopyo_match · m02_labor_doc) · 「시멘트 전국」 검색어 시험 = xfail(830-3 연결 할 일)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- 원본 wM_JajeXLS = 재료비 수량집계표 엑셀 내보내기 한 방향뿐(REA 37 · TWM_JAJEXLS 0x5658bc) — 추측으로 만든 자재 기준자료 왕복 메뉴·API·시험 삭제
- 남김: 「재료비 수량집계표를 엑셀파일로 만들기」(conv_jaje · scr_jaje)
- 낡은 시험 test_jaje_xlsx_roundtrip_and_edit · conv_api 의 jaje 왕복 삭제 — 원본에 없는 기능
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- check_master.calc_all: 고르기 목록이 빈 입력이 있는 로직(내 기계 전용 식)은 멈춤이 아닌 「건너뜀」 — 결과는 (통과 · 멈춤 · 건너뜀 키) 셋 · 계산전부 출력에 건너뜀 수와 키
- 호출 시험 둘(test_masterdata_check · test_713_4)을 셋 묶음에 맞춤
- 나머지 1,517 개 시험 계산 결과 그대로 · 정본 · 금액 안 바뀜
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- JDL 줄 = 탭 구분 + \x05/\x07 덧붙임(검사기 0x504d20 · 고정폭 표는 죽은 고리 — 34 §17.9 바로잡음) · 단가 목록 7종·Main·GongJong 머리·Global.Ini 상수 키 · zip 받기
- 구버전 판 가리기(Chk_Data 0x459280) · 7.x/DOS 표별 필드 대응 · B→X 조건 = 단위 X
- 엑셀 역등록 PRPT「속성」·PRIN「대상」·PROUT「저장」 = PR/RR 줄만 · 원본 BDQTY 4건 일치
- 자재 = 재료비 수량집계표 엑셀 내보내기(주요건설자재현황 시트)
- 그림 코드 = COSTN I 코드 IFORM · SIZE = 그림 클래스 이름
- 지식DB 37번
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- 새 지킴 시험 test_830_1_material_est_state: ESTX 를 빌더 build() 로 지은 기준 표와 정본 대조(키 · 이름 · 규격 · 단위 · 값 다섯 · 면수 · 출처) · 조달청 줄 0 · ESTX 밖 줄 = 품셈재료 119 · 키대장 = 표 · 열 한 벌
- test_masterdata_check 자재품목 열 한 벌: H 형강(관급) 관급 기대값 조달청 1,301,590 → EST 1,228,830 · 비고 「조달 26.」 · 조달청 제조사별 최저가 줄 확인(MT001637)은 뺌(조달청 값이 정본에 없음)
- update_관급단가*.py 5 · ref/_설계_관급단가_갱신.md · _갱신절차.md 관급 절 머리에 「지금 정본에는 적용 안 함 — 요구 822」 (걷을지는 사용자 결정 뒤)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- A 코드 = COSTA · S_JDA 참 = 저장 단가 · 거짓 = AAMTn 노무비율 나눔 · ACTTYP·ACTOPT = PRJLST · calcBoq·api_load 연결
- EXRNM 참 = S 줄만 단가×율/1000 · ECD 자리 버림 · 천원 · 전각 $
- 손료 계수 반올림 = 첫 버림 자리 5 이상 올림
- 적용기준 국가 2·지방 0·행자부 1 · 행자부 RATE_M 조회 rateMLookup
- 지식DB 36번
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- 지식DB REA 분석 33 기성준공단계 작업자료(정적분석 보고서·근거)
- 기성 공사(PCLASS 6) 저장 = COSTW2~4 · [2·3·4_KANJUB] n_C_* 기성 화면 값 그대로
- save_payload.js 로 저장 요청 묶음 분리(view_prj_boq.js 700줄 한도)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- 원인 셋: ① 목록 불러오기 응답 순서 가드 없음(Rows · Machine · Tables · 복사 고르기 · 고를 재료 판) → 느린 회선에서 앞 글자 응답이 뒤 글자 목록을 덮음 ② 글자 칸 조합마다 input 이 검색을 걸음 ③ 키보드가 뜨고 닫을 때마다 watchFit 이 줄 수를 다시 재 목록을 다시 받아 그림 · 첫 그림 어림(6)과 잰 값(5) 어긋남으로 한 글자에 두 번 받음
- 공용 고침: ui_template_pager(holdForKeyboard · 직전 잰 줄 수 어림) · device_context(찾기 칸 조합 보류) · M01 Rows · Machine · Tables · Page · Pick · LogicLab_Copy
- 시험: test_709_pager_fit 에 holdForKeyboard 1 건 더함
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- ㉯ STC 일위 = HP 호표(엑셀 일위대가표 길과 같은 꼴 · 「일위대가표」 시트) → 목록 · 만들기 · 고를 재료 판(구성 줄 · 「일위대가 N」)
- ㉰ 구성표 중기 → 기계구성(엑셀 중기사용료와 같은 값 · 달러 손료 = 천원) · 같은 파일 구성 대조 같은구성 → STmate 기계 찾기
- ㉱ 낙찰률 줄 2 칸(원단가) = 구성 셈 · 일위 머리만(엑셀 일위대가표와 같음) · 산근 · 자원 = 1 칸 그대로(엑셀 단가산출근거와 같음 · 812-1 짝 0)
- 별도계상 = 자재 이름 · 규격 「별도계상」 · 「별산」(엑셀 비고 「별산…」 짝 · 828-2 대조)
- MyMachine 엑셀 중기사용료 잡품 줄 = 잡재료 · 잡재료비 이름도(원파일과 같은 값)
- 시험 test_828_1_stc_composition 새로 · test_814_1 낡은 칸 고침(원파일 호표 0 → 45 · 격자 일위대가표 시트) · test_810_1 거울 대조 글 칸 앞 빈칸 걷음
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- M02_San_Xlsx_Ilwi(새) = 일위대가표 읽기 한 곳 — N 열 메타(COD · IPR · PRI · PRO · EQC · KWN · DVD) · O 열 차수 꼬리 기준 · 줄 꼴 = 828-1 M02_San_Ilwi 꼴 + 엑셀 칸(행 · 차수 · 비고 · 전체 · 율.코드 · 메타) · 숨은 칸 없음 = 옛 코드 찾기 · 단산 길 일위 빈 목록 + 표지
- 5 건 호표 136 · 줄 706 · STC 구성 줄과 코드 · 갈래 · 수량 · 율 · 밑줄 같음(다른 5 줄 = STC 별도계상 규칙이 비고 별산 표시를 놓침)
- 호표 길(M02_Hopyo_Stmate._hopyos) · 단산 길(M02_San_Xlsx_Stmate.read 일위) · 단서(M02_San_MatFind.from_book) 모두 공용 읽기 · 단서 · 산근 · 단가 전후 같음
- M02_Hopyo_Fixed._ratio = 숨은 칸 율 밑 · 대상 비목 먼저(글 짐작 대신) — 호표 길 전후 바뀜 = 영덕 제11호표 산악할증 0% 한 줄(금액만 → 비율 노무비 · 금액 0 그대로) · 단산 항목 1564 판정 그대로
- 재료 판(census) = 일위 구성 줄 자재도 셈(M02_San_MatFind.ilwi_found · 종 칸 일위 = 호표 코드 · 화면 「일위대가 N 호표」)
- 시험: 새 test_828_2_xlsx_ilwi_meta · test_827_2 단서 시트 보기에 「제N호표」 줄 넣음(실제 시트는 늘 있음 · 공용 읽기가 호표 머리부터 셈)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- M02_San_Bdqty = tools/stmate-test/bdqty.py 거울(믿을 칸만 · 검사 ① 자원 표 ② 부모 머리 ③ DEVD1)
- M02_San_Ilwi = 일위 구성 줄 꼴 · 다시 셈(smt_eval evaluateComposition 짝 + 닫기 뒤 전체 % B00038) · 중기 구성 · HP 호표
- M02_San_Stc.read 일위 = 구성 줄(7 건 B 216 · X 다시 셈 = 저장 단가 전부) · 낙찰률 줄(NAGCD > 0) = 2 칸 원단가
- test_810_1_stc 낡은 칸 고침: 거울 판 smt_parser 가 글 칸 앞 빈칸을 남김(3d8fddfc3) → 대조 때 걷음 · 일위 = 구성 줄 · 산근 = 계(계약 전)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- 코드 등록·삭제·변경·병합·데이타병합·일괄변경·검색·동일코드·풀어넣기 끝전 등(ui_code · ui_merge · api_ui_code)
- 코드 붙은 % 줄 = 같은 상위 공종 앞 말단 줄 비목 합 × 율(server pct_row_base · calc.js) · 저장 때 다시 셈(stc_save _pct_rows) — 실무 7건 저장값 그대로
- 내역 줄 단가 ≠ 단가목록이면 줄 고정 단가(fixedUnit)
- 메뉴 94개 눌러 오류 0 · 시험 502 통과
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>