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:
commit
1d248a8808
262 files changed
+8209
No files matched your search
+1
@@ -0,0 +1 @@
|
||||
{"normalized_assertions": [{"assertion_id": "G31.04#9", "original_value": "250", "normalized_value": "250", "normalized_unit": "grams/liter", "normalized_attribute": "VOC_content", "normalization_notes": "Unit 'grams/liter' inferred from context.", "source_text_preserved": true, "normalization_confidence": "high"}, {"assertion_id": "G31.04#10", "original_value": "90", "normalized_value": "90", "normalized_unit": "minutes", "normalized_attribute": "fire_rating", "normalization_notes": "Assumed 'minutes' as unit for fire rating.", "source_text_preserved": true, "normalization_confidence": "medium"}, {"assertion_id": "G31.04#11", "original_value": "1-hour", "normalized_value": "60", "normalized_unit": "minutes", "normalized_attribute": "fire_rating", "normalization_notes": "Converted '1-hour' to 60 minutes.", "source_text_preserved": true, "normalization_confidence": "high"}, {"assertion_id": "G31.04#12", "original_value": "18", "normalized_value": "18", "normalized_unit": "gauge", "normalized_attribute": "face_sheet_thickness", "normalization_notes": "Assumed 'gauge' as unit for thickness.", "source_text_preserved": true, "normalization_confidence": "medium"}, {"assertion_id": "G31.04#13", "original_value": "7", "normalized_value": "7", "normalized_unit": "gauge", "normalized_attribute": "hinge_reinforcement_thickness", "normalization_notes": "Assumed 'gauge' as unit for thickness.", "source_text_preserved": true, "normalization_confidence": "medium"}, {"assertion_id": "G31.04#14", "original_value": "16", "normalized_value": "16", "normalized_unit": "gauge", "normalized_attribute": "lock_reinforcement_thickness", "normalization_notes": "Assumed 'gauge' as unit for thickness.", "source_text_preserved": true, "normalization_confidence": "medium"}, {"assertion_id": "G31.04#15", "original_value": "14", "normalized_value": "14", "normalized_unit": "gauge", "normalized_attribute": "closer_reinforcement_thickness", "normalization_notes": "Assumed 'gauge' as unit for thickness.", "source_text_preserved": true, "normalization_confidence": "medium"}, {"assertion_id": "G31.04#16", "original_value": "1-3/4", "normalized_value": "1.75", "normalized_unit": "inches", "normalized_attribute": "door_thickness", "normalization_notes": "Converted '1-3/4' to 1.75 inches.", "source_text_preserved": true, "normalization_confidence": "high"}, {"assertion_id": "G31.04#17", "original_value": "1/8 inch at head and each jamb.", "normalized_value": "1/8 inch", "normalized_unit": "inches", "normalized_attribute": "clearance", "normalization_notes": "Extracted '1/8 inch' from the value.", "source_text_preserved": true, "normalization_confidence": "high"}, {"assertion_id": "G31.04#18", "original_value": "3/8", "normalized_value": "3/8", "normalized_unit": "inches", "normalized_attribute": "undercut", "normalization_notes": "Assumed 'inches' as unit for undercut.", "source_text_preserved": true, "normalization_confidence": "medium"}, {"assertion_id": "G31.05#0", "original_value": "16", "normalized_value": "16", "normalized_unit": "inches", "normalized_attribute": "stud_spacing", "normalization_notes": "Assumed 'inches' as unit for spacing.", "source_text_preserved": true, "normalization_confidence": "medium"}, {"assertion_id": "G31.05#1", "original_value": "Required for framed openings, wall-mounted cabinets, plumbing fixtures, wall mounted door hardware.", "normalized_value": "Required for framed openings, wall-mounted cabinets, plumbing fixtures, wall mounted door hardware.", "normalized_unit": null, "normalized_attribute": "blocking_requirement", "normalization_notes": "No unit or attribute change needed.", "source_text_preserved": true, "normalization_confidence": "high"}, {"assertion_id": "G31.05#2", "original_value": "Not more than 30 feet apart", "normalized_value": "30", "normalized_unit": "feet", "normalized_attribute": "control_joint_spacing", "normalization_notes": "Extracted '30 feet' from the value.", "source_text_preserved": true, "normalization_confidence": "high"}, {"assertion_id": "G31.05#3", "original_value": "4", "normalized_value": "4", "normalized_unit": "level", "normalized_attribute": "finish_level", "normalization_notes": "Assumed 'level' as unit for finish level.", "source_text_preserved": true, "normalization_confidence": "medium"}, {"assertion_id": "G31.05#4", "original_value": "2", "normalized_value": "2", "normalized_unit": "level", "normalized_attribute": "finish_level", "normalization_notes": "Assumed 'level' as unit for finish level.", "source_text_preserved": true, "normalization_confidence": "medium"}, {"assertion_id": "G31.05#5", "original_value": "1", "normalized_value": "1", "normalized_unit": "level", "normalized_attribute": "finish_level", "normalization_notes": "Assumed 'level' as unit for finish level.", "source_text_preserved": true, "normalization_confidence": "medium"}, {"assertion_id": "G31.05#6", "original_value": "1/8 in 10 ft", "normalized_value": "1/8 inch in 10 feet", "normalized_unit": "incLine truncated
|
||||
Reference in new issue
Block a user