{"openapi":"3.1.0","info":{"title":"总工之眼专业审查能力开放接口","description":"\n面向工程设计企业的 AI 施工图辅助预审能力。当前复赛 V1 为 Verified Demo Case：\n接口校验 DEMO-001 的12张真实PDF及SHA-256 Manifest，返回AI辅助审查并经专业人工复核的已验证案例成果。\n本次请求不重新执行基础模型推理。Live Review Engine 代码已保留，但不在赛事 V1 公开路由中开放。\n\n本接口不替代法定施工图审查机构，不替代专业负责人或总工签字。\n","version":"1.0.0"},"paths":{"/health":{"get":{"tags":["服务状态"],"summary":"服务健康检查","operationId":"health_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"type":"object","title":"Response Health Health Get"}}}}}}},"/api/v1/info":{"get":{"tags":["能力说明"],"summary":"查看接口能力与边界","operationId":"info_api_v1_info_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Info Api V1 Info Get"}}}}},"security":[{"bearerAuth":[]}]}},"/api/v1/demo-cases":{"get":{"tags":["预置案例"],"summary":"列出复赛预置案例","operationId":"demo_cases_api_v1_demo_cases_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Demo Cases Api V1 Demo Cases Get"}}}}},"security":[{"bearerAuth":[]}]}},"/api/v1/review":{"post":{"tags":["专业审查"],"summary":"对预置真实PDF案例执行AI施工图预审","description":"赛事 V1 Verified Demo：校验 DEMO-001 的12张真实PDF及SHA-256 Manifest，返回AI辅助审查并经专业人工复核形成的已验证案例成果。本次请求不重新调用基础模型。","operationId":"reviewDrawing","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReviewRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReviewResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"bearerAuth":[]}]}},"/":{"get":{"tags":["System"],"summary":"总工之眼 OpenAPI 首页","operationId":"apiLandingPage","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}}},"components":{"schemas":{"Basis":{"properties":{"standard":{"type":"string","title":"Standard"},"clause":{"type":"string","title":"Clause","default":""},"title":{"type":"string","title":"Title","default":""},"nature":{"type":"string","title":"Nature","default":""},"verification_status":{"type":"string","title":"Verification Status","default":"VERIFIED"}},"type":"object","required":["standard"],"title":"Basis"},"Collision":{"properties":{"collision_id":{"type":"string","title":"Collision Id","default":""},"disciplines":{"items":{"type":"string"},"type":"array","title":"Disciplines"},"core_conflict":{"type":"string","title":"Core Conflict"},"lead_discipline":{"type":"string","title":"Lead Discipline"},"supporting_disciplines":{"items":{"type":"string"},"type":"array","title":"Supporting Disciplines"},"related_issue_ids":{"items":{"type":"string"},"type":"array","title":"Related Issue Ids"},"closure_evidence":{"items":{"type":"string"},"type":"array","title":"Closure Evidence"},"confidence":{"type":"number","maximum":1.0,"minimum":0.0,"title":"Confidence"},"human_review_required":{"type":"boolean","title":"Human Review Required","default":true}},"type":"object","required":["disciplines","core_conflict","lead_discipline","supporting_disciplines","closure_evidence","confidence"],"title":"Collision"},"DisciplineReview":{"properties":{"discipline":{"type":"string","title":"Discipline"},"conclusion":{"type":"string","title":"Conclusion"},"reasoning_summary":{"type":"string","title":"Reasoning Summary"},"missing_information":{"items":{"type":"string"},"type":"array","title":"Missing Information"},"issues":{"items":{"$ref":"#/components/schemas/Issue"},"type":"array","title":"Issues"}},"type":"object","required":["discipline","conclusion","reasoning_summary"],"title":"DisciplineReview"},"DrawingFact":{"properties":{"fact_id":{"type":"string","minLength":3,"title":"Fact Id"},"discipline":{"type":"string","title":"Discipline"},"source_file":{"type":"string","title":"Source File"},"source_sha256":{"type":"string","title":"Source Sha256"},"page":{"type":"integer","minimum":1.0,"title":"Page"},"category":{"type":"string","title":"Category"},"statement":{"type":"string","minLength":1,"title":"Statement"},"evidence_text":{"type":"string","title":"Evidence Text","default":""},"status":{"$ref":"#/components/schemas/FactStatus"},"confidence":{"type":"number","maximum":1.0,"minimum":0.0,"title":"Confidence"}},"additionalProperties":false,"type":"object","required":["fact_id","discipline","source_file","source_sha256","page","category","statement","status","confidence"],"title":"DrawingFact"},"Execution":{"properties":{"mode":{"type":"string","title":"Mode","default":"verified_demo"},"model_provider":{"type":"string","title":"Model Provider"},"model_name":{"type":"string","title":"Model Name"},"duration_ms":{"type":"integer","title":"Duration Ms"},"source_manifest_hash":{"type":"string","title":"Source Manifest Hash"},"model_call_count":{"type":"integer","title":"Model Call Count"}},"type":"object","required":["model_provider","model_name","duration_ms","source_manifest_hash","model_call_count"],"title":"Execution"},"FactStatus":{"type":"string","enum":["CONFIRMED","TO_VERIFY","MISSING"],"title":"FactStatus"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"HumanGate":{"properties":{"required":{"type":"boolean","title":"Required","default":true},"status":{"type":"string","title":"Status","default":"awaiting_human_review"},"demo_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Demo Status"},"principle":{"type":"string","title":"Principle","default":"AI辅助预审，不替代专业负责人、注册执业人员和总工签章。"},"message":{"type":"string","title":"Message","default":"AI辅助预审结果，需专业负责人/总工复核。"}},"type":"object","title":"HumanGate"},"Issue":{"properties":{"issue_id":{"type":"string","title":"Issue Id","default":""},"discipline":{"type":"string","title":"Discipline"},"risk_level":{"$ref":"#/components/schemas/RiskLevel"},"title":{"type":"string","title":"Title"},"drawing_evidence":{"items":{"type":"string"},"type":"array","title":"Drawing Evidence"},"basis":{"items":{"$ref":"#/components/schemas/Basis"},"type":"array","title":"Basis"},"professional_judgement":{"type":"string","title":"Professional Judgement"},"recommendation":{"type":"string","title":"Recommendation"},"owner":{"type":"string","title":"Owner"},"coordination":{"items":{"type":"string"},"type":"array","title":"Coordination"},"closure_evidence":{"items":{"type":"string"},"type":"array","title":"Closure Evidence"},"confidence":{"type":"number","maximum":1.0,"minimum":0.0,"title":"Confidence"},"evidence_status":{"type":"string","title":"Evidence Status"},"human_review_required":{"type":"boolean","title":"Human Review Required","default":true},"conditional_upgrade":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Conditional Upgrade"}},"type":"object","required":["discipline","risk_level","title","professional_judgement","recommendation","owner","confidence","evidence_status"],"title":"Issue"},"ReviewRequest":{"properties":{"case_id":{"type":"string","title":"Case Id","description":"当前仅支持 DEMO-001","examples":["DEMO-001"]}},"additionalProperties":false,"type":"object","required":["case_id"],"title":"ReviewRequest"},"ReviewResponse":{"properties":{"request_id":{"type":"string","title":"Request Id"},"case_id":{"type":"string","title":"Case Id","default":"DEMO-001"},"review_status":{"type":"string","title":"Review Status","default":"completed"},"experience_mode":{"type":"string","title":"Experience Mode","default":"verified_demo"},"runtime_ai_called":{"type":"boolean","title":"Runtime Ai Called","default":false},"source_type":{"type":"string","title":"Source Type","default":"real_project_pdf"},"source_pdf_count":{"type":"integer","title":"Source Pdf Count","default":12},"ai_assisted":{"type":"boolean","title":"Ai Assisted","default":true},"human_reviewed":{"type":"boolean","title":"Human Reviewed","default":true},"result_status":{"type":"string","title":"Result Status","default":"verified_case_result"},"experience_note":{"type":"string","title":"Experience Note"},"execution":{"$ref":"#/components/schemas/Execution"},"project":{"additionalProperties":true,"type":"object","title":"Project"},"manifest":{"additionalProperties":true,"type":"object","title":"Manifest"},"workflow_definition":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Workflow Definition"},"drawing_facts":{"items":{"$ref":"#/components/schemas/DrawingFact"},"type":"array","title":"Drawing Facts"},"missing_information":{"items":{},"type":"array","title":"Missing Information"},"discipline_reviews":{"items":{"$ref":"#/components/schemas/DisciplineReview"},"type":"array","title":"Discipline Reviews"},"issues":{"items":{"$ref":"#/components/schemas/Issue"},"type":"array","title":"Issues"},"collisions":{"items":{"$ref":"#/components/schemas/Collision"},"type":"array","title":"Collisions"},"summary":{"$ref":"#/components/schemas/Summary"},"verdict":{"type":"string","title":"Verdict"},"human_gate":{"$ref":"#/components/schemas/HumanGate"}},"type":"object","required":["request_id","experience_note","execution","project","manifest","workflow_definition","drawing_facts","missing_information","discipline_reviews","issues","collisions","verdict"],"title":"ReviewResponse"},"RiskLevel":{"type":"string","enum":["A","B","C"],"title":"RiskLevel"},"Summary":{"properties":{"A":{"type":"integer","title":"A","default":0},"B":{"type":"integer","title":"B","default":0},"C":{"type":"integer","title":"C","default":0},"collision_groups":{"type":"integer","title":"Collision Groups","default":0}},"type":"object","title":"Summary"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}},"securitySchemes":{"bearerAuth":{"type":"http","description":"除 /health 外，请输入赛事分配的 Bearer Token。","scheme":"bearer"}}}}