feat: 支持评估版本隔离的报告、匹配及PDF导出功能

新增revisionId参数到路由、服务及导出接口,实现不同评估版本的隔离访问。删除已废弃的需求相关服务文件,移除取消采集的融资金额、期限和用途字段,更新相关页面提示文本。同时更新文档,说明评估版本、最新资料及产品展示规则的调整,支持前台正常业务名称显示,去除环境标签。
This commit is contained in:
hujun
2026-09-30 19:11:44 +08:00
parent 542c107317
commit 3b2a0139e4
34 changed files with 1389 additions and 338 deletions
+93 -3
View File
@@ -1,8 +1,86 @@
# AI 融资平台开发进度
基线日期:2026-09-22。文档版本:1.24。最新规划及实施见0.26节与6.27节;此前章节保留阶段记录。技术方案和接口说明见[开发文档](./开发文档.md)。本台账现有63项任务,编号与开发文档保持一致。
基线日期:2026-09-22。文档版本:1.30。最新实施见0.36节;此前章节保留阶段记录。技术方案和接口说明见[开发文档](./开发文档.md)。本台账现有63项任务,编号与开发文档保持一致。
会话交接(2026-09-29):已整理[新会话交接](新会话交接.md),包含当前成果、验证边界、业务约定、代码入口和环境状态。原型08、10及09 PDF已完成本地实施,当前边界见0.26与6.27节;08累计13次真实调用,新增三轮金额精度专项通过;下一步为移动端、真实产品与跨平台验收。
### 0.36 2026-09-30 产品业务展示与正式资料同步
按用户要求,六条产品采用正常业务名称、机构显示名、材料、条件和建议,匹配/详情/对比/报告/行动/助手/PDF去除环境标签;内部来源引用和元数据保留。清理上一阶段未完成的内存模拟入口及登录绕过,维持真实后端链路。正式MySQL5.7/airz产品ID22—27已事务更新至版本2,参数/条件保持,其他24表逐行摘要一致。更新脚本、隔离恢复演练和正式六行备份见后端[恢复说明](D:/AAdesk/202609/airz/database/product-display-update.md)。没有DDL、历史改写或收费模型调用。
605项PHP检查通过(151匹配、153发布、166表单、45目录、22模型、38材料、30PDF),企业v3回归修正`year_income`映射,正确覆盖收入门槛和经营月数。Playwright/Chrome手机390×844、桌面1280×900完成242项检查,个人/企业报告→匹配分组→选择对比→展开→助手,以及产品来源/材料与行动入口正常,54次隔离后端GET,console/pageerror/HTTP错误0。微信开发编译通过;本轮Android未完成有效编译。截图和QA记录在临时`airz-product-editor-20260930`目录;联调账户、资料、会话、日志、Token和本批队列已清理,隔离24表恢复原摘要。
正式产品数据已同步;用户授权“先做第1项”后,后端`AssessmentNeedsReport.php`、`AssistantChats.php`、`ReportPdf.php`三处展示/提示词改动已通过宝塔备份、停空闲worker、限定部署并恢复服务。76项服务器本机HTTPS/FPM及假模型检查通过,实际PDF和助手流程正常,临时数据已清理,25张表原有数据与其他源码/.env保持;4次假客户端、0次收费调用。三服务active,最终worker PID944033/NRestarts0,队列为空,原nginx配置恢复。备份及恢复说明见上述后端文档;12个备份/验收文件已下载并核对源码/数据库SHA256。
本次未发布产品编辑器/公共目录的其他改动。小程序/H5未发行,前端需重新发行上传;公网HTTPS和真机未复验,本机TLS通过不表示公网恢复。本节覆盖0.35关于强制展示环境标签的旧约定。
### 0.35 2026-09-30 演示产品正式库核对与v3匹配回归
按用户确认,正式MySQL5.7/airz当前无评估用户,已有6条演示产品(个人、企业及混合主体)继续用于功能开发;逐条结构化比对与本地`demo_products.json`完全一致,未新增重复记录或改写历史会话。演示产品仍明确标记为非真实机构资料,仅用于页面、匹配和报告联调。
本机隔离MySQL5.7补齐同一批6条演示产品,保留原4条银行材料草稿;种子脚本新增`--env`显式隔离参数,重复执行只核对并保留已有记录。新增v3匹配回归覆盖个人/企业收入边界、城市范围、资料缺失三态、产品额度/期限保留、无评分以及已删除融资金额/期限/用途字段不进入证据。151项内存匹配、153项发布编译、45项目录模型、38项材料复核检查通过。
本轮没有新增正式库迁移、没有模型调用、没有部署前端;正式库6条演示产品可继续作为测试目录,真实银行材料仍保持草稿并阻止上架。后续优先联调评估→匹配→报告三条链路,再进行外网HTTPS与体验版真机验收。
### 0.33 2026-09-30 产品地区待核实与完整问题清单
按用户同意的下一步完善产品录入:新增“待核实”并作为新增默认,SQL NULL/明确全国[]/指定城市三态往返。NULL地区不再误判旧规则,四条公开材料来源正常显示;真正旧规则来源仍可只读查看,未明确重建时普通保存保留原JSON。发布检查一次列出独立字段缺失、范围倒置、过期或未来核对日期、用途及逐条条件错误;格式错误仅构造内存诊断候选,保存和模型/后台上架仍严格重验。空的可选经营月数不误报必填,版本冲突与规则版本上限继续阻断。
450项PHP检查通过(153发布、166表单、22模型、45目录、64规则),模型及目录合成写入全部回滚。82项真实本机HTTP/Playwright检查通过:四条材料只读预检、来源显示、完整清单、NULL保存/刷新、显式全国/城市、空城市、未知地区上架阻断、旧规则保留、版本冲突;1280×900和390×844均无横向溢出或新增console/pageerror。Browser plugin not available,使用既有Playwright,无新增依赖。7项清理/完整性检查通过:仅清理本轮两个合成产品,原ID1—4及user/user_info/ai_chat/ai_chat_log/model_user五表逐行摘要一致。
额外7项只读首屏/地区/来源检查通过,浏览器与HTTP共89项。证据在C:/Users/JUN/AppData/Local/Temp/airz-product-editor-20260930/qa-pending-ui.json、qa-pending-view.json、qa-pending-cleanup.json及pending-*.png;首次测试比较差异来自MySQL JSON格式化/键排序,已以插入后实际数据库文本作为基准复验。四条材料均保持本机草稿,不部署、不修改正式库、不调用模型、不扩充城市或资料采集。PRODUCT-003仍开发中,下一步取得受理银行对当前参数、有效期、地区及完整硬条件的确认,再做人工匹配金标准验收。
### 0.34 2026-09-30 首批材料复核与匹配验收准备
新增后端只读命令`database/review_product_materials.php`和内存检查`tests/product_materials.php`:固定读取`local_draft_only`材料JSON,复用ProductPublication检查发布格式,输出来源、地区三态、逐字段缺项、银行核实状态和不可发布标记;不初始化应用、不读取.env、不连接数据库、不访问来源网址、不调用模型、不覆盖原材料。材料格式完整仍不代表银行签核,`bankVerification=pending`且`mayPublish=false`。
首批四条复核结果:工银融e借8项、闪电贷7项、农银微捷贷5项、税易贷7项后台格式缺项;0条格式完整、0条银行确认、0条可发布。由于四条均是草稿,个人和企业profileOnly目录都返回`unavailable/PRODUCT_CATALOG_UNAVAILABLE`,不会把草稿伪装成四个unknown候选。合成样例补测金额边界、缺失三态、verified来源和已取消需求字段排除,38项检查通过。核实表及技术差距/人工金标准见`docs/产品材料/首批产品银行核实与验收-20260930.md`,复核JSON见同目录`首批产品复核清单-20260930.json`。
本轮仅准备核实材料、复核工具和合成技术样例,未取得新增银行回复或重新查阅官网;不进行银行联系、正式库写入、部署、上架、城市字典扩充或资料采集变更。收到确认后另建材料版本并完成无法核验条件的处理约定,才能开展真实政策的人工金标准验收;现有公开材料基线保持字节一致。
### 0.32 2026-09-30 PRODUCT-003结构化编辑与公共列表
按用户要求继续功能开发:后台产品新增/编辑已改为基本参数、全国/指定城市、按对象用途、来源四字段及动态准入条件;旧JSON默认保留,明确重建才替换规则并清除旧年龄条件。最多44条补充条件,金额保留元精度,字段/运算符/对象/来源均复用既有白名单。发布前只读检查、事务内版本冲突保护及工具栏上架/下架已接通,沿用FastAdmin权限和批量回滚,历史匹配快照不改写。新增GET /api/v1/products会员公共列表,按对象/城市/名称筛选、ID游标分页,响应no-store;复用公共详情DTO,无个人匹配信息。
326项PHP检查通过(73发布/64规则/128表单/16模型/45目录与编辑),本机MySQL5.7.26/PHP7.4.3隔离库合成写入回滚。另35项浏览器/HTTP主流程、18项旧规则/权限、36项公共目录真实本机HTTP检查通过。Playwright在1280×900、390×844验证非空页面、页面身份、无错误覆盖层、条件增删/切换回填、只读预检、发布/修改/冲突/下架、明确重建及只读管理员拒绝写入;console/pageerror均0。截图与无凭据QA记录在本机临时airz-product-editor-20260930目录。Browser plugin not available,使用既有Playwright依赖,无新增依赖安装。
本轮未迁移/修改正式库、未部署线上、无真实产品录入或模型调用;未改UTS,无新的小程序编译。PRODUCT-003保持开发中:录入工具已完成,真实资料/运营核对/金标准与正式发布验收仍依赖DEC-PRODUCT。下一步应准备首批真实产品条件材料,按契约核对后录入草稿并做人工匹配验收;公网HTTPS修复及体验版发行仍属独立待办。
收尾补充:10项生产静态资源/关闭调试模式检查通过,企业默认规则和移动布局正常;本机合成产品/会员/日志/Token已清理,仅保留隔离预览管理员。8097/3309预览服务与私密测试登录文件说明见交接文档,不与正式数据混用。
### 0.30 2026-09-30 正式评估版本迁移与PHP维护
已按用户本轮授权在111.230.144.231:3306/airz完成迁移及21个源码文件部署,MySQL5.7.44/PHP7.4.33。维护中先阻断外部写入、停worker并备份完整数据库和代码/.env/nginx,再迁移三表与部署。63项实际服务器本机HTTPS/FPM及假模型流程通过;原助手449及2日志、22张无关表摘要一致,仍1会员/6产品/0评估资料。合成数据/Token/任务清理,0次收费模型调用。
www恢复扫描为0,systemd实际消费失效的合成评估任务通过、队列为空、无storage error。PHP-FPM/Redis/airz-analysis恢复active,最终PID848445/NRestarts0;nginx原配置恢复,生产.env未变,log_bin_trust_function_creators恢复0。完整备份/root/airz-revisions-20260930,三表备份/root/airz-backups/assessment-revisions-20260930-115301-810221;详细过程及服务恢复后禁止整表回退的边界见后端database/assessment-revisions.md。
小程序/H5仍未发布,微信/Android编译为前轮验证。外网复测HTTP301跳转HTTPS,HTTPS仍连接重置;服务器本机TLS通过不代表外网恢复。下一步修复域名外网访问、核对微信合法域名,再发行体验版并做真机验收。本轮没有提交/推送。
### 0.31 2026-09-30 会话任务列精简
按用户确认将`fa_ai_chat.context_data`之后的17列精简为8列:`status`、`task_stage`、`task_id`、`lease_until`、`dispatched_at`、`type`、`current_input_id`、`published_input_id`。重复状态从当前输入日志的JSON读取,`match_result`、历史报告、普通助手不变。隔离MySQL5.7完成58项版本回归、精简迁移/备份恢复/重复拒绝演练及旧资料结构首次迁移;线上部署4个PHP文件并通过71项本机HTTPS/FPM假模型检查,worker实际消费失效合成任务后恢复。无收费模型调用。备份和恢复边界见后端`database/assessment-chat-compact.md`。
### 0.29 2026-09-30 原型09报告还原
按用户反馈再次对照原型09:白底/顶部PDF、浅色准备状态/简短摘要、实际改善项橙红编号列表、固定底部重新评估;详细完整度/事实/依据按需展开。保留真实准备状态,未引入B+评级、概率或固定建议。服务适配器从已有结构化improvements保留不含证据附注的正文,完整证据仍可展开;无API和数据库变更。
360/390/1280px H5受控响应验证、微信/Android编译通过,覆盖三栏/展开/空建议/旧版失败提示/PDF503回执与重试/原评估修改回填。PDF503为刻意注入,除此无新增console/pageerror;不是正式外网或真机验收。样例截图和脚本保留本机临时目录,未发布。
### 0.28 2026-09-30 最新资料与评估版本
已完成前后端代码:每用户两类最新资料、明文身份、同会话修改重评/新建独立评估、日志JSON版本、失败保留上次报告、匹配数组、版本历史分页以及报告/产品/对比/助手/行动/PDF绑定版本。本人修改完整回填,类型固定,baseRevisionId拒绝旧版本覆盖;并发原键重放不重复创建也不回写资料。完整契约见[评估版本与最新资料](评估版本与最新资料.md)。
MySQL5.7.26和MySQL8各51项隔离集成检查通过,5.7建表、合成迁移与恢复演练通过;微信/Android编译通过,H5真实本机接口联调修改和历史读取通过。全部使用隔离配置及假模型,不收费。旧任务测试尚未整体迁移,不能对新库/活动库直接运行。真机、真实模型语义和生产容量未验收。
本地开发完成,正式迁移/部署/小程序发布待执行;新客户端需配套新后端。迁移脚本、SHA256备份、阶段记录及维护期恢复说明见后端 `database/assessment-revisions.md`。本轮没有覆盖前轮未提交改动,也没有提交/推送。
会话交接(2026-09-29):已整理[新会话交接](新会话交接.md),包含当前成果、验证边界、业务约定、代码入口和环境状态。原型08、10及09 PDF已完成本地实施,当前边界见0.27与6.28节;08累计13次真实调用,新增三轮金额精度专项通过;下一步为移动端、真实产品与跨平台验收。
### 0.27 2026-09-29 恢复原资料表单
个人/企业信用融资恢复至2026-09-23 19:04需求扩展之前的采集范围:删除融资金额、融资期限、资金用途、其他用途说明;保留经营月数和原有身份/经营收入/资产负债/资料授权。提交使用inputVersion=3,结果仍为resultVersion=2,保留报告三栏、产品匹配、助手、PDF与行动入口。v3不生成需求事实或匹配规则,不把取消采集的字段列为“未提供/待核实”、补填项或完整度扣分项;产品自身额度、期限、利率和用途资料保留。其他真实缺失或来源未核验仍按既有规则处理。
已按用户授权在111.230.144.231/airz执行:删除报告161/229、关联会话151/219及2条日志;普通助手449及其2条日志保留,会员1个、产品6个保留。fa_user_info删除requested_amount、requested_term_months、purpose_code、purpose_detail四列;input_version、analysis_context属于必要版本和快照元数据,继续保留。两个触发器同步移除需求列校验,输入版本允许1/2/3,接口新建最低3。22张不相关表摘要一致,log_bin_trust_function_creators临时开启后恢复0。备份:D:/AAdesk/202609/airz-backups/restore-profile-20260929-180938/。
当前外网阻塞:aitest.ychysg.cn已被腾讯云备案检查拦截,HTTP跳转dnspod.qcloud.com/static/webblock.html,外网HTTPS连接重置。服务器本机TLS与应用接口通过,不等于外网可用;体验版联网前需完成域名备案/接入并复测。此前“外网正常”的记录仅代表早先验收时间。
## 0. 2026-09-22 首轮实施更新(优先于初始基线)
@@ -513,7 +591,7 @@ DEC-DEMAND已确认并发布,需求录入/提交/历史子范围已实现;
| --- | --- | --- | --- | --- |
| PRODUCT-001 | 全栈开发(待指定) | 发布规则与人工样例可审阅;非法字段/操作符阻止发布;fail优先于unknown,匹配指标不作为审批概率。 | 首版字段/操作符/来源门槛已形成规则契约;64项内存测试;真实产品发布依据与业务样例待验收 | 2026-09-24 |
| PRODUCT-002 | 全栈开发(待指定) | 同输入/快照结果稳定;未知不当满足,配置错误不归咎用户;需求不拆额、不改期;未运行与零候选区分。 | 目录冻结/排序/理由已接正式worker;51项内存和19项任务测试通过;真实产品金标准、规模/生产验收仍待完成 | 2026-09-24 |
| PRODUCT-003 | 全栈开发(待指定) | 产品用途/地区/额度/期限有真实依据;规则可配置并启停,版本变化留依据;公共详情无个人分数。 | 发布预检及模型保存已实现;本地6条演示产品已授权上架,重复录入不覆盖;公共详情已接;真实资料/发布验收、结构化编辑和公共列表待完成 | 2026-09-24 |
| PRODUCT-003 | 全栈开发(待指定) | 产品用途/地区/额度/期限有真实依据;规则可配置并启停,版本变化留依据;公共详情无个人分数。 | 结构化编辑、来源/用途、只读预检、编辑冲突、上架/下架及公共列表本地联调通过,见0.32;真实资料/运营核对/发布验收待完成,6条演示产品不替代真实资料 | 2026-09-30 |
| PRODUCT-004 | 全栈开发(待指定) | 每条解释可追溯且不凑三正三反;当前产品变化不改历史;跨账户拒绝;unavailable/零候选/failed不混淆。 | 原型04/05和逐条DeepSeek解释本地完成;51项任务/输出检查、70项HTTP/快照检查与浏览器验证见6.18;真实机构资料及平台验收待完成 | 2026-09-28 |
| PRODUCT-005 | 全栈开发(待指定) | 不跨评估/混用现价;缺值不同于0;手机横向表格可读,单项失败明确;不重跑模型。 | compare页面及6.16本地编译/真实读取与异常注入证据;真实机构产品和微信内H5/真机待验收 | 2026-09-28 |
@@ -1215,3 +1293,15 @@ REPORT-005待验收。下一步08真实DeepSeek多轮语义、真实产品人工
- PHP、Redis、airz-analysis均active/enabled,worker最后MainPID566317/NRestarts0、日志无storage error;本机analysis:work已停止。部署zip/_deploy移至root私密备份目录,不留公开校验入口。
- 无新增数据库迁移,无业务源码改动、提交或推送。后端README及deployment-baota.md补充运维、兼容配置、备份和回退;前端H5未发布,下一步可对接新HTTPS API并继续移动端/跨平台验收。
- 证据:C:/Users/JUN/AppData/Local/Temp/airz-bt-deploy-20260929/ 下 terminal-new-domain.png、terminal-final-domain-status.png、terminal-archive.png、aitest-admin-login.png。目录含私密部署配置,不整体共享。
### 6.28 2026-09-29 原资料表单恢复验收
验证:53项资料表单专项、51项匹配兼容、29项PDF、18项助手回复、29项助手金额检查通过;服务器维护窗口22项实际HTTPS与假模型流程通过,测试用户/Token/任务已清理,无收费AI调用。微信最终编译通过;Android编译通过,未覆盖真机。H5通过Playwright受控响应检查个人/企业表单及v3提交、报告和对比;仅用于页面验证,不能代替外网或真实模型验收。
PHP十个生产文件已通过宝塔文件页面部署,php-fpm/Redis/airz-analysis恢复active,最后worker PID604113、NRestarts0(后续须重查)。站点仍/www/wwwroot/xctai.cn;代码与nginx备份及临时验收包已归档/root/airz-profile-20260929/。前端改动尚需重新发行并上传微信体验版,H5未发布。
当前外网阻塞:aitest.ychysg.cn已被腾讯云备案检查拦截,HTTP跳转dnspod.qcloud.com/static/webblock.html,外网HTTPS连接重置。服务器本机TLS与应用接口通过,不等于外网可用;体验版联网前需完成域名备案/接入并复测。此前“外网正常”的记录仅代表早先验收时间。
页面证据在仓库外C:/Users/JUN/AppData/Local/Temp/airz-profile-20260929/;数据库与服务器恢复说明见后端database/restore-profile-form.md。未提交/推送代码。
本轮H5验收环境:http://localhost:5173/,Chromium,390×844及1280×900;Browser插件不可用,使用现有Playwright CLI。个人/企业逐步填写→确认→合成提交均通过,捕获payload inputVersion=3且无四需求字段;个人收入0.800001万元精确提交8000.01元、企业经营月数0保留。报告页面身份/非空/无错误覆盖层正常,对比展开后无需求覆盖行,产品参数仍在;10项最终断言通过,console/pageerror均无错误,刷新表单为空。页面用受控响应,不调用真实远程POST或模型。