fix(B09): 품셈 「…와 동일」 참조를 따라감 + 묶음 배분율이 첫 줄에만 붙던 것
구조물터파기 여덟 갈래가 「단가가 일부만 섰습니다 — 붙은 몫 10%」로 서 있던 자리. 값이 없어서가 아니라 품셈이 「육상토사(0~1m)와 동일」처럼 **다른 절을 가리키는데** 그 참조를 안 따라가서였음. - `B09_Estimation_MachineProductivity_Reference` 신설 — 참조를 따라가 계수를 이음. 값을 옮겨 적지 않고 가리키는 절을 그때그때 읽음. 사슬·순환도 처리(순환은 멈춤) - 열 갈래가 풀림: 09-13-02·03·05·06·08·09·11·12·17·18 - 빌려 온 계수는 **출처를 줄 비고에 적음** — 「계수 출처: 「…와 동일」 → 육상토사(0~1m)」 ⚠ 짓다 잡은 것 셋 - 「육상과동일」은 「육상」이라는 절이 아니라 **제 이름에서 용수를 육상으로 바꾸라**는 뜻. 이름 규칙을 먼저 태우면 없는 절을 찾다가 네 갈래를 놓쳤음 - 한 표에 참조가 둘이고 **가리키는 곳이 다름**. 9-13-11 은 치즐 줄이 「육상과동일」, 백호우 줄이 「용수 암절취(0~1m)와 동일」임. 아무 줄에서나 주우면 용수 자리에 육상 계수가 붙어 작업효율이 0.375 대신 0.50 으로 서고 **금액이 조용히 틀림**. ⇒ **기계 줄에 붙은 참조만** 보게 함 - ⭐ **묶음 배분율이 첫 줄에만 붙고 있었음** — 품셈이 「인력(10%)」 머리를 병합해 적어 다음 줄엔 딱지가 없음. 그래서 「보통인부 1.0」이 100%로 서 **조용히 열 배**가 됐음 (구조물터파기 단가가 224,305원/㎥ 이었음). 묶음 머리를 만날 때까지 이어 주게 고침 막힌 채로 두는 것 — 암·발파암 갈래는 **깨기(대형브레이커)·치즐**이 그대로 빠져 있어 금액을 세우지 않음. 다만 **사유를 남은 줄로 고쳐 적음**(백호우 이야기는 이미 풀렸음). 9-13-14 는 자기 자신을 가리키는 원문 오기라 **고쳐 읽지 않고** 사유로 남김. 검증: pytest 288 통과(신규 6) · 토사 갈래 단가가 처음 섬(1~2m 7,218.5원/㎥) Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -338,6 +338,7 @@ def attach_machine_share(
|
||||
title_code: str,
|
||||
choices: dict[tuple[str, str], Decimal] | None = None,
|
||||
machines: dict[str, str] | None = None,
|
||||
sources: dict[str, str] | None = None,
|
||||
) -> Decimal:
|
||||
"""시공능력 공식(8-1-4)으로 **장비 몫**을 붙인다. 붙인 비율(%)을 돌려준다.
|
||||
|
||||
@@ -382,7 +383,13 @@ def attach_machine_share(
|
||||
title_code,
|
||||
hourly_code,
|
||||
machine_hours_per_unit(factors) * share,
|
||||
note=factors.formula_text,
|
||||
# 계수를 남의 절에서 빌려 왔으면 **그 사실을 줄 비고에 적는다.**
|
||||
note=factors.formula_text
|
||||
+ (
|
||||
f" · {(sources or {}).get(work_item_code, '')}"
|
||||
if (sources or {}).get(work_item_code)
|
||||
else ""
|
||||
),
|
||||
)
|
||||
)
|
||||
cycle_factors[work_item_code] = factors
|
||||
|
||||
Reference in New Issue
Block a user