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

@@ -0,0 +1 @@
{"version": "1", "sources": ["5805357b67af903ef0a9f17007a31e3ab513accb69d83e5b8950a0272c20707a"], "fields": {"params:lean_concrete.z_top": {"v": 42763, "hits": [{"text": "EL. 42.763", "x": -83822.7, "y": -22989.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 2}, "params:footing.thickness": {"v": 2500.0, "hits": [{"text": "2.500", "x": 34776.8, "y": -20361.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 31339.8, "y": -24224.6, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 34738.1, "y": -28183.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 31301.2, "y": -32046.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 34722.4, "y": -35946.1, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 31285.4, "y": -39809.2, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 3}, "params:footing.z_bottom": {"v": 42763, "hits": [{"text": "EL. 42.763", "x": -83822.7, "y": -22989.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 2}, "params:column.height": {"v": 22600, "hits": [{"text": "22.600", "x": 16273.9, "y": -34758.9, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:column.diameter": {"v": 2500.0, "hits": [{"text": "2.500", "x": 34776.8, "y": -20361.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 31339.8, "y": -24224.6, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 34738.1, "y": -28183.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 31301.2, "y": -32046.5, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 34722.4, "y": -35946.1, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "2.500", "x": 31285.4, "y": -39809.2, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 3}, "params:coping.z_top_right": {"v": 71063.0, "hits": [{"text": "EL. 71.063", "x": -82908.4, "y": -11189.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:coping.z_top_left": {"v": 71193.0, "hits": [{"text": "EL. 71.193", "x": -95476.1, "y": -11059.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:coping.plan_length": {"v": 10000.0, "hits": [{"text": "10.000", "x": 10218.2, "y": -19324.1, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}, {"text": "10.000", "x": 10218.2, "y": -26123.3, "layer": "CS-DIMT", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:coping.profile_xz.6.1": {"v": 71193.0, "hits": [{"text": "EL. 71.193", "x": -95476.1, "y": -11059.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:coping.profile_xz.5.1": {"v": 71193.0, "hits": [{"text": "EL. 71.193", "x": -95476.1, "y": -11059.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:coping.profile_xz.4.1": {"v": 71063.0, "hits": [{"text": "EL. 71.063", "x": -82908.4, "y": -11189.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:coping.profile_xz.3.1": {"v": 71063.0, "hits": [{"text": "EL. 71.063", "x": -82908.4, "y": -11189.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:bearing_seats.bearings.3.el_x": {"v": 71310, "hits": [{"text": "71.310", "x": -69076.6, "y": -32940.4, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:bearing_seats.bearings.3.seat_z": {"v": 71063.0, "hits": [{"text": "EL. 71.063", "x": -82908.4, "y": -11189.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:bearing_seats.bearings.2.el_x": {"v": 71440, "hits": [{"text": "71.440", "x": -69076.6, "y": -32140.4, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:bearing_seats.bearings.2.seat_z": {"v": 71193.0, "hits": [{"text": "EL. 71.193", "x": -95476.1, "y": -11059.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:bearing_seats.bearings.1.el_x": {"v": 71288, "hits": [{"text": "71.288", "x": -69076.6, "y": -31340.4, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:bearing_seats.bearings.1.seat_z": {"v": 71063.0, "hits": [{"text": "EL. 71.063", "x": -82908.4, "y": -11189.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:bearing_seats.bearings.0.el_x": {"v": 71418, "hits": [{"text": "71.418", "x": -69076.6, "y": -30540.4, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:bearing_seats.bearings.0.seat_z": {"v": 71193.0, "hits": [{"text": "EL. 71.193", "x": -95476.1, "y": -11059.8, "layer": "CS-DIMT", "dwg": "D1", "kind": "EL"}], "shared": 3}, "params:column_rebar.ties.straight": {"v": 2295, "hits": [{"text": "2.295", "x": 100886.3, "y": -24794.6, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:column_rebar.hoops.zones.2.a": {"v": 3610, "hits": [{"text": "3.610", "x": 100886.3, "y": -25604.6, "layer": "CS-TABL-TEX2", "dwg": "D1", "kind": "m"}], "shared": 1}, "params:column_rebar.hoops.zones.1.a": {"v": 7164, "hits": [{"text": "7.Line truncated
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,142 @@
{
"params:pier_id": {
"sha": "97086571f822df69",
"by": "시험자",
"at": "2026-10-19 13:49:50",
"why": "시험",
"app_st": "n"
},
"params:rebar_marks": {
"sha": "e524b205a20145f4",
"by": "시험자",
"at": "2026-10-19 13:49:50",
"why": "시험",
"app_st": "n"
},
"params:display": {
"sha": "4a8afc994a7b21ec",
"by": "시험자",
"at": "2026-10-19 13:49:50",
"why": "시험",
"app_st": "n"
},
"expected:pier_id": {
"sha": "97086571f822df69",
"by": "시험자",
"at": "2026-10-19 13:49:50",
"why": "시험",
"app_st": "n"
},
"expected:tol_mm": {
"sha": "d0ff5974b6aa52cf",
"by": "시험자",
"at": "2026-10-19 13:49:50",
"why": "시험",
"app_st": "x"
},
"expected:rebar_palette": {
"sha": "cc2556d92248194c",
"by": "시험자",
"at": "2026-10-19 13:49:50",
"why": "시험",
"app_st": "x"
},
"expected:planned_fail": {
"sha": "4f53cda18c2baa0c",
"by": "시험자",
"at": "2026-10-19 13:49:50",
"why": "시험",
"app_st": "x"
},
"params:scope": {
"sha": "11ef90890ed9e050",
"by": "시험자",
"at": "2026-10-19 13:49:50",
"why": "시험",
"app_st": "n"
},
"params:builders": {
"sha": "e7958245e55ae625",
"by": "시험자",
"at": "2026-10-19 13:49:50",
"why": "시험",
"app_st": "n"
},
"expected:checkers": {
"sha": "ee95f0513cdeee40",
"by": "시험자",
"at": "2026-10-19 13:49:50",
"why": "시험",
"app_st": "n"
},
"expected:negative": {
"sha": "23a51c0a50190273",
"by": "시험자",
"at": "2026-10-19 13:49:50",
"why": "시험",
"app_st": "n"
},
"params:lean_concrete": {
"sha": "345c5b2907c9e33b",
"by": "시험자",
"at": "2026-10-19 13:49:50",
"why": "시험",
"app_st": "n"
},
"params:footing": {
"sha": "cb398c482547463c",
"by": "시험자",
"at": "2026-10-19 13:49:50",
"why": "시험",
"app_st": "n"
},
"params:column": {
"sha": "69b2aee864546aca",
"by": "시험자",
"at": "2026-10-19 13:49:50",
"why": "시험",
"app_st": "n"
},
"params:coping": {
"sha": "f01a8f54b381f46f",
"by": "시험자",
"at": "2026-10-19 13:49:50",
"why": "시험",
"app_st": "n"
},
"params:bearing_seats": {
"sha": "8c4626a69aca1182",
"by": "시험자",
"at": "2026-10-19 13:49:50",
"why": "시험",
"app_st": "n"
},
"params:materials": {
"sha": "b848a02969e61fb3",
"by": "시험자",
"at": "2026-10-19 13:49:50",
"why": "시험",
"app_st": "n"
},
"expected:G1": {
"sha": "085b3feaba63f405",
"by": "시험자",
"at": "2026-10-19 13:49:50",
"why": "시험",
"app_st": "n"
},
"params:sole_plates": {
"sha": "e1530ddf1eab1ded",
"by": "시험자",
"at": "2026-10-19 13:49:50",
"why": "시험",
"app_st": "n"
},
"expected:G5": {
"sha": "a120c009a51a90cd",
"by": "시험자",
"at": "2026-10-19 13:49:51",
"why": "시험",
"app_st": "n"
}
}
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,930 @@
{
"summary": {
"total": 104,
"passed": 104,
"failed": 0,
"volumes_m3": {
"lean": 5.929,
"footing": 140.625,
"column": 110.937,
"coping": 82.231
}
},
"results": [
{
"check": "C5",
"item": "object counts",
"detail": "{'LC': 1, 'FT': 1, 'CL': 1, 'CP': 1, 'PL': 0}",
"result": "PASS"
},
{
"check": "C2",
"item": "IsSolid all 4",
"detail": "4/4",
"result": "PASS"
},
{
"check": "C1",
"item": "footing X",
"expected": 7500,
"actual": 7500.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing Y",
"expected": 7500,
"actual": 7500.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing Zbot",
"expected": 42763,
"actual": 42763.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing Ztop",
"expected": 45263,
"actual": 45263.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing centre X",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing centre Y",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean X",
"expected": 7700,
"actual": 7700.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean Y",
"expected": 7700,
"actual": 7700.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean Zbot",
"expected": 42663,
"actual": 42663.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean Ztop",
"expected": 42763,
"actual": 42763.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean centre X",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean centre Y",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "column diameter X",
"expected": 2500,
"actual": 2500.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "column diameter Y",
"expected": 2500,
"actual": 2500.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "column Zbot",
"expected": 45263,
"actual": 45263.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "column Ztop",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping length X (tip to tip)",
"expected": 10000,
"actual": 10000.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping width Y",
"expected": 3200,
"actual": 3200.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping Zbot",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping Ztop",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping centre X",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "section closed single loop",
"detail": "1 loop(s)",
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=+0",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=+1249",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=-1249",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=+3000",
"expected": 68656.333,
"actual": 68656.333,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=-3000",
"expected": 68656.333,
"actual": 68656.333,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=+4995",
"expected": 69560.733,
"actual": 69560.733,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=-4995",
"expected": 69560.733,
"actual": 69560.733,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=-2000",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=+2000",
"expected": 71063,
"actual": 71063.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=-4690",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=+4690",
"expected": 71063,
"actual": 71063.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=-4850",
"expected": 70378.0,
"actual": 70378.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=+4850",
"expected": 70313.0,
"actual": 70313.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top step at the pier centre (left - right)",
"expected": 130,
"actual": 130.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "plan corners rounded R500 (4 corners outside, edges inside)",
"detail": "z 69613, test point (4927, 1527)",
"result": "PASS"
},
{
"check": "C3",
"item": "LC top = FT bottom",
"expected": 42763.0,
"actual": 42763.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C3",
"item": "FT top = CL bottom",
"expected": 45263.0,
"actual": 45263.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C3",
"item": "CL top = CP bottom",
"expected": 67863.0,
"actual": 67863.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C3",
"item": "overlap LC-FT (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C3",
"item": "overlap FT-CL (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C3",
"item": "overlap CL-CP (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C3",
"item": "column within coping bottom flat zone",
"detail": "r=1250 <= 1250 (X), 1600 (Y)",
"result": "PASS"
},
{
"check": "C6",
"item": "footing volume m3",
"expected": 140.625,
"actual": 140.625,
"diff": 0.0,
"tol": 0.140625,
"result": "PASS"
},
{
"check": "C6",
"item": "column volume m3",
"expected": 110.937,
"actual": 110.937,
"diff": 0.0,
"tol": 0.11093749057988958,
"result": "PASS"
},
{
"check": "C6",
"item": "lean volume m3 (minus pile holes)",
"expected": 5.929,
"actual": 5.929,
"diff": -0.0,
"tol": 0.005929,
"result": "PASS"
},
{
"check": "C6",
"item": "coping volume m3 (dimension outline, R corners)",
"expected": 82.23,
"actual": 82.231,
"diff": 0.001,
"tol": 0.08223033778456262,
"result": "PASS"
},
{
"check": "C7",
"item": "pedestal / pad counts",
"detail": "seats=4 pads=4",
"result": "PASS"
},
{
"check": "C7",
"item": "IsSolid pedestals+pads",
"detail": "8/8",
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 table EL.'X' - h1 - h2 = coping top (left)",
"expected": 71193,
"actual": 71193,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal bottom = coping top",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal top = top + h1",
"expected": 71368,
"actual": 71368.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pad top = EL.'X'",
"expected": 71418,
"actual": 71418.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal size X",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal size Y",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal centre X",
"expected": -3250,
"actual": -3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal centre Y",
"expected": -799,
"actual": -799.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pad centre X",
"expected": -3250,
"actual": -3250.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pad centre Y",
"expected": -799,
"actual": -799.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pad volume (prismatoid A,B)",
"expected": 26686666.667,
"actual": 26686666.667,
"diff": -0.0,
"tol": 26686.666666666668,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 overlap pedestal-coping (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 overlap pad-pedestal (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 table EL.'X' - h1 - h2 = coping top (right)",
"expected": 71063,
"actual": 71063,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal bottom = coping top",
"expected": 71063,
"actual": 71063.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal top = top + h1",
"expected": 71238,
"actual": 71238.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pad top = EL.'X'",
"expected": 71288,
"actual": 71288.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal size X",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal size Y",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal centre X",
"expected": 3250,
"actual": 3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal centre Y",
"expected": -774,
"actual": -774.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pad centre X",
"expected": 3250,
"actual": 3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pad centre Y",
"expected": -774,
"actual": -774.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pad volume (prismatoid A,B)",
"expected": 26686666.667,
"actual": 26686666.667,
"diff": 0.0,
"tol": 26686.666666666668,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 overlap pedestal-coping (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 overlap pad-pedestal (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 table EL.'X' - h1 - h2 = coping top (left)",
"expected": 71193,
"actual": 71193,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal bottom = coping top",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal top = top + h1",
"expected": 71390,
"actual": 71390.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pad top = EL.'X'",
"expected": 71440,
"actual": 71440.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal size X",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal size Y",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal centre X",
"expected": -3250,
"actual": -3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal centre Y",
"expected": 799,
"actual": 799.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pad centre X",
"expected": -3250,
"actual": -3250.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pad centre Y",
"expected": 799,
"actual": 799.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pad volume (prismatoid A,B)",
"expected": 28166666.667,
"actual": 28166666.667,
"diff": -0.0,
"tol": 28166.666666666668,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 overlap pedestal-coping (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 overlap pad-pedestal (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 table EL.'X' - h1 - h2 = coping top (right)",
"expected": 71063,
"actual": 71064,
"diff": 1,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal bottom = coping top",
"expected": 71063,
"actual": 71063.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal top = top + h1",
"expected": 71259,
"actual": 71259.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pad top = EL.'X'",
"expected": 71310,
"actual": 71309.0,
"diff": -1.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal size X",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal size Y",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal centre X",
"expected": 3250,
"actual": 3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal centre Y",
"expected": 771,
"actual": 771.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pad centre X",
"expected": 3250,
"actual": 3250.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pad centre Y",
"expected": 771,
"actual": 771.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pad volume (prismatoid A,B)",
"expected": 28166666.667,
"actual": 28166666.667,
"diff": -0.0,
"tol": 28166.666666666668,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 overlap pedestal-coping (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 overlap pad-pedestal (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
}
]
}
@@ -0,0 +1,66 @@
{
"gate": "G1",
"checker": "g1_tapered.py",
"verdict": "PASS",
"summary": {
"total": 104,
"passed": 104,
"failed": 0,
"volumes_m3": {
"lean": 5.929,
"footing": 140.625,
"column": 110.937,
"coping": 82.231
}
},
"unplanned_fails": [],
"planned_fails": [],
"negative": {
"negH": {
"move": {
"id": "BS02",
"d": [
3,
0,
0
]
},
"new_fails": [
"NO.2 pedestal centre X"
],
"detected": true
},
"negV": {
"move": {
"id": "BP03",
"d": [
0,
0,
2
]
},
"new_fails": [
"NO.3 pad top = EL.'X'"
],
"detected": true
}
},
"reload": {
"ok": null,
"skipped": "일괄 실행(단일 세션) — 저장·재로드 안 함"
},
"unchanged": {
"ok": null,
"compared": 0,
"diffs": [],
"missing": [],
"against": null,
"skipped": "일괄 실행(단일 세션) — 앞 게이트 객체를 다시 만들지 않음"
},
"model": null,
"mode": "batch",
"secs": 1.6,
"session_secs": 11.7,
"inputs_sha": "30e50c30623cd2c4",
"job_id": "18ecd3a5628b"
}
@@ -0,0 +1,12 @@
{
"id": "18ecd3a5628b",
"pid": 4596,
"state": "완료",
"at": "2026-10-19 13:50:03",
"log": [
"[batch] one Rhino session: build G1..G5, check G1, G5 (no per-gate save / reload)",
"[G1] PASS checks 104/104 (planned FAIL 0, unplanned 0) negative H/V True/True (batch)",
"[G5] PASS checks 75/75 (planned FAIL 0, unplanned 0) negative H/V True/True (batch)",
"[batch] done in 11.7s, objects 20, model C:\\Users\\User\\Desktop\\바이브코딩\\pier_T\\Code\\교각모델링앱\\검증\\web_ulsan_test_data\\울산시험\\runs\\current\\G5.3dm"
]
}
@@ -0,0 +1,930 @@
{
"summary": {
"total": 104,
"passed": 103,
"failed": 1,
"volumes_m3": {
"lean": 5.929,
"footing": 140.625,
"column": 110.937,
"coping": 82.231
}
},
"results": [
{
"check": "C5",
"item": "object counts",
"detail": "{'LC': 1, 'FT': 1, 'CL': 1, 'CP': 1, 'PL': 0}",
"result": "PASS"
},
{
"check": "C2",
"item": "IsSolid all 4",
"detail": "4/4",
"result": "PASS"
},
{
"check": "C1",
"item": "footing X",
"expected": 7500,
"actual": 7500.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing Y",
"expected": 7500,
"actual": 7500.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing Zbot",
"expected": 42763,
"actual": 42763.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing Ztop",
"expected": 45263,
"actual": 45263.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing centre X",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing centre Y",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean X",
"expected": 7700,
"actual": 7700.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean Y",
"expected": 7700,
"actual": 7700.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean Zbot",
"expected": 42663,
"actual": 42663.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean Ztop",
"expected": 42763,
"actual": 42763.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean centre X",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean centre Y",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "column diameter X",
"expected": 2500,
"actual": 2500.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "column diameter Y",
"expected": 2500,
"actual": 2500.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "column Zbot",
"expected": 45263,
"actual": 45263.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "column Ztop",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping length X (tip to tip)",
"expected": 10000,
"actual": 10000.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping width Y",
"expected": 3200,
"actual": 3200.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping Zbot",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping Ztop",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping centre X",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "section closed single loop",
"detail": "1 loop(s)",
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=+0",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=+1249",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=-1249",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=+3000",
"expected": 68656.333,
"actual": 68656.333,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=-3000",
"expected": 68656.333,
"actual": 68656.333,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=+4995",
"expected": 69560.733,
"actual": 69560.733,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=-4995",
"expected": 69560.733,
"actual": 69560.733,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=-2000",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=+2000",
"expected": 71063,
"actual": 71063.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=-4690",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=+4690",
"expected": 71063,
"actual": 71063.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=-4850",
"expected": 70378.0,
"actual": 70378.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=+4850",
"expected": 70313.0,
"actual": 70313.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top step at the pier centre (left - right)",
"expected": 130,
"actual": 130.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "plan corners rounded R500 (4 corners outside, edges inside)",
"detail": "z 69613, test point (4927, 1527)",
"result": "PASS"
},
{
"check": "C3",
"item": "LC top = FT bottom",
"expected": 42763.0,
"actual": 42763.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C3",
"item": "FT top = CL bottom",
"expected": 45263.0,
"actual": 45263.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C3",
"item": "CL top = CP bottom",
"expected": 67863.0,
"actual": 67863.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C3",
"item": "overlap LC-FT (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C3",
"item": "overlap FT-CL (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C3",
"item": "overlap CL-CP (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C3",
"item": "column within coping bottom flat zone",
"detail": "r=1250 <= 1250 (X), 1600 (Y)",
"result": "PASS"
},
{
"check": "C6",
"item": "footing volume m3",
"expected": 140.625,
"actual": 140.625,
"diff": 0.0,
"tol": 0.140625,
"result": "PASS"
},
{
"check": "C6",
"item": "column volume m3",
"expected": 110.937,
"actual": 110.937,
"diff": 0.0,
"tol": 0.11093749057988958,
"result": "PASS"
},
{
"check": "C6",
"item": "lean volume m3 (minus pile holes)",
"expected": 5.929,
"actual": 5.929,
"diff": -0.0,
"tol": 0.005929,
"result": "PASS"
},
{
"check": "C6",
"item": "coping volume m3 (dimension outline, R corners)",
"expected": 82.23,
"actual": 82.231,
"diff": 0.001,
"tol": 0.08223033778456262,
"result": "PASS"
},
{
"check": "C7",
"item": "pedestal / pad counts",
"detail": "seats=4 pads=4",
"result": "PASS"
},
{
"check": "C7",
"item": "IsSolid pedestals+pads",
"detail": "8/8",
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 table EL.'X' - h1 - h2 = coping top (left)",
"expected": 71193,
"actual": 71193,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal bottom = coping top",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal top = top + h1",
"expected": 71368,
"actual": 71368.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pad top = EL.'X'",
"expected": 71418,
"actual": 71418.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal size X",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal size Y",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal centre X",
"expected": -3250,
"actual": -3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal centre Y",
"expected": -799,
"actual": -799.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pad centre X",
"expected": -3250,
"actual": -3250.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pad centre Y",
"expected": -799,
"actual": -799.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pad volume (prismatoid A,B)",
"expected": 26686666.667,
"actual": 26686666.667,
"diff": -0.0,
"tol": 26686.666666666668,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 overlap pedestal-coping (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 overlap pad-pedestal (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 table EL.'X' - h1 - h2 = coping top (right)",
"expected": 71063,
"actual": 71063,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal bottom = coping top",
"expected": 71063,
"actual": 71063.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal top = top + h1",
"expected": 71238,
"actual": 71238.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pad top = EL.'X'",
"expected": 71288,
"actual": 71288.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal size X",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal size Y",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal centre X",
"expected": 3250,
"actual": 3253.0,
"diff": 3.0,
"tol": 1.0,
"result": "FAIL"
},
{
"check": "C7",
"item": "NO.2 pedestal centre Y",
"expected": -774,
"actual": -774.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pad centre X",
"expected": 3250,
"actual": 3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pad centre Y",
"expected": -774,
"actual": -774.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pad volume (prismatoid A,B)",
"expected": 26686666.667,
"actual": 26686666.667,
"diff": 0.0,
"tol": 26686.666666666668,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 overlap pedestal-coping (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 overlap pad-pedestal (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 table EL.'X' - h1 - h2 = coping top (left)",
"expected": 71193,
"actual": 71193,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal bottom = coping top",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal top = top + h1",
"expected": 71390,
"actual": 71390.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pad top = EL.'X'",
"expected": 71440,
"actual": 71440.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal size X",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal size Y",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal centre X",
"expected": -3250,
"actual": -3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal centre Y",
"expected": 799,
"actual": 799.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pad centre X",
"expected": -3250,
"actual": -3250.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pad centre Y",
"expected": 799,
"actual": 799.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pad volume (prismatoid A,B)",
"expected": 28166666.667,
"actual": 28166666.667,
"diff": -0.0,
"tol": 28166.666666666668,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 overlap pedestal-coping (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 overlap pad-pedestal (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 table EL.'X' - h1 - h2 = coping top (right)",
"expected": 71063,
"actual": 71064,
"diff": 1,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal bottom = coping top",
"expected": 71063,
"actual": 71063.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal top = top + h1",
"expected": 71259,
"actual": 71259.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pad top = EL.'X'",
"expected": 71310,
"actual": 71309.0,
"diff": -1.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal size X",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal size Y",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal centre X",
"expected": 3250,
"actual": 3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal centre Y",
"expected": 771,
"actual": 771.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pad centre X",
"expected": 3250,
"actual": 3250.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pad centre Y",
"expected": 771,
"actual": 771.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pad volume (prismatoid A,B)",
"expected": 28166666.667,
"actual": 28166666.667,
"diff": -0.0,
"tol": 28166.666666666668,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 overlap pedestal-coping (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 overlap pad-pedestal (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
}
]
}
@@ -0,0 +1,930 @@
{
"summary": {
"total": 104,
"passed": 103,
"failed": 1,
"volumes_m3": {
"lean": 5.929,
"footing": 140.625,
"column": 110.937,
"coping": 82.231
}
},
"results": [
{
"check": "C5",
"item": "object counts",
"detail": "{'LC': 1, 'FT': 1, 'CL': 1, 'CP': 1, 'PL': 0}",
"result": "PASS"
},
{
"check": "C2",
"item": "IsSolid all 4",
"detail": "4/4",
"result": "PASS"
},
{
"check": "C1",
"item": "footing X",
"expected": 7500,
"actual": 7500.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing Y",
"expected": 7500,
"actual": 7500.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing Zbot",
"expected": 42763,
"actual": 42763.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing Ztop",
"expected": 45263,
"actual": 45263.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing centre X",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "footing centre Y",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean X",
"expected": 7700,
"actual": 7700.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean Y",
"expected": 7700,
"actual": 7700.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean Zbot",
"expected": 42663,
"actual": 42663.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean Ztop",
"expected": 42763,
"actual": 42763.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean centre X",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "lean centre Y",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "column diameter X",
"expected": 2500,
"actual": 2500.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "column diameter Y",
"expected": 2500,
"actual": 2500.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "column Zbot",
"expected": 45263,
"actual": 45263.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "column Ztop",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping length X (tip to tip)",
"expected": 10000,
"actual": 10000.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping width Y",
"expected": 3200,
"actual": 3200.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping Zbot",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping Ztop",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C1",
"item": "coping centre X",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "section closed single loop",
"detail": "1 loop(s)",
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=+0",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=+1249",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=-1249",
"expected": 67863,
"actual": 67863.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=+3000",
"expected": 68656.333,
"actual": 68656.333,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=-3000",
"expected": 68656.333,
"actual": 68656.333,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=+4995",
"expected": 69560.733,
"actual": 69560.733,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "bottom at X=-4995",
"expected": 69560.733,
"actual": 69560.733,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=-2000",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=+2000",
"expected": 71063,
"actual": 71063.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=-4690",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=+4690",
"expected": 71063,
"actual": 71063.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=-4850",
"expected": 70378.0,
"actual": 70378.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top at X=+4850",
"expected": 70313.0,
"actual": 70313.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "top step at the pier centre (left - right)",
"expected": 130,
"actual": 130.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C4",
"item": "plan corners rounded R500 (4 corners outside, edges inside)",
"detail": "z 69613, test point (4927, 1527)",
"result": "PASS"
},
{
"check": "C3",
"item": "LC top = FT bottom",
"expected": 42763.0,
"actual": 42763.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C3",
"item": "FT top = CL bottom",
"expected": 45263.0,
"actual": 45263.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C3",
"item": "CL top = CP bottom",
"expected": 67863.0,
"actual": 67863.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C3",
"item": "overlap LC-FT (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C3",
"item": "overlap FT-CL (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C3",
"item": "overlap CL-CP (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C3",
"item": "column within coping bottom flat zone",
"detail": "r=1250 <= 1250 (X), 1600 (Y)",
"result": "PASS"
},
{
"check": "C6",
"item": "footing volume m3",
"expected": 140.625,
"actual": 140.625,
"diff": 0.0,
"tol": 0.140625,
"result": "PASS"
},
{
"check": "C6",
"item": "column volume m3",
"expected": 110.937,
"actual": 110.937,
"diff": 0.0,
"tol": 0.11093749057988958,
"result": "PASS"
},
{
"check": "C6",
"item": "lean volume m3 (minus pile holes)",
"expected": 5.929,
"actual": 5.929,
"diff": -0.0,
"tol": 0.005929,
"result": "PASS"
},
{
"check": "C6",
"item": "coping volume m3 (dimension outline, R corners)",
"expected": 82.23,
"actual": 82.231,
"diff": 0.001,
"tol": 0.08223033778456262,
"result": "PASS"
},
{
"check": "C7",
"item": "pedestal / pad counts",
"detail": "seats=4 pads=4",
"result": "PASS"
},
{
"check": "C7",
"item": "IsSolid pedestals+pads",
"detail": "8/8",
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 table EL.'X' - h1 - h2 = coping top (left)",
"expected": 71193,
"actual": 71193,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal bottom = coping top",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal top = top + h1",
"expected": 71368,
"actual": 71368.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pad top = EL.'X'",
"expected": 71418,
"actual": 71418.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal size X",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal size Y",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal centre X",
"expected": -3250,
"actual": -3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pedestal centre Y",
"expected": -799,
"actual": -799.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pad centre X",
"expected": -3250,
"actual": -3250.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pad centre Y",
"expected": -799,
"actual": -799.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 pad volume (prismatoid A,B)",
"expected": 26686666.667,
"actual": 26686666.667,
"diff": -0.0,
"tol": 26686.666666666668,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 overlap pedestal-coping (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.1 overlap pad-pedestal (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 table EL.'X' - h1 - h2 = coping top (right)",
"expected": 71063,
"actual": 71063,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal bottom = coping top",
"expected": 71063,
"actual": 71063.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal top = top + h1",
"expected": 71238,
"actual": 71238.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pad top = EL.'X'",
"expected": 71288,
"actual": 71288.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal size X",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal size Y",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal centre X",
"expected": 3250,
"actual": 3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pedestal centre Y",
"expected": -774,
"actual": -774.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pad centre X",
"expected": 3250,
"actual": 3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pad centre Y",
"expected": -774,
"actual": -774.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 pad volume (prismatoid A,B)",
"expected": 26686666.667,
"actual": 26686666.667,
"diff": 0.0,
"tol": 26686.666666666668,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 overlap pedestal-coping (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.2 overlap pad-pedestal (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 table EL.'X' - h1 - h2 = coping top (left)",
"expected": 71193,
"actual": 71193,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal bottom = coping top",
"expected": 71193,
"actual": 71193.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal top = top + h1",
"expected": 71390,
"actual": 71390.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pad top = EL.'X'",
"expected": 71440,
"actual": 71442.0,
"diff": 2.0,
"tol": 1.0,
"result": "FAIL"
},
{
"check": "C7",
"item": "NO.3 pedestal size X",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal size Y",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal centre X",
"expected": -3250,
"actual": -3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pedestal centre Y",
"expected": 799,
"actual": 799.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pad centre X",
"expected": -3250,
"actual": -3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pad centre Y",
"expected": 799,
"actual": 799.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 pad volume (prismatoid A,B)",
"expected": 28166666.667,
"actual": 28166666.667,
"diff": -0.0,
"tol": 28166.666666666668,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 overlap pedestal-coping (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.3 overlap pad-pedestal (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 table EL.'X' - h1 - h2 = coping top (right)",
"expected": 71063,
"actual": 71064,
"diff": 1,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal bottom = coping top",
"expected": 71063,
"actual": 71063.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal top = top + h1",
"expected": 71259,
"actual": 71259.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pad top = EL.'X'",
"expected": 71310,
"actual": 71309.0,
"diff": -1.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal size X",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal size Y",
"expected": 1300,
"actual": 1300.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal centre X",
"expected": 3250,
"actual": 3250.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pedestal centre Y",
"expected": 771,
"actual": 771.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pad centre X",
"expected": 3250,
"actual": 3250.0,
"diff": -0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pad centre Y",
"expected": 771,
"actual": 771.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 pad volume (prismatoid A,B)",
"expected": 28166666.667,
"actual": 28166666.667,
"diff": -0.0,
"tol": 28166.666666666668,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 overlap pedestal-coping (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C7",
"item": "NO.4 overlap pad-pedestal (mm3)",
"expected": 0,
"actual": 0,
"diff": 0,
"tol": 1.0,
"result": "PASS"
}
]
}
@@ -0,0 +1,657 @@
{
"summary": {
"total": 75,
"passed": 75,
"failed": 0
},
"results": [
{
"check": "C11",
"item": "bearing count",
"expected": 4,
"actual": 4,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C11",
"item": "sole plate count",
"expected": 4,
"actual": 4,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C11",
"item": "all 8 closed solids",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing bottom = EL.'X'",
"expected": 71418,
"actual": 71418.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing height h3",
"expected": 144,
"actual": 144.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing across (B)",
"expected": 580,
"actual": 580.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing along (A)",
"expected": 580,
"actual": 580.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate across W",
"expected": 800,
"actual": 800.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate along L",
"expected": 920,
"actual": 920.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate bottom = bearing top",
"expected": 71562.0,
"actual": 71562.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate slope S (%) along +Y-ward axis",
"expected": 1.896,
"actual": 1.896,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate centre thickness T",
"expected": 31,
"actual": 31.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 thick end at +Y",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 no transverse slope",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 overlap bearing-pad (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 overlap bearing-sole plate (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 colours (bearing (0, 0, 0), sole plate (150, 150, 150))",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing bottom = EL.'X'",
"expected": 71288,
"actual": 71288.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing height h3",
"expected": 144,
"actual": 144.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing across (B)",
"expected": 580,
"actual": 580.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing along (A)",
"expected": 580,
"actual": 580.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate across W",
"expected": 800,
"actual": 800.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate along L",
"expected": 920,
"actual": 920.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate bottom = bearing top",
"expected": 71432.0,
"actual": 71432.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate slope S (%) along +Y-ward axis",
"expected": 1.899,
"actual": 1.899,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate centre thickness T",
"expected": 31,
"actual": 31.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 thick end at +Y",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 no transverse slope",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 overlap bearing-pad (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 overlap bearing-sole plate (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 colours (bearing (0, 0, 0), sole plate (150, 150, 150))",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing bottom = EL.'X'",
"expected": 71440,
"actual": 71440.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing height h3",
"expected": 152,
"actual": 152.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing across (B)",
"expected": 600,
"actual": 600.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing along (A)",
"expected": 600,
"actual": 600.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate across W",
"expected": 820,
"actual": 820.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate along L",
"expected": 940,
"actual": 940.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate bottom = bearing top",
"expected": 71592.0,
"actual": 71592.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate slope S (%) along +Y-ward axis",
"expected": 1.896,
"actual": 1.896,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate centre thickness T",
"expected": 31,
"actual": 31.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 thick end at +Y",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 no transverse slope",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 overlap bearing-pad (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 overlap bearing-sole plate (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 colours (bearing (0, 0, 0), sole plate (150, 150, 150))",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing bottom = EL.'X'",
"expected": 71310,
"actual": 71309.0,
"diff": -1.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing height h3",
"expected": 152,
"actual": 152.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing across (B)",
"expected": 600,
"actual": 600.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing along (A)",
"expected": 600,
"actual": 600.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate across W",
"expected": 820,
"actual": 820.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate along L",
"expected": 940,
"actual": 940.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate bottom = bearing top",
"expected": 71461.0,
"actual": 71461.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate slope S (%) along +Y-ward axis",
"expected": 1.899,
"actual": 1.899,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate centre thickness T",
"expected": 31,
"actual": 31.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 thick end at +Y",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 no transverse slope",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 overlap bearing-pad (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 overlap bearing-sole plate (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 colours (bearing (0, 0, 0), sole plate (150, 150, 150))",
"detail": "",
"result": "PASS"
}
]
}
@@ -0,0 +1,60 @@
{
"gate": "G5",
"checker": "g5_bearings.py",
"verdict": "PASS",
"summary": {
"total": 75,
"passed": 75,
"failed": 0
},
"unplanned_fails": [],
"planned_fails": [],
"negative": {
"negH": {
"move": {
"id": "BB04",
"d": [
5,
0,
0
]
},
"new_fails": [
"NO.4 bearing plan centre offset from pad (mm)"
],
"detected": true
},
"negV": {
"move": {
"id": "SP03",
"d": [
0,
0,
5
]
},
"new_fails": [
"NO.3 sole plate bottom = bearing top"
],
"detected": true
}
},
"reload": {
"ok": null,
"skipped": "일괄 실행(단일 세션) — 저장·재로드 안 함"
},
"unchanged": {
"ok": null,
"compared": 0,
"diffs": [],
"missing": [],
"against": null,
"skipped": "일괄 실행(단일 세션) — 앞 게이트 객체를 다시 만들지 않음"
},
"model": "C:\\Users\\User\\Desktop\\바이브코딩\\pier_T\\Code\\교각모델링앱\\검증\\web_ulsan_test_data\\울산시험\\runs\\current\\G5.3dm",
"mode": "batch",
"secs": 0.2,
"session_secs": 11.7,
"inputs_sha": "30e50c30623cd2c4",
"job_id": "18ecd3a5628b"
}
@@ -0,0 +1,12 @@
{
"id": "18ecd3a5628b",
"pid": 4596,
"state": "완료",
"at": "2026-10-19 13:50:03",
"log": [
"[batch] one Rhino session: build G1..G5, check G1, G5 (no per-gate save / reload)",
"[G1] PASS checks 104/104 (planned FAIL 0, unplanned 0) negative H/V True/True (batch)",
"[G5] PASS checks 75/75 (planned FAIL 0, unplanned 0) negative H/V True/True (batch)",
"[batch] done in 11.7s, objects 20, model C:\\Users\\User\\Desktop\\바이브코딩\\pier_T\\Code\\교각모델링앱\\검증\\web_ulsan_test_data\\울산시험\\runs\\current\\G5.3dm"
]
}
@@ -0,0 +1,657 @@
{
"summary": {
"total": 75,
"passed": 74,
"failed": 1
},
"results": [
{
"check": "C11",
"item": "bearing count",
"expected": 4,
"actual": 4,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C11",
"item": "sole plate count",
"expected": 4,
"actual": 4,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C11",
"item": "all 8 closed solids",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing bottom = EL.'X'",
"expected": 71418,
"actual": 71418.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing height h3",
"expected": 144,
"actual": 144.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing across (B)",
"expected": 580,
"actual": 580.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing along (A)",
"expected": 580,
"actual": 580.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate across W",
"expected": 800,
"actual": 800.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate along L",
"expected": 920,
"actual": 920.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate bottom = bearing top",
"expected": 71562.0,
"actual": 71562.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate slope S (%) along +Y-ward axis",
"expected": 1.896,
"actual": 1.896,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate centre thickness T",
"expected": 31,
"actual": 31.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 thick end at +Y",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 no transverse slope",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 overlap bearing-pad (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 overlap bearing-sole plate (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 colours (bearing (0, 0, 0), sole plate (150, 150, 150))",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing bottom = EL.'X'",
"expected": 71288,
"actual": 71288.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing height h3",
"expected": 144,
"actual": 144.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing across (B)",
"expected": 580,
"actual": 580.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing along (A)",
"expected": 580,
"actual": 580.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate across W",
"expected": 800,
"actual": 800.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate along L",
"expected": 920,
"actual": 920.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate bottom = bearing top",
"expected": 71432.0,
"actual": 71432.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate slope S (%) along +Y-ward axis",
"expected": 1.899,
"actual": 1.899,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate centre thickness T",
"expected": 31,
"actual": 31.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 thick end at +Y",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 no transverse slope",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 overlap bearing-pad (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 overlap bearing-sole plate (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 colours (bearing (0, 0, 0), sole plate (150, 150, 150))",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing bottom = EL.'X'",
"expected": 71440,
"actual": 71440.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing height h3",
"expected": 152,
"actual": 152.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing across (B)",
"expected": 600,
"actual": 600.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing along (A)",
"expected": 600,
"actual": 600.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate across W",
"expected": 820,
"actual": 820.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate along L",
"expected": 940,
"actual": 940.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate bottom = bearing top",
"expected": 71592.0,
"actual": 71592.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate slope S (%) along +Y-ward axis",
"expected": 1.896,
"actual": 1.896,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate centre thickness T",
"expected": 31,
"actual": 31.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 thick end at +Y",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 no transverse slope",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 overlap bearing-pad (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 overlap bearing-sole plate (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 colours (bearing (0, 0, 0), sole plate (150, 150, 150))",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing bottom = EL.'X'",
"expected": 71310,
"actual": 71309.0,
"diff": -1.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing height h3",
"expected": 152,
"actual": 152.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing across (B)",
"expected": 600,
"actual": 600.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing along (A)",
"expected": 600,
"actual": 600.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate across W",
"expected": 820,
"actual": 820.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate along L",
"expected": 940,
"actual": 940.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate bottom = bearing top",
"expected": 71461.0,
"actual": 71461.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing plan centre offset from pad (mm)",
"expected": 0,
"actual": 5.0,
"diff": 5.0,
"tol": 1.0,
"result": "FAIL"
},
{
"check": "C11",
"item": "NO.4 sole plate plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate slope S (%) along +Y-ward axis",
"expected": 1.899,
"actual": 1.899,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate centre thickness T",
"expected": 31,
"actual": 31.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 thick end at +Y",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 no transverse slope",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 overlap bearing-pad (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 overlap bearing-sole plate (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 colours (bearing (0, 0, 0), sole plate (150, 150, 150))",
"detail": "",
"result": "PASS"
}
]
}
@@ -0,0 +1,657 @@
{
"summary": {
"total": 75,
"passed": 74,
"failed": 1
},
"results": [
{
"check": "C11",
"item": "bearing count",
"expected": 4,
"actual": 4,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C11",
"item": "sole plate count",
"expected": 4,
"actual": 4,
"diff": 0,
"tol": 0,
"result": "PASS"
},
{
"check": "C11",
"item": "all 8 closed solids",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing bottom = EL.'X'",
"expected": 71418,
"actual": 71418.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing height h3",
"expected": 144,
"actual": 144.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing across (B)",
"expected": 580,
"actual": 580.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing along (A)",
"expected": 580,
"actual": 580.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate across W",
"expected": 800,
"actual": 800.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate along L",
"expected": 920,
"actual": 920.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate bottom = bearing top",
"expected": 71562.0,
"actual": 71562.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 bearing axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate slope S (%) along +Y-ward axis",
"expected": 1.896,
"actual": 1.896,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 sole plate centre thickness T",
"expected": 31,
"actual": 31.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 thick end at +Y",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 no transverse slope",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 overlap bearing-pad (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 overlap bearing-sole plate (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.1 colours (bearing (0, 0, 0), sole plate (150, 150, 150))",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing bottom = EL.'X'",
"expected": 71288,
"actual": 71288.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing height h3",
"expected": 144,
"actual": 144.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing across (B)",
"expected": 580,
"actual": 580.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing along (A)",
"expected": 580,
"actual": 580.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate across W",
"expected": 800,
"actual": 800.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate along L",
"expected": 920,
"actual": 920.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate bottom = bearing top",
"expected": 71432.0,
"actual": 71432.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 bearing axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate slope S (%) along +Y-ward axis",
"expected": 1.899,
"actual": 1.899,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 sole plate centre thickness T",
"expected": 31,
"actual": 31.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 thick end at +Y",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 no transverse slope",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 overlap bearing-pad (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 overlap bearing-sole plate (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.2 colours (bearing (0, 0, 0), sole plate (150, 150, 150))",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing bottom = EL.'X'",
"expected": 71440,
"actual": 71440.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing height h3",
"expected": 152,
"actual": 152.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing across (B)",
"expected": 600,
"actual": 600.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing along (A)",
"expected": 600,
"actual": 600.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate across W",
"expected": 820,
"actual": 820.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate along L",
"expected": 940,
"actual": 940.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate bottom = bearing top",
"expected": 71592.0,
"actual": 71597.0,
"diff": 5.0,
"tol": 0.01,
"result": "FAIL"
},
{
"check": "C11",
"item": "NO.3 bearing plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 bearing axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate slope S (%) along +Y-ward axis",
"expected": 1.896,
"actual": 1.896,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 sole plate centre thickness T",
"expected": 31,
"actual": 31.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 thick end at +Y",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 no transverse slope",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 overlap bearing-pad (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 overlap bearing-sole plate (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.3 colours (bearing (0, 0, 0), sole plate (150, 150, 150))",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing bottom = EL.'X'",
"expected": 71310,
"actual": 71309.0,
"diff": -1.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing height h3",
"expected": 152,
"actual": 152.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing across (B)",
"expected": 600,
"actual": 600.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing along (A)",
"expected": 600,
"actual": 600.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate across W",
"expected": 820,
"actual": 820.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate along L",
"expected": 940,
"actual": 940.0,
"diff": 0.0,
"tol": 0.5,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate bottom = bearing top",
"expected": 71461.0,
"actual": 71461.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate plan centre offset from pad (mm)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 bearing axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate axis vs pad (deg)",
"expected": 0.0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate slope S (%) along +Y-ward axis",
"expected": 1.899,
"actual": 1.899,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 sole plate centre thickness T",
"expected": 31,
"actual": 31.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 thick end at +Y",
"detail": "",
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 no transverse slope",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 0.01,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 overlap bearing-pad (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 overlap bearing-sole plate (mm3)",
"expected": 0,
"actual": 0.0,
"diff": 0.0,
"tol": 1.0,
"result": "PASS"
},
{
"check": "C11",
"item": "NO.4 colours (bearing (0, 0, 0), sole plate (150, 150, 150))",
"detail": "",
"result": "PASS"
}
]
}
@@ -0,0 +1,16 @@
{
"G1": {
"decision": "승인",
"by": "시험자",
"note": "일괄 실행 자동 승인",
"at": "2026-10-19 13:50:03",
"inputs_sha": "30e50c30623cd2c4"
},
"G5": {
"decision": "승인",
"by": "시험자",
"note": "일괄 실행 자동 승인",
"at": "2026-10-19 13:50:03",
"inputs_sha": "30e50c30623cd2c4"
}
}
@@ -0,0 +1,15 @@
{
"state": "완료",
"by": "시험자",
"pid": 4596,
"at": "2026-10-19 13:50:03",
"log": [
"G1~G5 단일 세션 실행 (게이트 검사·음성 시험만, 중간 저장·재로드 없음)",
"[batch] one Rhino session: build G1..G5, check G1, G5 (no per-gate save / reload)",
"[G1] PASS checks 104/104 (planned FAIL 0, unplanned 0) negative H/V True/True (batch)",
"[G5] PASS checks 75/75 (planned FAIL 0, unplanned 0) negative H/V True/True (batch)",
"[batch] done in 11.7s, objects 20, model C:\\Users\\User\\Desktop\\바이브코딩\\pier_T\\Code\\교각모델링앱\\검증\\web_ulsan_test_data\\울산시험\\runs\\current\\G5.3dm",
"G1 PASS 104/104 (계획 FAIL 0) → 승인",
"G5 PASS 75/75 (계획 FAIL 0) → 승인"
]
}
@@ -0,0 +1,11 @@
{
"chapters_missing": [],
"vocab_bad": [],
"finding_rows": 0,
"finding_rows_without_source": 0,
"schedule_rows": 0,
"schedule_marks": 0,
"gate_rows": 5,
"schedule_unread": true,
"ok": false
}
@@ -0,0 +1,100 @@
# 울산시험 교각 모델링 검토보고서 (초안)
> 앱이 게이트 결과·도면 표·승인 기록으로 자동 작성한 **초안**입니다. '오류'·'불일치' 판정과 3~5장의 서술은 담당자가 확인·확정해야 합니다. 작성일 2026-10-19 · 작성 시험자.
## 1. 개요
- 교각: 울산시험 (T형) · 좌표: 로컬(교각 중심 원점, X 교축직각, Y 교축, Z = EL×1000, mm) · 산출: .3dm
- 게이트 진행: 2/2 실행 (범위 밖: G2, G3, G4), **전 게이트 PASS·승인**
### 1.2 게이트 결과
| 게이트 | 내용 | 판정 | 검사 PASS | 승인 | 의견 |
| :--- | :--- | :--- | :--- | :--- | :--- |
| G1 | 형상(콘크리트·말뚝·받침대좌·패드) | PASS | 104/104 | 승인 시험자 2026-10-19 13:50:03 | 일괄 실행 자동 승인 |
| G2 | 기둥 철근 | 범위 밖 | - | - | - |
| G3 | 확대기초 철근 | 범위 밖 | - | - | - |
| G4 | 코핑 철근 | 범위 밖 | - | - | - |
| G5 | 교량받침·솔플레이트 | PASS | 75/75 | 승인 시험자 2026-10-19 13:50:03 | 일괄 실행 자동 승인 |
## 2. 도면 오류·불일치
자동 등재 기준: 승인된 계획 FAIL → '불일치', 계획되지 않은 FAIL과 도면 표 값·입력값 차이 → '확인 필요'.
자동으로 찾은 항목이 없습니다.
## 3. 개선방안
[담당자 작성] 2장 항목별로 도면 수정·설계자 확인 방안을 적습니다.
## 4. 추가되어야 할 사항
[담당자 작성] 도면에 없어 추정·가정으로 모델링한 사항(입력 묶음의 `[추론]` 표기)을 정리합니다.
- 자동 확인: `[추론]` 표기가 있는 입력 묶음 — column_rebar, coping_rebar, footing_rebar, materials
## 5. 누락사항
[담당자 작성] 도면에서 빠진 치수·표·상세를 적습니다.
## 6. 철근재료표 (원본 vs 모델)
원본 = 도면 재료표 판독값(동일 기호 " 해석 포함), 모델 = 게이트 검사의 본수 실측값.
도면 재료표를 인식하지 못했습니다(도면 미등록 또는 표 형식 상이).
## 7. 철근상세 (기록)
원길이·곡선길이·피복은 판정이 아닌 기록 값입니다(요구사항 §6.2).
## 8. 검증 방법
- 검사기는 생성 입력(params)이 아니라 도면 문자·표에서 옮긴 독립 기대값(expected)만 읽습니다.
- 게이트마다 G1부터 새로 생성 → 저장 파일을 다시 열어 검사(재로드) → 객체를 수평·수직으로 옮겨 FAIL이 나는지 확인(음성 시험) → 앞 게이트 객체 지문 비교.
- 일괄 실행(단일 Rhino 세션)으로 검사한 게이트는 중간 저장·재로드와 앞 게이트 비교를 하지 않으며, 표에 '생략(일괄 실행)'으로 적습니다. 모델은 마지막 G5만 저장합니다.
| 게이트 | 재로드 | 음성 시험 | 앞 게이트 객체 |
| :--- | :--- | :--- | :--- |
| G1 | 생략(일괄 실행) | 수평 검출 / 수직 검출 | 생략(일괄 실행) |
| G5 | 생략(일괄 실행) | 수평 검출 / 수직 검출 | 생략(일괄 실행) |
### 8.1 입력 묶음 앱 확인 결과 요약
- 앱 확인(검사 버전 B2, 2026-10-19 13:49:50): 일치 0 · 주의 6 · 불일치 0 · 근거 없음 17 · 해당 없음 8 (전체 묶음 31개).
- 앱 확인은 도면 표·재료표 수량·고정 항목을 앱이 대조한 결과입니다. '일치'는 독립 근거와 값이 같다는 뜻이며 도면이 맞다는 보증이 아닙니다. 확정은 사람이 했고, 앱 확인이 일치가 아닌 묶음은 사유가 기록되어 있습니다.
| 묶음 | 앱 확인 | 근거 | 사람 확정 |
| :--- | :--- | :--- | :--- |
| expected:G2 | 주의 | C4 생성 목록 수량 5건이 재료표 수량과 같다 (위치·좌표는 확인하지 않음) — 수량만 확인, 위치·좌표는 도면과 직접 대조 | 미확정 |
| expected:G3 | 주의 | C4 생성 목록 수량 10건이 재료표 수량과 같다 (위치·좌표는 확인하지 않음) — 수량만 확인, 위치·좌표는 도면과 직접 대조 | 미확정 |
| expected:G4 | 주의 | C4 생성 목록 수량 19건이 재료표 수량과 같다 (위치·좌표는 확인하지 않음) — 수량만 확인, 위치·좌표는 도면과 직접 대조 | 미확정 |
| params:column_rebar | 주의 | C4 생성 목록 수량 5건이 재료표 수량과 같다 (위치·좌표는 확인하지 않음) — 수량만 확인, 위치·좌표는 도면과 직접 대조 | 미확정 |
| params:coping_rebar | 주의 | C4 생성 목록 수량 19건이 재료표 수량과 같다 (위치·좌표는 확인하지 않음) — 수량만 확인, 위치·좌표는 도면과 직접 대조 | 미확정 |
| params:footing_rebar | 주의 | C4 생성 목록 수량 10건이 재료표 수량과 같다 (위치·좌표는 확인하지 않음) — 수량만 확인, 위치·좌표는 도면과 직접 대조 | 미확정 |
| expected:G1 | 근거 없음 | C2 도면 문자 색인이 없어 표와 대조하지 못했다 | 시험자 2026-10-19 13:49:50 (앱 확인 근거 없음, 사유: 시험) |
| expected:G5 | 근거 없음 | C2 도면 문자 색인이 없어 표와 대조하지 못했다 | 시험자 2026-10-19 13:49:51 (앱 확인 근거 없음, 사유: 시험) |
| expected:checkers | 근거 없음 | C7 템플릿 원본 기록이 없어 고정 항목을 비교하지 못했다 | 시험자 2026-10-19 13:49:50 (앱 확인 근거 없음, 사유: 시험) |
| expected:negative | 근거 없음 | C7 템플릿 원본 기록이 없어 고정 항목을 비교하지 못했다 | 시험자 2026-10-19 13:49:50 (앱 확인 근거 없음, 사유: 시험) |
| expected:pier_id | 근거 없음 | 앱이 독립적으로 대조할 근거가 없다 — 도면과 직접 대조한 뒤 사유와 함께 확정 | 시험자 2026-10-19 13:49:50 (앱 확인 근거 없음, 사유: 시험) |
| params:bearing_seats | 근거 없음 | C2 도면 문자 색인이 없어 표와 대조하지 못했다 | 시험자 2026-10-19 13:49:50 (앱 확인 근거 없음, 사유: 시험) |
| params:builders | 근거 없음 | C7 템플릿 원본 기록이 없어 고정 항목을 비교하지 못했다 | 시험자 2026-10-19 13:49:50 (앱 확인 근거 없음, 사유: 시험) |
| params:column | 근거 없음 | 앱이 독립적으로 대조할 근거가 없다 — 도면과 직접 대조한 뒤 사유와 함께 확정 | 시험자 2026-10-19 13:49:50 (앱 확인 근거 없음, 사유: 시험) |
| params:coping | 근거 없음 | 앱이 독립적으로 대조할 근거가 없다 — 도면과 직접 대조한 뒤 사유와 함께 확정 | 시험자 2026-10-19 13:49:50 (앱 확인 근거 없음, 사유: 시험) |
| params:display | 근거 없음 | C7 템플릿 원본 기록이 없어 고정 항목을 비교하지 못했다 | 시험자 2026-10-19 13:49:50 (앱 확인 근거 없음, 사유: 시험) |
| params:footing | 근거 없음 | 앱이 독립적으로 대조할 근거가 없다 — 도면과 직접 대조한 뒤 사유와 함께 확정 | 시험자 2026-10-19 13:49:50 (앱 확인 근거 없음, 사유: 시험) |
| params:lean_concrete | 근거 없음 | 앱이 독립적으로 대조할 근거가 없다 — 도면과 직접 대조한 뒤 사유와 함께 확정 | 시험자 2026-10-19 13:49:50 (앱 확인 근거 없음, 사유: 시험) |
| params:materials | 근거 없음 | 앱이 독립적으로 대조할 근거가 없다 — 도면과 직접 대조한 뒤 사유와 함께 확정 | 시험자 2026-10-19 13:49:50 (앱 확인 근거 없음, 사유: 시험) |
| params:pier_id | 근거 없음 | 앱이 독립적으로 대조할 근거가 없다 — 도면과 직접 대조한 뒤 사유와 함께 확정 | 시험자 2026-10-19 13:49:50 (앱 확인 근거 없음, 사유: 시험) |
| params:rebar_marks | 근거 없음 | C2 도면 문자 색인이 없어 표와 대조하지 못했다 | 시험자 2026-10-19 13:49:50 (앱 확인 근거 없음, 사유: 시험) |
| params:scope | 근거 없음 | C7 템플릿 원본 기록이 없어 고정 항목을 비교하지 못했다 | 시험자 2026-10-19 13:49:50 (앱 확인 근거 없음, 사유: 시험) |
| params:sole_plates | 근거 없음 | C2 도면 문자 색인이 없어 표와 대조하지 못했다 | 시험자 2026-10-19 13:49:50 (앱 확인 근거 없음, 사유: 시험) |
| expected:planned_fail | 해당 없음 | 사람 결정 기록 또는 참고 정보 — 앱이 도면과 대조하지 않는다 | 시험자 2026-10-19 13:49:50 (앱 확인 해당 없음, 사유: 시험) |
| expected:rebar_palette | 해당 없음 | 사람 결정 기록 또는 참고 정보 — 앱이 도면과 대조하지 않는다 | 시험자 2026-10-19 13:49:50 (앱 확인 해당 없음, 사유: 시험) |
| expected:tol_mm | 해당 없음 | 사람 결정 기록 또는 참고 정보 — 앱이 도면과 대조하지 않는다 | 시험자 2026-10-19 13:49:50 (앱 확인 해당 없음, 사유: 시험) |
| params:rebar_marks_src | 해당 없음 | 참고 정보 | 미확정 |
## 변경 이력
| 버전 | 일자 | 내용 |
| :--- | :--- | :--- |
| v0.1.00 | 2026-10-19 | 앱 자동 생성 초안 |
@@ -0,0 +1,316 @@
{
"_schema": "variability/1",
"status": "초안 — 템플릿 담당자 확정 전",
"grades": {
"V1": "값 변수",
"V2": "목록 변수",
"V3": "생성 변수",
"F": "고정"
},
"sections": {
"params:_schema": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:pier_id": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "교각 식별자",
"info": false
},
"params:_meta": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:scope": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "모델링 게이트 범위(실행 설정)",
"info": false
},
"params:builders": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "게이트별 생성기(실행 설정)",
"info": false
},
"params:lean_concrete": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [],
"note": "버림콘크리트 치수·EL",
"info": false
},
"params:footing": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [],
"note": "기초 치수·EL (rot_deg = 기초 회전 각도 값)",
"info": false
},
"params:column": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"shape"
],
"note": "기둥 지름·높이 (단면 형식 shape는 고정)",
"info": false
},
"params:coping": {
"grade": "V2",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"form"
],
"note": "코핑 외곽·치수 (형식 form은 고정)",
"info": false
},
"params:materials": {
"grade": "V1",
"source": [
"표 밖 치수"
],
"fixed_fields": [],
"note": "재료 강도 주기",
"info": false
},
"params:bearing_seats": {
"grade": "V1",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [
"pedestal",
"pedestals"
],
"note": "받침 표 값 + 평면 위치 (대좌 구조는 고정)",
"info": false
},
"params:sole_plates": {
"grade": "V1",
"source": [
"표"
],
"fixed_fields": [
"bearing_size"
],
"note": "솔플레이트 표 값 (받침 크기 규칙은 고정)",
"info": false
},
"params:display": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "표시·색 설정",
"info": false
},
"params:rebar_marks": {
"grade": "V1",
"source": [
"표"
],
"fixed_fields": [
"*.shape"
],
"note": "재료표 직경·형상 (마크 체계의 형상은 고정)",
"info": false
},
"params:rebar_marks_src": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"params:column_rebar": {
"grade": "V2",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"form"
],
"note": "기둥 철근 사슬·위치",
"info": false
},
"params:footing_rebar": {
"grade": "V2",
"source": [
"표 밖 치수"
],
"fixed_fields": [
"form"
],
"note": "기초 철근 위치 사슬",
"info": false
},
"params:coping_rebar": {
"grade": "V3",
"source": [
"판독 스크립트"
],
"fixed_fields": [
"form",
"host",
"group"
],
"note": "코핑 철근 — 철근별 중심선 목록(판독 스크립트로 생성)",
"info": false
},
"expected:_schema": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"expected:_note": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "참고 정보(게이트가 쓰지 않음)",
"info": true
},
"expected:pier_id": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "교각 식별자",
"info": false
},
"expected:tol_mm": {
"grade": "V1",
"source": [
"사람 입력"
],
"fixed_fields": [],
"note": "허용 오차",
"info": false
},
"expected:checkers": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "게이트별 검사기(실행 설정)",
"info": false
},
"expected:negative": {
"grade": "F",
"source": [
"템플릿 고정"
],
"fixed_fields": [],
"note": "음성 시험 대상(실행 설정)",
"info": false
},
"expected:rebar_palette": {
"grade": "V1",
"source": [
"사람 입력"
],
"fixed_fields": [],
"note": "철근 직경별 색 (사람 결정 기록)",
"info": false
},
"expected:planned_fail": {
"grade": "V1",
"source": [
"사람 입력"
],
"fixed_fields": [],
"note": "계획된 FAIL (사람 결정 기록)",
"info": false
},
"expected:G1": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G5": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G2": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G3": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
},
"expected:G4": {
"grade": "V2",
"source": [
"표",
"표 밖 치수"
],
"fixed_fields": [],
"note": "독립 기대값 (params와 따로 도면에서 옮긴 값)",
"info": false
}
}
}