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 @@
{"issues": [{"issue_id": "QAQC-MS-001", "source_stage": "qaqc", "category": "missing_sheet", "severity": "critical", "confidence": "high", "location": "Architectural Series (A2x.xx)", "disciplines": ["Architectural"], "sheets": [], "description": "The primary architectural floor plan, likely numbered A21.01, is missing from the set. This plan is fundamental for showing new partition layouts, overall dimensions, room tags, and wall type references. Without it, the basis for all other architectural and consultant plans (RCP, Finish, MEP, etc.) is absent, making it impossible to bid or build the project accurately.", "evidence": [{"discipline": "System", "sheet": "sheet_index", "source_text": "Logical gap in architectural plan numbering (likely A21.01) before A22.01. Page 14 extraction failed in this location. A floor plan is fundamental to a drawing set.", "asserted_value": "Missing A21.01"}], "recommended_resolution": "Include the missing architectural floor plan sheet (A21.01) in the drawing set.", "code_reference": null}, {"issue_id": "QAQC-MS-002", "source_stage": "qaqc", "category": "missing_sheet", "severity": "critical", "confidence": "high", "location": "Mechanical Series (M02.xx)", "disciplines": ["Mechanical"], "sheets": [], "description": "The primary mechanical floor plan, likely numbered M02.01, is missing. The set includes a Mechanical Roof Plan (M02.02) but not the corresponding interior plan showing ductwork layout, diffusers, thermostats, and equipment locations for the tenant space. This is a critical omission for MEP coordination, bidding, and installation.", "evidence": [{"discipline": "System", "sheet": "sheet_index", "source_text": "Logical gap in mechanical plan numbering (likely M02.01) before M02.02. Page 22 extraction failed in this location. A main level mechanical plan is expected.", "asserted_value": "Missing M02.01"}], "recommended_resolution": "Include the missing mechanical floor plan sheet (M02.01) in the drawing set.", "code_reference": null}, {"issue_id": "QAQC-MS-003", "source_stage": "qaqc", "category": "missing_schedule", "severity": "critical", "confidence": "high", "location": "Architectural / General Sheets", "disciplines": ["Architectural", "General"], "sheets": ["G11.01", "G31.06"], "description": "The drawing set lacks essential schedules for bidding and construction, including a Partition Type/Wall Schedule and a Door Schedule. Notes reference 'partition type as scheduled' (G11.01 Note 25D) and hardware is specified (G31.04), but wall assemblies and door details (sizes, types, ratings, hardware groups) are not defined anywhere. This makes it impossible to price or build the interior partitions and doors.", "evidence": [{"discipline": "General", "sheet": "G11.01", "source_text": "Dimensions shown on drawings shall be to the face of sheathing of partition type as scheduled, unless otherwise noted.", "asserted_value": "A partition schedule is implied but not provided."}, {"discipline": "General", "sheet": "G31.04", "source_text": "WHERE REQUIRED, INSTALLED FRAME AND DOOR ASSEMBLY SHALL CONFORM TO A 90 MINUTE RATED CLASS C INDICATED.", "asserted_value": "Door fire ratings are specified, implying multiple door types, but no schedule indicates where they are used."}], "recommended_resolution": "Create and add a comprehensive Partition Type / Wall Schedule with details/sections and a full Door and Frame Schedule with associated hardware sets.", "code_reference": null}, {"issue_id": "QAQC-MI-001", "source_stage": "qaqc", "category": "missing_information", "severity": "critical", "confidence": "high", "location": "A22.01 - REFLECTED CEILING PLAN", "disciplines": ["Architectural", "Mechanical", "Electrical", "Plumbing"], "sheets": ["A22.01", "G11.01"], "description": "No finished ceiling heights are indicated anywhere in the drawing set. General Note 24 on G11.01 states that ceiling heights are indicated, but the Reflected Ceiling Plan (A22.01) does not show them. This is a critical omission that impacts all disciplines, preventing coordination of wall heights, MEP service routing, lighting placement, and overall space volume.", "evidence": [{"discipline": "Architectural", "sheet": "A22.01", "source_text": "CEILING THROUGHOUT ENTIRE SPACE TO BE AT-1 ACOUSTIC CEILING TILE", "asserted_value": "Ceiling material is specified, but height is not."}, {"discipline": "General", "sheet": "G11.01", "source_text": "Ceiling heights are indicated from the floor elevation to the face of the suspended ceiling system or face of finish material as scheduled.", "asserted_value": "Note states heights are indicated, but they are not present on the plan."}], "recommended_resolution": "Add ceiling height tags to all rooms or areas with suspended ceilings on the Reflected Ceiling Plan (A22.01).", "code_reference": null}, {"issue_id": "QAQC-MS-004", "source_stage": "qaqc", "category": "missing_sheet", "severity": "high", "confidence": "high", "location": "Structural Series (S)", "disciplines": ["StLine truncated