Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BW6Jdsh18WPtYUR6THZJqn
48 lines
2.2 KiB
Python
48 lines
2.2 KiB
Python
"""물탱크(살수차) 운전경비 되살림 — 2026-09-15 브레인 ③ (초류종자살포 5-24 를 막던 넷 중 하나).
|
||
|
||
건설품셈 8-4-8 기타기계(원문 L3458)는 36기종이 한 칸에 뭉치고 자동세륜기 「-」 하나가 두 기종 몫(셀 병합)이라
|
||
잡재료 35 · 조종원 34 개로 짝이 안 맞아 **줄째 버려짐** → 물탱크 7204 다섯의 운전경비 레코드가 없어 기계 층이 안 섬.
|
||
양끝 맞추기는 우연 일치로 틀린 값이 붙어(자동세륜기 0010 조종원이 「1」 로 읽힘) 못 씀 → 원문 값을 손으로 되살림.
|
||
원문: 1,800ℓ 8.2 · 3,800ℓ 8.6 · 5,500ℓ 9.3 · 6,500ℓ 9.4 · 16,000ℓ 12.9 · 잡재료 30 · 조종원 1
|
||
조종원 직종 — 8-1-2 5호 「화물차운전사 … 살수차」(원문 또렷) · 거창 실무 5,500ℓ 호표도 화물차운전사 · 경유 9.3 · 잡품 30
|
||
"""
|
||
|
||
from __future__ import annotations
|
||
|
||
from decimal import Decimal
|
||
|
||
from B09_Estimation.B09_Estimation_MachineOperating import (
|
||
_CATALOG_SUBPATH,
|
||
_read_json,
|
||
load_operating_records,
|
||
)
|
||
from B09_Estimation.B09_Estimation_UnitPrice import cached_build
|
||
|
||
WATER_TANKS = {
|
||
"7204-0018": "8.2",
|
||
"7204-0038": "8.6",
|
||
"7204-0055": "9.3",
|
||
"7204-0065": "9.4",
|
||
"7204-0160": "12.9",
|
||
}
|
||
|
||
|
||
def test_물탱크_다섯은_원문_연료_잡재료_조종원으로_선다() -> None:
|
||
records = {r.machine_code: r for r in load_operating_records().records}
|
||
truck = _read_json(*_CATALOG_SUBPATH, "labor_const_2026-01-01.json")["variables"]["aliases"][
|
||
"labor_op_truck"
|
||
]
|
||
for code, liters in WATER_TANKS.items():
|
||
record = records[code]
|
||
assert record.fuel_liters_per_hour == Decimal(liters), record
|
||
assert record.fuel_kind == "경유"
|
||
assert record.misc_material_percent == Decimal(30)
|
||
assert record.operator_person_days == Decimal(1)
|
||
assert record.operator_occupation_code == truck, record # 8-1-2 5호 살수차
|
||
|
||
|
||
def test_살수차_기계_층이_서고_막힌_기계에서_빠짐() -> None:
|
||
build = cached_build()
|
||
assert "X-7204-0055" in build.book.titles
|
||
assert not any(m.startswith("7204-0055") for m in build.incomplete_machines)
|