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:
woogiandClaude Opus 4.8 committed 2026-07-03 00:22:02 +00:00
commit 1d248a8808
262 files changed
+8209

No files matched your search

@@ -0,0 +1 @@
{"sheet_number": "A23.01", "discipline": "Architectural", "sheet_title": "FINISH PLAN", "level": null, "scale": "1/4\" = 1'-0\"", "assertions": [{"assertion_id": "A2301-N-001", "subject": "General Note", "category": "note", "attribute": "general_note", "value": "Interior finishes to comply with IBC Class C or higher; Section 803.9 and Table 803.9 of 2021 IBC.", "unit": null, "location_key": {"sheet_number": "A23.01", "grid": null, "room": null, "room_name": null, "level": null, "tag": "B", "detail_reference": null, "plan_zone": null}, "source_text": "B. INTERIOR FINISHES TO COMPLY WITH IBC CLASS C OR HIGHER SECTION 803.9 AND TABLE 803.9 OF 2021 IBC.", "coordination_targets": ["architectural", "code", "life_safety"], "conflict_potential": "medium", "code_review_relevance": "high", "confidence": "high"}, {"assertion_id": "A2301-N-002", "subject": "General Note", "category": "note", "attribute": "general_note", "value": "All materials used for interior finish and trim shall be classified in accordance with ASTM 834.", "unit": null, "location_key": {"sheet_number": "A23.01", "grid": null, "room": null, "room_name": null, "level": null, "tag": "C", "detail_reference": null, "plan_zone": null}, "source_text": "C. ALL MATERIALS USED FOR INTERIOR FINISH AND TRIM SHALL BE CLASSIFIED IN ACCORDANCE WITH ASTM 834.", "coordination_targets": ["architectural", "code", "life_safety"], "conflict_potential": "high", "code_review_relevance": "high", "confidence": "high"}, {"assertion_id": "A2301-N-003", "subject": "General Note", "category": "note", "attribute": "general_note", "value": "All floor finishes shall have a min. S.C.O.F. of .6 wet or dry.", "unit": null, "location_key": {"sheet_number": "A23.01", "grid": null, "room": null, "room_name": null, "level": null, "tag": "F", "detail_reference": null, "plan_zone": null}, "source_text": "F. ALL FLOOR FINISHES SHALL HAVE A MIN. S.C.O.F. OF .6 WET OR DRY.", "coordination_targets": ["architectural", "ada", "code", "life_safety"], "conflict_potential": "high", "code_review_relevance": "high", "confidence": "high"}, {"assertion_id": "A2301-N-004", "subject": "General Note", "category": "note", "attribute": "general_note", "value": "All partitions must be fire stopped at the ceiling.", "unit": null, "location_key": {"sheet_number": "A23.01", "grid": null, "room": null, "room_name": null, "level": null, "tag": "G", "detail_reference": null, "plan_zone": null}, "source_text": "G. ALL PARTITIONS MUST BE FIRE STOPPED AT THE CEILING.", "coordination_targets": ["architectural", "structural", "fire_protection", "code", "life_safety"], "conflict_potential": "medium", "code_review_relevance": "high", "confidence": "high"}, {"assertion_id": "A2301-N-005", "subject": "General Note", "category": "note", "attribute": "general_note", "value": "All locations of core drilling of the floor slab for installation of utilities to be coordinated with landlord's structural engineer before performing the work.", "unit": null, "location_key": {"sheet_number": "A23.01", "grid": null, "room": null, "room_name": null, "level": null, "tag": "H", "detail_reference": null, "plan_zone": null}, "source_text": "H. ALL LOCATIONS OF CORE DRILLING OF THE FLOOR SLAB FOR INSTALLATION OF UTILITIES TO BE COORDINATED WITH LANDLORD'S STRUCTURAL ENGINEER BEFORE PERFORMING THE WORK.", "coordination_targets": ["structural", "mechanical", "electrical", "plumbing"], "conflict_potential": "high", "code_review_relevance": "medium", "confidence": "high"}, {"assertion_id": "A2301-N-006", "subject": "General Note", "category": "note", "attribute": "general_note", "value": "Polished concrete floor PC-1 throughout, U.N.O.", "unit": null, "location_key": {"sheet_number": "A23.01", "grid": null, "room": null, "room_name": null, "level": null, "tag": "K", "detail_reference": null, "plan_zone": null}, "source_text": "K. POLISHED CONCRETE FLOOR PC-1 THROUGHOUT, U.N.O.", "coordination_targets": ["architectural"], "conflict_potential": "medium", "code_review_relevance": "none", "confidence": "high"}, {"assertion_id": "A2301-N-007", "subject": "General Note", "category": "note", "attribute": "general_note", "value": "Walls to be painted P-1 throughout.", "unit": null, "location_key": {"sheet_number": "A23.01", "grid": null, "room": null, "room_name": null, "level": null, "tag": "L", "detail_reference": null, "plan_zone": null}, "source_text": "L. WALLS TO BE PAINTED P-1 THROUGHOUT.", "coordination_targets": ["architectural"], "conflict_potential": "medium", "code_review_relevance": "none", "confidence": "high"}, {"assertion_id": "A2301-N-008", "subject": "General Note", "category": "note", "attribute": "general_note", "value": "Vinyl base WB-1 throughout, U.N.O.", "unit": null, "location_key": {"sheet_number": "A23.01", "grid": null, "room": null, "room_name": null, "level": null, "tag": "M", "detail_reference": null, "plan_zone": null}, "source_text": "M. VINYL BASE WB-1 THROUGHOUT, U.N.O.", "coordination_targets": ["architectural"], "cLine truncated