@customize-agent/server 4.5.2 → 4.5.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.next/BUILD_ID CHANGED
@@ -1 +1 @@
1
- rHfmTkW_rEGNGLrG4LgQy
1
+ _2bJsq2HyqvMIlc1WYboY
@@ -5,8 +5,8 @@
5
5
  "devFiles": [],
6
6
  "ampDevFiles": [],
7
7
  "lowPriorityFiles": [
8
- "static/rHfmTkW_rEGNGLrG4LgQy/_buildManifest.js",
9
- "static/rHfmTkW_rEGNGLrG4LgQy/_ssgManifest.js"
8
+ "static/_2bJsq2HyqvMIlc1WYboY/_buildManifest.js",
9
+ "static/_2bJsq2HyqvMIlc1WYboY/_ssgManifest.js"
10
10
  ],
11
11
  "rootMainFiles": [],
12
12
  "rootMainFilesTree": {},
@@ -3,9 +3,9 @@
3
3
  "routes": {},
4
4
  "dynamicRoutes": {},
5
5
  "preview": {
6
- "previewModeId": "0d6b637922a2f8e8fdb189e99d652043",
7
- "previewModeSigningKey": "541887e7aff52665d94fe7e9139f836f6fc007b949401b55c178d0493145816f",
8
- "previewModeEncryptionKey": "a4caf12dd002e7c6a8b5a4a78e7b44b237816ed6f2d26e3ca05fe6a497e16578"
6
+ "previewModeId": "8f4a35e4df346fcb0ca29eba8cc98b06",
7
+ "previewModeSigningKey": "5c48b21db685ab2ce2374117f3b08514e70c0741cd68ba855c60ceb5a9e706ae",
8
+ "previewModeEncryptionKey": "d2c74ee2df2e13f45b3572699eac87d6b9b3ad13eca29bf90039af4d91e6f310"
9
9
  },
10
10
  "notFoundRoutes": []
11
11
  }
