diff --git a/B08_Quantity/B08_Quantity_Engine_StructureTemplate.py b/B08_Quantity/B08_Quantity_Engine_StructureTemplate.py index ea98851b..895eafcd 100644 --- a/B08_Quantity/B08_Quantity_Engine_StructureTemplate.py +++ b/B08_Quantity/B08_Quantity_Engine_StructureTemplate.py @@ -156,7 +156,9 @@ _PER_LENGTH_UNITS = frozenset({"m"}) #: ㉯ 양식에 **그 이름 줄이 없으면 전개 값을 남기는** 성분(2026-09-14 브레인 판정 · 목록으로 못박음). #: STmate 호표(고정형)는 토공·버림을 안 품음 — 통째로 갈음하면 구조물터파기 85.25→25㎥(−6,037,712원 실측). #: 목록 밖 성분은 양식으로 갈음 · 목록 안이라도 양식이 그 줄을 품으면 양식 값(겹쳐 세지 않음). -KEEP_ENGINE_COMPONENTS = ("터파기", "되메우기", "잔토처리", "버림콘크리트") +#: ② 실무 엑셀 벽·돌쌓기 호표 57 전수 — 기초잡석 0/57(「기초다짐 및 뒤채움」 4 은 다른 것) · +#: 채집석 = 사토에서 빼는 돌 부피(haul_deduction)라 호표의 채집 줄(품 · 41/57)과 다른 것. +KEEP_ENGINE_COMPONENTS = ("터파기", "되메우기", "잔토처리", "버림콘크리트", "기초잡석", "채집석") KEPT_ROW_REASON = "전개 값 그대로 — 양식이 이 줄을 안 품음(토공·버림은 전개가 셈)" diff --git a/resources/tester/test_b08_template_keep_earthwork.py b/resources/tester/test_b08_template_keep_earthwork.py index 7eaf71d3..a93f84fa 100644 --- a/resources/tester/test_b08_template_keep_earthwork.py +++ b/resources/tester/test_b08_template_keep_earthwork.py @@ -60,13 +60,17 @@ def _fixed() -> dict: def test_목록이_코드에_못박혀_있다() -> None: assert set(KEEP_ENGINE_COMPONENTS) >= {"터파기", "되메우기", "잔토처리", "버림콘크리트"} + # ② 원문 빈도(벽·돌쌓기 호표 57) — 기초잡석 0/57 · 채집석(사토 공제 부피)은 호표 채집 줄(품)과 다른 것 + assert {"기초잡석", "채집석"} <= set(KEEP_ENGINE_COMPONENTS) def test_고정형을_가져와도_토공_버림_성분은_남는다() -> None: engine = build_table([WALL], NAMES, {}, {}, None, use_templates=False)["structures"][0] fixed = build_table([WALL], NAMES, {}, {}, None, structure_templates={"masonry_wet": _fixed()}) components = {c["name"]: c for c in fixed["structures"][0]["components"]} - for name in ("터파기", "되메우기", "잔토처리", "버림콘크리트"): + engine_names = {c["name"] for c in engine["components"]} + assert {"기초잡석", "채집석"} <= engine_names # 시험 벽에서 둘 다 서야 보존을 잼 + for name in ("터파기", "되메우기", "잔토처리", "버림콘크리트", "기초잡석", "채집석"): before = next(c for c in engine["components"] if c["name"] == name) assert components[name]["amount"] == before["amount"], name assert "깬잡석찰쌓기" in components and "돌" not in components # 목록 밖은 양식으로 갈음