fix(axis): 표 읽기 ② — 원본이 [주] 문장을 절 제목으로 읽은 표 14장은 앞 절을 이어받음(12-2 표면 마무리 가짜 표 7장·갈래 #설치·#철거 → 12-17-1) · 9-21 제근 안내는 못 붙은 줄이 아니라 비고로(빌린 밑수 교차참조)
마스터 전후 대조: 표가 옮겨 붙은 공종 8(12-02·12-17-01·01-01-02·05-34·08-02-03·09-07-01·09-11-01·14-02) · 일위대가 453 제목 금액 변화 0 · 12-02 가짜 갈래 둘이 12-17-01 로만 옮김 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BW6Jdsh18WPtYUR6THZJqn
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"schema_version": "1.0",
|
||||
"dataset_id": "data_work_item_master_manifest",
|
||||
"generated_at": "2026-09-13T23:03:27+09:00",
|
||||
"generated_at": "2026-09-14T13:07:44+09:00",
|
||||
"built_by": "B08_Quantity/B08_Quantity_Build_WorkItemMaster.py",
|
||||
"source": {
|
||||
"dataset_id": "pum_forest",
|
||||
@@ -12,13 +12,13 @@
|
||||
"files": [
|
||||
{
|
||||
"file": "work_item_master_2026-01-01.json",
|
||||
"sha256": "1463ea14ec2d3d45ec18b3a7e4810333de8e5fc40aaeb0dd329c68f85c863e33",
|
||||
"size_bytes": 835659
|
||||
"sha256": "83efe531a6956f15696a4042dde1e13f37e25b26597e128b946d3f051b600fb6",
|
||||
"size_bytes": 837285
|
||||
},
|
||||
{
|
||||
"file": "form_undetermined_2026-01-01.json",
|
||||
"sha256": "c835699596bf57ffbda9f72a773a72116ebe48c2a2f79ae232ba5784ec9842c7",
|
||||
"size_bytes": 6447
|
||||
"sha256": "6b3476810ddee395856b997fa524a0410a5001fe47511b989c1db2feb82dccd2",
|
||||
"size_bytes": 6789
|
||||
},
|
||||
{
|
||||
"file": "basis_missing_2026-01-01.json",
|
||||
|
||||
@@ -139,7 +139,7 @@
|
||||
},
|
||||
{
|
||||
"pum_table_id": "F0248",
|
||||
"section": "8-2-13 대형브레이커(2025)」, 「건설공사 표준품셈 공통부문, 1-2-3 토질. 3. 체적환산계수적용(2025)」 참조",
|
||||
"section": "9-7-1. T=30㎝ 미만",
|
||||
"headers": [
|
||||
"구 분",
|
||||
"적 용"
|
||||
@@ -156,6 +156,31 @@
|
||||
],
|
||||
"reason": "헤더·첫 행에 단위·밑수·직종 표지 없음"
|
||||
},
|
||||
{
|
||||
"pum_table_id": "F0257",
|
||||
"section": "9-11-1. 콘크리트(기계)",
|
||||
"headers": [
|
||||
"구 분",
|
||||
"단 위",
|
||||
"적 용",
|
||||
"비 고"
|
||||
],
|
||||
"first_rows": [
|
||||
[
|
||||
"거리(L)",
|
||||
"km",
|
||||
"0.1",
|
||||
"N=(V×T)/(120×L+V.t)= 회/일 Q = N×q = ℓ/일"
|
||||
],
|
||||
[
|
||||
"운반속도(V)",
|
||||
"km/hr",
|
||||
"2.5",
|
||||
""
|
||||
]
|
||||
],
|
||||
"reason": "헤더·첫 행에 단위·밑수·직종 표지 없음"
|
||||
},
|
||||
{
|
||||
"pum_table_id": "F0304",
|
||||
"section": "10-6-3. 기타 임업자재",
|
||||
@@ -348,7 +373,7 @@
|
||||
},
|
||||
{
|
||||
"pum_table_id": "F0356",
|
||||
"section": "12-2 표면 마무리를 따른다.",
|
||||
"section": "12-17-1. 펌프카 타설",
|
||||
"headers": [
|
||||
"슬 럼 프",
|
||||
"기준 시공량"
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,29 @@
|
||||
"""표 읽기 ②(2026-09-14 · PLAN 1장) — 「못 붙은 줄」 로 잘못 서던 자리를 **상태가 움직이는지**로 잼.
|
||||
|
||||
9-21 제근 고르기형 표 안내 글이 `unmatched` 에 들어가 못 붙은 줄로 섬 — 밑수는 사용자 확정
|
||||
(건설품셈 1,000㎡당 빌림)이라 안내는 비고(`known_gap_note`)로 옮김(사유는 안 사라짐)
|
||||
12-2 표면 마무리 원본이 12-17-1 [주] 문장을 절 제목으로 읽어 표 7장·가짜 갈래 #설치·#철거 가 붙음
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
from B09_Estimation.B09_Estimation_KnownGaps import known_gap_note
|
||||
from B09_Estimation.B09_Estimation_ResourceAxis import load_work_item_master
|
||||
from B09_Estimation.B09_Estimation_UnitPrice import cached_build
|
||||
|
||||
|
||||
def test_제근은_못_붙은_줄이_아니고_교차참조_사유는_비고에_남음() -> None:
|
||||
build = cached_build()
|
||||
assert not build.unattached.get("FP-09-21"), build.unattached.get("FP-09-21")
|
||||
assert sum(1 for code in build.book.titles if code.startswith("B-FP-09-21#")) == 6
|
||||
note = known_gap_note("FP-09-21")
|
||||
assert "교차 참조" in note and "1,000㎡당" in note
|
||||
|
||||
|
||||
def test_표면_마무리엔_미장공_표만_있고_가짜_갈래가_없음() -> None:
|
||||
nodes = {n["work_item_code"]: n for n in load_work_item_master()["work_items"]}
|
||||
assert [t["pum_table_id"] for t in nodes["FP-12-02"]["tables"]] == ["F0334"]
|
||||
assert "F0356" in [t["pum_table_id"] for t in nodes["FP-12-17-01"]["tables"]]
|
||||
build = cached_build()
|
||||
assert [c for c in build.book.titles if c.startswith("B-FP-12-02")] == ["B-FP-12-02"]
|
||||
assert not build.unattached.get("FP-12-02")
|
||||
Reference in New Issue
Block a user