knowledge(요구): 분석 628 — 야면석 소운반 1-2-7 · 출처 책 · 부문 가림 · 기초 없음

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-11-04 18:14:16 +09:00
co-authored by Claude Opus 5.5
parent 68e35a5fa8
commit b616541df6
@@ -0,0 +1,257 @@
# 분석 628 — 제2호표 「야면석소운반」 · 단산10 · 건설 공통 1-2-7 (읽기 전용 조사)
## 요약 열 줄
1. 지금 코드는 일위대가 줄 「야면석소운반 L=35cm」에서 단산10 상세를 실제로 읽음 — 출처 [건설품셈, 1-2-7] · 보통인부 0.547619 · 계수 L 6 · n 42까지 뽑음. 단가산출 줄 길(SK)은 보통인부 LB000002 × 0.547619 = 94,227.7로 엑셀과 같음.
2. 다만 맞춤셈 1위가 GF000214 「야면석 채집(인력)」(조항 점수 0 · 보통인부 품이 비슷해서 오른 것)이고, 이것이 단가산출 걸음에 「근거(참고) — 야면석 채집(인력)」으로 뜸. 다섯 후보도 탱크청소 · 석축 헐기 · 표토이식이라 쓸모없음.
3. 골든 정답 GF000280(산림 10-6-2 돌 지게운반)은 지문 순위 41위로 POOL 40 밖에 있고, 이름 · 근거 다섯 안에도 없음. 결과 1위 · 다섯 안 모두 놓침(골든 N006 · Y024 · Y025 셋 다 「짐작」 정답).
4. 조항으로 찾는 길은 책만 견주고 부문은 견주지 않음. 그래서 엑셀 「건설공사표준품셈 1-2-7」(공통 운반)에 유지관리 1-2-7 줄기싸주기(GC001004) · 건축 1-2-7 타워크레인(GC000567)이 「조항 같음 1.0」을 받음 → Fit 조항 칸 +1.5. GC001004는 37위로 정답(41위)보다 위. 앞 마디 1-2-x 다른 부문(유지관리 · 건축 · 토목 · 기계설비) 로직 29개도 +0.75를 받음.
5. 원문을 대조함. 건설 공통 1-2-7 운반(445~593행)에 인력운반 기본공식 N = VT/(120L+Vt) · T 450분 · 25㎏ 1인 · 지게 t · V 표 · 경사지 환산계수 α 표(35° → 8)가 다 있음. 산림 1-2-7의 4도 지게운반은 건설 공통 1-2-7 3을 쓰라고 함. 산림 10-6-1 · 10-6-2는 거리별 「인/㎥」 표를 찾는 품이라, 식으로 셈하는 1-2-7과는 다른 셈.
6. 우리 M01에는 건설 공통 1-2-7 기초가 로직 · 계수 · 소요량 모두 0(1-2-5 ~ 1-2-9도 없음). 산림 1-2-7은 계수 셋 CF000018 · 19 · 20이 있으나 쓰는 로직이 없음(로직키 []). 사용자 판단 「단가산출 기초 로직 자체가 없음」이 맞음.
7. n = 42는 2026 원문 식 · 표로 재현되지 않음(L′ 48m · V 2,000 · t 2 → N 92.21 → P 0.249422). 엑셀이 n을 값으로 넣은 것. 같은 식이 영월 1466 · 450 소운반은 거의 그대로 재현함(차 −18.3 · +103.9원 = 엑셀이 Q를 반올림한 몫).
8. 여덟 파일 전수: 출처가 든 블록 320 · 인용 357 · 조항 142. 갈래는 ① 그 조항 로직 있음 77 조항(인용 192), ② 표만 있고 로직 없음 9(인용 30), ③ 로직 · 표 둘 다 없음 3(인용 6 — 1-2-7 포함), ④ 2026 원문에 뜻이 맞는 조항 없음(옛 판 · 옛 책 번호) 53(인용 129).
9. 번호만 같은 로직을 잘못 고를 위험이 있는 조항은 68개(① 33 · ②③④ 35). 지금 실제로 1위에 오른 것은 블록 5개(봉화 깬잡석채집 → 석재도료칠 넷 · 영월 콘크리트소운반 → 모르타르 배합 「다른 점」), 다섯 안에 든 것은 18개. 부문까지 견주게 바꾼 모의에서는 골든 1위가 162 그대로, 다른 점 틀림 1 → 0, 다섯 안에서 다른 부문 로직이 빠진 줄 11, 다섯 안 −1(Y027 부문 풀이 흠).
10. 권하는 차례: (가) 출처에 책 · 부문 · 옛 책을 가려 씀(뿌리 한 곳 · 조항 견줌 한 줄) → (나) 「근거 조항 우리 기초에 없음」 표지 · 1위를 근거 꼬리표로 내세우지 않음(부문을 알아야 「없음」이라 말할 수 있어 (가) 다음) → (다) M01에 「건설 공통 1-2-7 인력 소운반」 기초를 새로 넣는 안(n 직접 갈래로 0.547619 재현). (다)와 골든 정답 고침은 사용자 승인 몫.
---
## 1. 지금 코드가 이 줄 · 블록을 다루는 길(실측)
측정: `tmp/brain_628/run_verdict.py` · `run_units.py`(함수를 직접 부름 · 북부청 임도 xls).
### 1-1 읽기 — 단산10 상세를 읽음
| 단계 | 자리 | 결과 |
|---|---|---|
| 블록 읽기 | `M02_Hopyo_ReadEst.py:154` `read` · 출처 모음 `:200` | 블록 10 「야면석소운반(L=35cm)」 ㎡ · 행 558–575 · 글 10줄 |
| 출처 뽑기 | `M02_Hopyo_ReadEst.py:111` `sources` · 책 가름 `:119` | 「건설공사표준품셈 1-2-7」 → `["건설품셈", "1-2-7"]`(앞 12자에 산림 · 임도가 없으면 모두 건설품셈 · 부문 없음) |
| 단위 줄 | `M02_Hopyo_ReadEst.py:276` `items` | L 보통인부 품 0.547619 · 단가 172,068 · 금액 94,227.7 · 재현 true · 덮음 true |
| 일위대가 줄에 근거 붙임 | `M02_Hopyo_Excel.py:356` | 줄 `근거 {출처 [[건설품셈,1-2-7]], 직종 [보통인부], 행 [558,575]}` (블록 출처 리스트를 그대로 가리킴) |
| 지문 | `M02_Hopyo_Finger.py:51` · 옛판 `:106` | 인력 보통인부 0.547619 · 계수 {L 6, n 42} · 조건 횟수 [1회, 2회] · 옛판 false |
→ 「일위대가 항목 찾기가 단가산출 상세를 보나」(사용자 ②): 봄. 블록 글 · 출처 · 직종 · 품을 다 씀.
### 1-2 찾기 — 조항으로 기초를 찾는 세 길
| 길 | 자리 | 이 줄 결과 |
|---|---|---|
| 근거 후보 `Basis.candidates` | `M02_Hopyo_Basis.py:111` · 거름 `:133` · 조항 `clause` `:82` | **빈 목록.** GC001004(유지관리 1-2-7)는 조항 1.0이지만, 직종 겹침(보통인부 뺌) · 이름 낱말 겹침이 없어 거름에서 빠짐 — 운이 좋았던 것 |
| 이름 · 근거 차례 `Match.b_order` | `M02_Hopyo_Match.py:372` | 상태 「후보」 · top GF000214 야면석 채집(인력) · GF000048 묘목 소운반 · GF000077 방제 소운반 · GF000149 불도저 운반 · GF000283 덤프트럭 자재 운반 — 이름 「야면석」 · 「소운반」 낱말로만 고름 |
| 지문 순위 `Fit.score_pair` | 조항 칸 `M02_Hopyo_Fit.py:199–200` · 무게 `:43`(1.5) · POOL `:48`(40) | 로직 1,436개 중 조항 칸 > 0 = 31개 — **모두 다른 부문**: GC001004 줄기싸주기 1.0(37위) · GC000567 타워크레인 1.0(59위) · 다른 부문(유지관리 · 건축 · 토목 · 기계설비) 1-2-x 29개 0.5(GC001005~09가 7~13위). 정답 GF000280 41위 · GF000279 53위 · GF000281 54위 |
| 판정 `Verdict.block` | `M02_Hopyo_Verdict.py:98` · `_state` 조항 `:84–85` | 1위 GF000214 · 상태 「후보」 · 글 「후보 5」 |
1위 · 다섯(지금):
| 차례 | 로직 | 이름 | 점수 | 까닭 |
|---|---|---|---|---|
| 1 | GF000214 | 야면석 채집(인력) | 3.644 | 단위 1 · 이름 0.444 · 인력 0.959 · 품 0.898(우리 0.6 대 엑셀 0.5476) · 조항 0 |
| 2 | GC000911 | 탱크청소(바닥면적) | 3.386 | 보통인부 0.502 품이 비슷 |
| 3 | GC001108 | 석축 헐기(인력) | 3.377 | 보통인부 0.6 |
| 4 | GF000097 | 석축헐기(인력) | 3.377 | 보통인부 0.6 |
| 5 | GF000031 | 표토이식 | 3.254 | 보통인부 0.47 |
- 「1-2-7을 찾아 지정하는 로직」(사용자 ③): 조항으로 찾는 길은 세 곳에 있으나, 건설 공통 1-2-7 로직이 우리에게 없어 찾을 대상이 없음. 대신 책만 같고 부문이 다른 1-2-7(유지관리 · 건축)이 「조항 같음」 점수를 받음(Fit · 판정 · 화면 「출처같음」 모두 같은 `clause`를 씀).
- 같은 `clause`(책만 견줌)를 쓰는 곳: `Basis.py:82`(뿌리) · `Match.py:358` 감쌈 · `Match.py:396` 「같음」 검사 · `Fit.py:199` · `Verdict.py:85` · `:194` · `Combine.py:164` · `:230` · `Line.py:309`(출처같음 → 745-1 미리 점) · `Line.py:369`(별칭 근거 다름).
### 1-3 줄 잇기 · 단가산출 SK — 맞음
| 자리 | 결과 |
|---|---|
| `Units.line` `M02_Hopyo_Units.py:137` · `_L :143` | 상태 「이어짐」 · 방법 「노무 = 직종 × 품 × 노임」 · 단위 {노임 LB000002} · 후보 없음(보통인부 LB 하나) |
| `SkUnit.judge` `M02_Hopyo_SkUnit.py:172` | 판정 「옮길 수 있음」 · 고를 줄 0 · 우리금액 94,227 = 엑셀 94,227 · 줄 차 0.0 |
| `SkUnit.plan` `:186` | 더한줄 [{인력 LB000002 보통인부 0.547619 인}] · 바탕 없음 |
| 근거 꼬리표 `Sangeun.Maker.basis` `M02_Hopyo_Sangeun.py:156–163` | 맞춤셈 1위 = {GF000214, 야면석 채집(인력), 후보} ← **틀린 근거** |
| 일위대가 만들기 `M02_Hopyo_SkLink.py:62` | 확인 안 한 단산 줄 = 블록 SK 참조 → 제2호표는 맞게 만들어짐. 사용자가 1위 GF000214를 체크하면 틀린 로직으로 들어갈 위험이 있음 |
### 1-4 화면에 보이는 글(지금)
- 일위대가 확인 창 · 제2호표 줄 4 「야면석소운반 L=35cm」 (`M02_MasterTemplete_Hopyo_Choose.ts:337` · `sourceText :91`)
- 머리 띠: 엑셀 품(보통인부 0.547619) · 「엑셀 근거 — 출처 건설품셈 1-2-7 · 직종 보통인부 · 단가산출 558–575행」 — 원문의 「건설공사」 · 부문이 지워진 채로 보임
- 상태 「후보」 · 글 「후보 5」 · 꼬리표 「근거 건설품셈 1-2-7」(`M02_Hopyo_Line.py:181`) · 대상 GF000214 · 체크 없음
- 후보 다섯: 야면석 채집(인력) · 탱크청소 · 석축 헐기 ×2 · 표토이식 / 이름후보: 야면석 채집(인력) · 묘목 소운반 · 방제 소운반 · 불도저 운반 · 덤프트럭 자재 운반 — 출처같음 모두 꺼짐
- 단가산출 걸음 · 블록 10 (`M02_MasterTemplete_Hopyo_WizardSk.ts:151` · 글 `ui_template_locale_m2.ts:264`)
- 판정 「옮길 수 있음」 · 우리 94,227 · 엑셀 94,227 · 근거 칩 **「근거(참고) — 야면석 채집(인력)」**(마우스를 올리면 「GF000214 · 후보」)
---
## 2. 원문 대조
### 2-1 원문 나란히
| 항목 | 건설 공통 1-2-7 운반 | 산림 1-2-7 운반 | 산림 10-6-1 토사 | 산림 10-6-2 돌(지게) |
|---|---|---|---|---|
| 원문 위치 | `원가계산/건설공사_표준품셈/본문/01_공통부문/제01장_적용기준/1-02_설계_및_수량.md` 445~593행 | `원가계산/산림_표준품셈/본문/제01장_적용기준/1-02_설계_및_수량.md` 282~355행 | `…/제10장_자재․장비_운반/10-06_인력운반.md` 「10-6-1」 | 같은 파일 「10-6-2」 |
| 소운반 거리 | 1 가 품에 든 소운반 = 20m 이내(448) · 나 경사면 = 직고 1m : 수평 6m(449) · 다 넘으면 별도 계상(450) | 1 가 · 나 · 다 같은 글(285~287) | — | — |
| 셈 꼴 | **식**: 2 Q = N × q · N = VT/(120L + Vt) · T = 450분(480−30) · L m · V m/hr · t 분(452~462) | 4 인력 · 경운기 적상적하시간 = 「건설 공통 1-2-7 3 지게운반」 적용(353~354) | **표**: 거리 20~90m별 보통인부 인/㎥(토사 · 석재) | **표**: 거리 50~1,000m별 보통인부 인/㎥(50m 0.5) |
| 1회 운반량 | [주] 큰 석재 등은 25㎏ 1인(465) · 3 [주]③ 보통토사 25㎏ | — | 주④ 25kg | 주③ 깬돌 25kg · 75kg 50% 할증 · 100kg 이상 적용 불가 |
| t · V | 3 지게운반 표: 토사류 t 1.5분 · 석재류 2분 · V 양호 3,000 · 보통 2,500 · 불량 2,000(467~474) | — | — | — |
| 경사 | 3 [주]⑤ 고갯길 직고 1m = 수평 6m(483) · 5 나 경사지 운반 환산계수 α: 35° → 8 · 환산거리 α × L(519~527) | 1 나 | — | — |
| 단위 | 엑셀 ㎡ · ㎥ 모두 됨(무게 ÷ 25㎏ ÷ N) | — | 인/㎥ | 인/㎥ |
| 적용 범위 | 품에 든 20m를 넘는 현장 소운반 | 산림 품 우선, 없으면 건설 | 산복사방 객토 · 식생토낭(100m 이상 다른 품) | 산복 · 계간사방 인력 돌쌓기(1,000m 이상 다른 품) |
- 엑셀 블록 10의 식 「P = 1㎡ × 575㎏/㎡ × 1회 ÷ 25㎏ × 1일 ÷ n」은 건설 1-2-7 2의 「Q = N × q」를 단위당 품(인 = 무게 ÷ q ÷ N)으로 뒤집은 꼴. 쓰는 조항이 엑셀에 적힌 그대로 건설 공통 1-2-7임.
- 산림 10-6-1 · 10-6-2(GF000279 · GF000280)는 거리별 표를 찾는 품(단위 ㎥)이라 다른 셈. 10-6-2의 50m 0.5 인/㎥가 엑셀의 L′ 48m와 숫자는 닮았으나, 단위(㎥ 대 ㎡) · 셈 꼴(표 대 식) · 1회 무게 규칙이 다름 → 참고 후보로만 맞음. 골든 N006 · Y024의 정답 GF000280은 「짐작 true」.
### 2-2 n = 42는 어디서 나왔나 — 재현 안 됨
측정: `tmp/brain_628/n42.py` · `repro.py`.
- 원문대로 셈: L′ = α × L = 8 × 6 = 48m · 석재류 t 2분 · 불량 V 2,000 · T 450 → N = 2,000 × 450 ÷ (120 × 48 + 2,000 × 2) = **92.21회** → P = 575 ÷ 25 ÷ 92.21 = 0.249422 → 42,917.6원(엑셀 94,227.7과 차 −51,310.1).
- 원문 값(T 450 · V 3,000/2,500/2,000 · 기계설비 2/1.5/1/0.5 km/hr · t 1.5/2 · L 6/48)을 다 짝지어 봐도 42가 나오지 않음. 그나마 가까운 것은 근거 없는 짝뿐: V 500(물논) · t 2 · L 36(6 × 6) → 42.29 / V 1,000 · t 5 · L 48 → 41.82.
- 엑셀 셀(xls 564행)은 글 「운반회수 : n = 42회/일」뿐이고 식이 없음 → **n은 엑셀이 값으로 넣은 것**(실무 판단 · 옛 자료로 보임). 값이 맞는지는 사용자 확인 몫.
- 같은 식을 쓰는 다른 블록(영월 STmate) — 원문 식이 그대로 재현됨:
| 블록 | 엑셀 식 | 우리 셈(원문 식) | 엑셀 | 차 |
|---|---|---|---|---|
| 영월 D01466 야면석소운반(L=35CM) M2 · 출처 「건설표준품셈 9-1」(옛 번호) | L 20 · V 2,000 · t 2 · T 450 · q 25 → N 140.63 · Q = N × 25 ÷ 575 = 6.11 | P 0.163556 → 27,075.8 | 27,094.1 | −18.3(엑셀 Q 반올림) |
| 영월 D00450 콘크리트소운반 M3 · 「9-1」 | 같음 · 2,300㎏/㎥ → Q 1.53 | P 0.654222 → 108,303.2 | 108,199.3 | +103.9 |
| 북부청사방 단산17 떼붙임 중 3 떼소운반 | L 20m · 15° · n 100(값) · 33㎏/㎡ | P 0.0132 → 2,271.3 | 2,271.2 | +0.1 |
| 북부청임도 단산10 | n 42(값) | P 0.547619 → 94,227.7 | 94,227.7 | 0 |
### 2-3 우리 M01에 이 셈을 할 로직이 정말 없나 — 없음
| 자리 | 내용 | 쓰는 로직 |
|---|---|---|
| 건설 공통 1-2-7 | 로직 0 · 계수 0 · 소요량 0(`M01_MasterData_Store_Make._counts()` (건설품셈 공통, 1-2-7) = 없음). 계수 파일 `계수_건설품셈_01장_적용기준.json`이 1-2-4 다음에 바로 1-3-1로 건너뜀(1-2-5 ~ 1-2-9 없음) | — |
| CF000018 「운반 — 품에 포함된 소운반 거리」 20m | 산림 1-2-7 1 가(`계수_산림품셈_01장_적용기준.json` 표 17) | 용도.로직키 [] · 코드 · 화면 어디에서도 안 부름 |
| CF000019 「경사면 소운반 거리(직고 1 : 수평 6)」 | 산림 1-2-7 1 나(표 18) | 로직키 [] |
| CF000020 「화물자동차의 적재량」 50줄 | 산림 1-2-7 3 라(표 19) | 로직키 [] |
| GC001004 줄기싸주기 | **건설 유지관리** 1-2-7(`로직_건설품셈_01장_공통.json` — 파일 이름은 「01장 공통」이지만 구분은 「건설품셈 유지관리」) | 다른 공종 |
| GC000567 타워크레인 가설 · 해체 · 수직이동 | **건설 건축** 1-2-7 | 다른 공종 |
| GF000279 · GF000280 · GF000281 | 산림 10-6-1 · 2 · 3 거리표 찾기(입력 = 재료 · 거리 고르기 · 돌무게) | 1-2-7 식과 다른 셈(위 2-1) |
→ 사용자 판단 ④ 「단가산출 기초 로직 자체가 없음」이 맞음. 같은 꼴(식으로 품을 내는 조항에 기초 로직이 없음)은 3장 ②에도 있음(8-2 시공능력 · 8-2-3 굴착기 · 8-2-8 덤프트럭 · 8-2-13 대형브레이커 — 계수 표만 있음).
### 2-4 1-2-7 절 범위 대조(요구 630)
범위 규칙: 그 머리부터, 같은 단계나 윗 단계의 다음 머리 앞까지 전부(본문 · 표 · 주 · 식 · 번호 없는 문단). 우리 원문 뷰어 `M01_MasterData_Store_Make._section`(`:189`)도 같은 규칙(같거나 얕은 머리 앞까지)으로 자름.
| 원문 | 범위 | 들어 있는 것 | 우리 마스터 | 경계 흠 |
|---|---|---|---|---|
| 건설 공통 1-2-7 운반 | 1-02 md 445행 머리 ~ 594행 「1-2-8 작업조 구성」 앞(149행) | 1 소운반 거리(가 · 나 · 다) · 2 인력운반 기본공식 + 주 · 3 지게운반 표(t · V) + 주①~⑥ · 4 벽돌운반 표 + 주 · 5 인력운반(기계설비) 가 공식(L km · V km/hr · 25㎏ · t 2분) · 나 경사지 환산계수 α 표 · 환산거리 α × L · 6 운반로 개설 · 7 화물자동차 적재량 가~라 표 | **없음**(계수 · 소요량 · 로직 0) | 다른 절로 옮겨 붙인 흔적 없음(「벽돌운반 · 왕복평균속도 · 물논 · 경사지 운반 · 삽으로 적재 · 25㎏을 1인 · 중량적재」 낱말이 마스터 전체에 0) — 절째 빠짐 |
| 산림 1-2-7 운반 | 산림 1-02 md 282행 ~ 356행 「1-2-8 개소」 앞 | 1 가 · 나 · 다 · 2 운반 차량 · 3 화물자동차 적재량 가~라 표 · 4 인력 · 경운기 운반 적상적하시간(건설 1-2-7 3 · 8-2-21 적용) | CF000018(1 가) · CF000019(1 나) · CF000020(3 라 · 원문 52줄 − 머리 2 = 50줄 모두) | 표는 쪽을 넘겨도 다 옮김 · 다른 절로 붙인 것 없음. 빠진 것 = 1 다 · 2 · 3 가~다(글 규칙) · **4(건설 1-2-7 3 지게운반 참조)** |
| α 표 · n 식 | 둘 다 건설 공통 1-2-7 범위 안(n = 2 식 + 3 표 · α = 5 나) | — | 없음 | — |
---
## 3. 같은 문제 넓이 — 여덟 실무 파일 단산 블록 출처 전수
측정: `tmp/brain_628/survey.py` → `survey2.py` → `bookwords.py` → `survey3.py`(결과 `survey_final.json`). 원문 절 목록 = `M01_MasterData_Store_Make._all_sections` · 로직 · 표 수 = `_counts` · 뜻 맞는 부문 = 블록 이름 ↔ 원문 제목 · 로직 이름 두 글자 겹침 + 손 판정 28조항(`survey3.py` OVERRIDE · OLD).
### 3-1 갈래 수
| 갈래 | 조항 | 인용 블록 | 그중 일위대가가 부르는 블록 | 번호만 같은 다른 부문 · 다른 뜻 로직이 있는 조항(잘못 고를 위험) |
|---|---|---|---|---|
| ① 그 책 · 그 부문 · 그 조항 로직 있음 | 77 | 192 | 142 | 33 |
| ② 그 조항 로직 없음 · 계수 · 소요량 표만 있음 | 9 | 30 | 7 | 5 |
| ③ 그 조항 로직 · 표 다 없음 | 3 | 6 | 3 | 3 |
| ④ 2026 원문에 뜻 맞는 조항 없음(옛 판 · 옛 책 번호) | 53 | 129 | 45 | 27 |
| 계 | 142 | 357(블록 320) | 197 | 68 |
엑셀 출처 앞 책 낱말(357 인용 중 많은 차례): 건설표준품셈 137 · 건설공사표준품셈 46 · 산림사업표준품셈 29 · 임도품셈 20 · 품셈 19 · 임도표준품셈 17 · YYYY년표준품셈 16 · YYYY년건설표준품셈 14 · 건설품셈 9 · **토목품셈 7 · 공통품셈 5 · 건축품셈 1**(부문이 글에 적힌 것 13) · 사방(표준)품셈 3 · 오타 「건설표줌품셈」 3. 지금 책 가름(`ReadEst.py:119`)은 「산림 · 임도」가 있으면 산림품셈, 없으면 모두 건설품셈 → **임도품셈(옛 책) → 지금 산림품셈 · 사방품셈 → 건설품셈**으로 잘못 감.
### 3-2 ②③ — 기초 로직 없음(이번 예시와 같은 꼴)
| 갈래 | 조항 | 원문 제목 | 인용 블록(불림) | 파일 | 블록 이름 | M01 표 | 위험 로직 |
|---|---|---|---|---|---|---|---|
| ③ | 건설 공통 **1-2-7** | 운반 | 1(1) | 북부청임도 | 야면석소운반(L=35cm) | 0 | 유지관리 GC001004 · 건축 GC000567 |
| ③ | 건설 공통 1-2-3 | 토질 | 4(2) | 북부청사방 · 북부청임도 | 구조물터파기(암) · 양질사토운반 · 조약돌채집 | 0 | 3 |
| ③ | 건설 공통 3-1-2 | 작업조 및 품의 변화 | 1(0) | 동부청영월 | 암석절취(TYPE Ⅳ) | 0 | 3 |
| ② | 건설 공통 8-2 | 시공능력 | 2(2) | 영월 · 북부청임도 | 야면석 채집 운반 · 야면석채집및운반(계곡내) | 39 | 12 |
| ② | 건설 공통 8-2-3 | 굴착기 | 12(1) | 북부청사방 · 북부청임도 · 영덕 · 울진소광 | 구조물터파기 · 노면정리 · 노면고르기 등 | 5 | 3 |
| ② | 건설 공통 8-2-8 | 덤프트럭 | 3(0) | 북부청임도 | 양질사토운반 · 유용토운반성토 · 큰돌운반 | 7 | 0 |
| ② | 건설 공통 8-2-13 | 대형브레이커 | 7(0) | 북부청임도 · 울진소광 | 구조물헐기 · 기존포장깨기 · 무근콘크리트깨기 | 5 | 0 |
| ② | 건설 공통 2-2-4 | 구조물 동바리 | 2(2) | 봉화 · 북부청임도 | 강관동바리 | 1 | 2 |
| ② | 건설 공통 2-2-5 | 구조물 비계 | 1(1) | 북부청임도 | 강관비계(10m이하,3개월사용) | 2 | 2 |
| ② | 건설 공통 6-2-1 | 적용범위(철근) | 1(1) | 북부청임도 | 다웰바설치 | 2 | 4 |
| ② | 산림 9-17-1 | 비탈면 다짐 | 1(0) | 북부청임도 | 성토사면다짐 | 1 | 0 |
| ② | 산림 10-2 | 철근운반 | 1(0) | 북부청임도 | 철근운반 | 1 | 0 |
- 1-2-x · 3-1-2 · 2-2-x · 6-2-1은 적용기준 · 일반사항 절(규칙 · 계수)이라, 블록이 보조로 인용한 것(주 공종은 다른 절)이 많음 — 「기초 없음」 표지만 있으면 됨.
- 8-2 · 8-2-3 · 8-2-8 · 8-2-13은 Q 식(시공능력) 절: 계수 표는 있으나 「Q → 단위당 기계경비」 로직이 없음. 지금은 줄 길(X 기계 = 시간 × 기계경비 GC000267~276)로 금액은 맞춤. 기초 근거 꼬리표만 비어 있는 셈.
### 3-3 ④ — 옛 판 · 옛 책 번호(지금 번호로 견주면 틀림)
| 무리 | 조항 | 인용 | 위험 조항 | 번호 |
|---|---|---|---|---|
| 건설 옛 판 번호 · 엑셀 오기 | 25 | 77 | 13 | 9-1 · 9-3 · 9-6 · 9-7 · 9-9 · 9-18 · 9-38-2 · 9-38-6 · 11-1 · 11-3(22 인용) · 11-6 · 11-8 · 11-9 · 3-1-3(10) · 3-2-6 · 1-10 · 1-24 · 3-1-8 · 2-8-20 · 7-5 · 8-5 · 8-2-35 · 16-2-7 · 10-3-2 · 3-7 · 3-7-2 |
| 임도(표준)품셈 옛 책 → 지금 산림 번호로 잘못 감 | 23 | 47 | 13 | 5-1-2(구조물터파기 → 지금 산림 5-1-2 교목굴취) · 5-1-1 · 5-1-3 · 3-3-1 · 3-3-2 · 3-6 · 3-7 · 7-3 · 2-3 등 |
| 사방품셈 옛 책 → 건설품셈으로 잘못 감 | 3 | 3 | 1 | 4-2-2(→ 건설 공통 식재 · 토목 궤도양로) · 4-16-2 · 4-16-4 |
| 산림사업표준품셈 2018 통합 번호 | 2 | 2 | 0 | 4-16-2 · 4-16-4 |
- 옛 판 글 표지: `Finger.OLD`(`Finger.py:31` · 첫 6줄) · `Match._OLD_TEXT`(`Match.py:345` · 첫 5줄)가 해(年) · 임도품셈 · 사방품셈 낱말을 볼 때만 켜지고, Fit 조항 칸을 반으로 줄이는 데만 씀(`Fit.py:200`). 「건설표준품셈 9-3」처럼 해가 없는 옛 번호는 그대로 1.0 · 0.9.
- 대응표: 임도품셈 → 현행 산림 대응 14줄이 지식DB에 있음(`원가계산` 밖 `경쟁사 프로그램/STmate 분석/20_분석/33_임도품셈_판_대응표.md` · `30_원자료/임도품셈_판_대응표.csv` — 확정 13 · 미확인 1. 예 2017 5-1-2 → 현행 9-13-7). 건설 옛 판 → 현행 대응표는 없음.
### 3-4 지금 실제 피해(맞춤셈 전수 · `harm.py` · 불리는 블록 중 출처 든 셈 단위 174)
- 1위가 「번호만 같은 다른 부문 · 옛 번호」 로직인 블록 **5개**: 봉화 단산 3 · 43 · 51 · 52 깬잡석채집 → GC000721 석재도료칠(건축 11-3-x · 윗마디 0.9) 「후보」 · 영월 D00450 콘크리트소운반 → GC000677 모르타르 배합(건축 9-1) **「다른 점」**.
- 다섯 안에 든 블록 **18개**(와이어메시 → 공통 6-2-x · 잡철물 → 기계설비 8-3-1 · 측구수로관 → 공통 6-7-x 등).
- 출처 갈래별 지금 1위 상태: ① 맞음 70 · 다른 점 44 · 후보 19 / ② 후보 3 / ③ 후보 2 / ④ 맞음 3 · 다른 점 1 · 후보 32. ②③④ 41블록은 근거 꼬리표가 「이름 · 품이 비슷한 것」(예 영월 D01466 야면석소운반도 GF000214 야면석 채집).
### 3-5 모의 — 부문까지 견주면(`sim_part.py` · 코드 안 고침 · 출처 책에 조사표 부문을 붙이고 `clause`가 구분까지 견줌 · 위 끝 추정)
| 지표(골든) | 지금 | 모의 |
|---|---|---|
| 1위(사람 126 + 새 파일 51) | 118 + 44 = 162 | 162 |
| 다섯 안(사람) | 122 | 121 (Y027 측구수로관 — 정답 공통 6-7-1 플륨관을 조사표가 토목으로 풀어 빠짐) |
| 다른 점 틀림(사람) | 1 | 0 (Y025 콘크리트소운반의 건축 9-1 「다른 점」 사라짐) |
| 다섯 안이 바뀐 골든 줄 | — | 14(다른 부문 로직 빠짐 11 · 차례만 3) |
| N006 야면석소운반 | GF000214 「후보」 | 같음 — 부문만으로는 이 예시가 안 풀림((나) · (다) 필요) |
---
## 4. 고칠 길(제안 · 갈래 · 권함)
### (가) 출처에 책 · 부문 · 옛 책을 가려 씀 — 뿌리 한 곳
- 무엇:
- 책 낱말 표(`ReadEst.sources` · `:119` 한 줄을 표 하나로): 산림사업(표준)품셈 → 「산림품셈」 · 임도(표준)품셈 → 「임도품셈(옛)」 · 사방(사업)(표준)품셈 → 「사방품셈(옛)」 · 공통 · 토목 · 건축 · 기계설비 · 유지관리품셈 → 「건설품셈 공통」 등 · 건설(공사)(표준)품셈 · 표준품셈 · 품셈 → 「건설품셈」(부문 모름).
- 부문 풀이(건설품셈인데 부문을 모를 때): 원문에 그 번호가 있는 부문(`Store_Make._all_sections`, 캐시 있음) 가운데, 블록 이름이 원문 제목이나 그 부문 같은 번호 로직 이름과 뜻 낱말을 나누는 부문이 **하나**이면 그 부문(1-2-7 → 공통 「운반」 ↔ 「야면석소운반」). 둘 이상이면 모름 그대로. 하나도 없으면 「번호 뜻 안 맞음」 → 번호로 근거를 삼지 않음.
- 조항 견줌 `Basis.clause`(`:82`) 한 줄: `book == our["책"]` → `book in (our["책"], our["구분"])`. 「건설품셈 공통」은 공통 로직만, 「건설품셈」(모름)은 지금처럼 책 단위, 「(옛)」은 매칭 없음. 2원소 `[책, 번호]` 꼴은 그대로라 풀어 쓰는 곳(`Combine.py:157` · `Line.py:181` 등)은 손대지 않음.
- 자리: 풀이는 두 형식이 만나는 Book 끝(`Excel.read_book` `:305` · `:377`의 `unit_line.settle` 앞 한 곳) — 블록 출처를 바꾸면 줄 근거가 같은 리스트를 가리켜 함께 바뀜(`Excel.py:356` · `Stmate.py:370`). 풀이 함수는 Basis(186줄 → +40 안팎).
- 대가: Book 출처 글이 바뀜 → `test_621_hopyo_stages` S1 해시를 다시 굳힘 · 옛 HP는 책 단위로 돌아감(776 「판 바뀜 = 다시 올림」 안내 그대로) · `test_m02_hopyo_basis.py::test_출처_글` 기대 「임도표준품셈 4-2 → 산림품셈」을 「임도품셈(옛)」으로 고침.
- 한계: 뜻 풀이는 두 글자 겹침이라 흠이 남음(모의 Y027). 그래서 하나도 안 맞을 때 「버림」 대신 「0.5로 낮춤」 갈래도 있음 — 고를 것.
- 덧(마, 고를 것): 임도품셈(옛) 번호 → 현행 번호는 지식DB 대응표 14줄로 옮김(일대다 대응은 옮기지 않음). 건설 옛 판은 대응표가 없음 → 「옛 번호 — 대응 미확인」 표지만.
### (나) 「근거 조항 우리 기초에 없음」 표지 — 이 예시의 몸통
- 무엇: 출처 조항(가의 부문 풀이 뒤 · 윗마디 · 아랫마디 포함)에 M01 로직이 0이면(`Store_Make._counts()[(책 부문, 번호)][1] == 0`):
- 맞춤셈(`Verdict.block` `:151` 판정)에 꼬리표 「근거 조항 우리 기초에 없음 — 건설품셈 공통 1-2-7 운반」 · 상태는 「후보」 그대로 · 체크 없음.
- 근거 꼬리표(`Sangeun.Maker.basis` `:156`)는 1위를 내세우지 않고 `{로직: None, 이름: 「기초 없음 — 건설 공통 1-2-7 운반」, 판정: 「기초 없음」}` → 화면 칩 「근거(참고) — 기초 없음 · 건설 공통 1-2-7 운반」.
- 후보 다섯은 「참고 후보 — 근거 조항 아님」 글로 그대로 둠. 가까운 로직(산림 10-6-1 · 10-6-2 등)을 늘 보이게 하려면, 원문 제목 낱말(「운반」) ∧ 보통인부 하나 로직을 참고 줄에 덧붙이는 갈래가 있음(고를 것 · 지금은 안 함).
- 표지가 뜰 블록(전수): ③ 6 · ② 30 · ④ 129 인용 가운데 위험 표지 — ②③은 「기초 없음」, ④는 「옛 번호 — 근거 못 씀」.
- 자리 · 크기: Verdict(213줄) +10 · Sangeun(294줄) +5 · 화면은 글만(WizardSk 칩 · Choose 꼬리표 그대로 씀) · 새 파일 없음.
- 의존: 부문을 모르면 1-2-7은 유지관리 · 건축에 로직이 있어 「없음」이라고 말할 수 없음 → (가)의 부문 풀이가 먼저.
### (다) M01 새 기초 로직 안 — 「인력 소운반(지게) — 건설 공통 1-2-7」(정본 추가 = 사용자 승인 몫 · 안만)
- 자리: 구분 「건설품셈 공통」 · 01장 적용기준 — 계수 파일 `계수_건설품셈_01장_적용기준.json`에 1-2-7 표 둘(3 지게운반 t · V · 5 나 경사지 환산계수 α) + 로직 한 줄(새 파일 `로직_건설품셈_01장_적용기준.json` 또는 `로직_자체.json` — 고를 것) · 키 = `_키대장.json` 다음 GC · 만들 때 `_갱신절차.md`.
- 입력: 무게 w ㎏/단위(직접 또는 `계수_건설품셈_01장_적용기준` 1-2-4 3 「재료의 단위중량」 고르기) · 1회 운반량 q 25㎏(2 주) · 운반거리 L m · 경사(각도 → α · 없음 1) · 재료 갈래(토사류 t 1.5 · 석재류 t 2) · 운반로(양호 3,000 · 보통 2,500 · 불량 2,000 m/hr) · T 450분 · **운반회수 n 직접(선택 — 주면 식 대신)**.
- 중간 · 호표: L′ = α × L · N = V × T ÷ (120 × L′ + V × t)(또는 n) · 보통인부 LB000002 수량 = w ÷ q ÷ N.
- 재현(`repro.py`): 북부청임도 단산10 n 42 → 0.547619 · 94,227.7(차 0) / 영월 D01466 → 0.163556(차 −18.3) / 영월 D00450 → 0.654222(차 +103.9) / 북부청사방 단산17 떼소운반 n 100 → 0.0132(차 +0.1).
- 확인할 것(사용자): α를 지게운반에 쓰는 해석(원문 α 표는 「5 인력운반(기계설비)」 아래 · 지게는 3 주⑤ 「직고 1m = 수평 6m」) · 엑셀 n 42를 직접 값으로 받을지 · 20m 이내 품 포함(1 가) 조건 표지.
- 같은 꼴로 넓힐 수 있음(고를 것): 8-2 시공능력 Q 식(굴착기 · 덤프 · 브레이커) 기초 — 지금은 줄 길로 금액이 맞으니 급하지 않음.
### (라) 골든 정답 고침 — 사용자 결정
- N006(북부청임도 야면석소운반) · Y024(영월 야면석소운반) 정답 GF000280 · Y025(영월 콘크리트소운반) 정답 GF000279 · 281 — 셋 다 「짐작 true」이고 실제 셈은 건설 공통 1-2-7 식. (다) 키로 바꾸거나 「기초 없음」 정답으로 고칠 것.
### 권함
1. (가) 책 낱말 표 + 부문 풀이 + `clause` 한 줄 → 2. (나) 기초 없음 표지 · 근거 칩 → 3. (다)는 사용자 승인 뒤 M01 → 4. (라) 골든 고침. (가) · (나)는 한 일감(서버 넷: ReadEst · Basis · Verdict · Sangeun · 각 700줄 아래), (다)는 M01 일감.
### 시험(제안 · 새 `resources/tester/test_628_hopyo_clause_part.py` · 지킴 시험만)
1. 책 낱말: 「건설공사표준품셈 1-2-7」 → 건설품셈 · 「임도표준품셈 5-1-2」 → 임도품셈(옛) · 「사방품셈 4-2-2」 → 사방품셈(옛) · 「공통품셈 3-1-8」 → 건설품셈 공통 · 「토목품셈」 → 건설품셈 토목.
2. 부문 풀이: 북부청임도 단산10 → [건설품셈 공통, 1-2-7] · 영월 D00450 「건설표준품셈 9-1」 → 번호 뜻 안 맞음.
3. `clause([["건설품셈 공통","1-2-7"]], GC001004 · GC000567)` = 0 · 「건설품셈」(모름)은 지금 값 그대로(`test_조항_윗마디_오타` 그대로 통과).
4. 예시 1: 단산10 맞춤셈 꼬리표 「근거 조항 우리 기초에 없음 — 건설품셈 공통 1-2-7」 · `Sangeun.basis` ≠ GF000214 · 줄 판정 LB000002 0.547619 · 우리금액 94,227.7 그대로.
5. 같은 꼴 전수(여덟 파일): 「번호만 같은 다른 부문 · 옛 번호」 로직이 1위 0(지금 5) · 다섯 안 0(지금 18) · 기초 없음 표지 = ②③ 블록 수.
6. 골든 `test_m02_hopyo_golden.py`: 1위 162 이상 · 다른 점 틀림 0 · 다섯 안이 줄면 그 줄 이름을 적음.
7. S1 다시 굳힘 `test_621_hopyo_stages.py` · 기존 `test_m02_hopyo_basis.py` · `test_m02_hopyo_fit.py` · `test_m02_hopyo_match.py`.
8. (다) 승인 뒤: 로직 재현 넷(0.547619 · 0.163556 · 0.654222 · 0.0132).
- 돌리기: `./venv/Scripts/python.exe -m pytest resources/tester/<시험 파일> -q`(고친 대상만).
---
측정 스크립트 · 결과(`tmp/brain_628/`): `block10.py` · `raw10.py`(xls 원 셀) · `run_verdict.py` · `run_units.py` · `n42.py` · `repro.py` · `sowoon.py` · `m01_kinds.py` · `m01_127.py` · `survey.py` → `survey.json` · `survey2.py` → `survey_groups.json` · `bookwords.py` · `survey3.py` → `survey_final.json` · `harm.py` → `harm.json` · `sim_part.py` → `sim_base.json` · `sim_part.json`. 코드 · storage · git · DB · 마스터는 고치지 않음.