Initial commit: Conflict Checker

Cross-discipline design-contradiction checker for construction drawing
sets. Standalone tool broken out from Iron_Bid; a pipeline stage may
later fold back into Iron_Bid.

Pipeline: PDF->images -> per-sheet assertion extraction -> deterministic
clustering by location -> per-cluster reasoning -> report.
Includes CLI (cli/run_check.py) and web UI (backend/main.py).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-03 00:22:02 +00:00
co-authored by Claude Opus 4.8
commit 1d248a8808
262 changed files with 8209 additions and 0 deletions
@@ -0,0 +1 @@
{"issues": [{"issue_id": "PROJ-G1104-1", "source_stage": "code", "category": "building_code", "severity": "critical", "confidence": "high", "location": "Sheet G11.04 - FIRE CODE DESIGN AND COMPLIANCE REVIEW", "disciplines": ["General", "Architectural"], "sheets": ["G11.04"], "description": "The Fire Code Design and Compliance Review sheet cites the 2021 IBC for area limitations. However, the project's adopted code profile for Harris County specifies the 2015 IBC. All design calculations, including area, height, and egress, must be based on the legally adopted 2015 IBC.", "evidence": [{"discipline": "General", "sheet": "G11.04", "source_text": "AREA LIMITATION: UNLIMITED (TABLES 504.3, 504.4, 506.2 IBC 2021)", "asserted_value": "IBC 2021"}], "recommended_resolution": "Verify the adopted code with Harris County. If it is the 2015 IBC, revise all code analysis and design elements on sheet G11.04 and throughout the drawing set to comply with the 2015 IBC and remove references to the 2021 IBC.", "code_reference": null}, {"issue_id": "PROJ-G1102-1", "source_stage": "code", "category": "ada", "severity": "high", "confidence": "high", "location": "Sheet G11.02 - SYMBOLS & TYPICAL HEIGHTS, Door Hardware Detail", "disciplines": ["Architectural", "General"], "sheets": ["G11.02"], "description": "The typical mounting height for door hardware is specified as 33\"-36\" AFF. The ADA requires operable parts of door hardware to be a minimum of 34 inches above the finished floor. Installing hardware at 33 inches would not be compliant.", "evidence": [{"discipline": "General", "sheet": "G11.02", "source_text": "33\"-36\" AFF", "asserted_value": "33-36"}], "recommended_resolution": "Revise the typical mounting height detail on sheet G11.02 to specify a range of 34 inches minimum to 48 inches maximum to the operable part of the hardware, in accordance with ADA 404.2.7. Ensure all door hardware in the project adheres to this revised range.", "code_reference": "ADA 404.2.7"}, {"issue_id": "PROJ-A5101-1", "source_stage": "code", "category": "ada", "severity": "high", "confidence": "high", "location": "Sheet A51.01, Detail 3 - ENLARGED RESTROOM PLAN", "disciplines": ["Architectural"], "sheets": ["A51.01"], "description": "The door to the single-user restroom swings inward and directly into the clear floor space required for the water closet fixture. This obstructs access to the fixture and violates accessibility standards.", "evidence": [{"discipline": "Architectural", "sheet": "A51.01", "source_text": "Image evidence: Door swing arc shown overlapping the toilet fixture on the Enlarged Restroom Plan.", "asserted_value": "Inward door swing obstructing fixture."}], "recommended_resolution": "Revise the restroom layout. The recommended solution is to reverse the door to swing out into the corridor, ensuring it does not obstruct the accessible route. Alternatively, reconfigure the restroom interior so the door swing does not encroach on any fixture clearances.", "code_reference": "ADA 603.2.3"}, {"issue_id": "PROJ-A5101-2", "source_stage": "code", "category": "ada", "severity": "high", "confidence": "high", "location": "Sheet A51.01, Detail 5 - INTERIOR ELEVATION - RESTROOM", "disciplines": ["Architectural"], "sheets": ["A51.01"], "description": "The restroom elevation detail shows the 36-inch rear grab bar centered on the water closet. Standard accessibility requirements specify that where a water closet is positioned near a side wall (e.g., 18 inches on center), the rear grab bar must be offset to provide adequate support, typically by extending 12 inches from the toilet centerline towards the near wall and 24 inches towards the open side. The centered installation shown is non-compliant.", "evidence": [{"discipline": "Architectural", "sheet": "A51.01", "source_text": "Image evidence: Interior elevation showing rear grab bar centered above toilet.", "asserted_value": "Centered rear grab bar."}], "recommended_resolution": "Revise the restroom plan and elevation details to show the rear grab bar offset from the toilet centerline in accordance with accessibility standards. For a toilet 18 inches from the wall, the bar should extend 12 inches toward the near side wall and 24 inches toward the open side.", "code_reference": null}]}