@@ -22,7 +22,7 @@ ${l.join("\n")}`,...f].filter(Boolean).join("\n")}var G=c(35882);let H=[{id:"ove
22
22
  ${n}
23
23
 
24
24
  资料:
25
- ${l}`,{signal:e,maxTokens:1800,temperature:.1,diagnostics:f});return((0,z.Te)(e),o?.facts?.length)?{facts:o.facts.filter(a=>a.key&&a.value).map(a=>{let b=m.find(b=>b.id===a.fieldId||b.name===a.fieldName||b.name===a.key);return{key:b?.name||a.key,fieldId:b?.id||a.fieldId,fieldName:b?.name||a.fieldName,value:(0,z.lG)(a.value),sourceFile:a.sourceFile||"",roleId:a.roleId||"llm",processingType:a.processingType,confidence:a.confidence??.8,sourceRef:{filePath:a.sourceFile||"",roleId:a.roleId||"llm",processingType:a.processingType}}}),stages:[{type:"fact_extraction",roleId:"llm-json",status:"success",message:`LLM 按动态 schema 抽取 ${o.facts.length} 条事实`}]}:{facts:[],stages:g}}function X(a){return(0,z.lG)(a).replace(/[\u00A0\u2002-\u200B\u3000]/gu," ").replace(/([\p{Script=Han}])\s+([\p{Script=Han}])/gu,"$1$2").replace(/(\d)\s+(日历天|天|个月|月|年|万元|元|㎡|平方米|米|m|mm|MPa|kPa|%)/giu,"$1$2").replace(/(合同|投资|工程|项目)\s*估\s*算\s*(?:价格|价)/gu,"$1估算价").replace(/计划\s*工\s*期/gu,"计划工期").replace(/合同\s*工\s*期/gu,"合同工期").replace(/质量\s*标\s*准/gu,"质量标准").replace(/建设\s*地\s*点/gu,"建设地点").replace(/建设\s*规\s*模/gu,"建设规模").replace(/招标\s*范\s*围/gu,"招标范围").replace(/最高\s*投\s*标\s*限\s*价/gu,"最高投标限价").replace(/招标\s*控\s*制\s*价/gu,"招标控制价").replace(/[::]\s*/gu,":").replace(/\s+/gu," ").trim()}let Y=[{fieldId:"project_name",key:"项目名称",fieldName:"项目名称",pattern:/(?:项目名称|工程名称|招标项目名称)[::\s为是]+([^\n。;;]{2,120})/u},{fieldId:"project_code",key:"项目编号",fieldName:"项目编号",pattern:/(?:项目编号|招标项目编号|工程编号)[::\s为是]+([A-Za-z0-9\-_.()()]{4,80})/u},{fieldId:"owner",key:"招标人",fieldName:"招标人",pattern:/(?:招标人|建设单位|发包人)[::\s为是]+([^\n。;;]{2,120})/u},{fieldId:"project_location",key:"建设地点",fieldName:"建设地点",pattern:/建设地点[::\s为是]+([^\n。;;]{2,100})/u},{fieldId:"project_scale",key:"建设规模",fieldName:"建设规模",pattern:/建设规模[::\s为是]+([^\n。;;]{2,220})/u},{fieldId:"project_scale",key:"建设规模",fieldName:"建设规模",pattern:/((?<![地上地下])总?建筑面积(?:约|约为|约计|共计|为)?\s*[\d,,.]+\s*(?:㎡|m²|m2|平方米))/u},{fieldId:"project_scope",key:"招标范围",fieldName:"招标范围",pattern:/招标范围[::\s为是]+([^\n。;;]{2,220})/u},{fieldId:"schedule_requirement",key:"计划工期",fieldName:"周期要求",pattern:/(?:(?:计划工期|合同工期|总工期)[::\s为是约]*|工期[::\s为是约]+)([^\n。;;]{0,40}?\d+(?:\.\d+)?\s*(?:日历天|天|个月|月|年)(?:[^\n。;;]{0,30})?)/u},{fieldId:"quality_standard",key:"质量标准",fieldName:"质量标准",pattern:/质量标准[::\s为是]+([^\n。;;]{1,60})/u},{fieldId:"project_investment_estimate",key:"合同估算价格",fieldName:"项目投资估算",pattern:/(?:合同估算价格|合同估算价|投资估算|估算价格|工程估算价|项目估算价|最高投标限价|招标控制价)[::\s为是约]+([^\n。;;]{0,80}?\d+(?:\.\d+)?\s*(?:万元|元))/u}];function Z(a,b){let c=X((0,z.lG)(b));return!(!a||!c||c.length>260||/###|第\s*\d+\s*页|共\s*\d+\s*页|律师代理费|投标文件的编制|备选投标方案|投标将被否决|投标人提供|投标有效期|电子交易系统|公共资源交易监督管理部门|中标候选|评标委员会|实质性内容作出响应/u.test(c)||/签章|盖章|联系人|联系电话|电话|邮箱|解密|开标|评标|保证金|交易系统|空白|填写|上传|下载|递交/u.test(c))&&("schedule_requirement"===a?c.length<=90&&/\d+(?:\.\d+)?\s*(?:日历天|天|个月|月|年)/u.test(c):"quality_standard"===a?c.length<=40&&/合格|优良|一次性验收|国家.*验收|达到/u.test(c)&&!/工期|投标|技术标准|\d[..、]/u.test(c):"owner"===a?c.length>=4&&c.length<=80&&/公司|局|委员会|中心|处|院|所|校|集团|有限|股份|责任|管理/u.test(c)&&!/将报|监督管理部门|投标人|中标|负责解释|见招标|详见|空白|填写/u.test(c):"project_location"===a?c.length<=120&&!/见招标公告|详见|投标/u.test(c):"project_scope"===a?c.length<=220&&!/^[((]\s*\d+[))]/u.test(c)&&!/具备.{0,24}(?:证书|考核合格|安全生产考核)/u.test(c)&&!/^见(?:招标|投标人|前附)/u.test(c):"project_code"===a?/^[A-Za-z0-9\-_.()()]+$/u.test(c):"project_investment_estimate"===a?c.length<=100&&/\d+(?:\.\d+)?\s*(?:万元|元)/u.test(c):c.length<=220)}function $(a){let b=[],c=new Set;for(let d of a)for(let a of X(d.content).split(/\r?\n/u).flatMap(a=>{let b=a.replace(/\s+/gu," ").trim();return b.length>260?b.split(/(?=\d+(?:\.\d+)?\s*[^\s::]{2,12}[::])/u):[b]}).filter(Boolean))if(!/报价明细|综合单价|税率|增值税|利润|结算/u.test(a)||/合同估算价|合同估算价格|投资估算|最高投标限价|招标控制价/u.test(a))for(let e of Y){let f=e.pattern.exec(a),g=f?.[1]?.trim();if(!g||!Z(e.fieldId,g))continue;let h=`${d.filePath}:${e.fieldId}:${g}`;c.has(h)||(c.add(h),b.push({key:e.key,fieldName:e.fieldName,fieldId:e.fieldId,value:g,sourceFile:d.filePath,roleId:d.roleId||"project_basic_fact",processingType:d.processingType||"reference",confidence:Math.max(.82,d.score||.82),sourceRef:{filePath:d.filePath,roleId:d.roleId||"project_basic_fact",processingType:d.processingType||"reference",sectionTitle:d.sectionTitle}}))}return b.slice(0,80)}function _(a,b=l){let c=[],d=new Set;for(let e of a){let a=`${e.roleId||""} ${e.processingType||""} ${e.filePath} ${e.sectionTitle||""}`;if(!/drawing|table|bill|boq|draw|data|sheet|spec|standard|record|report|表格|数据|规格|参数|标准|记录|报告|清单|图纸|说明/u.test(a)&&e.score<.75)continue;let f=(0,z.lG)(e.content).replace(/\s+/gu," ");for(let a of f.matchAll(T._W)){let g=a[0].trim();if(!g||o(b,g))continue;let h=Math.max(0,(a.index||0)-40),i=Math.min(f.length,(a.index||0)+g.length+40),j=f.slice(h,i);if(p(b,j)||q(b,j))continue;let k=`${e.filePath}:${g}`;d.has(k)||(d.add(k),c.push({key:"精确参数",fieldName:"技术参数",fieldId:"technical_parameter",value:g,sourceFile:e.filePath,roleId:e.roleId||"precise_fact",processingType:e.processingType||"precise",confidence:Math.max(.7,e.score||.7),sourceRef:{filePath:e.filePath,roleId:e.roleId||"precise_fact",processingType:e.processingType||"precise",sectionTitle:e.sectionTitle}}))}}return c.slice(0,240)}function aa(a){return`${a.key} ${a.fieldName||""} ${a.value} ${a.roleId} ${a.processingType||""} ${a.sourceFile}`}function ab(a){return/合同估算价|合同估算价格|投资估算|估算价格|工程估算价|项目估算价|最高投标限价|招标控制价/u.test(a)}function ac(a){let b=aa(a);return!ab(b)&&/投标保证金|发票类型|开标时间|公共资源交易监督管理|不良行为记录|投诉举报|资质投诉|投标承诺|违约金|中标服务费|交易平台|保证金账户|投标有效期|报价明细|投标报价|单价|合价|税率|增值税|利润|结算/u.test(b)}function ad(a){return(0,z.lG)(a).replace(/\s+/gu," ").trim()}function ae(a,b=[]){return[...new Set([a,...b,...a.split(/[\s、,。;;::/\\_-]+/u)].map(ad).filter(a=>a.length>=2))]}function af(a,b,c){var d,e;let f=ad(c.label);if(!f||o(b,f)||p(b,f))return;let g=c.id||(d=c.source,e=c.fieldId,`${d}:${e||f}`.toLowerCase().replace(/[^\p{L}\p{N}]+/gu,"-").replace(/^-|-$/gu,"")||`${d}-${Math.random().toString(36).slice(2,8)}`),h=c.queries?.length?c.queries.map(ad).filter(Boolean):ae(f),i=a.find(a=>a.id===g||a.label===f);if(i){i.required=i.required||c.required,i.queries=[...new Set([...i.queries,...h])];return}a.push({...c,id:g,label:f,queries:h})}function ag(a,b,c,d,e,f=[]){"do_not_use"!==c.usagePolicy&&"diagnostic_only"!==c.usagePolicy&&"forbidden"!==c.derivationPolicy&&af(a,b,{label:c.name,category:c.category,required:e,source:d,fieldId:c.id,queries:ae(c.name,[...c.aliases,...f])})}function ah(a){let b=new Set;return a.filter(a=>{let c=`${a.sourceFile}:${a.key}:${a.value}`;return!b.has(c)&&(b.add(c),!0)})}function ai(a){let b=a.profile||l,c=ah([...a.factsModel.factIndex.parameterFacts,...a.factsModel.factIndex.tableFacts,...a.factsModel.factIndex.drawingFacts,...a.factsModel.factIndex.billFacts,...a.factsModel.factIndex.reliableFacts]);return a.needs.map(d=>{let e=ah(c.filter(a=>(function(a,b,c){let d=aa(a);if(ac(a)||o(c,d)||p(c,d))return!1;if(b.fieldId&&a.fieldId===b.fieldId||n(c,a.fieldName||a.key)?.id===b.fieldId||b.queries.filter(a=>a.length>=2).some(a=>d.includes(a)))return!0;let e=n(c,b.label);return!!(e&&[e.name,...e.aliases].some(a=>a.length>=2&&d.includes(a)))})(a,d,b))).sort((a,b)=>(b.confidence||0)-(a.confidence||0)),f=(a.evidence||[]).filter(a=>(function(a,b,c){let d=`${a.filePath} ${a.roleId||""} ${a.processingType||""} ${a.sectionTitle||""} ${a.content}`;return!(o(c,d)||p(c,d))&&b.queries.some(a=>a.length>=2&&d.includes(a))})(a,d,b)),g=Math.max(0,...e.map(a=>a.confidence||0)),h=0===e.length&&0===f.length?"missing":g>0&&g<.58?"low_confidence":"satisfied";return{need:d,facts:e,evidence:f,status:h}})}function aj(a){return(0,z.lG)(a).replace(/\s+/gu," ").trim().slice(0,220)}function ak(a,b=[],c=[],d,e=l){let f=b=>a.filter(a=>b.some(b=>`${a.key} ${a.fieldName||""}`.includes(b))),g=b=>a.filter(a=>a.processingType===b||a.roleId.includes(b)),h=a.filter(a=>{let b=`${a.key} ${a.fieldName||""} ${a.value}`;return T.sv.test(b)&&(!o(e,b)||ab(b))&&!p(e,b)}),i=a.filter(a=>"table"===a.processingType||"structured_data"===a.processingType||"bill_of_quantities"===a.processingType||/bill|boq|table|sheet|data|表格|列表|明细|数据/u.test(`${a.roleId} ${a.sourceFile}`)),j=a.filter(a=>/项目名称|工程名称|项目编号|招标项目编号|招标人|建设单位|发包人|建设地点|建设规模|招标范围|计划工期|合同工期|周期要求|质量标准|合同估算|投资估算|最高投标限价|招标控制价/u.test(`${a.key||""}${a.fieldName||""}${a.fieldId||""}`)).slice(0,80),k=function(a,b,c,d){let e=a.filter(a=>p(d,aa(a))||q(d,aa(a))),f=a.filter(a=>{let b=aa(a);return a.confidence>=.58&&!ac(a)&&!o(d,b)&&!p(d,b)&&!q(d,b)}),g=[...b.filter(a=>!ac(a)),...f.filter(a=>T.sv.test(aa(a)))].filter((a,b,c)=>c.findIndex(b=>b.sourceFile===a.sourceFile&&b.value===a.value&&b.key===a.key)===b).slice(0,360),h=f.filter(a=>"table"===a.processingType||/table|sheet|表格|清单|明细|数据|参数行摘要/u.test(aa(a))),i=f.filter(a=>"drawing"===a.processingType||/drawing|draw|dwg|图纸|设计|尺寸|标高|管径|做法/u.test(aa(a)));return{reliableFacts:f.slice(0,500),parameterFacts:g,tableFacts:h.slice(0,240),drawingFacts:i.slice(0,240),billFacts:c.slice(0,240),diagnostics:e.slice(0,120)}}(a,h,i,e);return{project:j,schedule:f(["工期","开工","竣工","节点","周期"]),quality:f(["质量","验收"]),safety:f(["安全","风险"]),resources:f(["劳动力","材料","机械","设备","资源"]),tables:b,drawings:g("drawing"),bills:i,preciseFacts:h,rules:g("rule"),specifications:g("specification"),schemaFacts:function(a,b){let c={};for(let d of b?.factFields||[])c[d.id]=a.filter(a=>a.fieldId===d.id||a.key===d.name||a.fieldName===d.name);return c}(a,d),factIndex:k,missing:[...new Set(c)],conflicts:function(a,b,c=l){let d=(b?.factFields.map(a=>a.name)||[...new Set(a.map(a=>a.fieldName||a.key))]).filter(a=>(function(a,b){let c=n(b,a);return c?"single"===c.cardinality&&"ignore"!==c.conflictPolicy&&"allow_multiple"!==c.conflictPolicy:/项目名称|工程名称|招标人|建设地点|建筑面积|结构形式|层数|工期|质量标准|合同价格形式|绿色建筑等级|投标有效期|质保期/u.test(a)})(a,c)),e=[];for(let b of d){let d=a.filter(a=>a.key===b||a.fieldName===b||n(c,a.fieldName||a.key)?.name===b),f=new Map;for(let a of d){let b=function(a,b){let c=(0,z.lG)(a).trim();if(p(b,c)||o(b,c)||(c.match(/�|￿/gu)?.length||0)>=2||Array.from(c).some(a=>{let b=a.charCodeAt(0);return 65533===b||b<32&&9!==b&&10!==b&&13!==b})||/签章|盖章|联系人|联系电话|电话|邮箱|解密|开标|评标|保证金|交易系统|空白|填写|上传|下载|递交/u.test(c)||/\|/u.test(c)||/^#+\s*/u.test(c)||/见(?:招标公告|投标人须知|前附表|本项目|补疑)|资料参数行摘要|公共资源交易监督管理|开评标程序|监管部门/u.test(c)||/是否|符合|采购范围|规定的投标截止时间|电子交易系统/u.test(c)&&/\d{3,}/u.test(c))return"";let d=c.match(/\d+\s*日历天/u)?.[0]?.replace(/\s+/gu,"");if(d&&/工期|日历天|开工日期|竣工/u.test(c))return d;let e=(0,R.K3)((0,z.lG)(c));return e&&!(e.length>80)&&/[\d年月日%]|合格|一星|二星|三星|总价合同|单价合同|承台|框架|装配式/u.test(c)?e:""}(a.value,c);b&&f.set(b,[...f.get(b)||[],a])}if(f.size>1){let a=[...f.values()].slice(0,4).map(a=>`${(0,z.lG)(a[0].value).slice(0,120)}(${[...new Set(a.map(a=>a.sourceFile))].slice(0,3).join("、")})`).join(" vs ");e.push(`事实冲突:${b} 存在多个来源值:${a}`)}}return e.slice(0,8)}(a,d,e)}}var al=c(80439),am=c(34680),an=c(79227),ao=c(2773),ap=c(92817);function aq(a){return(0,t.GQ)(a.replace(/\*+/gu,"")).replace(/^第[一二三四五六七八九十百千万\d]+[章节篇部分、..\s-]*/u,"").replace(/^\d+(?:\.\d+)*(?:[..、]|\s)+/u,"").replace(/^[-—–]\s*/u,"").replace(/[<>]/gu,"").replace(/[::。;;,.,]+$/gu,"").replace(/\s*[((][^()()]{0,40}[a-zA-Z]{3,}[^()()]{0,40}[))]\s*$/u,"").trim()}function ar(a,b){let c=aq(a);return!!(c.length<4||c.length>60||c===aq(b)||/^(?:目录|章节|大纲|要求|说明|注意|输出|格式|示例|占位|提示|概述|总体要求)$/u.test(c)||/如需|应由|大模型|提示词|上下文|OUTLINE|JSON|小节标题/u.test(c)||/(.)\1/u.test(c))}function as(a,b){let c=a=>{let b=new Set;for(let c=0;c<a.length-1;c+=1)b.add(a.slice(c,c+2));return b},d=c(b),e=[...c(a)];return 0===e.length?0:e.filter(a=>d.has(a)).length/e.length}let at=["主要施工内容","工程概况","项目概况","重点难点","危大工程","应急预案","施工部署","总平面"];function au(a){return at.some(b=>a.includes(b))}function av(a){let b=new Set,c=[];for(let d of a.sections||[]){let e=aq(d);if(!e||ar(e,a.title))continue;let f=e.replace(/\s+/gu,"");b.has(f)||(b.add(f),c.push(e))}return c}function aw(a,b){let c=a.replace(/\s+/gu,""),d=b.replace(/\s+/gu,"");return c===d||c.includes(d)||d.includes(c)}function ax(a,b){let c=[],d=[],e=b.map(a=>({...a,subPoints:[...a.subPoints]}));for(let b of a){let a,f;if(e.some(a=>(function(a,b){return!!aw(b.title,a)||b.subPoints.some(b=>b.sources.some(b=>aw(b,a))||aw(b.title,a))})(b,a))){c.push(b);continue}let g=-1;for(let c of e)for(let d of c.subPoints){let e=Math.max(as(b,d.title),...d.sources.map(a=>as(b,a)));e>g&&(g=e,a=d,f=c)}if(au(b)){let a=f||e[e.length-1];if(a){a.subPoints.push({title:b.slice(0,30),sources:[b]}),d.push(b);continue}}a&&g>=.5?(a.sources.push(b),d.push(b)):f?(f.subPoints.push({title:b.slice(0,30),sources:[b]}),d.push(b)):c.push(b)}return{blocks:e,coveredSections:c,fallbackSections:d,llmPlanned:b.length>0}}function ay(a,b){let c=a.reduce((a,b)=>a+b.subPoints.length,0)||a.length;for(let d of a){let e=Math.floor(.75*Math.max(1200,Math.floor(b/Math.max(1,a.length)))+.25*b*(d.subPoints.length/c));d.targetWords=Math.min(2200,Math.max(1200,e))}}async function az(a){let b=av(a.chapter);if(b.length<=8)return;if(b.length>16){let c=Math.ceil(b.length/2),d=b=>({...a.chapter,sections:b}),e=await az({...a,chapter:d(b.slice(0,c)),targetWords:Math.ceil(a.targetWords/2)}),f=e&&e.blocks.length>0?await az({...a,chapter:d(b.slice(c)),targetWords:Math.floor(a.targetWords/2)}):void 0;if(e&&e.blocks.length>0&&f&&f.blocks.length>0){let c=[...e.blocks,...f.blocks];return ay(c,a.targetWords),ax(b,c)}let g=e&&!e.blocks.length?e.llmFailure:f&&!f.blocks.length?f.llmFailure:void 0;return{blocks:[],coveredSections:[],fallbackSections:[],llmPlanned:!1,llmFailure:g?`分批规划未命中(${g})`:"分批规划未命中"}}let c=Math.min(12,Math.ceil(b.length/2.5)),d=Math.max(3,Math.min(c,Math.ceil(b.length/3))),e=b.filter(au).length,f=Math.max(0,b.length-e),g=Math.max(2,e+Math.max(1,Math.round(.35*f))),h=Math.max(g,e+Math.round(.6*f)),i=async e=>{let f,i=(0,s.ks)((0,s.QO)(a.chapter,a.evidence),{maxChars:(0,s.Pc)(a.targetWords,0===e?5e3:3e3,0===e?12e3:8e3)}),j=0===e?4:2,k=["你是专业施工组织设计文档结构规划专家。","任务:把章节的细目清单重排为目录级主题块(三级小节),每个主题块下挂 2~4 个 H4 要点;语义相近、内容连贯的细目必须合并进同一个 H4 要点。","硬性规则:",`1. 合并决策:语义相近、内容连贯的输入细目必须合并进同一个 H4 要点;H4 要点标题必须重写为更概括、更专业的标题(16 字以内),不得直接照抄任一输入细目标题;每个 H4 要点的 sources 字段逐字列出它所覆盖的全部输入细目标题,不得改写、不得遗漏、不得重复映射。例外:含评标必查关键词的输入细目(主要施工内容/工程概况/重点难点/危大工程/应急预案/施工部署/总平面等)必须保留为独立 H4 要点,不得与其他细目合并吞并,其 H4 标题必须保留该关键词。`,`2. 合并依据:优先参考项目图谱与文档蓝图,把在项目中对应同一套工程对象/管理闭环的细目合并(如「三检制度」「样板引路」「隐蔽工程验收」同属质量管控闭环);不得把内容无关的细目强行合并。`,`3. 主题块标题必须具体、专业、能承载其要点(16 字以内),不得使用"目标与范围""资料依据""总体要求"等通用占位标题;同一内容不得在两个块重复出现。`,`4. 数量约束:整章 H4 要点总数必须控制在 ${g}~${h} 个之间;每个主题块 2~4 个 H4 要点。`,`5. facts 字段:从绑定资料中摘取与本主题块直接相关的关键事实短句(每条 ≤60 字,1~${j} 条);同一条事实只能分配给一个主题块。`,"6. 只返回 JSON,不要输出任何其他文字。",`JSON 格式:{"blocks":[{"title":"主题块标题","subPoints":[{"title":"H4要点标题","sources":["输入细目原文"]}],"facts":["事实短句"]}]}`],l=[`文档模板:${a.template.name}`,`章节标题:${a.chapter.title}`,a.requirement?`用户要求:${a.requirement}`:"",a.graphContext?`项目图谱(本章定向,工程/工法/资源/工期/标准/风险/要求):${a.graphContext.slice(0,2500)}`:"",a.blueprintContext?`文档蓝图(本章任务卡与实施方案):${a.blueprintContext.slice(0,4e3)}`:"",a.projectContext?`上下文:${a.projectContext.slice(0,2e3)}`:"",a.roleContext?`角色要求:${a.roleContext.slice(0,2e3)}`:"",i?`真实绑定资料:${i}`:"",`输入细目清单(共 ${b.length} 条,必须全部覆盖,允许合并进同一 H4):${b.join("、")}`,`请输出 ${d}-${c} 个主题块,整章 H4 要点 ${g}-${h} 个,确保所有输入细目被覆盖。`],m=await (0,S.rI)(k.join("\n"),l.filter(Boolean).join("\n\n"),!0,{maxTokens:Math.max(3200,120*b.length),temperature:.1,signal:a.signal,diagnostics:a.diagnostics});if(!m){let b=a.diagnostics?.llm.lastError;return{blocks:[],failure:b?`LLM 无响应(${b})`:"LLM 无响应"}}try{f=JSON.parse((0,S.MY)(m))}catch{let a=m.slice(-100).replace(/\s+/gu," ");return{blocks:[],failure:`JSON 解析失败,响应末段:${a}`}}if(!f?.blocks?.length)return{blocks:[],failure:"LLM 返回 JSON 但 blocks 为空"};let n=[];for(let c of f.blocks){let d=aq(c.title||"");if(!d||ar(d,a.chapter.title))continue;let e=(c.subPoints||[]).map(a=>{let c=Array.isArray(a.sources)&&a.sources.length>0?a.sources:a.source?[a.source]:[],d=[];for(let a of c){let c=aq(a||"");!(c.length<4)&&b.some(a=>aw(c,a))&&(d.some(a=>aw(a,c))||d.push(c))}let e=aq(a.title||"");return!e||e.length<4?d.length>0?{title:d[0].slice(0,30),sources:d}:void 0:{title:(e&&!d.some(a=>aw(e,a))?e:d[0]||e).slice(0,30),sources:d}}).filter(a=>!!a);if(0===e.length)continue;let f=(c.facts||[]).map(a=>a.trim().slice(0,80)).filter(Boolean).slice(0,j);n.push({title:d,subPoints:e,facts:f,targetWords:1200})}return n.length<2?{blocks:[],failure:`LLM 主题块有效数不足(仅 ${n.length} 个)`}:{blocks:n}},j=await i(0);if(j.blocks.length>0)return ay(j.blocks,a.targetWords),ax(b,j.blocks);let k=await i(1);return k.blocks.length>0?(ay(k.blocks,a.targetWords),ax(b,k.blocks)):{blocks:[],coveredSections:[],fallbackSections:[],llmPlanned:!1,llmFailure:`重试后仍未命中(${k.failure||"未知原因"};首因:${j.failure||"未知原因"})`}}async function aA(a){let b=await az(a).catch(a=>({blocks:[],coveredSections:[],fallbackSections:[],llmPlanned:!1,llmFailure:a instanceof Error?a.message:String(a)}))??{blocks:[],coveredSections:[],fallbackSections:[],llmPlanned:!1,llmFailure:"LLM 调用异常"};return b.blocks.length>0?b:{...function(a,b,c){let d=new Map;for(let b of a){let a=/工期|进度|节点|计划|纠偏|预警/u.test(b)?"工期进度":/质量|验收|三检|样板|隐蔽|复试|实测|通病/u.test(b)?"质量验收":/安全|危大|风险|隐患|应急|临边|洞口|消防|临电/u.test(b)?"安全风险":/文明|扬尘|噪声|绿色|废水|垃圾|环保|智慧/u.test(b)?"文明绿色":/劳务|工资|实名|银行|考勤|人员|岗位|组织|职责/u.test(b)?"组织劳务":/资源|材料|设备|机械|人材机|调配/u.test(b)?"资源保障":/施工|工艺|流程|顺序|穿插|部署|区段|流水/u.test(b)?"施工组织":"综合管理",c=d.get(a)||[];c.push(b),d.set(a,c)}let e=a=>{let b=[];for(let c of a){let a=b[b.length-1],d=a?a.sources[a.sources.length-1]:"";!au(c)&&a&&(aw(c,d)||as(c,d)>=.75)?(a.sources.push(c),c.length>a.title.length&&(a.title=c.slice(0,30))):b.push({title:c.slice(0,30),sources:[c]})}return b},f=[];for(let a of d.values()){let d=e(a);for(let a=0;a<d.length;a+=6){let e=d.slice(a,a+6),g=d.length;f.push({title:e[0].title||b,subPoints:e,facts:[],targetWords:Math.min(2200,Math.max(1200,Math.floor(c/Math.max(1,Math.ceil(g/6)))))})}}return{blocks:f,coveredSections:a.slice(),fallbackSections:[],llmPlanned:!1}}(av(a.chapter),a.chapter.title,a.targetWords),llmFailure:b.llmFailure||"LLM 调用异常"}}var aB=c(95393);function aC(a){let b=(0,v.r4)(a.content);return 0===b.length?[]:b.flatMap(b=>{let c=b.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&"),d=a.content.match(RegExp(`^###\\s+(?:\\d+(?:\\.\\d+)*[、..\\s]*\\s+)?${c}\\s*\\n([\\s\\S]*?)(?=^#{2,3}\\s+|$)`,"mu")),e=d?.[1]||"",f=(0,ap.AI)(b,(0,ap.Ym)(b,a.chapter,a.evidence)),g=(0,ap.uQ)(b,e,f);return g?[`${b}:${g}`]:[]})}function aD(a,b){let c=a.trim();if(!c)return[];let d=Math.max(1e3,Math.ceil(b)),e=[],f=0;for(;f<c.length;){let a=Math.min(f+d,c.length),b=c.lastIndexOf("\n\n",a);(b<=f||a-b>.25*d)&&(b=c.lastIndexOf("\n",a)),(b<=f||a-b>.2*d)&&(b=a),e.push(c.slice(f,b).trim()),f=b}return e.filter(Boolean)}function aE(a){return"string"==typeof a?a:a&&"object"==typeof a&&"message"in a?String(a.message):JSON.stringify(a)}function aF(a){let b=Number(process.env[a]);return Number.isFinite(b)&&b>0?Math.ceil(b):0}async function aG(a,b,c){let d,f=(0,S.$y)();if(!f)return{notes:[],stage:(0,al.X5)({type:"file_understanding",roleId:"multimodal-files",status:"skipped",message:"当前模型不可用"},{subtitle:"多模态参考文件"})};try{d=(0,aB.createProvider)(f.model.provider,{apiKey:f.provider.apiKey,baseUrl:f.provider.baseUrl,modelName:f.model.name,directEndpoint:f.provider.directEndpoint})}catch{return{notes:[],stage:(0,al.X5)({type:"file_understanding",roleId:"multimodal-files",status:"skipped",message:`当前模型服务 ${f.model.provider} 不支持多模态文件理解,已跳过`},{subtitle:"多模态参考文件"})}}let g=[...new Set(b.map(a=>a.filePath).filter(a=>/\.(png|jpe?g|webp|pdf|docx|xlsx)$/iu.test(a)))].slice(0,4);if(0===g.length)return{notes:[],stage:(0,al.X5)({type:"file_understanding",roleId:"multimodal-files",status:"skipped",message:"未找到多模态参考文件"},{subtitle:"多模态参考文件"})};let h=[];for(let b of g){let c=e.isAbsolute(b)?b:e.join(a,b);if(P.existsSync(c)&&!(P.statSync(c).size>8388608)&&(h.push({name:e.basename(b),buffer:P.readFileSync(c),mimeType:/\.png$/iu.test(b)?"image/png":/\.jpe?g$/iu.test(b)?"image/jpeg":/\.webp$/iu.test(b)?"image/webp":"application/pdf"}),h.length>=4))break}if(0===h.length)return{notes:[],stage:(0,al.X5)({type:"file_understanding",roleId:"multimodal-files",status:"skipped",message:"未找到可读取的多模态文件"},{subtitle:"多模态参考文件"})};try{if(c?.aborted)throw Error("aborted");let a=await d.understandFiles?.({files:h});if(!a?.length)return{notes:[],stage:(0,al.X5)({type:"file_understanding",roleId:"multimodal-files",status:"failed",message:"多模态模型未返回文件理解结果"},{subtitle:"多模态参考文件"})};return{notes:a,stage:(0,al.X5)({type:"file_understanding",roleId:"multimodal-files",status:"success",message:`已完成 ${a.length} 个多模态文件理解`},{subtitle:"多模态参考文件"})}}catch(a){return console.error("[multimodal] failed:",a),{notes:[],stage:(0,al.X5)({type:"file_understanding",roleId:"multimodal-files",status:"failed",message:"多模态文件理解失败"},{subtitle:"多模态参考文件"})}}}async function aH(a){(0,z.Te)(a.signal);let b=a.chapters.map(a=>{let b=a.content.replace(/#{1,6}\s+/gu,"").replace(/\*\*/gu,"").replace(/\|/gu," ").replace(/[\n\r]+/gu," ").trim(),c=function(a){let b=[];for(let c of[/(?:总建筑面积|建设规模|总用地面积|总占地面积)[^\n。;;]{0,18}\d+(?:[.,]\d+)?\s*万?\s*(?:㎡|m²|m2|平方米)/gu,/(?:合同估算价|合同估算价格|投资估算|最高投标限价|招标控制价|工程总投资|总投资|工程造价)[^\n。;;]{0,18}\d+(?:[.,]\d+)?\s*万?\s*(?:万元|亿元|元)/gu,/(?:计划工期|合同工期|总工期|施工周期)[^\n。;;]{0,18}\d+\s*(?:日历天|天|个月|月)/gu,/(?:质量标准|质量目标)[^\n。;;]{0,26}/gu,/(?:找平层|抹灰层|防水层|保温层|结合层|垫层|面层|粘结层)[^\n。;;]{0,24}\d+:\d+(?:\.\d+)?/gu]){let d=[...new Set(a.match(c)||[])].slice(0,4);b.push(...d)}return[...new Set(b.map(a=>a.replace(/\s+/gu," ").trim()).filter(Boolean))].join(";")}(a.content);return`章节:${a.title}
25
+ ${l}`,{signal:e,maxTokens:1800,temperature:.1,diagnostics:f});return((0,z.Te)(e),o?.facts?.length)?{facts:o.facts.filter(a=>a.key&&a.value).map(a=>{let b=m.find(b=>b.id===a.fieldId||b.name===a.fieldName||b.name===a.key);return{key:b?.name||a.key,fieldId:b?.id||a.fieldId,fieldName:b?.name||a.fieldName,value:(0,z.lG)(a.value),sourceFile:a.sourceFile||"",roleId:a.roleId||"llm",processingType:a.processingType,confidence:a.confidence??.8,sourceRef:{filePath:a.sourceFile||"",roleId:a.roleId||"llm",processingType:a.processingType}}}),stages:[{type:"fact_extraction",roleId:"llm-json",status:"success",message:`LLM 按动态 schema 抽取 ${o.facts.length} 条事实`}]}:{facts:[],stages:g}}function X(a){return(0,z.lG)(a).replace(/[\u00A0\u2002-\u200B\u3000]/gu," ").replace(/([\p{Script=Han}])\s+([\p{Script=Han}])/gu,"$1$2").replace(/(\d)\s+(日历天|天|个月|月|年|万元|元|㎡|平方米|米|m|mm|MPa|kPa|%)/giu,"$1$2").replace(/(合同|投资|工程|项目)\s*估\s*算\s*(?:价格|价)/gu,"$1估算价").replace(/计划\s*工\s*期/gu,"计划工期").replace(/合同\s*工\s*期/gu,"合同工期").replace(/质量\s*标\s*准/gu,"质量标准").replace(/建设\s*地\s*点/gu,"建设地点").replace(/建设\s*规\s*模/gu,"建设规模").replace(/招标\s*范\s*围/gu,"招标范围").replace(/最高\s*投\s*标\s*限\s*价/gu,"最高投标限价").replace(/招标\s*控\s*制\s*价/gu,"招标控制价").replace(/[::]\s*/gu,":").replace(/\s+/gu," ").trim()}let Y=[{fieldId:"project_name",key:"项目名称",fieldName:"项目名称",pattern:/(?:项目名称|工程名称|招标项目名称)[::\s为是]+([^\n。;;]{2,120})/u},{fieldId:"project_code",key:"项目编号",fieldName:"项目编号",pattern:/(?:项目编号|招标项目编号|工程编号)[::\s为是]+([A-Za-z0-9\-_.()()]{4,80})/u},{fieldId:"owner",key:"招标人",fieldName:"招标人",pattern:/(?:招标人|建设单位|发包人)[::\s为是]+([^\n。;;]{2,120})/u},{fieldId:"project_location",key:"建设地点",fieldName:"建设地点",pattern:/建设地点[::\s为是]+([^\n。;;]{2,100})/u},{fieldId:"project_scale",key:"建设规模",fieldName:"建设规模",pattern:/建设规模[::\s为是]+([^\n。;;]{2,220})/u},{fieldId:"project_scale",key:"建设规模",fieldName:"建设规模",pattern:/(?:拟|计划|规划|目标|力争|预计|期望|远期|未来|设想|建议|预期|争取)[^,,。;;\n]{0,12}?(?<![地上地下])总?建筑面积(?:约|约为|约计|共计|为)?\s*[\d,,.]+\s*(?:㎡|m²|m2|平方米)|((?<![地上地下])总?建筑面积(?:约|约为|约计|共计|为)?\s*[\d,,.]+\s*(?:㎡|m²|m2|平方米))/u},{fieldId:"project_scope",key:"招标范围",fieldName:"招标范围",pattern:/招标范围[::\s为是]+([^\n。;;]{2,220})/u},{fieldId:"schedule_requirement",key:"计划工期",fieldName:"周期要求",pattern:/(?:(?:计划工期|合同工期|总工期)[::\s为是约]*|工期[::\s为是约]+)([^\n。;;]{0,40}?\d+(?:\.\d+)?\s*(?:日历天|天|个月|月|年)(?:[^\n。;;]{0,30})?)/u},{fieldId:"quality_standard",key:"质量标准",fieldName:"质量标准",pattern:/质量标准[::\s为是]+([^\n。;;]{1,60})/u},{fieldId:"project_investment_estimate",key:"合同估算价格",fieldName:"项目投资估算",pattern:/(?:合同估算价格|合同估算价|投资估算|估算价格|工程估算价|项目估算价|最高投标限价|招标控制价)[::\s为是约]+([^\n。;;]{0,80}?\d+(?:\.\d+)?\s*(?:万元|元))/u}];function Z(a,b){let c=X((0,z.lG)(b));return!(!a||!c||c.length>260||/###|第\s*\d+\s*页|共\s*\d+\s*页|律师代理费|投标文件的编制|备选投标方案|投标将被否决|投标人提供|投标有效期|电子交易系统|公共资源交易监督管理部门|中标候选|评标委员会|实质性内容作出响应/u.test(c)||/签章|盖章|联系人|联系电话|电话|邮箱|解密|开标|评标|保证金|交易系统|空白|填写|上传|下载|递交/u.test(c))&&("schedule_requirement"===a?c.length<=90&&/\d+(?:\.\d+)?\s*(?:日历天|天|个月|月|年)/u.test(c):"quality_standard"===a?c.length<=40&&/合格|优良|一次性验收|国家.*验收|达到/u.test(c)&&!/工期|投标|技术标准|\d[..、]/u.test(c):"owner"===a?c.length>=4&&c.length<=80&&/公司|局|委员会|中心|处|院|所|校|集团|有限|股份|责任|管理/u.test(c)&&!/将报|监督管理部门|投标人|中标|负责解释|见招标|详见|空白|填写/u.test(c):"project_location"===a?c.length<=120&&!/见招标公告|详见|投标/u.test(c):"project_scope"===a?c.length<=220&&!/^[((]\s*\d+[))]/u.test(c)&&!/具备.{0,24}(?:证书|考核合格|安全生产考核)/u.test(c)&&!/^见(?:招标|投标人|前附)/u.test(c):"project_code"===a?/^[A-Za-z0-9\-_.()()]+$/u.test(c):"project_investment_estimate"===a?c.length<=100&&/\d+(?:\.\d+)?\s*(?:万元|元)/u.test(c):c.length<=220)}function $(a){let b=[],c=new Set;for(let d of a)for(let a of X(d.content).split(/\r?\n/u).flatMap(a=>{let b=a.replace(/\s+/gu," ").trim();return b.length>260?b.split(/(?=\d+(?:\.\d+)?\s*[^\s::]{2,12}[::])/u):[b]}).filter(Boolean))if(!/报价明细|综合单价|税率|增值税|利润|结算/u.test(a)||/合同估算价|合同估算价格|投资估算|最高投标限价|招标控制价/u.test(a))for(let e of Y){let f=e.pattern.exec(a),g=f?.[1]?.trim();if(!g||!Z(e.fieldId,g))continue;let h=`${d.filePath}:${e.fieldId}:${g}`;c.has(h)||(c.add(h),b.push({key:e.key,fieldName:e.fieldName,fieldId:e.fieldId,value:g,sourceFile:d.filePath,roleId:d.roleId||"project_basic_fact",processingType:d.processingType||"reference",confidence:Math.max(.82,d.score||.82),sourceRef:{filePath:d.filePath,roleId:d.roleId||"project_basic_fact",processingType:d.processingType||"reference",sectionTitle:d.sectionTitle}}))}return b.slice(0,80)}function _(a,b=l){let c=[],d=new Set;for(let e of a){let a=`${e.roleId||""} ${e.processingType||""} ${e.filePath} ${e.sectionTitle||""}`;if(!/drawing|table|bill|boq|draw|data|sheet|spec|standard|record|report|表格|数据|规格|参数|标准|记录|报告|清单|图纸|说明/u.test(a)&&e.score<.75)continue;let f=(0,z.lG)(e.content).replace(/\s+/gu," ");for(let a of f.matchAll(T._W)){let g=a[0].trim();if(!g||o(b,g))continue;let h=Math.max(0,(a.index||0)-40),i=Math.min(f.length,(a.index||0)+g.length+40),j=f.slice(h,i);if(p(b,j)||q(b,j))continue;let k=`${e.filePath}:${g}`;d.has(k)||(d.add(k),c.push({key:"精确参数",fieldName:"技术参数",fieldId:"technical_parameter",value:g,sourceFile:e.filePath,roleId:e.roleId||"precise_fact",processingType:e.processingType||"precise",confidence:Math.max(.7,e.score||.7),sourceRef:{filePath:e.filePath,roleId:e.roleId||"precise_fact",processingType:e.processingType||"precise",sectionTitle:e.sectionTitle}}))}}return c.slice(0,240)}function aa(a){return`${a.key} ${a.fieldName||""} ${a.value} ${a.roleId} ${a.processingType||""} ${a.sourceFile}`}function ab(a){return/合同估算价|合同估算价格|投资估算|估算价格|工程估算价|项目估算价|最高投标限价|招标控制价/u.test(a)}function ac(a){let b=aa(a);return!ab(b)&&/投标保证金|发票类型|开标时间|公共资源交易监督管理|不良行为记录|投诉举报|资质投诉|投标承诺|违约金|中标服务费|交易平台|保证金账户|投标有效期|报价明细|投标报价|单价|合价|税率|增值税|利润|结算/u.test(b)}function ad(a){return(0,z.lG)(a).replace(/\s+/gu," ").trim()}function ae(a,b=[]){return[...new Set([a,...b,...a.split(/[\s、,。;;::/\\_-]+/u)].map(ad).filter(a=>a.length>=2))]}function af(a,b,c){var d,e;let f=ad(c.label);if(!f||o(b,f)||p(b,f))return;let g=c.id||(d=c.source,e=c.fieldId,`${d}:${e||f}`.toLowerCase().replace(/[^\p{L}\p{N}]+/gu,"-").replace(/^-|-$/gu,"")||`${d}-${Math.random().toString(36).slice(2,8)}`),h=c.queries?.length?c.queries.map(ad).filter(Boolean):ae(f),i=a.find(a=>a.id===g||a.label===f);if(i){i.required=i.required||c.required,i.queries=[...new Set([...i.queries,...h])];return}a.push({...c,id:g,label:f,queries:h})}function ag(a,b,c,d,e,f=[]){"do_not_use"!==c.usagePolicy&&"diagnostic_only"!==c.usagePolicy&&"forbidden"!==c.derivationPolicy&&af(a,b,{label:c.name,category:c.category,required:e,source:d,fieldId:c.id,queries:ae(c.name,[...c.aliases,...f])})}function ah(a){let b=new Set;return a.filter(a=>{let c=`${a.sourceFile}:${a.key}:${a.value}`;return!b.has(c)&&(b.add(c),!0)})}function ai(a){let b=a.profile||l,c=ah([...a.factsModel.factIndex.parameterFacts,...a.factsModel.factIndex.tableFacts,...a.factsModel.factIndex.drawingFacts,...a.factsModel.factIndex.billFacts,...a.factsModel.factIndex.reliableFacts]);return a.needs.map(d=>{let e=ah(c.filter(a=>(function(a,b,c){let d=aa(a);if(ac(a)||o(c,d)||p(c,d))return!1;if(b.fieldId&&a.fieldId===b.fieldId||n(c,a.fieldName||a.key)?.id===b.fieldId||b.queries.filter(a=>a.length>=2).some(a=>d.includes(a)))return!0;let e=n(c,b.label);return!!(e&&[e.name,...e.aliases].some(a=>a.length>=2&&d.includes(a)))})(a,d,b))).sort((a,b)=>(b.confidence||0)-(a.confidence||0)),f=(a.evidence||[]).filter(a=>(function(a,b,c){let d=`${a.filePath} ${a.roleId||""} ${a.processingType||""} ${a.sectionTitle||""} ${a.content}`;return!(o(c,d)||p(c,d))&&b.queries.some(a=>a.length>=2&&d.includes(a))})(a,d,b)),g=Math.max(0,...e.map(a=>a.confidence||0)),h=0===e.length&&0===f.length?"missing":g>0&&g<.58?"low_confidence":"satisfied";return{need:d,facts:e,evidence:f,status:h}})}function aj(a){return(0,z.lG)(a).replace(/\s+/gu," ").trim().slice(0,220)}function ak(a,b=[],c=[],d,e=l){let f=b=>a.filter(a=>b.some(b=>`${a.key} ${a.fieldName||""}`.includes(b))),g=b=>a.filter(a=>a.processingType===b||a.roleId.includes(b)),h=a.filter(a=>{let b=`${a.key} ${a.fieldName||""} ${a.value}`;return T.sv.test(b)&&(!o(e,b)||ab(b))&&!p(e,b)}),i=a.filter(a=>"table"===a.processingType||"structured_data"===a.processingType||"bill_of_quantities"===a.processingType||/bill|boq|table|sheet|data|表格|列表|明细|数据/u.test(`${a.roleId} ${a.sourceFile}`)),j=a.filter(a=>/项目名称|工程名称|项目编号|招标项目编号|招标人|建设单位|发包人|建设地点|建设规模|招标范围|计划工期|合同工期|周期要求|质量标准|合同估算|投资估算|最高投标限价|招标控制价/u.test(`${a.key||""}${a.fieldName||""}${a.fieldId||""}`)).slice(0,80),k=function(a,b,c,d){let e=a.filter(a=>p(d,aa(a))||q(d,aa(a))),f=a.filter(a=>{let b=aa(a);return a.confidence>=.58&&!ac(a)&&!o(d,b)&&!p(d,b)&&!q(d,b)}),g=[...b.filter(a=>!ac(a)),...f.filter(a=>T.sv.test(aa(a)))].filter((a,b,c)=>c.findIndex(b=>b.sourceFile===a.sourceFile&&b.value===a.value&&b.key===a.key)===b).slice(0,360),h=f.filter(a=>"table"===a.processingType||/table|sheet|表格|清单|明细|数据|参数行摘要/u.test(aa(a))),i=f.filter(a=>"drawing"===a.processingType||/drawing|draw|dwg|图纸|设计|尺寸|标高|管径|做法/u.test(aa(a)));return{reliableFacts:f.slice(0,500),parameterFacts:g,tableFacts:h.slice(0,240),drawingFacts:i.slice(0,240),billFacts:c.slice(0,240),diagnostics:e.slice(0,120)}}(a,h,i,e);return{project:j,schedule:f(["工期","开工","竣工","节点","周期"]),quality:f(["质量","验收"]),safety:f(["安全","风险"]),resources:f(["劳动力","材料","机械","设备","资源"]),tables:b,drawings:g("drawing"),bills:i,preciseFacts:h,rules:g("rule"),specifications:g("specification"),schemaFacts:function(a,b){let c={};for(let d of b?.factFields||[])c[d.id]=a.filter(a=>a.fieldId===d.id||a.key===d.name||a.fieldName===d.name);return c}(a,d),factIndex:k,missing:[...new Set(c)],conflicts:function(a,b,c=l){let d=(b?.factFields.map(a=>a.name)||[...new Set(a.map(a=>a.fieldName||a.key))]).filter(a=>(function(a,b){let c=n(b,a);return c?"single"===c.cardinality&&"ignore"!==c.conflictPolicy&&"allow_multiple"!==c.conflictPolicy:/项目名称|工程名称|招标人|建设地点|建筑面积|结构形式|层数|工期|质量标准|合同价格形式|绿色建筑等级|投标有效期|质保期/u.test(a)})(a,c)),e=[];for(let b of d){let d=a.filter(a=>a.key===b||a.fieldName===b||n(c,a.fieldName||a.key)?.name===b),f=new Map;for(let a of d){let b=function(a,b){let c=(0,z.lG)(a).trim();if(p(b,c)||o(b,c)||(c.match(/�|￿/gu)?.length||0)>=2||Array.from(c).some(a=>{let b=a.charCodeAt(0);return 65533===b||b<32&&9!==b&&10!==b&&13!==b})||/签章|盖章|联系人|联系电话|电话|邮箱|解密|开标|评标|保证金|交易系统|空白|填写|上传|下载|递交/u.test(c)||/\|/u.test(c)||/^#+\s*/u.test(c)||/见(?:招标公告|投标人须知|前附表|本项目|补疑)|资料参数行摘要|公共资源交易监督管理|开评标程序|监管部门/u.test(c)||/是否|符合|采购范围|规定的投标截止时间|电子交易系统/u.test(c)&&/\d{3,}/u.test(c))return"";let d=c.match(/\d+\s*日历天/u)?.[0]?.replace(/\s+/gu,"");if(d&&/工期|日历天|开工日期|竣工/u.test(c))return d;let e=(0,R.K3)((0,z.lG)(c));return e&&!(e.length>80)&&/[\d年月日%]|合格|一星|二星|三星|总价合同|单价合同|承台|框架|装配式/u.test(c)?e:""}(a.value,c);b&&f.set(b,[...f.get(b)||[],a])}if(f.size>1){let a=[...f.values()].slice(0,4).map(a=>`${(0,z.lG)(a[0].value).slice(0,120)}(${[...new Set(a.map(a=>a.sourceFile))].slice(0,3).join("、")})`).join(" vs ");e.push(`事实冲突:${b} 存在多个来源值:${a}`)}}return e.slice(0,8)}(a,d,e)}}var al=c(80439),am=c(34680),an=c(79227),ao=c(2773),ap=c(92817);function aq(a){return(0,t.GQ)(a.replace(/\*+/gu,"")).replace(/^第[一二三四五六七八九十百千万\d]+[章节篇部分、..\s-]*/u,"").replace(/^\d+(?:\.\d+)*(?:[..、]|\s)+/u,"").replace(/^[-—–]\s*/u,"").replace(/[<>]/gu,"").replace(/[::。;;,.,]+$/gu,"").replace(/\s*[((][^()()]{0,40}[a-zA-Z]{3,}[^()()]{0,40}[))]\s*$/u,"").trim()}function ar(a,b){let c=aq(a);return!!(c.length<4||c.length>60||c===aq(b)||/^(?:目录|章节|大纲|要求|说明|注意|输出|格式|示例|占位|提示|概述|总体要求)$/u.test(c)||/如需|应由|大模型|提示词|上下文|OUTLINE|JSON|小节标题/u.test(c)||/(.)\1/u.test(c))}function as(a,b){let c=a=>{let b=new Set;for(let c=0;c<a.length-1;c+=1)b.add(a.slice(c,c+2));return b},d=c(b),e=[...c(a)];return 0===e.length?0:e.filter(a=>d.has(a)).length/e.length}let at=["主要施工内容","工程概况","项目概况","重点难点","危大工程","应急预案","施工部署","总平面"];function au(a){return at.some(b=>a.includes(b))}function av(a){let b=new Set,c=[];for(let d of a.sections||[]){let e=aq(d);if(!e||ar(e,a.title))continue;let f=e.replace(/\s+/gu,"");b.has(f)||(b.add(f),c.push(e))}return c}function aw(a,b){let c=a.replace(/\s+/gu,""),d=b.replace(/\s+/gu,"");return c===d||c.includes(d)||d.includes(c)}function ax(a,b){let c=[],d=[],e=b.map(a=>({...a,subPoints:[...a.subPoints]}));for(let b of a){let a,f;if(e.some(a=>(function(a,b){return!!aw(b.title,a)||b.subPoints.some(b=>b.sources.some(b=>aw(b,a))||aw(b.title,a))})(b,a))){c.push(b);continue}let g=-1;for(let c of e)for(let d of c.subPoints){let e=Math.max(as(b,d.title),...d.sources.map(a=>as(b,a)));e>g&&(g=e,a=d,f=c)}if(au(b)){let a=f||e[e.length-1];if(a){a.subPoints.push({title:b.slice(0,30),sources:[b]}),d.push(b);continue}}a&&g>=.5?(a.sources.push(b),d.push(b)):f?(f.subPoints.push({title:b.slice(0,30),sources:[b]}),d.push(b)):c.push(b)}return{blocks:e,coveredSections:c,fallbackSections:d,llmPlanned:b.length>0}}function ay(a,b){let c=a.reduce((a,b)=>a+b.subPoints.length,0)||a.length;for(let d of a){let e=Math.floor(.75*Math.max(1200,Math.floor(b/Math.max(1,a.length)))+.25*b*(d.subPoints.length/c));d.targetWords=Math.min(2200,Math.max(1200,e))}}async function az(a){let b=av(a.chapter);if(b.length<=8)return;if(b.length>16){let c=Math.ceil(b.length/2),d=b=>({...a.chapter,sections:b}),e=await az({...a,chapter:d(b.slice(0,c)),targetWords:Math.ceil(a.targetWords/2)}),f=e&&e.blocks.length>0?await az({...a,chapter:d(b.slice(c)),targetWords:Math.floor(a.targetWords/2)}):void 0;if(e&&e.blocks.length>0&&f&&f.blocks.length>0){let c=[...e.blocks,...f.blocks];return ay(c,a.targetWords),ax(b,c)}let g=e&&!e.blocks.length?e.llmFailure:f&&!f.blocks.length?f.llmFailure:void 0;return{blocks:[],coveredSections:[],fallbackSections:[],llmPlanned:!1,llmFailure:g?`分批规划未命中(${g})`:"分批规划未命中"}}let c=Math.min(12,Math.ceil(b.length/2.5)),d=Math.max(3,Math.min(c,Math.ceil(b.length/3))),e=b.filter(au).length,f=Math.max(0,b.length-e),g=Math.max(2,e+Math.max(1,Math.round(.35*f))),h=Math.max(g,e+Math.round(.6*f)),i=async e=>{let f,i=(0,s.ks)((0,s.QO)(a.chapter,a.evidence),{maxChars:(0,s.Pc)(a.targetWords,0===e?5e3:3e3,0===e?12e3:8e3)}),j=0===e?4:2,k=["你是专业施工组织设计文档结构规划专家。","任务:把章节的细目清单重排为目录级主题块(三级小节),每个主题块下挂 2~4 个 H4 要点;语义相近、内容连贯的细目必须合并进同一个 H4 要点。","硬性规则:",`1. 合并决策:语义相近、内容连贯的输入细目必须合并进同一个 H4 要点;H4 要点标题必须重写为更概括、更专业的标题(16 字以内),不得直接照抄任一输入细目标题;每个 H4 要点的 sources 字段逐字列出它所覆盖的全部输入细目标题,不得改写、不得遗漏、不得重复映射。例外:含评标必查关键词的输入细目(主要施工内容/工程概况/重点难点/危大工程/应急预案/施工部署/总平面等)必须保留为独立 H4 要点,不得与其他细目合并吞并,其 H4 标题必须保留该关键词。`,`2. 合并依据:优先参考项目图谱与文档蓝图,把在项目中对应同一套工程对象/管理闭环的细目合并(如「三检制度」「样板引路」「隐蔽工程验收」同属质量管控闭环);不得把内容无关的细目强行合并。`,`3. 主题块标题必须具体、专业、能承载其要点(16 字以内),不得使用"目标与范围""资料依据""总体要求"等通用占位标题;同一内容不得在两个块重复出现。`,`4. 数量约束:整章 H4 要点总数必须控制在 ${g}~${h} 个之间;每个主题块 2~4 个 H4 要点。`,`5. facts 字段:从绑定资料中摘取与本主题块直接相关的关键事实短句(每条 ≤60 字,1~${j} 条);同一条事实只能分配给一个主题块。`,"6. 只返回 JSON,不要输出任何其他文字。",`JSON 格式:{"blocks":[{"title":"主题块标题","subPoints":[{"title":"H4要点标题","sources":["输入细目原文"]}],"facts":["事实短句"]}]}`],l=[`文档模板:${a.template.name}`,`章节标题:${a.chapter.title}`,a.requirement?`用户要求:${a.requirement}`:"",a.graphContext?`项目图谱(本章定向,工程/工法/资源/工期/标准/风险/要求):${a.graphContext.slice(0,2500)}`:"",a.blueprintContext?`文档蓝图(本章任务卡与实施方案):${a.blueprintContext.slice(0,4e3)}`:"",a.projectContext?`上下文:${a.projectContext.slice(0,2e3)}`:"",a.roleContext?`角色要求:${a.roleContext.slice(0,2e3)}`:"",i?`真实绑定资料:${i}`:"",`输入细目清单(共 ${b.length} 条,必须全部覆盖,允许合并进同一 H4):${b.join("、")}`,`请输出 ${d}-${c} 个主题块,整章 H4 要点 ${g}-${h} 个,确保所有输入细目被覆盖。`],m=await (0,S.rI)(k.join("\n"),l.filter(Boolean).join("\n\n"),!0,{maxTokens:Math.max(3200,120*b.length),temperature:.1,signal:a.signal,diagnostics:a.diagnostics});if(!m){let b=a.diagnostics?.llm.lastError;return{blocks:[],failure:b?`LLM 无响应(${b})`:"LLM 无响应"}}try{f=JSON.parse((0,S.MY)(m))}catch{let a=m.slice(-100).replace(/\s+/gu," ");return{blocks:[],failure:`JSON 解析失败,响应末段:${a}`}}if(!f?.blocks?.length)return{blocks:[],failure:"LLM 返回 JSON 但 blocks 为空"};let n=[];for(let c of f.blocks){let d=aq(c.title||"");if(!d||ar(d,a.chapter.title))continue;let e=(c.subPoints||[]).map(a=>{let c=Array.isArray(a.sources)&&a.sources.length>0?a.sources:a.source?[a.source]:[],d=[];for(let a of c){let c=aq(a||"");!(c.length<4)&&b.some(a=>aw(c,a))&&(d.some(a=>aw(a,c))||d.push(c))}let e=aq(a.title||"");return!e||e.length<4?d.length>0?{title:d[0].slice(0,30),sources:d}:void 0:{title:(e&&!d.some(a=>aw(e,a))?e:d[0]||e).slice(0,30),sources:d}}).filter(a=>!!a);if(0===e.length)continue;let f=(c.facts||[]).map(a=>a.trim().slice(0,80)).filter(Boolean).slice(0,j);n.push({title:d,subPoints:e,facts:f,targetWords:1200})}return n.length<2?{blocks:[],failure:`LLM 主题块有效数不足(仅 ${n.length} 个)`}:{blocks:n}},j=await i(0);if(j.blocks.length>0)return ay(j.blocks,a.targetWords),ax(b,j.blocks);let k=await i(1);return k.blocks.length>0?(ay(k.blocks,a.targetWords),ax(b,k.blocks)):{blocks:[],coveredSections:[],fallbackSections:[],llmPlanned:!1,llmFailure:`重试后仍未命中(${k.failure||"未知原因"};首因:${j.failure||"未知原因"})`}}async function aA(a){let b=await az(a).catch(a=>({blocks:[],coveredSections:[],fallbackSections:[],llmPlanned:!1,llmFailure:a instanceof Error?a.message:String(a)}))??{blocks:[],coveredSections:[],fallbackSections:[],llmPlanned:!1,llmFailure:"LLM 调用异常"};return b.blocks.length>0?b:{...function(a,b,c){let d=new Map;for(let b of a){let a=/工期|进度|节点|计划|纠偏|预警/u.test(b)?"工期进度":/质量|验收|三检|样板|隐蔽|复试|实测|通病/u.test(b)?"质量验收":/安全|危大|风险|隐患|应急|临边|洞口|消防|临电/u.test(b)?"安全风险":/文明|扬尘|噪声|绿色|废水|垃圾|环保|智慧/u.test(b)?"文明绿色":/劳务|工资|实名|银行|考勤|人员|岗位|组织|职责/u.test(b)?"组织劳务":/资源|材料|设备|机械|人材机|调配/u.test(b)?"资源保障":/施工|工艺|流程|顺序|穿插|部署|区段|流水/u.test(b)?"施工组织":"综合管理",c=d.get(a)||[];c.push(b),d.set(a,c)}let e=a=>{let b=[];for(let c of a){let a=b[b.length-1],d=a?a.sources[a.sources.length-1]:"";!au(c)&&a&&(aw(c,d)||as(c,d)>=.75)?(a.sources.push(c),c.length>a.title.length&&(a.title=c.slice(0,30))):b.push({title:c.slice(0,30),sources:[c]})}return b},f=[];for(let a of d.values()){let d=e(a);for(let a=0;a<d.length;a+=6){let e=d.slice(a,a+6),g=d.length;f.push({title:e[0].title||b,subPoints:e,facts:[],targetWords:Math.min(2200,Math.max(1200,Math.floor(c/Math.max(1,Math.ceil(g/6)))))})}}return{blocks:f,coveredSections:a.slice(),fallbackSections:[],llmPlanned:!1}}(av(a.chapter),a.chapter.title,a.targetWords),llmFailure:b.llmFailure||"LLM 调用异常"}}var aB=c(95393);function aC(a){let b=(0,v.r4)(a.content);return 0===b.length?[]:b.flatMap(b=>{let c=b.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&"),d=a.content.match(RegExp(`^###\\s+(?:\\d+(?:\\.\\d+)*[、..\\s]*\\s+)?${c}\\s*\\n([\\s\\S]*?)(?=^#{2,3}\\s+|$)`,"mu")),e=d?.[1]||"",f=(0,ap.AI)(b,(0,ap.Ym)(b,a.chapter,a.evidence)),g=(0,ap.uQ)(b,e,f);return g?[`${b}:${g}`]:[]})}function aD(a,b){let c=a.trim();if(!c)return[];let d=Math.max(1e3,Math.ceil(b)),e=[],f=0;for(;f<c.length;){let a=Math.min(f+d,c.length),b=c.lastIndexOf("\n\n",a);(b<=f||a-b>.25*d)&&(b=c.lastIndexOf("\n",a)),(b<=f||a-b>.2*d)&&(b=a),e.push(c.slice(f,b).trim()),f=b}return e.filter(Boolean)}function aE(a){return"string"==typeof a?a:a&&"object"==typeof a&&"message"in a?String(a.message):JSON.stringify(a)}function aF(a){let b=Number(process.env[a]);return Number.isFinite(b)&&b>0?Math.ceil(b):0}async function aG(a,b,c){let d,f=(0,S.$y)();if(!f)return{notes:[],stage:(0,al.X5)({type:"file_understanding",roleId:"multimodal-files",status:"skipped",message:"当前模型不可用"},{subtitle:"多模态参考文件"})};try{d=(0,aB.createProvider)(f.model.provider,{apiKey:f.provider.apiKey,baseUrl:f.provider.baseUrl,modelName:f.model.name,directEndpoint:f.provider.directEndpoint})}catch{return{notes:[],stage:(0,al.X5)({type:"file_understanding",roleId:"multimodal-files",status:"skipped",message:`当前模型服务 ${f.model.provider} 不支持多模态文件理解,已跳过`},{subtitle:"多模态参考文件"})}}let g=[...new Set(b.map(a=>a.filePath).filter(a=>/\.(png|jpe?g|webp|pdf|docx|xlsx)$/iu.test(a)))].slice(0,4);if(0===g.length)return{notes:[],stage:(0,al.X5)({type:"file_understanding",roleId:"multimodal-files",status:"skipped",message:"未找到多模态参考文件"},{subtitle:"多模态参考文件"})};let h=[];for(let b of g){let c=e.isAbsolute(b)?b:e.join(a,b);if(P.existsSync(c)&&!(P.statSync(c).size>8388608)&&(h.push({name:e.basename(b),buffer:P.readFileSync(c),mimeType:/\.png$/iu.test(b)?"image/png":/\.jpe?g$/iu.test(b)?"image/jpeg":/\.webp$/iu.test(b)?"image/webp":"application/pdf"}),h.length>=4))break}if(0===h.length)return{notes:[],stage:(0,al.X5)({type:"file_understanding",roleId:"multimodal-files",status:"skipped",message:"未找到可读取的多模态文件"},{subtitle:"多模态参考文件"})};try{if(c?.aborted)throw Error("aborted");let a=await d.understandFiles?.({files:h});if(!a?.length)return{notes:[],stage:(0,al.X5)({type:"file_understanding",roleId:"multimodal-files",status:"failed",message:"多模态模型未返回文件理解结果"},{subtitle:"多模态参考文件"})};return{notes:a,stage:(0,al.X5)({type:"file_understanding",roleId:"multimodal-files",status:"success",message:`已完成 ${a.length} 个多模态文件理解`},{subtitle:"多模态参考文件"})}}catch(a){return console.error("[multimodal] failed:",a),{notes:[],stage:(0,al.X5)({type:"file_understanding",roleId:"multimodal-files",status:"failed",message:"多模态文件理解失败"},{subtitle:"多模态参考文件"})}}}async function aH(a){(0,z.Te)(a.signal);let b=a.chapters.map(a=>{let b=a.content.replace(/#{1,6}\s+/gu,"").replace(/\*\*/gu,"").replace(/\|/gu," ").replace(/[\n\r]+/gu," ").trim(),c=function(a){let b=[];for(let c of[/(?:总建筑面积|建设规模|总用地面积|总占地面积)[^\n。;;]{0,18}\d+(?:[.,]\d+)?\s*万?\s*(?:㎡|m²|m2|平方米)/gu,/(?:合同估算价|合同估算价格|投资估算|最高投标限价|招标控制价|工程总投资|总投资|工程造价)[^\n。;;]{0,18}\d+(?:[.,]\d+)?\s*万?\s*(?:万元|亿元|元)/gu,/(?:计划工期|合同工期|总工期|施工周期)[^\n。;;]{0,18}\d+\s*(?:日历天|天|个月|月)/gu,/(?:质量标准|质量目标)[^\n。;;]{0,26}/gu,/(?:找平层|抹灰层|防水层|保温层|结合层|垫层|面层|粘结层)[^\n。;;]{0,24}\d+:\d+(?:\.\d+)?/gu]){let d=[...new Set(a.match(c)||[])].slice(0,4);b.push(...d)}return[...new Set(b.map(a=>a.replace(/\s+/gu," ").trim()).filter(Boolean))].join(";")}(a.content);return`章节:${a.title}
26
26
  数值口径清单:${c||"(未提取到总量口径数字)"}
27
27
  正文摘要:${b.slice(0,600)}`}).join("\n\n---\n\n"),c=function(a){let b=Math.ceil(a.totalChars/Math.max(1e3,a.chunkChars)),c="chapter"===a.phase?aF("DOCUMENT_CHAPTER_REVIEW_MAX_CHUNKS")||Math.min(Math.max(2,Math.floor(a.totalChars/a.chapterCount/4e3)),b):"global"===a.phase?aF("DOCUMENT_GLOBAL_REVIEW_MAX_CHUNKS")||Math.min(4,b):aF("DOCUMENT_FINAL_REVIEW_MAX_CHUNKS")||Math.min(6,b);return{chunks:c,budgetPerChunk:Math.ceil(a.totalChars/Math.max(1,c)),maxIssues:Math.max(4,Math.min(28,Math.ceil(2.5*c)))}}({totalChars:b.length,chapterCount:a.chapters.length,chunkChars:16e3,phase:"global"}),d=aD(b,16e3).map((a,c)=>`**第 ${c+1}/${aD(b,16e3).length} 部分**
28
28
 
@@ -35,7 +35,7 @@ ${b}
35
35
  返回 JSON:{"issues":[]}`,{maxTokens:1e3,temperature:.1,signal:a.signal,diagnostics:a.diagnostics})))).flatMap(a=>Array.isArray(a?.issues)?a.issues:[]).map(aE).filter(Boolean))];return{issues:e,stage:(0,al.X5)({type:"llm_review",roleId:"global-consistency-review",status:e.length>0?"failed":"success",message:e.length>0?`全局一致性审查完成:发现 ${e.length} 个跨章问题`:"全局一致性审查通过"},{subtitle:"全局一致性审查"})}}var aI=c(71001);let aJ=/安全|文明|质量|绿色施工|环保|扬尘|消防|应急|危大|风险|规范|标准|管理要求|施工工艺|技术措施|验收/u,aK=/项目名称|工程名称|建设地点|建设单位|招标人|发包人|建设规模|招标范围|合同工期|计划工期|质量标准|危大工程清单|工程量|材料规格|设备型号|图纸参数|报价|单价|利润|税率|合同金额|联系方式|品牌/u,aL=/报价|单价|合价|金额|利润|税率|增值税|招标控制价|最高投标限价|中标价|合同价|暂列金额/u,aM=/联网增强|联网检索|网页资料|搜索结果|根据网页|互联网资料|在线资料|浏览器|搜索引擎/u,aN=["项目名称","工程名称","建设地点","建设单位","招标人","发包人","建设规模","招标范围","合同工期","计划工期","工程量","报价","单价"];function aO(a){return a.replace(/&amp;/gu,"&").replace(/&lt;/gu,"<").replace(/&gt;/gu,">").replace(/&quot;/gu,'"').replace(/&#39;/gu,"'").replace(/<[^>]+>/gu,"").replace(/\s+/gu," ").trim()}async function aP(a,b,c,d,e){let f=`https://duckduckgo.com/html/?q=${encodeURIComponent(a)}`,g=new AbortController,h=setTimeout(()=>g.abort(),8e3),i=()=>g.abort();e?.addEventListener("abort",i,{once:!0});let j=await fetch(f,{headers:{"User-Agent":"Mozilla/5.0 compatible; customize-agent web research"},signal:g.signal}).finally(()=>{clearTimeout(h),e?.removeEventListener("abort",i)});return j.ok?[...(await j.text()).matchAll(/<a[^>]+class="result__a"[^>]+href="([^"]+)"[^>]*>([\s\S]*?)<\/a>[\s\S]*?<a[^>]+class="result__snippet"[^>]*>([\s\S]*?)<\/a>/giu)].map(a=>{let b=aO(a[1]||""),c=aO(a[2]||""),d=aO(a[3]||""),e=/uddg=([^&]+)/u.exec(b)?.[1];return{url:e?decodeURIComponent(e):b,title:c,snippet:d}}).filter(a=>{let b=`${a.title} ${a.snippet} ${a.url}`;return!(!a.url||!a.snippet||aK.test(b)||aL.test(b)||aM.test(b)||d.some(a=>a&&b.includes(a)))&&(0===c.length||c.some(b=>a.url.includes(b)))}).slice(0,b):[]}async function aQ(a){if(!a.config.enabled||!function(a,b){let c=`${a} ${b.join(" ")}`;return!(!aJ.test(c)||/项目概况|工程概况|建设地点|建设规模|招标范围|工程量|报价|造价/u.test(c)&&!/安全|文明|质量|危大|环保|工艺|措施/u.test(c))}(a.chapterTitle,a.sectionTitles))return{evidence:[],queries:[],filtered:0};let b=function(a,b,c){let d=`${a} ${b.join(" ")}`,e=[/危大/u.test(d)?"危大工程 专项施工方案 管理规定 安全措施":"",/安全|文明/u.test(d)?"建筑工程 安全文明施工 管理要求":"",/质量|验收/u.test(d)?"建筑工程 质量控制 质量验收 通用要求":"",/扬尘|环保|绿色/u.test(d)?"施工现场 扬尘治理 绿色施工 环保要求":"",/消防|应急/u.test(d)?"施工现场 消防 应急管理 要求":"",/工艺|技术措施/u.test(d)?"建筑工程 施工工艺 技术措施 通用要求":""].filter(Boolean),f=`${a.replace(aK,"")} 公开规范 通用要求`.trim();return[...new Set(e.length?e:[f])].slice(0,c)}(a.chapterTitle,a.sectionTitles,a.config.maxQueriesPerChapter),c=[],d=0;for(let e of b)try{for(let b of(await aP(e,a.config.maxResultsPerQuery,a.config.trustedDomains,a.runtimeRules.forbiddenTerms||[],a.signal))){let e=function(a,b){let c=a;for(let a of aN)c=c.replace(RegExp(`${a}[^。;;
36
36
  ]{0,80}`,"gu"),"");for(let a of b.map(a=>{var b;return null==(b=a.value)?"":"string"==typeof b||"number"==typeof b||"boolean"==typeof b?String(b).trim():""}).filter(a=>a.length>=3&&a.length<=80))c=c.replace(RegExp(a.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&"),"gu"),"");return c.replace(aL,"").trim()}(b.snippet,a.localFacts);if(!e||e.length<20){d+=1;continue}c.push({chapterId:a.chapterId,filePath:b.url,score:.42,content:`参考依据:${b.title}
37
37
  ${e}`,source:function(a){let b=a.toLowerCase();return b.includes(".gov.cn")||b.includes("mohurd")||b.includes("zjt")||a.includes("住建")?"web-policy":"web-evidence"}(b.url),sectionTitle:a.chapterTitle})}}catch{d+=1}return{evidence:c,queries:b,filtered:d}}function aR(a){return e.resolve(a).replace(/\\/gu,"/").toLowerCase()}function aS(a,b=[]){return{projectId:a,allowedFilePaths:[...new Set(b.filter(Boolean).map(aR))]}}function aT(a){return!!a?.allowedFilePaths.length}function aU(a,b){if(!aT(b))return!0;if(!a)return!1;let c=aR(a);return b.allowedFilePaths.includes(c)}function aV(a,b){return a.filter(a=>aU(a.filePath,b))}function aW(a,b){return a.filter(a=>aU(a.sourceFile,b))}function aX(a,b,c){if(!aT(b))return;let d=a.filter(a=>!aU(a.filePath,b));if(d.length>0){let a=d.slice(0,5).map(a=>a.filePath).join(";");throw Error(`EVIDENCE_SCOPE_VIOLATION:${c}:${a}`)}}function aY(a){return/--|延期到|资料|附件|扫描|目录|汇总|打包|备份|\d{1,2}\.\d{1,2}/u.test(a)}function aZ(a){return a.replace(/[((]\d+[))]/gu,"").replace(/副本|最终版|扫描件|定稿/gu,"").replace(/[\s,。,.;;::《》“”‘’()()_-]+/gu,"").toLowerCase()}function a$(a,b){let c=aZ(b);if(!c||c.length<4)return!0;let d=aZ(a);return!!d.includes(c)||c.length>=12&&d.includes(c.slice(0,Math.max(8,Math.floor(.72*c.length))))}function a_(a){return a.replace(/[((]\d+[))]/gu,"").replace(/副本|最终版|扫描件|定稿/gu,"").replace(/\s+/gu,"").replace(/[,。,.;;::《》“”‘’()()_-]/gu,"").toLowerCase()}function a0(a,b){let c=a.trim();if(p(b,c)||o(b,c)||/签章|盖章|联系人|联系电话|电话|邮箱|解密|开标|评标|保证金|交易系统|空白|填写|上传|下载|递交|投标文件制作|电子服务系统|交易平台/u.test(c)||/\|/u.test(c)||/^#+\s*/u.test(c)||/见(?:招标公告|投标人须知|前附表|本项目|补疑)|资料参数行摘要|公共资源交易监督管理|开评标程序|监管部门|招标代理机构|监督管理部门|行政监督部门/u.test(c)||/是否|符合|采购范围|规定的投标截止时间|电子交易系统|投标人须知|招标文件正文/u.test(c)&&/\d{3,}/u.test(c)||/项目名称|工程名称/u.test(c)&&/项目编号|工程概况|建筑面积|本项目分为|现状建筑物|改造工程|标段/u.test(c)||/项目编号[::]|工程概况[::]|本项目分为|现状建筑物|总建筑面积|本次改造工程|清单编制说明/u.test(c))return"";let d=/\d+(?:\.\d+)?\s*(?:日历天|天|个月|月)/u.exec(c)?.[0],e=a_(d&&/工期|总工期|合同工期|计划工期|施工周期/u.test(c)?d:c);return!e||e.length>80?"":e}var a1=c(1358);function a2(a){return(0,R.K3)(`${a.fieldName||a.key} ${(0,z.lG)(a.value)}`)}function a3(a){return[...a.project,...a.schedule,...a.quality,...a.safety,...a.resources,...a.preciseFacts,...a.bills,...a.drawings,...a.rules,...a.specifications].map(a2).join("\n")}function a4(a,b){let c=[{label:"工期",corpus:a3({...b,project:[],quality:[],safety:[],resources:[],preciseFacts:[],bills:[],drawings:[],rules:[],specifications:[]}),required:/工期|日历天|合同工期|计划工期/u},{label:"质量",corpus:a3({...b,project:[],schedule:[],safety:[],resources:[],preciseFacts:[],bills:[],drawings:[],rules:[],specifications:[]}),required:/质量目标|质量标准|验收|复验/u},{label:"安全",corpus:a3({...b,project:[],schedule:[],quality:[],resources:[],preciseFacts:[],bills:[],drawings:[],rules:[],specifications:[]}),required:/安全|文明|风险|应急/u},{label:"资源",corpus:a3({...b,project:[],schedule:[],quality:[],safety:[],preciseFacts:[],bills:[],drawings:[],rules:[],specifications:[]}),required:/资源|材料|设备|劳动力/u},{label:"工程量",corpus:a3({...b,project:[],schedule:[],quality:[],safety:[],resources:[],preciseFacts:[],drawings:[],rules:[],specifications:[]}),required:/工程量|清单|建筑面积|长度|吨|台|套|项/u}],d=(0,R.K3)(a.replace(/\s+/gu,"")),e=[];for(let b of c)b.required.test(a)&&0===[...new Set(b.corpus.split("\n").map(a=>a.replace(/\s+/gu,"").slice(0,24)).filter(Boolean))].filter(a=>a.length>=6&&d.includes(a)).length&&e.push({level:"warning",message:`证据使用覆盖率偏低:正文中未明显使用${b.label}相关事实`,suggestion:`请在相应章节中引用至少一项${b.label}事实,避免只写通用表述。`});return e}function a5(a){let b=[],c=new Map(a.map(a=>[a.title,a.content])),d=a.map(a=>`${a.title}
38
- ${a.content}`).join("\n\n");return/进度|工期/u.test(d)&&/资源|材料|设备|劳动力/u.test(d)&&!/保障|投入|调配|进场|计划/u.test(c.get(a.find(a=>/资源|材料|设备|劳动力/u.test(a.title))?.title||"")||"")&&b.push({level:"warning",message:"章节逻辑依赖不足:进度章节与资源章节之间缺少明显支撑关系",suggestion:"请在资源章节补充与工期目标相匹配的劳动力、材料、设备投入和调配计划。"}),/质量/u.test(d)&&/施工|工艺|技术/u.test(d)&&!/验收|复验|控制点|交底|隐蔽/u.test(d)&&b.push({level:"warning",message:"章节逻辑依赖不足:质量章节未明显支撑施工工艺控制",suggestion:"请在施工技术和质量章节之间补齐工艺控制点、验收要求和整改复验闭环。"}),/安全|文明|风险/u.test(d)&&!/应急|检查|整改|巡查|培训|演练/u.test(d)&&b.push({level:"warning",message:"章节逻辑依赖不足:安全章节缺少检查整改和应急支撑",suggestion:"请补齐风险识别、检查整改、应急响应和演练闭环。"}),b}let a6=[{label:"工程名称",factGroups:["project"],patterns:[/工程名称\s*[::]\s*([^\n|]+)/u],locations:"封面、工程概况、页眉页脚、专项方案、表格标题"},{label:"建设地点",factGroups:["project"],patterns:[/建设地点\s*[::]\s*([^\n|]+)/u,/工程地点\s*[::]\s*([^\n|]+)/u],locations:"工程概况、周边环境、扬尘噪声、交通导改、属地化措施"},{label:"总工期",factGroups:["schedule"],patterns:[/总工期\s*[::]\s*([^\n|]+)/u,/计划工期\s*[::]\s*([^\n|]+)/u,/工期目标\s*[::]\s*([^\n|]+)/u],locations:"工程概况、进度计划、横道图、资源计划、纠偏措施"},{label:"建设规模",factGroups:["project","preciseFacts"],patterns:[/建设规模\s*[::]\s*([^\n|]+)/u,/建筑面积\s*[::]\s*([^\n|]+)/u,/道路长度\s*[::]\s*([^\n|]+)/u,/管线长度\s*[::]\s*([^\n|]+)/u],locations:"工程概况、工程量表、施工部署、资源配置"},{label:"机械数量型号",factGroups:["resources"],patterns:[/([\p{Script=Han}A-Za-z0-9]+(?:机|吊|泵|车))\s*[^\n|]{0,12}(\d+)\s*(台|套|辆)/u],locations:"机械表、平面布置、进度保障、安全专项方案"},{label:"劳动力人数",factGroups:["resources"],patterns:[/劳动力\s*[^\n|]{0,12}(\d+)\s*人/u,/班组\s*[^\n|]{0,12}(\d+)\s*人/u],locations:"劳动力计划、进度节点、抢工方案、工资保障台账"},{label:"危大工程清单",factGroups:["safety","preciseFacts"],patterns:[/危大工程\s*[::]\s*([^\n|]+)/u,/深基坑|高支模|起重吊装|脚手架/u],locations:"安全章节、专项方案、审批表、应急预案"},{label:"环保监测指标",factGroups:["quality","safety","preciseFacts"],patterns:[/PM10|PM2\.5|TSP|噪声|扬尘在线监测/u],locations:"文明施工、扬尘噪声、智慧工地、应急联动"}];function a7(a){return a.replace(/[\s,。;;::|]/gu,"").trim()}let a8=/塔式起重机|履带吊|汽车吊|卷扬机|脚手架|扣件|钢管|模板|噪声|PM2\.5|PM10|TSP|扬尘在线监测|临电|消防|安全网|围挡|洗车台|沉淀池|雾炮/u,a9=/不使用|不采用|不配置|无需|未采用|不得使用|禁止使用/u;function ba(a,b){let c=[];for(let d of b){let b=a[d];if(Array.isArray(b))for(let a of b)a&&"object"==typeof a&&"value"in a&&"string"==typeof a.value&&c.push(a.value)}return c.map(a7).filter(Boolean)}let bb={project:"项目基础事实",schedule:"工期与节点",quality:"质量目标与验收",safety:"安全文明要求",resources:"资源投入依据",quantities:"清单/图纸/工程量事实",rules:"规范规则与验收要求"};var bc=c(98632),bd=c(28103),be=c(42484);function bf(a,b){return b<=0?100*(a>0):Math.min(120,a/b*100)}function bg(...a){return a.flat()}var bh=c(87942);let bi=[{key:"project_name",label:"项目名称",aliases:["项目名称","工程名称","招标项目名称"],valueType:"text"},{key:"project_code",label:"项目编号",aliases:["项目编号","招标项目编号","工程编号"],valueType:"identifier"},{key:"owner",label:"招标人",aliases:["招标人","项目业主","建设单位","发包人","采购人"],valueType:"organization"},{key:"project_location",label:"建设地点",aliases:["建设地点","实施地点","服务地点","交付地点"],valueType:"location"},{key:"project_scale",label:"建设规模",aliases:["建设规模","工程规模","项目规模"],valueType:"scale"},{key:"schedule_requirement",label:"计划工期",aliases:["计划工期","合同工期","总工期","工期","实施周期","服务期限"],valueType:"duration"},{key:"quality_standard",label:"质量标准",aliases:["质量标准","质量目标","验收标准","服务标准"],valueType:"standard"},{key:"project_investment_estimate",label:"合同估算价",aliases:["合同估算价","合同估算价格","投资估算","估算价格","最高投标限价","招标控制价","预算金额"],valueType:"money"}];function bj(a){return/^(见|详见|参见|按|以).{0,30}(招标公告|招标文件|投标人须知|前附表|合同|附件|图纸|清单|约定|规定|执行)/u.test(a)||/见招标公告|见投标人须知前附表|详见|按.*执行/u.test(a)}function bk(a,b){switch(b.valueType){case"duration":if(!/\d+(?:\.\d+)?\s*(?:日历天|天|个月|月|年)/u.test(a))return{rejected:!0,score:-80,reason:"缺少明确工期数值和时间单位"};return{rejected:!1,score:45,reason:"包含明确工期数值和时间单位"};case"money":if(!/\d+(?:\.\d+)?\s*(?:万元|元|亿元)/u.test(a))return{rejected:!0,score:-80,reason:"缺少明确金额数值和单位"};if(/综合单价|税率|增值税|利润|报价明细/u.test(a))return{rejected:!0,score:-90,reason:"命中非目标商务明细"};return{rejected:!1,score:45,reason:"包含明确金额数值和单位"};case"standard":if(!/合格|优良|一次性验收|达到|满足|符合/u.test(a))return{rejected:!0,score:-70,reason:"不符合标准类字段表达"};if(/工期|投标|技术标准|有效期/u.test(a))return{rejected:!0,score:-90,reason:"标准字段包含其他字段或投标条款"};return{rejected:!1,score:40,reason:"符合标准类字段表达"};case"location":if(bj(a))return{rejected:!1,score:-40,reason:"引用型地点弱值"};if(!/(省|市|区|县|镇|街道|路|园区|大道|巷|内|号)/u.test(a))return{rejected:!1,score:-10,reason:"地点具体性不足"};return{rejected:!1,score:35,reason:"包含具体地址特征"};case"organization":if(/监督管理部门|投标人|中标候选人|评标委员会/u.test(a))return{rejected:!0,score:-90,reason:"组织字段角色串位"};if(/(公司|集团|单位|委员会|机关|中心|局|院|所|政府|运营管理)/u.test(a))return{rejected:!1,score:35,reason:"包含组织名称特征"};return{rejected:!1,score:5,reason:"组织名称特征较弱"};case"identifier":if(!/^[A-Za-z0-9\-_.()()]+$/u.test(a))return{rejected:!0,score:-70,reason:"编号格式不合法"};if(/(?:㎡|m²|m2|m3|m³|平方米|米|万元|元|日历天|个月)/u.test(a))return{rejected:!0,score:-60,reason:"编号中混入量纲单位,疑似字段串位"};return{rejected:!1,score:35,reason:"符合编号格式"};case"scale":if(/\d+(?:\.\d+)?\s*(?:㎡|平方米|m²|米|m|层|栋|座|万元|元)/iu.test(a))return{rejected:!1,score:30,reason:"包含规模数值或单位"};return{rejected:!1,score:5,reason:"规模字段为文本描述"};default:if("project_name"===b.key){if(/存在部位|风险等级|管控措施|监测频次|闭环要求|序号|内容|范围|不适用/u.test(a))return{rejected:!0,score:-90,reason:"项目名称字段串位或表头噪声"};if(!/项目|工程|学院|宿舍|楼|校区|施工总承包/u.test(a))return{rejected:!0,score:-70,reason:"项目名称缺少工程名称特征"};return{rejected:!1,score:35,reason:"符合项目名称特征"}}return{rejected:!1,score:a.length>=2?10:-20,reason:"文本字段"}}}function bl(a,b){let c=X(a.value),d=[],e=30,f=!1;(!c||c.length>260)&&(f=!0,e-=100,d.push("空值或过长")),/###|投标文件的编制|备选投标方案|投标将被否决|投标人提供|投标有效期|电子交易系统|公共资源交易监督管理部门|中标候选|评标委员会|实质性内容作出响应|招标人有权核查/u.test(c)&&(f=!0,e-=100,d.push("大段条款或 Markdown 噪声")),bi.some(a=>a.key!==b.key&&a.aliases.some(a=>c.includes(a)))&&(e-=45,d.push("包含其他字段名,疑似字段串位")),bj(c)&&(e-=35,d.push("引用型弱值"));let g=bk(c,b);return e+=g.score,d.push(g.reason),g.rejected&&(f=!0),"evidence"===a.sourceType&&(e+=20,d.push("来源为证据原文")),a.sourceName&&/补疑|答疑|澄清|补充|更正|修改/u.test(a.sourceName)&&(e+=35,d.push("补疑/澄清类修正文件,权威最高")),a.sourceName&&/招标文件|招标公告|前附表|合同|需求书|正文/u.test(a.sourceName)&&(e+=15,d.push("来源文件可信")),"generated_markdown"===a.sourceType&&(e-=10),{...a,value:c,confidence:e,rejected:f,reasons:d}}function bm(a){return function(a,b=bi){let c=new Map;for(let d of b){let b=a.filter(a=>a.fieldKey===d.key).sort((a,b)=>b.confidence-a.confidence),e=b.find(a=>!a.rejected&&a.confidence>0);e&&c.set(d.key,{fieldKey:d.key,label:d.label,value:e.value,source:e.sourceName||e.sourceType,confidence:e.confidence,candidates:b,selectedReason:e.reasons.join(";")})}return c}([...function(a){let b=[];for(let c of a){let a=function(a){let b=`${a.fieldId||""}${a.key||""}${a.fieldName||""}`;return bi.find(c=>c.key===a.fieldId||c.aliases.some(a=>b.includes(a)))}(c);if(!a)continue;let d=(0,z.lG)(c.value);b.push(bl({fieldKey:a.key,label:a.label,value:d,sourceType:"structured_fact",sourceName:c.sourceFile||c.sourceRef?.sectionTitle||"structured_fact"},a))}return b}(a.facts),...function(a,b="generated_markdown"){let c=[];for(let d of a.split(/\r?\n/u)){if(!/^\|.*\|\s*$/u.test(d)||/^\|\s*:?-{3,}:?/u.test(d))continue;let a=d.trim().replace(/^\|/u,"").replace(/\|$/u,"").split("|").map(a=>a.replace(/\*\*/gu,"").trim());if(a.length<2)continue;let e="序号"===a[0]&&a.length>=3?a[1]:a[0],f="序号"===a[0]&&a.length>=3?a[2]:a[1],g="序号"===a[0]&&a.length>=4?a[3]:a[2],h=bi.find(a=>a.aliases.some(a=>e.includes(a))||a.label===e);!h||!f||/内容|参数|资料未明确|系统暂未确认|暂未从知识库确认/u.test(f)||c.push(bl({fieldKey:h.key,label:h.label,value:f,sourceType:"generated_markdown",sourceName:g||b},h))}return c}(a.markdown||"")])}function bn(a){return({user:100,addendum:96,contract:90,tender:85,boq:75,drawing:70,standard:60,evidence:55,structured_fact:50,projectGraph:40,generated_markdown:30,derived:20,unknown:10})[a]}function bo(a){let b=e.join(process.env.HOME||process.cwd(),".customize-agent","cache","document-workflow",(0,z.c6)(a||"default"));return P.mkdirSync(b,{recursive:!0}),b}function bp(a){let b=[];for(let c of["area","cost","duration"]){let d=new Set,e=[];for(let b of a){let a=(0,z.lG)(b.value),f=function(a,b){let c=`${a||""} ${b||""}`;return/补疑|答疑|澄清|补充|更正|修改/u.test(c)?95:/合同/u.test(c)?90:/招标文件|招标公告|前附表|投标人须知|需求书/u.test(c)?85:/清单|工程量|BOQ|编制说明/u.test(c)?75:/图纸|设计/u.test(c)?70:50}(b.sourceFile,b.roleId);for(let g of function(a,b){let c=[],d="area"===b?/总?建筑面积|建设规模|总?用地面积|总?占地面积/u:"cost"===b?/合同估算价|合同估算价格|投资估算|最高投标限价|招标控制价|工程总投资|总投资|工程造价/u:/计划工期|合同工期|总工期|施工周期/u,e=RegExp(`(?:${d.source})(?:[^0-9\\n]{0,14}?)(\\d{2,}(?:[.,]\\d+)?)\\s*${"area"===b?"(万?㎡|万?m\xb2|万?m2|万?平方米)":"cost"===b?"(万元|亿元|万?元)":"(日历天|天|个月|月)"}`,"giu");for(let f of a.matchAll(e)){let a,e=f[0].match(d)?.[0]||"",g=f[1].replace(/[,,]/gu,"").trim(),h=(f[2]||"").trim();if(e&&g){if("duration"===b)a=`${g}|${h}`;else{let b=+!!/万/u.test(h),c=Number(g)*(b?1e4:1);if(!Number.isFinite(c))continue;a=String(/亿元/u.test(h)?1e8*c:/万元/u.test(h)?1e4*c:c)}c.push({scope:e,value:g,unit:h,compareKey:a})}}return c}(a,c)){let a=`${b.sourceFile||""}|${g.scope}|${g.compareKey}`;d.has(a)||(d.add(a),e.push({...g,sourceFile:b.sourceFile,priority:f}))}}if(!(e.length<2))for(let[a,d]of e.reduce((a,b)=>{let c=b.scope.replace(/^总/u,""),d=a.get(c)||[];return d.push(b),a.set(c,d),a},new Map)){if(new Set(d.map(a=>a.compareKey)).size<2||new Set(d.map(a=>a.sourceFile).filter(Boolean)).size<2)continue;let e=Math.max(...d.map(a=>a.priority)),f=d.filter(a=>a.priority===e),g=new Set(f.map(a=>a.compareKey)),h=f[0];b.push({kind:c,scope:`${a}(${"area"===c?"面积":"cost"===c?"金额":"工期"}口径)`,values:[...new Map(d.map(a=>[`${a.value}${a.unit}|${a.sourceFile||""}`,{value:a.value,unit:a.unit,sourceFile:a.sourceFile,priority:a.priority}])).values()],resolution:1===g.size?`${h.value}${h.unit}`:void 0})}}return b}function bq(a){let b=new Map;for(let c of a){if(!c.resolution||b.has(c.kind))continue;let a=c.values.find(a=>`${a.value}${a.unit}`===c.resolution),d=a?a.value.replace(/[,,]/gu,""):"",e=c.values.filter(a=>`${a.value}${a.unit}`!==c.resolution).map(a=>({value:a.value.replace(/[,,]/gu,""),unit:a.unit}));d&&0!==e.length&&b.set(c.kind,{winnerNum:d,losers:e})}return b}function br(a,b){return b?.length?a.map(a=>{let c=function(a,b){let c=a;for(let{winnerNum:a,losers:d}of bq(b).values())for(let b of d)b.unit&&c.includes(`${b.value}${b.unit}`)?c=c.split(`${b.value}${b.unit}`).join(`${a}${b.unit}`):c.includes(b.value)&&(c=c.split(b.value).join(a));return c}(a.content,b);return c===a.content?a:{...a,content:c}}):a}function bs(a,b){let c=bq(b);if(0===c.size)return a;let d={area:/建设规模|工程规模|建筑面积|用地面积|占地面积|project_scale|scale/u,cost:/合同估算|投资估算|最高投标限价|招标控制价|总投资|工程造价|project_cost|cost|price|amount/u,duration:/计划工期|合同工期|总工期|施工周期|duration|schedule/u};return a.map(a=>{let b=[...c.keys()].find(b=>d[b].test(a.key)||d[b].test(a.value));if(!b)return a;let{winnerNum:e,losers:f}=c.get(b),g=a.value,h=!1;for(let a of f)a.unit&&g.includes(`${a.value}${a.unit}`)?(g=g.split(`${a.value}${a.unit}`).join(`${e}${a.unit}`),h=!0):g.includes(a.value)&&(g=g.split(a.value).join(e),h=!0);return h?{...a,value:g}:a})}var bt=c(32434);function bu(a,b){return 0>=(0,w.V7)(a.content)?"failed":"completed"}let bv=["项目名称 项目编号 招标人 项目概况与招标范围 建设地点 建设规模 计划工期 质量标准 合同估算价","计划工期 合同工期 总工期 日历天","合同估算价 合同估算价格 投资估算 最高投标限价 招标控制价","质量标准 质量目标 合格","建设地点 建设规模 招标范围"];function bw(a){let b=X(a),c=0;return/项目名称|工程名称|招标项目名称|项目编号|招标项目编号|招标人|建设单位|发包人/u.test(b)&&(c+=4),/计划工期|合同工期|总工期|\d+(?:\.\d+)?\s*(?:日历天|天|个月|月|年)/u.test(b)&&(c+=6),/合同估算价|投资估算|最高投标限价|招标控制价|\d+(?:\.\d+)?\s*(?:万元|元)/u.test(b)&&(c+=5),/质量标准|质量目标|合格|优良/u.test(b)&&(c+=4),/建设地点|建设规模|招标范围|项目概况与招标范围/u.test(b)&&(c+=4),/工程量|清单|图纸|设计说明|施工范围|施工内容|材料|设备|工艺|验收|复试|检测/u.test(b)&&(c+=3),/投标人须知|保证金|付款|违约金|电子交易|公共资源|开标|评标|合同协议书/u.test(b)&&(c-=4),c}async function bx(a){let b=[],c=new Set(a.scopedFilePaths),d=await Promise.all(bv.map(async b=>((0,z.Te)(a.signal),(await a.manager.search(a.projectRoot,b,{scope:"project",filters:{filePaths:a.scopedFilePaths},limit:10,weights:{keyword:.65,vector:.25,rewrite:.8,hybridBonus:.2},generationMode:!1})).results.filter(a=>c.has(a.filePath)&&bw(`${a.sectionTitle||""}
38
+ ${a.content}`).join("\n\n");return/进度|工期/u.test(d)&&/资源|材料|设备|劳动力/u.test(d)&&!/保障|投入|调配|进场|计划/u.test(c.get(a.find(a=>/资源|材料|设备|劳动力/u.test(a.title))?.title||"")||"")&&b.push({level:"warning",message:"章节逻辑依赖不足:进度章节与资源章节之间缺少明显支撑关系",suggestion:"请在资源章节补充与工期目标相匹配的劳动力、材料、设备投入和调配计划。"}),/质量/u.test(d)&&/施工|工艺|技术/u.test(d)&&!/验收|复验|控制点|交底|隐蔽/u.test(d)&&b.push({level:"warning",message:"章节逻辑依赖不足:质量章节未明显支撑施工工艺控制",suggestion:"请在施工技术和质量章节之间补齐工艺控制点、验收要求和整改复验闭环。"}),/安全|文明|风险/u.test(d)&&!/应急|检查|整改|巡查|培训|演练/u.test(d)&&b.push({level:"warning",message:"章节逻辑依赖不足:安全章节缺少检查整改和应急支撑",suggestion:"请补齐风险识别、检查整改、应急响应和演练闭环。"}),b}let a6=[{label:"工程名称",factGroups:["project"],patterns:[/工程名称\s*[::]\s*([^\n|]+)/u],locations:"封面、工程概况、页眉页脚、专项方案、表格标题"},{label:"建设地点",factGroups:["project"],patterns:[/建设地点\s*[::]\s*([^\n|]+)/u,/工程地点\s*[::]\s*([^\n|]+)/u],locations:"工程概况、周边环境、扬尘噪声、交通导改、属地化措施"},{label:"总工期",factGroups:["schedule"],patterns:[/总工期\s*[::]\s*([^\n|]+)/u,/计划工期\s*[::]\s*([^\n|]+)/u,/工期目标\s*[::]\s*([^\n|]+)/u],locations:"工程概况、进度计划、横道图、资源计划、纠偏措施"},{label:"建设规模",factGroups:["project","preciseFacts"],patterns:[/建设规模\s*[::]\s*([^\n|]+)/u,/建筑面积\s*[::]\s*([^\n|]+)/u,/道路长度\s*[::]\s*([^\n|]+)/u,/管线长度\s*[::]\s*([^\n|]+)/u],locations:"工程概况、工程量表、施工部署、资源配置"},{label:"机械数量型号",factGroups:["resources"],patterns:[/([\p{Script=Han}A-Za-z0-9]+(?:机|吊|泵|车))\s*[^\n|]{0,12}(\d+)\s*(台|套|辆)/u],locations:"机械表、平面布置、进度保障、安全专项方案"},{label:"劳动力人数",factGroups:["resources"],patterns:[/劳动力\s*[^\n|]{0,12}(\d+)\s*人/u,/班组\s*[^\n|]{0,12}(\d+)\s*人/u],locations:"劳动力计划、进度节点、抢工方案、工资保障台账"},{label:"危大工程清单",factGroups:["safety","preciseFacts"],patterns:[/危大工程\s*[::]\s*([^\n|]+)/u,/深基坑|高支模|起重吊装|脚手架/u],locations:"安全章节、专项方案、审批表、应急预案"},{label:"环保监测指标",factGroups:["quality","safety","preciseFacts"],patterns:[/PM10|PM2\.5|TSP|噪声|扬尘在线监测/u],locations:"文明施工、扬尘噪声、智慧工地、应急联动"}];function a7(a){return a.replace(/[\s,。;;::|]/gu,"").trim()}let a8=/塔式起重机|履带吊|汽车吊|卷扬机|脚手架|扣件|钢管|模板|噪声|PM2\.5|PM10|TSP|扬尘在线监测|临电|消防|安全网|围挡|洗车台|沉淀池|雾炮/u,a9=/不使用|不采用|不配置|无需|未采用|不得使用|禁止使用/u;function ba(a,b){let c=[];for(let d of b){let b=a[d];if(Array.isArray(b))for(let a of b)a&&"object"==typeof a&&"value"in a&&"string"==typeof a.value&&c.push(a.value)}return c.map(a7).filter(Boolean)}let bb={project:"项目基础事实",schedule:"工期与节点",quality:"质量目标与验收",safety:"安全文明要求",resources:"资源投入依据",quantities:"清单/图纸/工程量事实",rules:"规范规则与验收要求"};var bc=c(98632),bd=c(28103),be=c(42484);function bf(a,b){return b<=0?100*(a>0):Math.min(120,a/b*100)}function bg(...a){return a.flat()}var bh=c(87942);let bi=[{key:"project_name",label:"项目名称",aliases:["项目名称","工程名称","招标项目名称"],valueType:"text"},{key:"project_code",label:"项目编号",aliases:["项目编号","招标项目编号","工程编号"],valueType:"identifier"},{key:"owner",label:"招标人",aliases:["招标人","项目业主","建设单位","发包人","采购人"],valueType:"organization"},{key:"project_location",label:"建设地点",aliases:["建设地点","实施地点","服务地点","交付地点"],valueType:"location"},{key:"project_scale",label:"建设规模",aliases:["建设规模","工程规模","项目规模"],valueType:"scale"},{key:"schedule_requirement",label:"计划工期",aliases:["计划工期","合同工期","总工期","工期","实施周期","服务期限"],valueType:"duration"},{key:"quality_standard",label:"质量标准",aliases:["质量标准","质量目标","验收标准","服务标准"],valueType:"standard"},{key:"project_investment_estimate",label:"合同估算价",aliases:["合同估算价","合同估算价格","投资估算","估算价格","最高投标限价","招标控制价","预算金额"],valueType:"money"}];function bj(a){return/^(见|详见|参见|按|以).{0,30}(招标公告|招标文件|投标人须知|前附表|合同|附件|图纸|清单|约定|规定|执行)/u.test(a)||/见招标公告|见投标人须知前附表|详见|按.*执行/u.test(a)}function bk(a,b){switch(b.valueType){case"duration":if(!/\d+(?:\.\d+)?\s*(?:日历天|天|个月|月|年)/u.test(a))return{rejected:!0,score:-80,reason:"缺少明确工期数值和时间单位"};return{rejected:!1,score:45,reason:"包含明确工期数值和时间单位"};case"money":if(!/\d+(?:\.\d+)?\s*(?:万元|元|亿元)/u.test(a))return{rejected:!0,score:-80,reason:"缺少明确金额数值和单位"};if(/综合单价|税率|增值税|利润|报价明细/u.test(a))return{rejected:!0,score:-90,reason:"命中非目标商务明细"};return{rejected:!1,score:45,reason:"包含明确金额数值和单位"};case"standard":if(!/合格|优良|一次性验收|达到|满足|符合/u.test(a))return{rejected:!0,score:-70,reason:"不符合标准类字段表达"};if(/工期|投标|技术标准|有效期/u.test(a))return{rejected:!0,score:-90,reason:"标准字段包含其他字段或投标条款"};return{rejected:!1,score:40,reason:"符合标准类字段表达"};case"location":if(bj(a))return{rejected:!1,score:-40,reason:"引用型地点弱值"};if(!/(省|市|区|县|镇|街道|路|园区|大道|巷|内|号)/u.test(a))return{rejected:!1,score:-10,reason:"地点具体性不足"};return{rejected:!1,score:35,reason:"包含具体地址特征"};case"organization":if(/监督管理部门|投标人|中标候选人|评标委员会/u.test(a))return{rejected:!0,score:-90,reason:"组织字段角色串位"};if(/(公司|集团|单位|委员会|机关|中心|局|院|所|政府|运营管理)/u.test(a))return{rejected:!1,score:35,reason:"包含组织名称特征"};return{rejected:!1,score:5,reason:"组织名称特征较弱"};case"identifier":if(!/^[A-Za-z0-9\-_.()()]+$/u.test(a))return{rejected:!0,score:-70,reason:"编号格式不合法"};if(/(?:㎡|m²|m2|m3|m³|平方米|米|万元|元|日历天|个月)/u.test(a))return{rejected:!0,score:-60,reason:"编号中混入量纲单位,疑似字段串位"};return{rejected:!1,score:35,reason:"符合编号格式"};case"scale":if(/\d+(?:\.\d+)?\s*(?:㎡|平方米|m²|米|m|层|栋|座|万元|元)/iu.test(a))return{rejected:!1,score:30,reason:"包含规模数值或单位"};return{rejected:!1,score:5,reason:"规模字段为文本描述"};default:if("project_name"===b.key){if(/存在部位|风险等级|管控措施|监测频次|闭环要求|序号|内容|范围|不适用/u.test(a))return{rejected:!0,score:-90,reason:"项目名称字段串位或表头噪声"};if(!/项目|工程|学院|宿舍|楼|校区|施工总承包/u.test(a))return{rejected:!0,score:-70,reason:"项目名称缺少工程名称特征"};return{rejected:!1,score:35,reason:"符合项目名称特征"}}return{rejected:!1,score:a.length>=2?10:-20,reason:"文本字段"}}}function bl(a,b){let c=X(a.value),d=[],e=30,f=!1;(!c||c.length>260)&&(f=!0,e-=100,d.push("空值或过长")),/###|投标文件的编制|备选投标方案|投标将被否决|投标人提供|投标有效期|电子交易系统|公共资源交易监督管理部门|中标候选|评标委员会|实质性内容作出响应|招标人有权核查/u.test(c)&&(f=!0,e-=100,d.push("大段条款或 Markdown 噪声")),bi.some(a=>a.key!==b.key&&a.aliases.some(a=>c.includes(a)))&&(e-=45,d.push("包含其他字段名,疑似字段串位")),bj(c)&&(e-=35,d.push("引用型弱值"));let g=bk(c,b);return e+=g.score,d.push(g.reason),g.rejected&&(f=!0),"evidence"===a.sourceType&&(e+=20,d.push("来源为证据原文")),a.sourceName&&/补疑|答疑|澄清|补充|更正|修改/u.test(a.sourceName)&&(e+=35,d.push("补疑/澄清类修正文件,权威最高")),a.sourceName&&/招标文件|招标公告|前附表|合同|需求书|正文/u.test(a.sourceName)&&(e+=15,d.push("来源文件可信")),"generated_markdown"===a.sourceType&&(e-=10),{...a,value:c,confidence:e,rejected:f,reasons:d}}function bm(a){return function(a,b=bi){let c=new Map;for(let d of b){let b=a.filter(a=>a.fieldKey===d.key).sort((a,b)=>b.confidence-a.confidence),e=b.find(a=>!a.rejected&&a.confidence>0);e&&c.set(d.key,{fieldKey:d.key,label:d.label,value:e.value,source:e.sourceName||e.sourceType,confidence:e.confidence,candidates:b,selectedReason:e.reasons.join(";")})}return c}([...function(a){let b=[];for(let c of a){let a=function(a){let b=`${a.fieldId||""}${a.key||""}${a.fieldName||""}`;return bi.find(c=>c.key===a.fieldId||c.aliases.some(a=>b.includes(a)))}(c);if(!a)continue;let d=(0,z.lG)(c.value);b.push(bl({fieldKey:a.key,label:a.label,value:d,sourceType:"structured_fact",sourceName:c.sourceFile||c.sourceRef?.sectionTitle||"structured_fact"},a))}return b}(a.facts),...function(a,b="generated_markdown"){let c=[];for(let d of a.split(/\r?\n/u)){if(!/^\|.*\|\s*$/u.test(d)||/^\|\s*:?-{3,}:?/u.test(d))continue;let a=d.trim().replace(/^\|/u,"").replace(/\|$/u,"").split("|").map(a=>a.replace(/\*\*/gu,"").trim());if(a.length<2)continue;let e="序号"===a[0]&&a.length>=3?a[1]:a[0],f="序号"===a[0]&&a.length>=3?a[2]:a[1],g="序号"===a[0]&&a.length>=4?a[3]:a[2],h=bi.find(a=>a.aliases.some(a=>e.includes(a))||a.label===e);!h||!f||/内容|参数|资料未明确|系统暂未确认|暂未从知识库确认/u.test(f)||c.push(bl({fieldKey:h.key,label:h.label,value:f,sourceType:"generated_markdown",sourceName:g||b},h))}return c}(a.markdown||"")])}function bn(a){return({user:100,addendum:96,contract:90,tender:85,boq:75,drawing:70,standard:60,evidence:55,structured_fact:50,projectGraph:40,generated_markdown:30,derived:20,unknown:10})[a]}function bo(a){let b=e.join(process.env.HOME||process.cwd(),".customize-agent","cache","document-workflow",(0,z.c6)(a||"default"));return P.mkdirSync(b,{recursive:!0}),b}function bp(a){let b=[];for(let c of["area","cost","duration"]){let d=new Set,e=[];for(let b of a){let a=(0,z.lG)(b.value),f=function(a,b){let c=`${a||""} ${b||""}`;return/补疑|答疑|澄清|补充|更正|修改/u.test(c)?95:/合同/u.test(c)?90:/招标文件|招标公告|前附表|投标人须知|需求书/u.test(c)?85:/清单|工程量|BOQ|编制说明/u.test(c)?75:/图纸|设计/u.test(c)?70:50}(b.sourceFile,b.roleId);for(let g of function(a,b){let c=[],d="area"===b?/总?建筑面积|建设规模|总?用地面积|总?占地面积/u:"cost"===b?/合同估算价|合同估算价格|投资估算|最高投标限价|招标控制价|工程总投资|总投资|工程造价/u:/计划工期|合同工期|总工期|施工周期/u,e=RegExp(`(?:${d.source})(?:[^0-9\\n]{0,14}?)(\\d{2,}(?:[.,]\\d+)?)\\s*${"area"===b?"(万?㎡|万?m\xb2|万?m2|万?平方米)":"cost"===b?"(万元|亿元|万?元)":"(日历天|天|个月|月)"}`,"giu");for(let f of a.matchAll(e)){let e,g=f[0].match(d)?.[0]||"",h=f[1].replace(/[,,]/gu,"").trim(),i=(f[2]||"").trim();if(g&&h){if("duration"!==b){let b=a.slice(Math.max(0,f.index-12),f.index).replace(/^.*[。;;\n,,]/u,"");if(/拟|计划|规划|目标|力争|预计|期望|远期|未来|设想|建议|预期|争取/u.test(b))continue}if("duration"===b)e=`${h}|${i}`;else{let a=+!!/万/u.test(i),b=Number(h)*(a?1e4:1);if(!Number.isFinite(b))continue;e=String(/亿元/u.test(i)?1e8*b:/万元/u.test(i)?1e4*b:b)}c.push({scope:g,value:h,unit:i,compareKey:e})}}return c}(a,c)){let a=`${b.sourceFile||""}|${g.scope}|${g.compareKey}`;d.has(a)||(d.add(a),e.push({...g,sourceFile:b.sourceFile,priority:f}))}}if(!(e.length<2))for(let[a,d]of e.reduce((a,b)=>{let c=b.scope.replace(/^总/u,""),d=a.get(c)||[];return d.push(b),a.set(c,d),a},new Map)){if(new Set(d.map(a=>a.compareKey)).size<2||new Set(d.map(a=>a.sourceFile).filter(Boolean)).size<2)continue;let e=Math.max(...d.map(a=>a.priority)),f=d.filter(a=>a.priority===e),g=new Set(f.map(a=>a.compareKey)),h=f[0];b.push({kind:c,scope:`${a}(${"area"===c?"面积":"cost"===c?"金额":"工期"}口径)`,values:[...new Map(d.map(a=>[`${a.value}${a.unit}|${a.sourceFile||""}`,{value:a.value,unit:a.unit,sourceFile:a.sourceFile,priority:a.priority}])).values()],resolution:1===g.size?`${h.value}${h.unit}`:void 0})}}return b}function bq(a){let b=new Map;for(let c of a){if(!c.resolution||b.has(c.kind))continue;let a=c.values.find(a=>`${a.value}${a.unit}`===c.resolution),d=a?a.value.replace(/[,,]/gu,""):"",e=c.values.filter(a=>`${a.value}${a.unit}`!==c.resolution).map(a=>({value:a.value.replace(/[,,]/gu,""),unit:a.unit}));d&&0!==e.length&&b.set(c.kind,{winnerNum:d,losers:e})}return b}function br(a,b){return b?.length?a.map(a=>{let c=function(a,b){let c=a;for(let{winnerNum:a,losers:d}of bq(b).values())for(let b of d)b.unit&&c.includes(`${b.value}${b.unit}`)?c=c.split(`${b.value}${b.unit}`).join(`${a}${b.unit}`):c.includes(b.value)&&(c=c.split(b.value).join(a));return c}(a.content,b);return c===a.content?a:{...a,content:c}}):a}function bs(a,b){let c=bq(b);if(0===c.size)return a;let d={area:/建设规模|工程规模|建筑面积|用地面积|占地面积|project_scale|scale/u,cost:/合同估算|投资估算|最高投标限价|招标控制价|总投资|工程造价|project_cost|cost|price|amount/u,duration:/计划工期|合同工期|总工期|施工周期|duration|schedule/u};return a.map(a=>{let b=[...c.keys()].find(b=>d[b].test(a.key)||d[b].test(a.value));if(!b)return a;let{winnerNum:e,losers:f}=c.get(b),g=a.value,h=!1;for(let a of f)a.unit&&g.includes(`${a.value}${a.unit}`)?(g=g.split(`${a.value}${a.unit}`).join(`${e}${a.unit}`),h=!0):g.includes(a.value)&&(g=g.split(a.value).join(e),h=!0);return h?{...a,value:g}:a})}var bt=c(32434);function bu(a,b){return 0>=(0,w.V7)(a.content)?"failed":"completed"}let bv=["项目名称 项目编号 招标人 项目概况与招标范围 建设地点 建设规模 计划工期 质量标准 合同估算价","计划工期 合同工期 总工期 日历天","合同估算价 合同估算价格 投资估算 最高投标限价 招标控制价","质量标准 质量目标 合格","建设地点 建设规模 招标范围"];function bw(a){let b=X(a),c=0;return/项目名称|工程名称|招标项目名称|项目编号|招标项目编号|招标人|建设单位|发包人/u.test(b)&&(c+=4),/计划工期|合同工期|总工期|\d+(?:\.\d+)?\s*(?:日历天|天|个月|月|年)/u.test(b)&&(c+=6),/合同估算价|投资估算|最高投标限价|招标控制价|\d+(?:\.\d+)?\s*(?:万元|元)/u.test(b)&&(c+=5),/质量标准|质量目标|合格|优良/u.test(b)&&(c+=4),/建设地点|建设规模|招标范围|项目概况与招标范围/u.test(b)&&(c+=4),/工程量|清单|图纸|设计说明|施工范围|施工内容|材料|设备|工艺|验收|复试|检测/u.test(b)&&(c+=3),/投标人须知|保证金|付款|违约金|电子交易|公共资源|开标|评标|合同协议书/u.test(b)&&(c-=4),c}async function bx(a){let b=[],c=new Set(a.scopedFilePaths),d=await Promise.all(bv.map(async b=>((0,z.Te)(a.signal),(await a.manager.search(a.projectRoot,b,{scope:"project",filters:{filePaths:a.scopedFilePaths},limit:10,weights:{keyword:.65,vector:.25,rewrite:.8,hybridBonus:.2},generationMode:!1})).results.filter(a=>c.has(a.filePath)&&bw(`${a.sectionTitle||""}
39
39
  ${a.content}`)>0).map(b=>({chapterId:"project-basic",filePath:b.filePath,score:Math.max(b.score,1)+bw(`${b.sectionTitle||""}
40
40
  ${b.content}`),content:b.content,roleId:a.fileRoleByPath.get(b.filePath),processingType:a.fileProcessingByPath.get(b.filePath),sectionTitle:b.sectionTitle,source:"pinned-evidence"})))));for(let c of(b.push(...d.flat()),a.scopedFilePaths)){(0,z.Te)(a.signal);let d=a.project.getFileDetail?.(c,{maxChunkContentChars:12e3});if(d?.chunks?.length)for(let e of d.chunks){let f=bw(`${e.sectionTitle||""}
41
41
  ${e.content||""}`);if(f<=0)continue;let g=d.file?.relativePath||c;b.push({chapterId:"project-basic",filePath:g,score:1+f,content:e.content,roleId:a.fileRoleByPath.get(g),processingType:a.fileProcessingByPath.get(g),sectionTitle:e.sectionTitle,source:"pinned-evidence"})}}let e=new Set;return b.sort((a,b)=>b.score-a.score).filter(a=>{let b=`${a.filePath}|${a.sectionTitle||""}|${X(a.content).slice(0,180)}`;return!e.has(b)&&(e.add(b),!0)}).slice(0,24)}function by(a){return a.filter(a=>/项目名称|工程名称|项目编号|招标项目编号|招标人|建设单位|发包人|建设地点|建设规模|招标范围|计划工期|合同工期|周期要求|质量标准|合同估算|投资估算|最高投标限价|招标控制价/u.test(`${a.key||""}${a.fieldName||""}${a.fieldId||""}`))}function bz(a){return X(a).replace(/[。;;]$/u,"").trim()}function bA(a,b="",c=b){let d=function(a){let b=new Map;for(let c of a.split(/\r?\n/u)){if(!/^\|.*\|\s*$/u.test(c)||/^\|\s*:?-{3,}:?/u.test(c))continue;let a=c.trim().replace(/^\|/u,"").replace(/\|$/u,"").split("|").map(a=>a.replace(/\*\*/gu,"").trim());if(a.length<2)continue;let d="序号"===a[0]&&a.length>=3?a[1]:a[0],e="序号"===a[0]&&a.length>=3?a[2]:a[1],f="序号"===a[0]&&a.length>=4?a[3]:a[2],g=d.replace(/\/|:|:/gu,"").trim();if(!/项目名称|工程名称|项目编号|招标项目编号|招标人|项目业主|建设单位|发包人|建设地点|建设规模|施工范围|招标范围|计划工期|合同工期|质量标准|合同估算价|合同估算价格|投资估算|最高投标限价|招标控制价/u.test(g))continue;let h=/计划工期|合同工期/u.test(g)?"schedule_requirement":/质量标准/u.test(g)?"quality_standard":/合同估算价|合同估算价格|投资估算|最高投标限价|招标控制价/u.test(g)?"project_investment_estimate":/招标人|项目业主|建设单位|发包人/u.test(g)?"owner":/建设地点/u.test(g)?"project_location":/项目编号|招标项目编号/u.test(g)?"project_code":void 0;!(!e||/内容|参数|资料未明确|系统暂未从知识库确认|项目资料暂未明确/u.test(e))&&Z(h||"project_name",e)&&b.set(g,[bz(e),bz(f||"项目资料")||"项目资料"])}return b}(b),e=bm({facts:a,markdown:c}),f=a=>bz((0,z.lG)(a||"")).replace(/\|/gu,"").replace(/\bCOL\d+\b/gu,"").replace(/\s{2,}/gu," ").trim(),g=(a,b)=>{let g=e.get(a);if(g){let b=f(g.value);if(b&&Z(a,b))return[b,g.source||"项目资料"]}return function(a,b){for(let[c,d]of a.entries())if(b.some(a=>a.test(c)))return d}(d,b)||("project_name"===a?(()=>{let a=[/([\u4e00-\u9fa5A-Za-z0-9()()\-—_\s·]+?(?:施工总承包项目|一期项目|学生宿舍一期|学生宿舍项目))/u.exec(c)?.[1],/项目名称[::\s|]+([^|\n。;;]{6,80})/u.exec(c)?.[1]].map(f).filter(a=>a&&Z("project_name",a));return a[0]?[a[0],"项目资料"]:void 0})():void 0)||["",""]};return[["项目名称",...g("project_name",[/项目名称|工程名称|project_name/u])],["项目编号",...g("project_code",[/项目编号|招标项目编号|project_code/u])],["招标人",...g("owner",[/招标人|项目业主|建设单位|发包人|owner/u])],["建设地点",...g("project_location",[/建设地点|project_location/u])],["建设规模",...g("project_scale",[/建设规模|project_scale/u])],["计划工期",...g("schedule_requirement",[/计划工期|合同工期|周期要求|schedule_requirement/u])],["质量标准",...g("quality_standard",[/质量标准|quality_standard/u])],["合同估算价",...g("project_investment_estimate",[/合同估算|投资估算|最高投标限价|招标控制价|project_investment_estimate/u])]].filter(([,a])=>!!a).map(([a,b,c])=>[a,b,c||"项目资料"])}function bB(a,b="",c=b){return["**项目基本信息表**","","| 信息项 | 内容 |","|---|---|",...bA(a,b,c).map(a=>`| ${a[0]} | ${a[1]} |`)].join("\n")}function bC(a){return/^\s*\|?\s*:?-{3,}:?\s*(?:\|\s*:?-{3,}:?\s*)+\|?\s*$/u.test(a.trim())}function bD(a){let b=a.trim();if(!b||/^#{1,6}\s+/u.test(b)||bC(b))return!1;let c=(b.match(/\|/gu)||[]).length;return c>=2||c>=1&&/^\s*\|/u.test(b)||c>=1&&/\|\s*$/u.test(b)}function bE(a){return a.trim().replace(/^\|/u,"").replace(/\|$/u,"").trim().split("|").map(a=>a.trim())}function bF(a,b){let c=a.slice(0,b);for(;c.length<b;)c.push("");return`| ${c.join(" | ")} |`}function bG(a){let b=a.replace(/\r?\n/gu,"\n").split("\n"),c=[];for(let a=0;a<b.length;){let d=b[a]||"",e=b[a+1]?.trim()===""?a+2:a+1,f=b[e]||"";if(bD(d)&&bC(f)){for(c.push(d),e!==a+1&&c.push(b[a+1]||""),c.push(f),a=e+1;a<b.length&&bD(b[a]||"");)c.push(b[a]||""),a+=1;continue}if(!bD(d)){c.push(d),a+=1;continue}let g=[],h=a;for(;h<b.length&&bD(b[h]||"");)g.push(b[h]||""),h+=1;let i=g.map(a=>bE(a)),j=i.map(a=>a.length),k=j[0]||0,l=/^(?:项目名称|工程名称|项目编号|招标人|建设单位|建设地点|建设规模|计划工期|质量标准|合同估算价|招标范围)$/u;if(g.length<2||k<2||j.some(a=>a!==k)||i.some(a=>l.test(a[0]||""))){c.push(...g),a=h;continue}for(let a of(c.length>0&&c[c.length-1]?.trim()&&c.push(""),c.push(bF(function(a){if(2===a)return["信息项","内容"];let b=["控制项目","执行要求","责任岗位","检查标准","形成资料","闭环要求","备注"];return Array.from({length:a},(a,c)=>b[c]||`补充说明${c+1}`)}(k),k)),c.push(bF(Array.from({length:k},()=>"---"),k)),g))c.push(bF(bE(a),k));(a=h)<b.length&&b[a]?.trim()&&c.push("")}return c.join("\n").replace(/\n{3,}/gu,"\n\n")}function bH(a){let b=a.replace(/\r?\n/gu,"\n").split("\n"),c=[],d=a=>a.trim().replace(/^\|/u,"").replace(/\|$/u,"").split("|").map(a=>a.trim()),e=a=>/^\s*\|.*\|\s*$/u.test(a),f=a=>/^\s*\|\s*:?-{3,}:?\s*(?:\|\s*:?-{3,}:?\s*)+\|?\s*$/u.test(a),g=a=>`| ${a.join(" | ")} |`;for(let a=0;a<b.length;){let h=b[a]||"",i=b[a+1]||"";if(!e(h)||!f(i)){c.push(h),a+=1;continue}let j=d(h),k=j.map((a,b)=>/^(?:资料来源|资料来源\/(?:说明|证明)|来源|证明)$/u.test(a)?b:-1).filter(a=>a>=0);if(0===k.length){c.push(h),a+=1;continue}let l=a=>a.filter((a,b)=>!k.includes(b));for(c.push(g(l(j))),c.push(g(l(d(i)).map(a=>a||"---"))),a+=2;a<b.length&&e(b[a]||"");)c.push(g(l(d(b[a]||"")))),a+=1}return c.join("\n").replace(/资料来源\/(?:说明|证明)/gu,"")}function bI(a){let b=[/^项目名称$/u,/^工程名称$/u,/^项目编号$/u,/^招标项目编号$/u,/^招标人$/u,/^项目业主$/u,/^建设单位$/u,/^发包人$/u,/^建设地点$/u,/^实施地点$/u,/^建设规模$/u,/^工程规模$/u,/^计划工期$/u,/^合同工期$/u,/^总工期$/u,/^质量标准$/u,/^质量目标$/u,/^合同估算价$/u,/^投资估算$/u,/^最高投标限价$/u,/^招标控制价$/u],c=a.replace(/\r?\n/gu,"\n").split("\n"),d=[],e=!1,f=a=>bE(a).map(a=>a.replace(/\*\*/gu,"").trim()),g=a=>b.some(b=>b.test(a)),h=a=>{let b=a.slice(2).map(f).filter(a=>a.length>=2).map(a=>a[0]||""),c=b.filter(g).length;return c>=3&&c>=Math.ceil(.45*b.length)};for(let a=0;a<c.length;){let b=c[a]||"",f=c[a+1]||"";if(/(?:\*\*[^\n]*项目基本信息表[^\n]*\*\*|####\s+[^\n]*项目基本信息表[^\n]*|###\s+[^\n]*项目基本信息表[^\n]*)/u.test(b)){let f=[b];for(a+=1;a<c.length&&!(bD(c[a]||"")&&bC(c[a+1]||""))&&""===(c[a]||"").trim();)f.push(c[a]||""),a+=1;if(a<c.length&&bD(c[a]||"")&&bC(c[a+1]||""))for(f.push(c[a]||"",c[a+1]||""),a+=2;a<c.length&&bD(c[a]||"");)f.push(c[a]||""),a+=1;e||(e=!0,d.push(...f));continue}if(/^###\s+(?:\d+\.\d+\s+)?(?:项目基本信息|工程概况|项目概况)\s*$/u.test(b)){let f=[b];for(a+=1;a<c.length&&!(bD(c[a]||"")&&bC(c[a+1]||""))&&!/^###\s+/u.test(c[a]||"");)f.push(c[a]||""),a+=1;if(a<c.length&&bD(c[a]||"")&&bC(c[a+1]||"")){let g=[c[a]||"",c[a+1]||""];for(a+=2;a<c.length&&bD(c[a]||"");)g.push(c[a]||""),a+=1;if(h(g)){if(e){let a=f.filter(a=>a.trim()&&!/^###\s+/u.test(a));a.length&&d.push(b,...a)}else e=!0,d.push(...f,...g);continue}d.push(...f,...g);continue}d.push(...f);continue}if(bD(b)&&bC(f)){let g=[b,f];for(a+=2;a<c.length&&bD(c[a]||"");)g.push(c[a]||""),a+=1;if(h(g)){e||(e=!0,d.push(...g));continue}d.push(...g);continue}d.push(b),a+=1}return d.join("\n").replace(/\n{3,}/gu,"\n\n").replace(/\n{1,2}\|\s*信息项\s*\|\s*内容\s*\|\s*\n+(?:该小节围绕[^\n]*\n+)+\|\s*:?-{3,}:?\s*\|\s*:?-{3,}:?\s*\|\s*/gu,"\n\n")}function bJ(a,b){if(a=((a,b)=>{let c=a.split("\n"),d=[];for(let a=0;a<c.length;a+=1){let e=c[a]||"",f=/^(#{3,5})\s+(.+)$/u.exec(e.trim()),g=f?.[2]?.replace(/^\d+(?:\.\d+)*\s+/u,"").trim()||"";if(f&&b.some(a=>a.test(g))){for(a+=1;a<c.length&&!/^#{2,5}\s+/u.test((c[a]||"").trim());)a+=1;a-=1;continue}d.push(e)}return d.join("\n")})(a,[/^工程概况一览表$/u,/^招标文件?评分.*响应索引表$/u,/^招标评分项响应索引表$/u]).replace(/\*\*(?:工程概况一览表|招标文件?评分.*响应索引表|招标评分项响应索引表)\*\*[\s\S]*?(?=\n{2,}#{2,5}\s+|\n{2,}(?:[^|\n#]|$)|$)/gu,"").replace(/\n{3,}/gu,"\n\n"),!/项目基本信息|项目概况|工程概况|招标范围/u.test(a))return bI(bG(bH(a)));if(!/\|\s*信息项\s*\|\s*内容\s*\|/u.test(a)&&by(b).length>0){let c=/^(###\s+(?:\d+\.\d+\s+)?[^\n]*(?:项目概况|工程概况|项目基本信息|招标范围)[^\n]*\n)/mu.exec(a);if(c?.index||c?.index===0){let d=c.index+c[0].length,e=`${bB(b,"",a)}
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charSet="utf-8" data-next-head=""/><meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover" data-next-head=""/><title data-next-head="">404: This page could not be found</title><link rel="preload" href="/_next/static/css/364ec83c2b73efae.css" as="style"/><link rel="stylesheet" href="/_next/static/css/364ec83c2b73efae.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" noModule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-4224e970a97a4a86.js" defer=""></script><script src="/_next/static/chunks/framework-161be364fd69a7ce.js" defer=""></script><script src="/_next/static/chunks/main-91fb767ebd74c9c1.js" defer=""></script><script src="/_next/static/chunks/pages/_app-064a0ba1b894144e.js" defer=""></script><script src="/_next/static/chunks/pages/_error-282257fbdcc167b4.js" defer=""></script><script src="/_next/static/rHfmTkW_rEGNGLrG4LgQy/_buildManifest.js" defer=""></script><script src="/_next/static/rHfmTkW_rEGNGLrG4LgQy/_ssgManifest.js" defer=""></script></head><body><div id="__next"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","system",null,["light","dark"],null,true,true)</script><div class="css-1pi45l5 ant-app css-var-_R_16_"><aside class="sidebar"><a href="/overview"><div class="sidebarLogo"><div class="w-8 h-8 rounded-lg bg-black dark:bg-white flex items-center justify-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon text-white dark:text-black"><path d="M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z"></path></svg></div><div class="sidebarLogoTitle"><span class="logoGradient">Customize Agent</span></div></div></a><nav class="sidebarNav mt-2"><a href="/overview"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layout-dashboard"><rect width="7" height="9" x="3" y="3" rx="1"></rect><rect width="7" height="5" x="14" y="3" rx="1"></rect><rect width="7" height="9" x="14" y="12" rx="1"></rect><rect width="7" height="5" x="3" y="16" rx="1"></rect></svg><span class="sidebarLabel">总览</span></div></a><div><div class="sidebarItem sidebarParent"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg><span class="sidebarLabel">知识库</span><span class="sidebarChevron"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-right"><path d="m9 18 6-6-6-6"></path></svg></span></div></div><a href="/models"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-cpu"><rect width="16" height="16" x="4" y="4" rx="2"></rect><rect width="6" height="6" x="9" y="9" rx="1"></rect><path d="M15 2v2"></path><path d="M15 20v2"></path><path d="M2 15h2"></path><path d="M2 9h2"></path><path d="M20 15h2"></path><path d="M20 9h2"></path><path d="M9 2v2"></path><path d="M9 20v2"></path></svg><span class="sidebarLabel">模型配置</span></div></a><a href="/prompt"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-message-square"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"></path></svg><span class="sidebarLabel">提示词管理</span></div></a><a href="/document-roles"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg><span class="sidebarLabel">角色配置</span></div></a><a href="/documents"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-files"><path d="M20 7h-3a2 2 0 0 1-2-2V2"></path><path d="M9 18a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h7l4 4v10a2 2 0 0 1-2 2Z"></path><path d="M3 7.6v12.8A1.6 1.6 0 0 0 4.6 22h9.8"></path></svg><span class="sidebarLabel">工作流模版库</span></div></a><a href="/template-references"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-library-big"><rect width="8" height="18" x="3" y="3" rx="1"></rect><path d="M7 3v18"></path><path d="M20.4 18.9c.2.5-.1 1.1-.6 1.3l-1.9.7c-.5.2-1.1-.1-1.3-.6L11.1 5.1c-.2-.5.1-1.1.6-1.3l1.9-.7c.5-.2 1.1.1 1.3.6Z"></path></svg><span class="sidebarLabel">模板参考</span></div></a><a href="/asset-library"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-folder-open"><path d="m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2"></path></svg><span class="sidebarLabel">生成资源</span></div></a><a href="/system/logs"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-bug"><path d="m8 2 1.88 1.88"></path><path d="M14.12 3.88 16 2"></path><path d="M9 7.13v-1a3.003 3.003 0 1 1 6 0v1"></path><path d="M12 20c-3.3 0-6-2.7-6-6v-3a4 4 0 0 1 4-4h4a4 4 0 0 1 4 4v3c0 3.3-2.7 6-6 6"></path><path d="M12 20v-9"></path><path d="M6.53 9C4.6 8.8 3 7.1 3 5"></path><path d="M6 13H2"></path><path d="M3 21c0-2.1 1.7-3.9 3.8-4"></path><path d="M20.97 5c0 2.1-1.6 3.8-3.5 4"></path><path d="M22 13h-4"></path><path d="M17.2 17c2.1.1 3.8 1.9 3.8 4"></path></svg><span class="sidebarLabel">系统日志</span></div></a><a href="/guide"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open"><path d="M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z"></path><path d="M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"></path></svg><span class="sidebarLabel">指引</span></div></a><a href="/settings"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg><span class="sidebarLabel">设置</span></div></a></nav><div class="sidebarCollapseWrapper"><button class="sidebarCollapseBtn" aria-label="收起侧边栏"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left-close"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path><path d="m16 15-3-3 3-3"></path></svg></button></div></aside><div class="mainContent"><header class="topbar"><div class="flex-1"></div><span class="ant-badge css-1pi45l5 css-var-_R_16_"><button type="button" class="ant-btn css-1pi45l5 css-var-_R_16_ ant-btn-default ant-btn-color-default ant-btn-variant-outlined topbarBtn"><span class="ant-btn-icon"><span role="img" aria-label="clock-circle" class="anticon anticon-clock-circle"><svg viewBox="64 64 896 896" focusable="false" data-icon="clock-circle" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"></path><path d="M686.7 638.6L544.1 535.5V288c0-4.4-3.6-8-8-8H488c-4.4 0-8 3.6-8 8v275.4c0 2.6 1.2 5 3.3 6.5l165.4 120.6c3.6 2.6 8.6 1.8 11.2-1.7l28.6-39c2.6-3.7 1.8-8.7-1.8-11.2z"></path></svg></span></span><span>后台任务</span></button></span><button class="topbarBtn"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon"><path d="M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z"></path></svg><span>深色</span></button><button class="topbarBtn"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span></button></header><main class="mainInner"><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">This page could not be found<!-- -->.</h2></div></div></div></main></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":404}},"page":"/_error","query":{},"buildId":"rHfmTkW_rEGNGLrG4LgQy","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charSet="utf-8" data-next-head=""/><meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover" data-next-head=""/><title data-next-head="">404: This page could not be found</title><link rel="preload" href="/_next/static/css/364ec83c2b73efae.css" as="style"/><link rel="stylesheet" href="/_next/static/css/364ec83c2b73efae.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" noModule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-4224e970a97a4a86.js" defer=""></script><script src="/_next/static/chunks/framework-161be364fd69a7ce.js" defer=""></script><script src="/_next/static/chunks/main-91fb767ebd74c9c1.js" defer=""></script><script src="/_next/static/chunks/pages/_app-064a0ba1b894144e.js" defer=""></script><script src="/_next/static/chunks/pages/_error-282257fbdcc167b4.js" defer=""></script><script src="/_next/static/_2bJsq2HyqvMIlc1WYboY/_buildManifest.js" defer=""></script><script src="/_next/static/_2bJsq2HyqvMIlc1WYboY/_ssgManifest.js" defer=""></script></head><body><div id="__next"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","system",null,["light","dark"],null,true,true)</script><div class="css-1pi45l5 ant-app css-var-_R_16_"><aside class="sidebar"><a href="/overview"><div class="sidebarLogo"><div class="w-8 h-8 rounded-lg bg-black dark:bg-white flex items-center justify-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon text-white dark:text-black"><path d="M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z"></path></svg></div><div class="sidebarLogoTitle"><span class="logoGradient">Customize Agent</span></div></div></a><nav class="sidebarNav mt-2"><a href="/overview"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layout-dashboard"><rect width="7" height="9" x="3" y="3" rx="1"></rect><rect width="7" height="5" x="14" y="3" rx="1"></rect><rect width="7" height="9" x="14" y="12" rx="1"></rect><rect width="7" height="5" x="3" y="16" rx="1"></rect></svg><span class="sidebarLabel">总览</span></div></a><div><div class="sidebarItem sidebarParent"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg><span class="sidebarLabel">知识库</span><span class="sidebarChevron"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-right"><path d="m9 18 6-6-6-6"></path></svg></span></div></div><a href="/models"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-cpu"><rect width="16" height="16" x="4" y="4" rx="2"></rect><rect width="6" height="6" x="9" y="9" rx="1"></rect><path d="M15 2v2"></path><path d="M15 20v2"></path><path d="M2 15h2"></path><path d="M2 9h2"></path><path d="M20 15h2"></path><path d="M20 9h2"></path><path d="M9 2v2"></path><path d="M9 20v2"></path></svg><span class="sidebarLabel">模型配置</span></div></a><a href="/prompt"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-message-square"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"></path></svg><span class="sidebarLabel">提示词管理</span></div></a><a href="/document-roles"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg><span class="sidebarLabel">角色配置</span></div></a><a href="/documents"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-files"><path d="M20 7h-3a2 2 0 0 1-2-2V2"></path><path d="M9 18a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h7l4 4v10a2 2 0 0 1-2 2Z"></path><path d="M3 7.6v12.8A1.6 1.6 0 0 0 4.6 22h9.8"></path></svg><span class="sidebarLabel">工作流模版库</span></div></a><a href="/template-references"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-library-big"><rect width="8" height="18" x="3" y="3" rx="1"></rect><path d="M7 3v18"></path><path d="M20.4 18.9c.2.5-.1 1.1-.6 1.3l-1.9.7c-.5.2-1.1-.1-1.3-.6L11.1 5.1c-.2-.5.1-1.1.6-1.3l1.9-.7c.5-.2 1.1.1 1.3.6Z"></path></svg><span class="sidebarLabel">模板参考</span></div></a><a href="/asset-library"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-folder-open"><path d="m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2"></path></svg><span class="sidebarLabel">生成资源</span></div></a><a href="/system/logs"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-bug"><path d="m8 2 1.88 1.88"></path><path d="M14.12 3.88 16 2"></path><path d="M9 7.13v-1a3.003 3.003 0 1 1 6 0v1"></path><path d="M12 20c-3.3 0-6-2.7-6-6v-3a4 4 0 0 1 4-4h4a4 4 0 0 1 4 4v3c0 3.3-2.7 6-6 6"></path><path d="M12 20v-9"></path><path d="M6.53 9C4.6 8.8 3 7.1 3 5"></path><path d="M6 13H2"></path><path d="M3 21c0-2.1 1.7-3.9 3.8-4"></path><path d="M20.97 5c0 2.1-1.6 3.8-3.5 4"></path><path d="M22 13h-4"></path><path d="M17.2 17c2.1.1 3.8 1.9 3.8 4"></path></svg><span class="sidebarLabel">系统日志</span></div></a><a href="/guide"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open"><path d="M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z"></path><path d="M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"></path></svg><span class="sidebarLabel">指引</span></div></a><a href="/settings"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg><span class="sidebarLabel">设置</span></div></a></nav><div class="sidebarCollapseWrapper"><button class="sidebarCollapseBtn" aria-label="收起侧边栏"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left-close"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path><path d="m16 15-3-3 3-3"></path></svg></button></div></aside><div class="mainContent"><header class="topbar"><div class="flex-1"></div><span class="ant-badge css-1pi45l5 css-var-_R_16_"><button type="button" class="ant-btn css-1pi45l5 css-var-_R_16_ ant-btn-default ant-btn-color-default ant-btn-variant-outlined topbarBtn"><span class="ant-btn-icon"><span role="img" aria-label="clock-circle" class="anticon anticon-clock-circle"><svg viewBox="64 64 896 896" focusable="false" data-icon="clock-circle" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"></path><path d="M686.7 638.6L544.1 535.5V288c0-4.4-3.6-8-8-8H488c-4.4 0-8 3.6-8 8v275.4c0 2.6 1.2 5 3.3 6.5l165.4 120.6c3.6 2.6 8.6 1.8 11.2-1.7l28.6-39c2.6-3.7 1.8-8.7-1.8-11.2z"></path></svg></span></span><span>后台任务</span></button></span><button class="topbarBtn"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon"><path d="M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z"></path></svg><span>深色</span></button><button class="topbarBtn"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span></button></header><main class="mainInner"><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">This page could not be found<!-- -->.</h2></div></div></div></main></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":404}},"page":"/_error","query":{},"buildId":"_2bJsq2HyqvMIlc1WYboY","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charSet="utf-8" data-next-head=""/><meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover" data-next-head=""/><title data-next-head="">500: Internal Server Error</title><link rel="preload" href="/_next/static/css/364ec83c2b73efae.css" as="style"/><link rel="stylesheet" href="/_next/static/css/364ec83c2b73efae.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" noModule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-4224e970a97a4a86.js" defer=""></script><script src="/_next/static/chunks/framework-161be364fd69a7ce.js" defer=""></script><script src="/_next/static/chunks/main-91fb767ebd74c9c1.js" defer=""></script><script src="/_next/static/chunks/pages/_app-064a0ba1b894144e.js" defer=""></script><script src="/_next/static/chunks/pages/_error-282257fbdcc167b4.js" defer=""></script><script src="/_next/static/rHfmTkW_rEGNGLrG4LgQy/_buildManifest.js" defer=""></script><script src="/_next/static/rHfmTkW_rEGNGLrG4LgQy/_ssgManifest.js" defer=""></script></head><body><div id="__next"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","system",null,["light","dark"],null,true,true)</script><div class="css-1pi45l5 ant-app css-var-_R_16_"><aside class="sidebar"><a href="/overview"><div class="sidebarLogo"><div class="w-8 h-8 rounded-lg bg-black dark:bg-white flex items-center justify-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon text-white dark:text-black"><path d="M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z"></path></svg></div><div class="sidebarLogoTitle"><span class="logoGradient">Customize Agent</span></div></div></a><nav class="sidebarNav mt-2"><a href="/overview"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layout-dashboard"><rect width="7" height="9" x="3" y="3" rx="1"></rect><rect width="7" height="5" x="14" y="3" rx="1"></rect><rect width="7" height="9" x="14" y="12" rx="1"></rect><rect width="7" height="5" x="3" y="16" rx="1"></rect></svg><span class="sidebarLabel">总览</span></div></a><div><div class="sidebarItem sidebarParent"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg><span class="sidebarLabel">知识库</span><span class="sidebarChevron"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-right"><path d="m9 18 6-6-6-6"></path></svg></span></div></div><a href="/models"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-cpu"><rect width="16" height="16" x="4" y="4" rx="2"></rect><rect width="6" height="6" x="9" y="9" rx="1"></rect><path d="M15 2v2"></path><path d="M15 20v2"></path><path d="M2 15h2"></path><path d="M2 9h2"></path><path d="M20 15h2"></path><path d="M20 9h2"></path><path d="M9 2v2"></path><path d="M9 20v2"></path></svg><span class="sidebarLabel">模型配置</span></div></a><a href="/prompt"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-message-square"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"></path></svg><span class="sidebarLabel">提示词管理</span></div></a><a href="/document-roles"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg><span class="sidebarLabel">角色配置</span></div></a><a href="/documents"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-files"><path d="M20 7h-3a2 2 0 0 1-2-2V2"></path><path d="M9 18a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h7l4 4v10a2 2 0 0 1-2 2Z"></path><path d="M3 7.6v12.8A1.6 1.6 0 0 0 4.6 22h9.8"></path></svg><span class="sidebarLabel">工作流模版库</span></div></a><a href="/template-references"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-library-big"><rect width="8" height="18" x="3" y="3" rx="1"></rect><path d="M7 3v18"></path><path d="M20.4 18.9c.2.5-.1 1.1-.6 1.3l-1.9.7c-.5.2-1.1-.1-1.3-.6L11.1 5.1c-.2-.5.1-1.1.6-1.3l1.9-.7c.5-.2 1.1.1 1.3.6Z"></path></svg><span class="sidebarLabel">模板参考</span></div></a><a href="/asset-library"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-folder-open"><path d="m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2"></path></svg><span class="sidebarLabel">生成资源</span></div></a><a href="/system/logs"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-bug"><path d="m8 2 1.88 1.88"></path><path d="M14.12 3.88 16 2"></path><path d="M9 7.13v-1a3.003 3.003 0 1 1 6 0v1"></path><path d="M12 20c-3.3 0-6-2.7-6-6v-3a4 4 0 0 1 4-4h4a4 4 0 0 1 4 4v3c0 3.3-2.7 6-6 6"></path><path d="M12 20v-9"></path><path d="M6.53 9C4.6 8.8 3 7.1 3 5"></path><path d="M6 13H2"></path><path d="M3 21c0-2.1 1.7-3.9 3.8-4"></path><path d="M20.97 5c0 2.1-1.6 3.8-3.5 4"></path><path d="M22 13h-4"></path><path d="M17.2 17c2.1.1 3.8 1.9 3.8 4"></path></svg><span class="sidebarLabel">系统日志</span></div></a><a href="/guide"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open"><path d="M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z"></path><path d="M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"></path></svg><span class="sidebarLabel">指引</span></div></a><a href="/settings"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg><span class="sidebarLabel">设置</span></div></a></nav><div class="sidebarCollapseWrapper"><button class="sidebarCollapseBtn" aria-label="收起侧边栏"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left-close"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path><path d="m16 15-3-3 3-3"></path></svg></button></div></aside><div class="mainContent"><header class="topbar"><div class="flex-1"></div><span class="ant-badge css-1pi45l5 css-var-_R_16_"><button type="button" class="ant-btn css-1pi45l5 css-var-_R_16_ ant-btn-default ant-btn-color-default ant-btn-variant-outlined topbarBtn"><span class="ant-btn-icon"><span role="img" aria-label="clock-circle" class="anticon anticon-clock-circle"><svg viewBox="64 64 896 896" focusable="false" data-icon="clock-circle" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"></path><path d="M686.7 638.6L544.1 535.5V288c0-4.4-3.6-8-8-8H488c-4.4 0-8 3.6-8 8v275.4c0 2.6 1.2 5 3.3 6.5l165.4 120.6c3.6 2.6 8.6 1.8 11.2-1.7l28.6-39c2.6-3.7 1.8-8.7-1.8-11.2z"></path></svg></span></span><span>后台任务</span></button></span><button class="topbarBtn"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon"><path d="M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z"></path></svg><span>深色</span></button><button class="topbarBtn"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span></button></header><main class="mainInner"><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error<!-- -->.</h2></div></div></div></main></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":500}},"page":"/_error","query":{},"buildId":"rHfmTkW_rEGNGLrG4LgQy","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charSet="utf-8" data-next-head=""/><meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover" data-next-head=""/><title data-next-head="">500: Internal Server Error</title><link rel="preload" href="/_next/static/css/364ec83c2b73efae.css" as="style"/><link rel="stylesheet" href="/_next/static/css/364ec83c2b73efae.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" noModule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-4224e970a97a4a86.js" defer=""></script><script src="/_next/static/chunks/framework-161be364fd69a7ce.js" defer=""></script><script src="/_next/static/chunks/main-91fb767ebd74c9c1.js" defer=""></script><script src="/_next/static/chunks/pages/_app-064a0ba1b894144e.js" defer=""></script><script src="/_next/static/chunks/pages/_error-282257fbdcc167b4.js" defer=""></script><script src="/_next/static/_2bJsq2HyqvMIlc1WYboY/_buildManifest.js" defer=""></script><script src="/_next/static/_2bJsq2HyqvMIlc1WYboY/_ssgManifest.js" defer=""></script></head><body><div id="__next"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","system",null,["light","dark"],null,true,true)</script><div class="css-1pi45l5 ant-app css-var-_R_16_"><aside class="sidebar"><a href="/overview"><div class="sidebarLogo"><div class="w-8 h-8 rounded-lg bg-black dark:bg-white flex items-center justify-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon text-white dark:text-black"><path d="M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z"></path></svg></div><div class="sidebarLogoTitle"><span class="logoGradient">Customize Agent</span></div></div></a><nav class="sidebarNav mt-2"><a href="/overview"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layout-dashboard"><rect width="7" height="9" x="3" y="3" rx="1"></rect><rect width="7" height="5" x="14" y="3" rx="1"></rect><rect width="7" height="9" x="14" y="12" rx="1"></rect><rect width="7" height="5" x="3" y="16" rx="1"></rect></svg><span class="sidebarLabel">总览</span></div></a><div><div class="sidebarItem sidebarParent"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg><span class="sidebarLabel">知识库</span><span class="sidebarChevron"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-right"><path d="m9 18 6-6-6-6"></path></svg></span></div></div><a href="/models"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-cpu"><rect width="16" height="16" x="4" y="4" rx="2"></rect><rect width="6" height="6" x="9" y="9" rx="1"></rect><path d="M15 2v2"></path><path d="M15 20v2"></path><path d="M2 15h2"></path><path d="M2 9h2"></path><path d="M20 15h2"></path><path d="M20 9h2"></path><path d="M9 2v2"></path><path d="M9 20v2"></path></svg><span class="sidebarLabel">模型配置</span></div></a><a href="/prompt"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-message-square"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"></path></svg><span class="sidebarLabel">提示词管理</span></div></a><a href="/document-roles"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg><span class="sidebarLabel">角色配置</span></div></a><a href="/documents"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-files"><path d="M20 7h-3a2 2 0 0 1-2-2V2"></path><path d="M9 18a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h7l4 4v10a2 2 0 0 1-2 2Z"></path><path d="M3 7.6v12.8A1.6 1.6 0 0 0 4.6 22h9.8"></path></svg><span class="sidebarLabel">工作流模版库</span></div></a><a href="/template-references"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-library-big"><rect width="8" height="18" x="3" y="3" rx="1"></rect><path d="M7 3v18"></path><path d="M20.4 18.9c.2.5-.1 1.1-.6 1.3l-1.9.7c-.5.2-1.1-.1-1.3-.6L11.1 5.1c-.2-.5.1-1.1.6-1.3l1.9-.7c.5-.2 1.1.1 1.3.6Z"></path></svg><span class="sidebarLabel">模板参考</span></div></a><a href="/asset-library"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-folder-open"><path d="m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2"></path></svg><span class="sidebarLabel">生成资源</span></div></a><a href="/system/logs"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-bug"><path d="m8 2 1.88 1.88"></path><path d="M14.12 3.88 16 2"></path><path d="M9 7.13v-1a3.003 3.003 0 1 1 6 0v1"></path><path d="M12 20c-3.3 0-6-2.7-6-6v-3a4 4 0 0 1 4-4h4a4 4 0 0 1 4 4v3c0 3.3-2.7 6-6 6"></path><path d="M12 20v-9"></path><path d="M6.53 9C4.6 8.8 3 7.1 3 5"></path><path d="M6 13H2"></path><path d="M3 21c0-2.1 1.7-3.9 3.8-4"></path><path d="M20.97 5c0 2.1-1.6 3.8-3.5 4"></path><path d="M22 13h-4"></path><path d="M17.2 17c2.1.1 3.8 1.9 3.8 4"></path></svg><span class="sidebarLabel">系统日志</span></div></a><a href="/guide"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open"><path d="M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z"></path><path d="M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"></path></svg><span class="sidebarLabel">指引</span></div></a><a href="/settings"><div class="sidebarItem"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg><span class="sidebarLabel">设置</span></div></a></nav><div class="sidebarCollapseWrapper"><button class="sidebarCollapseBtn" aria-label="收起侧边栏"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left-close"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path><path d="m16 15-3-3 3-3"></path></svg></button></div></aside><div class="mainContent"><header class="topbar"><div class="flex-1"></div><span class="ant-badge css-1pi45l5 css-var-_R_16_"><button type="button" class="ant-btn css-1pi45l5 css-var-_R_16_ ant-btn-default ant-btn-color-default ant-btn-variant-outlined topbarBtn"><span class="ant-btn-icon"><span role="img" aria-label="clock-circle" class="anticon anticon-clock-circle"><svg viewBox="64 64 896 896" focusable="false" data-icon="clock-circle" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"></path><path d="M686.7 638.6L544.1 535.5V288c0-4.4-3.6-8-8-8H488c-4.4 0-8 3.6-8 8v275.4c0 2.6 1.2 5 3.3 6.5l165.4 120.6c3.6 2.6 8.6 1.8 11.2-1.7l28.6-39c2.6-3.7 1.8-8.7-1.8-11.2z"></path></svg></span></span><span>后台任务</span></button></span><button class="topbarBtn"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon"><path d="M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z"></path></svg><span>深色</span></button><button class="topbarBtn"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span></button></header><main class="mainInner"><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error<!-- -->.</h2></div></div></div></main></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":500}},"page":"/_error","query":{},"buildId":"_2bJsq2HyqvMIlc1WYboY","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>