chore(rebar): Pier_T_rebar 작업 폴더 초기 구성 및 외부 의존 파일 통합

- Code\rebar_pipeline, review_pipeline, pier-program을 정션에서 실제 폴더로 전환
- Code\rhino_mcp 및 CLAUDE_rhino배경.md 추가, .mcp.json은 PYTHONPATH로 새 위치 사용
- pier-program 내부 .git 제거(이력은 backup\pier-program_20261028.bundle에 보관)
- worktree 가이드 반영(CLAUDE.local.md, HANDOFF.md)
- D:\Rhino-MCP 경로 참조를 새 위치로 치환

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
ahnyongjooandClaude Sonnet 5.5 committed 2026-10-28 11:20:18 +09:00
commit 964a841de1
3978 files changed
+58013356

No files matched your search

File diff suppressed because it is too large. Load diff
@@ -0,0 +1 @@
{"model": "C:\\Users\\User\\Desktop\\바이브코딩\\pier_T\\Code\\교각모델링앱\\출력\\개별실행회귀_2026-10-12\\G1.3dm", "units": "Millimeters", "tolerance": 0.001, "count": 54, "layers": {"P1::받침패드": [90, 160, 90, true], "P1::받침대좌": [190, 90, 90, true], "P1::말뚝": [110, 110, 110, true], "P1::코핑": [210, 180, 80, true], "P1::기둥": [200, 140, 90, true], "P1::기초": [120, 150, 200, true], "P1::버림콘크리트": [160, 160, 160, true]}, "objects": {"P1-BP10": {"layer": "P1::받침패드", "type": "Brep", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [4659.59, 130.44, 43837.0, 5447.21, 1069.16, 43887.0], "user": {"fck": "-", "id": "P1-BP10", "role": "bearing pad h2 NO.10 2800 kN 양방향", "source_views": "D1 평면도, D1 단면도, D2 교량받침 상세·ELEVATION TABLE"}, "faces": 6, "solid": true, "volume": 29366666.7}, "P1-BS10": {"layer": "P1::받침대좌", "type": "Brep", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [4420.0, -95.8, 43698.0, 5712.5, 1242.6, 43837.0], "user": {"fck": "40MPa", "id": "P1-BS10", "role": "bearing pedestal h1 NO.10 girder 5 rear", "source_views": "D1 평면도, D1 단면도, D2 ELEVATION TABLE"}, "faces": 6, "solid": true, "volume": 208505497.5}, "P1-BP09": {"layer": "P1::받침패드", "type": "Brep", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [2154.29, 130.44, 43766.0, 2941.91, 1069.16, 43816.0], "user": {"fck": "-", "id": "P1-BP09", "role": "bearing pad h2 NO.9 2800 kN 양방향", "source_views": "D1 평면도, D1 단면도, D2 교량받침 상세·ELEVATION TABLE"}, "faces": 6, "solid": true, "volume": 29366666.7}, "P1-BS09": {"layer": "P1::받침대좌", "type": "Brep", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [1914.67, -95.8, 43627.0, 3207.17, 1242.6, 43766.0], "user": {"fck": "40MPa", "id": "P1-BS09", "role": "bearing pedestal h1 NO.9 girder 4 rear", "source_views": "D1 평면도, D1 단면도, D2 ELEVATION TABLE"}, "faces": 6, "solid": true, "volume": 208505497.4}, "P1-BP08": {"layer": "P1::받침패드", "type": "Brep", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [-406.03, 127.46, 43694.0, 491.43, 1072.14, 43744.0], "user": {"fck": "-", "id": "P1-BP08", "role": "bearing pad h2 NO.8 2800 kN 교축방향", "source_views": "D1 평면도, D1 단면도, D2 교량받침 상세·ELEVATION TABLE"}, "faces": 6, "solid": true, "volume": 34041666.7}, "P1-BS08": {"layer": "P1::받침대좌", "type": "Brep", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [-590.67, -95.8, 43555.0, 701.83, 1242.6, 43694.0], "user": {"fck": "40MPa", "id": "P1-BS08", "role": "bearing pedestal h1 NO.8 girder 3 rear", "source_views": "D1 평면도, D1 단면도, D2 ELEVATION TABLE"}, "faces": 6, "solid": true, "volume": 208505497.4}, "P1-BP07": {"layer": "P1::받침패드", "type": "Brep", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [-2856.41, 130.44, 43622.0, -2068.79, 1069.16, 43672.0], "user": {"fck": "-", "id": "P1-BP07", "role": "bearing pad h2 NO.7 2800 kN 양방향 [추론: 평행 이동]", "source_views": "D1 평면도, D1 단면도, D2 교량받침 상세·ELEVATION TABLE"}, "faces": 6, "solid": true, "volume": 29366666.7}, "P1-BS07": {"layer": "P1::받침대좌", "type": "Brep", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [-3096.0, -95.8, 43483.0, -1803.5, 1242.6, 43622.0], "user": {"fck": "40MPa", "id": "P1-BS07", "role": "bearing pedestal h1 NO.7 girder 2 rear [추론: 평행 이동]", "source_views": "D1 평면도, D1 단면도, D2 ELEVATION TABLE"}, "faces": 6, "solid": true, "volume": 208505497.5}, "P1-BP06": {"layer": "P1::받침패드", "type": "Brep", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [-5361.71, 130.44, 43550.0, -4574.09, 1069.16, 43600.0], "user": {"fck": "-", "id": "P1-BP06", "role": "bearing pad h2 NO.6 2800 kN 양방향 [추론: 평행 이동]", "source_views": "D1 평면도, D1 단면도, D2 교량받침 상세·ELEVATION TABLE"}, "faces": 6, "solid": true, "volume": 29366666.7}, "P1-BS06": {"layer": "P1::받침대좌", "type": "Brep", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [-5601.33, -95.8, 43411.0, -4308.83, 1242.6, 43550.0], "user": {"fck": "40MPa", "id": "P1-BS06", "role": "bearing pedestal h1 NO.6 girder 1 rear [추론: 평행 이동]", "source_views": "D1 평면도, D1 단면도, D2 ELEVATION TABLE"}, "faces": 6, "solid": true, "volume": 208505497.4}, "P1-BP05": {"layer": "P1::받침패드", "type": "Brep", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [4514.99, -1178.72, 43862.0, 5421.61, -216.88, 43912.0], "user": {"fck": "-", "id": "P1-BP05", "role": "bearing pad h2 NO.5 3500 kN 양방향", "soLine truncated
@@ -0,0 +1,76 @@
{
"gate": "G1",
"checker": "g1_shape.py",
"verdict": "PASS",
"summary": {
"total": 171,
"passed": 171,
"failed": 0,
"volumes_m3": {
"lean": 6.792,
"footing": 160.446,
"column": 37.709,
"coping": 89.586
},
"pile_volume_each_m3": 6.899
},
"unplanned_fails": [],
"planned_fails": [],
"negative": {
"negH": {
"move": {
"id": "BS08",
"d": [
3,
0,
0
]
},
"new_fails": [
"rear pedestal pitch girder 2-3",
"rear pedestal pitch girder 3-4"
],
"detected": true
},
"negV": {
"move": {
"id": "BP03",
"d": [
0,
0,
2
]
},
"new_fails": [
"NO.3 pad top = EL.'X'"
],
"detected": true
}
},
"reload": {
"built": 54,
"reopened": 54,
"fingerprint": 54,
"ok": true
},
"unchanged": {
"compared": 0,
"diffs": [],
"missing": [],
"ok": true,
"against": null
},
"model": "C:\\Users\\User\\Desktop\\바이브코딩\\pier_T\\Code\\교각모델링앱\\출력\\개별실행회귀_2026-10-12\\G1.3dm",
"mode": "single",
"secs": 35.2,
"build_steps": [
{
"name": "G1:concrete.py",
"secs": 0.26
},
{
"name": "display.py",
"secs": 0.01
}
]
}
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,425 @@
{
"summary": {
"total": 42,
"passed": 42,
"failed": 0,
"min_cover": {
"P1": 113.5,
"P2": 158.5,
"P3": 93.5,
"P4": 109.7,
"P5": 93.5,
"P6": 74.0
}
},
"results": [
{
"check": "C8",
"item": "P1 bar count",
"expected": 46,
"actual": 46,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 pipes closed & paired with centrelines",
"detail": "pipes 46 / centrelines 46",
"result": "PASS"
},
{
"check": "C8",
"item": "P2 bar count",
"expected": 46,
"actual": 46,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 pipes closed & paired with centrelines",
"detail": "pipes 46 / centrelines 46",
"result": "PASS"
},
{
"check": "C8",
"item": "P3 bar count",
"expected": 36,
"actual": 36,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P3 pipes closed & paired with centrelines",
"detail": "pipes 72 / centrelines 72",
"result": "PASS"
},
{
"check": "C8",
"item": "P4 bar count",
"expected": 9,
"actual": 9,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 pipes closed & paired with centrelines",
"detail": "pipes 18 / centrelines 18",
"result": "PASS"
},
{
"check": "C8",
"item": "P5 bar count",
"expected": 22,
"actual": 22,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 pipes closed & paired with centrelines",
"detail": "pipes 22 / centrelines 22",
"result": "PASS"
},
{
"check": "C8",
"item": "P6 bar count",
"expected": 36,
"actual": 36,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P6 pipes closed & paired with centrelines",
"detail": "pipes 36 / centrelines 36",
"result": "PASS"
},
{
"check": "C8",
"item": "P1 original length (+coupler b) vs schedule L (worst of 46)",
"expected": 0,
"actual": 0.071,
"diff": 0.071,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 curve length - L (record, fillets shorten hooks)",
"detail": "min 0.1 / max 0.1 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P1 curve length (+coupler b) vs L (no fillet)",
"expected": 0,
"actual": 0.071,
"diff": 0.071,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 original length (+coupler b) vs schedule L (worst of 46)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 curve length - L (record, fillets shorten hooks)",
"detail": "min 0.0 / max 0.0 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P2 curve length (+coupler b) vs L (no fillet)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P3 original length (+coupler b) vs schedule L (worst of 36)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P3 curve length - L (record, fillets shorten hooks)",
"detail": "min -493.1 / max -493.1 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P4 original length (+coupler b) vs schedule L (worst of 9)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 curve length - L (record, fillets shorten hooks)",
"detail": "min 0.0 / max 0.0 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P4 curve length (+coupler b) vs L (no fillet)",
"expected": 0,
"actual": 0.017,
"diff": 0.017,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 original length (+coupler b) vs schedule L (worst of 22)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 curve length - L (record, fillets shorten hooks)",
"detail": "min 0.0 / max 0.0 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P5 curve length (+coupler b) vs L (no fillet)",
"expected": 0,
"actual": 0.017,
"diff": 0.017,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P6 original length (+coupler b) vs schedule L (worst of 36)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P6 curve length - L (record, fillets shorten hooks)",
"detail": "min -20.6 / max -20.6 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P1 top EL",
"expected": 43061,
"actual": 43061.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 radius (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 angle vs i*360/46 (worst, deg)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 top EL",
"expected": 43061,
"actual": 43061.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 radius (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 angle vs i*360/46 (worst, deg)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 hook leg EL (footing bottom + 300)",
"expected": 26508,
"actual": 26508.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 bottom EL",
"expected": 26508,
"actual": 26508.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 radius",
"expected": 897,
"actual": 897.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 radius",
"expected": 897,
"actual": 897.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C8",
"item": "hoop level count 67",
"detail": "67",
"result": "PASS"
},
{
"check": "C8",
"item": "hoop levels vs dim chain (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "hoop marks by zone (P4 x9, P5 x22, P3 x36)",
"detail": "",
"result": "PASS"
},
{
"check": "C8",
"item": "tie levels vs chain + 17.5 (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "concrete union for cover",
"detail": "1 brep",
"result": "INFO"
},
{
"check": "C8",
"item": "P1 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P3 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P6 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "min cover to concrete surface per mark (record)",
"detail": "{\"P1\": 113.5, \"P2\": 158.5, \"P3\": 93.5, \"P4\": 109.7, \"P5\": 93.5, \"P6\": 74.0}",
"result": "INFO"
},
{
"check": "C8",
"item": "clearance P1 outer surface vs hoop inner surface (record)",
"detail": "1.0 mm",
"result": "INFO"
}
]
}
@@ -0,0 +1 @@
{"model": "C:\\Users\\User\\Desktop\\바이브코딩\\pier_T\\Code\\교각모델링앱\\출력\\개별실행회귀_2026-10-12\\G2.3dm", "units": "Millimeters", "tolerance": 0.001, "count": 534, "layers": {"P1::철근::기둥::P6": [140, 60, 160, true], "P1::철근::중심선": [60, 60, 60, true], "P1::철근::기둥::P3": [40, 120, 200, true], "P1::철근::기둥::P5": [90, 90, 220, true], "P1::철근::기둥::P4": [40, 170, 170, true], "P1::철근::기둥::P2": [230, 120, 40, true], "P1::철근::기둥::P1": [200, 40, 40, true], "P1::받침패드": [90, 160, 90, true], "P1::받침대좌": [190, 90, 90, true], "P1::말뚝": [110, 110, 110, true], "P1::코핑": [210, 180, 80, true], "P1::기둥": [200, 140, 90, true], "P1::기초": [120, 150, 200, true], "P1::버림콘크리트": [160, 160, 160, true]}, "objects": {"P1-R-P6-L9-135": {"layer": "P1::철근::기둥::P6", "type": "Brep", "hidden": false, "locked": false, "colour_source": 1, "colour": [31, 119, 180], "bbox": [-657.12, -657.12, 41655.5, 657.12, 657.12, 41813.5], "user": {"anchor_hosts": "P1-CP", "coupler_length": "0.000", "design_length": "2136.000", "dia": "H16", "host": "P1-CL", "id": "P1-R-P6-L9-135", "mark": "P6", "occurrence": "L9-135", "shape": "III", "src": "EL 41.788 (+17.5 on hoop); angle 135 deg"}, "faces": 7, "solid": true, "volume": "skipped"}, "P1-RC-P6-L9-135": {"layer": "P1::철근::중심선", "type": "PolyCurve", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [-649.12, -649.12, 41655.5, 649.12, 649.12, 41805.5], "user": {"anchor_hosts": "P1-CP", "coupler_length": "0.000", "design_length": "2136.000", "dia": "H16", "host": "P1-CL", "id": "P1-RC-P6-L9-135", "mark": "P6", "occurrence": "L9-135", "shape": "III", "src": "EL 41.788 (+17.5 on hoop); angle 135 deg"}, "length": 2115.398}, "P1-R-P6-L9-090": {"layer": "P1::철근::기둥::P6", "type": "Brep", "hidden": false, "locked": false, "colour_source": 1, "colour": [31, 119, 180], "bbox": [-8.0, -926.0, 41655.5, 8.0, 926.0, 41813.5], "user": {"anchor_hosts": "P1-CP", "coupler_length": "0.000", "design_length": "2136.000", "dia": "H16", "host": "P1-CL", "id": "P1-R-P6-L9-090", "mark": "P6", "occurrence": "L9-090", "shape": "III", "src": "EL 41.788 (+17.5 on hoop); angle 90 deg"}, "faces": 7, "solid": true, "volume": "skipped"}, "P1-RC-P6-L9-090": {"layer": "P1::철근::중심선", "type": "PolyCurve", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [-0.0, -918.0, 41655.5, 0.0, 918.0, 41805.5], "user": {"anchor_hosts": "P1-CP", "coupler_length": "0.000", "design_length": "2136.000", "dia": "H16", "host": "P1-CL", "id": "P1-RC-P6-L9-090", "mark": "P6", "occurrence": "L9-090", "shape": "III", "src": "EL 41.788 (+17.5 on hoop); angle 90 deg"}, "length": 2115.398}, "P1-R-P6-L9-045": {"layer": "P1::철근::기둥::P6", "type": "Brep", "hidden": false, "locked": false, "colour_source": 1, "colour": [31, 119, 180], "bbox": [-657.12, -657.12, 41655.5, 657.12, 657.12, 41813.5], "user": {"anchor_hosts": "P1-CP", "coupler_length": "0.000", "design_length": "2136.000", "dia": "H16", "host": "P1-CL", "id": "P1-R-P6-L9-045", "mark": "P6", "occurrence": "L9-045", "shape": "III", "src": "EL 41.788 (+17.5 on hoop); angle 45 deg"}, "faces": 7, "solid": true, "volume": "skipped"}, "P1-RC-P6-L9-045": {"layer": "P1::철근::중심선", "type": "PolyCurve", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [-649.12, -649.12, 41655.5, 649.12, 649.12, 41805.5], "user": {"anchor_hosts": "P1-CP", "coupler_length": "0.000", "design_length": "2136.000", "dia": "H16", "host": "P1-CL", "id": "P1-RC-P6-L9-045", "mark": "P6", "occurrence": "L9-045", "shape": "III", "src": "EL 41.788 (+17.5 on hoop); angle 45 deg"}, "length": 2115.398}, "P1-R-P6-L9-000": {"layer": "P1::철근::기둥::P6", "type": "Brep", "hidden": false, "locked": false, "colour_source": 1, "colour": [31, 119, 180], "bbox": [-926.0, -8.0, 41655.5, 926.0, 8.0, 41813.5], "user": {"anchor_hosts": "P1-CP", "coupler_length": "0.000", "design_length": "2136.000", "dia": "H16", "host": "P1-CL", "id": "P1-R-P6-L9-000", "mark": "P6", "occurrence": "L9-000", "shape": "III", "src": "EL 41.788 (+17.5 on hoop); angle 0 deg"}, "faces": 7, "solid": true, "volume": "skipped"}, "P1-RC-P6-L9-000": {"layer": "P1::철근::중심선", "type": "PolyCurve", "hidden": false, "locked": false, "colour_source": 0, "colour": [0, 0, 0], "bbox": [-918.0, 0.0, 41655.5, 918.0, 0.0, 41805.5], "user": {"anchor_hosts": "P1-CP", "coupler_length": "0.000", "design_length": "2136.000", "dia": "H16", "host": "P1-CL", "id": "P1-RC-P6-L9-000", "mark": "P6", "occurrence": "L9-000", "shape": "III", "src": "EL 41.788 (+17.5 on hoop); angle 0 deg"}, "length": 2115.398}, "P1-R-P6-L8-135": {"layer": "P1::철근::기둥::P6", "type": "Brep", "hidden": false, "locked": false, "colour_source": 1, "colour": [31, 119, 180], "bbox": [-657.12, -657.12, 39855.5, 657.12, 657.12, 40013.5], "user": {"coupLine truncated
@@ -0,0 +1,86 @@
{
"gate": "G2",
"checker": "g2_column_rebar.py",
"verdict": "PASS",
"summary": {
"total": 42,
"passed": 42,
"failed": 0,
"min_cover": {
"P1": 113.5,
"P2": 158.5,
"P3": 93.5,
"P4": 109.7,
"P5": 93.5,
"P6": 74.0
}
},
"unplanned_fails": [],
"planned_fails": [],
"negative": {
"negH": {
"move": {
"mark": "P2",
"d": [
5,
0,
0
]
},
"new_fails": [
"P2 radius (worst)"
],
"detected": true
},
"negV": {
"move": {
"mark": "P3",
"d": [
0,
0,
5
]
},
"new_fails": [
"hoop level count 67",
"hoop levels vs dim chain (worst)",
"hoop marks by zone (P4 x9, P5 x22, P3 x36)"
],
"detected": true
}
},
"reload": {
"built": 534,
"reopened": 534,
"fingerprint": 534,
"ok": true
},
"unchanged": {
"compared": 54,
"diffs": [],
"missing": [],
"ok": true,
"against": "G1_fp.json"
},
"model": "C:\\Users\\User\\Desktop\\바이브코딩\\pier_T\\Code\\교각모델링앱\\출력\\개별실행회귀_2026-10-12\\G2.3dm",
"mode": "single",
"secs": 68.3,
"build_steps": [
{
"name": "G1:concrete.py",
"secs": 0.27
},
{
"name": "G2:column_rebar.py",
"secs": 0.88
},
{
"name": "G2:rebar_colours.py",
"secs": 0.06
},
{
"name": "display.py",
"secs": 0.02
}
]
}
@@ -0,0 +1,425 @@
{
"summary": {
"total": 42,
"passed": 41,
"failed": 1,
"min_cover": {
"P1": 113.5,
"P2": 153.5,
"P3": 93.5,
"P4": 109.7,
"P5": 93.5,
"P6": 74.0
}
},
"results": [
{
"check": "C8",
"item": "P1 bar count",
"expected": 46,
"actual": 46,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 pipes closed & paired with centrelines",
"detail": "pipes 46 / centrelines 46",
"result": "PASS"
},
{
"check": "C8",
"item": "P2 bar count",
"expected": 46,
"actual": 46,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 pipes closed & paired with centrelines",
"detail": "pipes 46 / centrelines 46",
"result": "PASS"
},
{
"check": "C8",
"item": "P3 bar count",
"expected": 36,
"actual": 36,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P3 pipes closed & paired with centrelines",
"detail": "pipes 72 / centrelines 72",
"result": "PASS"
},
{
"check": "C8",
"item": "P4 bar count",
"expected": 9,
"actual": 9,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 pipes closed & paired with centrelines",
"detail": "pipes 18 / centrelines 18",
"result": "PASS"
},
{
"check": "C8",
"item": "P5 bar count",
"expected": 22,
"actual": 22,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 pipes closed & paired with centrelines",
"detail": "pipes 22 / centrelines 22",
"result": "PASS"
},
{
"check": "C8",
"item": "P6 bar count",
"expected": 36,
"actual": 36,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P6 pipes closed & paired with centrelines",
"detail": "pipes 36 / centrelines 36",
"result": "PASS"
},
{
"check": "C8",
"item": "P1 original length (+coupler b) vs schedule L (worst of 46)",
"expected": 0,
"actual": 0.071,
"diff": 0.071,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 curve length - L (record, fillets shorten hooks)",
"detail": "min 0.1 / max 0.1 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P1 curve length (+coupler b) vs L (no fillet)",
"expected": 0,
"actual": 0.071,
"diff": 0.071,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 original length (+coupler b) vs schedule L (worst of 46)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 curve length - L (record, fillets shorten hooks)",
"detail": "min 0.0 / max 0.0 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P2 curve length (+coupler b) vs L (no fillet)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P3 original length (+coupler b) vs schedule L (worst of 36)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P3 curve length - L (record, fillets shorten hooks)",
"detail": "min -493.1 / max -493.1 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P4 original length (+coupler b) vs schedule L (worst of 9)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 curve length - L (record, fillets shorten hooks)",
"detail": "min 0.0 / max 0.0 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P4 curve length (+coupler b) vs L (no fillet)",
"expected": 0,
"actual": 0.017,
"diff": 0.017,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 original length (+coupler b) vs schedule L (worst of 22)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 curve length - L (record, fillets shorten hooks)",
"detail": "min 0.0 / max 0.0 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P5 curve length (+coupler b) vs L (no fillet)",
"expected": 0,
"actual": 0.017,
"diff": 0.017,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P6 original length (+coupler b) vs schedule L (worst of 36)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P6 curve length - L (record, fillets shorten hooks)",
"detail": "min -20.6 / max -20.6 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P1 top EL",
"expected": 43061,
"actual": 43061.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 radius (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 angle vs i*360/46 (worst, deg)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 top EL",
"expected": 43061,
"actual": 43061.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 radius (worst)",
"expected": 0,
"actual": 5.0,
"diff": 5.0,
"tol": 0.5,
"result": "FAIL"
},
{
"check": "C8",
"item": "P2 angle vs i*360/46 (worst, deg)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 hook leg EL (footing bottom + 300)",
"expected": 26508,
"actual": 26508.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 bottom EL",
"expected": 26508,
"actual": 26508.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 radius",
"expected": 897,
"actual": 897.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 radius",
"expected": 897,
"actual": 897.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C8",
"item": "hoop level count 67",
"detail": "67",
"result": "PASS"
},
{
"check": "C8",
"item": "hoop levels vs dim chain (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "hoop marks by zone (P4 x9, P5 x22, P3 x36)",
"detail": "",
"result": "PASS"
},
{
"check": "C8",
"item": "tie levels vs chain + 17.5 (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "concrete union for cover",
"detail": "1 brep",
"result": "INFO"
},
{
"check": "C8",
"item": "P1 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P3 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P6 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "min cover to concrete surface per mark (record)",
"detail": "{\"P1\": 113.5, \"P2\": 153.5, \"P3\": 93.5, \"P4\": 109.7, \"P5\": 93.5, \"P6\": 74.0}",
"result": "INFO"
},
{
"check": "C8",
"item": "clearance P1 outer surface vs hoop inner surface (record)",
"detail": "1.0 mm",
"result": "INFO"
}
]
}
@@ -0,0 +1,425 @@
{
"summary": {
"total": 42,
"passed": 39,
"failed": 3,
"min_cover": {
"P1": 113.5,
"P2": 158.5,
"P3": 93.5,
"P4": 109.7,
"P5": 93.5,
"P6": 74.0
}
},
"results": [
{
"check": "C8",
"item": "P1 bar count",
"expected": 46,
"actual": 46,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 pipes closed & paired with centrelines",
"detail": "pipes 46 / centrelines 46",
"result": "PASS"
},
{
"check": "C8",
"item": "P2 bar count",
"expected": 46,
"actual": 46,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 pipes closed & paired with centrelines",
"detail": "pipes 46 / centrelines 46",
"result": "PASS"
},
{
"check": "C8",
"item": "P3 bar count",
"expected": 36,
"actual": 36,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P3 pipes closed & paired with centrelines",
"detail": "pipes 72 / centrelines 72",
"result": "PASS"
},
{
"check": "C8",
"item": "P4 bar count",
"expected": 9,
"actual": 9,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 pipes closed & paired with centrelines",
"detail": "pipes 18 / centrelines 18",
"result": "PASS"
},
{
"check": "C8",
"item": "P5 bar count",
"expected": 22,
"actual": 22,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 pipes closed & paired with centrelines",
"detail": "pipes 22 / centrelines 22",
"result": "PASS"
},
{
"check": "C8",
"item": "P6 bar count",
"expected": 36,
"actual": 36,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P6 pipes closed & paired with centrelines",
"detail": "pipes 36 / centrelines 36",
"result": "PASS"
},
{
"check": "C8",
"item": "P1 original length (+coupler b) vs schedule L (worst of 46)",
"expected": 0,
"actual": 0.071,
"diff": 0.071,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 curve length - L (record, fillets shorten hooks)",
"detail": "min 0.1 / max 0.1 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P1 curve length (+coupler b) vs L (no fillet)",
"expected": 0,
"actual": 0.071,
"diff": 0.071,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 original length (+coupler b) vs schedule L (worst of 46)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 curve length - L (record, fillets shorten hooks)",
"detail": "min 0.0 / max 0.0 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P2 curve length (+coupler b) vs L (no fillet)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P3 original length (+coupler b) vs schedule L (worst of 36)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P3 curve length - L (record, fillets shorten hooks)",
"detail": "min -493.1 / max -493.1 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P4 original length (+coupler b) vs schedule L (worst of 9)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 curve length - L (record, fillets shorten hooks)",
"detail": "min 0.0 / max 0.0 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P4 curve length (+coupler b) vs L (no fillet)",
"expected": 0,
"actual": 0.017,
"diff": 0.017,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 original length (+coupler b) vs schedule L (worst of 22)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 curve length - L (record, fillets shorten hooks)",
"detail": "min 0.0 / max 0.0 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P5 curve length (+coupler b) vs L (no fillet)",
"expected": 0,
"actual": 0.017,
"diff": 0.017,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P6 original length (+coupler b) vs schedule L (worst of 36)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P6 curve length - L (record, fillets shorten hooks)",
"detail": "min -20.6 / max -20.6 mm",
"result": "INFO"
},
{
"check": "C8",
"item": "P1 top EL",
"expected": 43061,
"actual": 43061.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 radius (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 angle vs i*360/46 (worst, deg)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 top EL",
"expected": 43061,
"actual": 43061.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 radius (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 angle vs i*360/46 (worst, deg)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C8",
"item": "P1 hook leg EL (footing bottom + 300)",
"expected": 26508,
"actual": 26508.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 bottom EL",
"expected": 26508,
"actual": 26508.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 radius",
"expected": 897,
"actual": 897.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 radius",
"expected": 897,
"actual": 897.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C8",
"item": "hoop level count 67",
"detail": "68",
"result": "FAIL"
},
{
"check": "C8",
"item": "hoop levels vs dim chain (worst)",
"expected": 0,
"actual": 300.0,
"diff": 300.0,
"tol": 1.0,
"result": "FAIL"
},
{
"check": "C8",
"item": "hoop marks by zone (P4 x9, P5 x22, P3 x36)",
"detail": "",
"result": "FAIL"
},
{
"check": "C8",
"item": "tie levels vs chain + 17.5 (worst)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C8",
"item": "concrete union for cover",
"detail": "1 brep",
"result": "INFO"
},
{
"check": "C8",
"item": "P1 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P2 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P3 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P4 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P5 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "P6 sample points outside concrete",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C8",
"item": "min cover to concrete surface per mark (record)",
"detail": "{\"P1\": 113.5, \"P2\": 158.5, \"P3\": 93.5, \"P4\": 109.7, \"P5\": 93.5, \"P6\": 74.0}",
"result": "INFO"
},
{
"check": "C8",
"item": "clearance P1 outer surface vs hoop inner surface (record)",
"detail": "1.0 mm",
"result": "INFO"
}
]
}
@@ -0,0 +1,39 @@
[
{
"gate": "G1",
"verdict": "PASS",
"summary": {
"total": 171,
"passed": 171,
"failed": 0,
"volumes_m3": {
"lean": 6.792,
"footing": 160.446,
"column": 37.709,
"coping": 89.586
},
"pile_volume_each_m3": 6.899
},
"unplanned_fails": [],
"secs": 35.2
},
{
"gate": "G2",
"verdict": "PASS",
"summary": {
"total": 42,
"passed": 42,
"failed": 0,
"min_cover": {
"P1": 113.5,
"P2": 158.5,
"P3": 93.5,
"P4": 109.7,
"P5": 93.5,
"P6": 74.0
}
},
"unplanned_fails": [],
"secs": 68.3
}
]