Files
airz-uniapp/docs/开发进度.md
T

1127 lines
158 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# AI 融资平台开发进度
基线日期:2026-09-22。文档版本:1.18。最新规划及实施见0.20节与6.21节;此前章节保留阶段记录。技术方案和接口说明见[开发文档](./开发文档.md)。本台账现有63项任务,编号与开发文档保持一致。
会话交接(2026-09-28):已整理[新会话交接](新会话交接.md),包含当前成果、验证边界、业务约定、代码入口和环境状态。原型08、10及09 PDF已完成本地实施,当前边界见0.18—0.20与6.19—6.21节;下一步为真实模型语义、产品与跨平台验收。
## 0. 2026-09-22 首轮实施更新(优先于初始基线)
本轮已开始M0与无需第三方的账户功能;下文历史基础表保留规划时事实,当前会话存储以本节为准。
| 项目 | 实际结果 | 依据与未完成边界 |
| --- | --- | --- |
| Token存储 | 本地fa_user_token(迁移前0行)已备份删除,实际库25表;Token改Redis | 后端database/migrate_token_redis.py、database/schema.sql;不复制旧会话 |
| Redis驱动 | 摘要键、TTL、用户索引、单会话退出/全部撤销原子操作,故障不回退 | tests/token_redis.php:14项通过,隔离测试键已清理 |
| 后端回归 | 金额、加密、评估生命周期和账户基础回归通过 | tests/finance.php:41项通过,数据库回滚,Redis测试会话清理 |
| 真实HTTP | 密码登录、Bearer资料读取、退出、原密码改密和多个旧Token失效通过 | tests/api_session.php:16项通过,临时用户/会话清理;短信返回503 |
| 前端基础 | 统一请求和错误、默认密码登录、Redis退出、userId缓存隔离 | services/api.uts、config.uts、storage.uts;真实业务其他接口待开发 |
| 浏览器联调 | 真实密码登录→首页→“我的”→确认退出;A/B账户缓存隔离;短信503无倒计时;历史草稿检查已随功能取消 | 本地Chromium,390×844和1280×900;详见6.1;不含微信内置浏览器 |
| 编译 | Web编译通过;Android退出回调类型问题已修复后编译通过 | HBuilderX 5.26本地编译;非真机/正式发行验证 |
| 外部准备 | 短信服务商和首批真实产品资料未具备;DeepSeek密钥与模型已收到并仅保存在后端私密配置 | AUTH-001、PRODUCT-003仍阻塞;REPORT-001配置已启动,真实调用与预算待验证 |
| 恢复点 | 已保存目标表结构与数据备份 | D:/AAdesk/202609/airz-backups/token-redis-20260922-165215-988442/user_token.sql |
仍待完成:全量接口字典和requestId日志关联、生产配置校验、短信注册/换绑及其他业务模块。当前没有将任何整模块标记为已完成。
### 0.1 最新调整:取消草稿、账户资料与AI配置
- 用户取消全部评估草稿:本机/云端保存、续填及旧草稿导入从范围移除。表单只在当前填写→确认流程中保留内存,离开、刷新和退出清空;历史档案仅面向正式提交记录,读取接口当时待实现;2026-09-23已接通,见0.2。
- 账户资料GET/PUT、头像POST已实现;服务端校验归属、类型、尺寸、500KB上限并重新编码。退出、过期及401清账户缓存;启动清理旧草稿键。
- 已撤回草稿接口及revision/client_draft_id/唯一索引;city_code、operating_months作为正式评估标准字段保留。撤回备份:D:/AAdesk/202609/airz-backups/cancel-drafts-20260922-180035/user_info.sql。
- DeepSeek密钥已存后端忽略的.env;两个模型已记录为deepseek-v4-pro-0813和deepseek-v4-flash-0731,接入腾讯云TokenHub。只完成配置与官方文档核对,未发起真实模型调用;预算、额度和模型权限待验证。文档不保存密钥。
- 最终代码验证:tests/api_profile.php 14项(含草稿路由移除)、tests/finance.php 41项通过;账户会话16项在本轮前段回归通过。中途39项草稿检查仅属已取消方案,不计当前功能交付。Web可运行,Android本地编译通过;并非真机或发行验收。
- 原69–117人日为初始估算基线;取消草稿后不再称作最新剩余工时,后续按正式提交与历史范围重估。60个任务编号不变,ASSESS-002用途更新为正式评估记录与历史。
### 0.2 2026-09-23 最新进展:正式提交与历史
- 完成POST /assessments(HTTP201固定接受回执)、GET列表/详情/状态;个人/企业正式输入保存至fa_user_info并创建唯一关联fa_ai_chat,不新增表/字段,不执行迁移。
- 无草稿、提交后只读;规范化白名单/金额/枚举/城市/月数校验、本人归属和脱敏。用户行锁+已有唯一索引防重复创建,原请求异内容409,软删除/内部draft不可读。
- 分析任务仍未接通:提交保存资料后明确记录failed/ANALYSIS_NOT_CONFIGURED,前端说明分析暂未开放;不会让记录假装排队或跳固定评分。DeepSeek尚未真实请求,短信和真实产品仍待准备。
- ASSESS-002进入待验收;ASSESS-003/004及REPORT-004进入开发中。提交与历史子流程可用,不将完整融资核心或AI报告标完成。
- 当前界面路径:填写→确认提交资料→真实状态→档案只读详情;历史空态、错误重试、每页20条加载更多、刷新及返回列表已验证。附件/外部授权未开放时明确阻止提交,选择不被静默丢弃。
### 0.3 2026-09-23 最新进展:DeepSeek、分析任务与失败重试
| 内容 | 当前结果 | 边界 |
| --- | --- | --- |
| 模型 | Pro/Flash指定版本均真实连通;默认Flash已生成个人/企业自填报告 | 不自动回退;不代表商业预算或余额确认 |
| 分析任务 | 数据库预留→提交后Redis派发→独立worker→报告落库;并发抢占、补投及租约恢复 | 过期任务失败,不自动重复收费调用;生产守护未部署 |
| 重试与报告API | POST /assessments/:id/retry HTTP202;GET /assessments/:id/report;归属、原任务回执幂等、每日额度/次数上限 | 初次提交回执仍HTTP201不变;超时可能产生用量 |
| 报告与界面 | 真实事实/定性解释/缺失项;万元精确展示;失败重试、档案跳转、刷新恢复;移除固定85分与雷达 | 当前仅自填资料,overallScore=null,匹配明确未执行 |
| 安全与调用 | 白名单事实输入;不发姓名/手机号/证件/企业名/自由文本;日志仅安全错误与用量 | tokens未知为null,语义正确性仍需人工样例验收 |
| 数据库 | fa_user_info增补任务元数据和派发索引,无新表 | 迁移前评估0行;备份见开发文档及后端database/README |
| 测试 | 29项任务检查、15项隔离HTTP检查通过;原54项正式评估、41项基础、14项账户回归通过 | 54项在开启本地模型前运行;开启后该脚本会SKIP,不能算通过 |
| 浏览器/编译 | 本地普通Chromium H5,390×844/1280×900;企业真实重试→报告、精确金额及刷新恢复;Android编译成功 | 微信内H5、Safari、原生真机、生产容量未验收 |
开发默认策略:单用户每日20次预留,单评估最多3次,连接10秒/调用90秒,执行租约180秒,Redis reserved240秒。配额为可配置开发默认,商业策略和月预算仍待DEC-AI确认。金额只由服务端事实字段生成,中文/全角数值改写也会被报告校验拦截。测试所用合成账号会清理,原会员账号及密码未修改。
本轮不新增任务编号、不调整60项任务的基线工时。REPORT-001/002与ASSESS-003进入待验收;REPORT-003完整产品/外部数据范围仍阻塞,REPORT-004仅自填支线已联调,保持开发中。
### 0.4 2026-09-23 需求与评估结果契约补充(历史阶段:文档已完成,业务未实施)
新增[需求与评估结果数据契约](需求与评估结果数据契约.md):inputVersion=2需求字段、完整度字段集和公式、准备等级建议与发布闸门、准入三态和证据、报告resultVersion=2、历史兼容及任务快照。已参考旧说明书/原型,不覆盖用户后续确认的技术栈、无草稿和存储约定。
| 子范围 | 任务 | 本轮产物 | 新增业务状态/依赖 |
| --- | --- | --- | --- |
| 需求字段/版本/迁移 | ASSESS-001/002/003/004 | 四字段及DB映射、用途草案、旧键重放/历史NULL、新旧版本发布顺序 | 未开始;DEC-DEMAND待确认 |
| 完整度/准备等级 | REPORT-003/004 | 建议等权字段集、计数规则、一致性与非授信等级、未发布不出分 | 未开始;DEC-READINESS待确认 |
| 匹配解释/结果 | PRODUCT-001/002/003/004 | 三态与fail优先、单产品需求覆盖、证据/快照、分页/结果详情及null score/rank | 未开始;DEC-MATCH、真实产品仍阻塞 |
| 任务依据冻结 | ASSESS-003、REPORT-002/003 | analysis_context增量设计、提交时输入字典冻结、执行时策略/产品快照冻结与重试复用 | 未开始;随v2实施并验证 |
整体任务包含v1已实现与v2未开始两部分。ASSESS-002/003、REPORT-002由待验收调整为开发中,表示新增范围尚未完成;不撤销原v1测试证据。其他任务状态保持并补证据说明。文档审阅/静态校验不计业务验收,本轮无代码、数据库、模型请求或配置变更。
仍沿用60个编号和历史基线人日;本次增加的工作没有已确认增量估算,不能直接沿用69—117人日作为最新剩余工期。用途、完整度及等级建议先形成可审阅契约,确认后按任务重估;本轮不自动纳入渠道、注销、RAG、对比/PDF实现。
### 0.5 2026-09-24 融资需求录入、提交与历史(历史阶段)
| 子范围 | 当前结果 | 剩余边界 |
| --- | --- | --- |
| DEC-DEMAND | 用户授权实施契约用途/必填规则,已发布用途版本financing-purposes-20260923-v1,新建最低inputVersion=2 | 后台字典编辑尚未开发,变更配置须提升版本 |
| ASSESS-001/003 | 需求四字段、输入版本、严格校验、同键全字段比较、冻结用途字典/哈希、旧键重放已实现 | 私有附件/正式授权仍未接入,整体保持开发中 |
| ASSESS-002 | v2本人只读历史及冻结标签、v1“当时未采集”已实现并联调 | 改待验收;生产/业务验收待完成 |
| ASSESS-004 | 个人/企业第2步资金需求、确认编辑、提交及历史刷新、无草稿通过 | 微信内H5、Safari、真机及附件授权全链路未验收,整体开发中 |
| REPORT-002 | 提交input_snapshot与inputHash已实现,失败重试不覆盖 | execution_snapshot和报告v2策略/产品快照待做,整体开发中 |
| 数据库 | 2026-09-23备份后执行6列、3 CHECK共9变更,无新表;迁移前两表均0行,复跑预检0 DDL | 恢复点见开发文档0.5,不覆盖后续业务数据 |
| 报告边界 | inputVersion=2仍生成resultVersion=1自填报告;本轮用假模型验证,无真实模型调用 | DEC-READINESS、DEC-MATCH及真实产品仍待准备;需求尚不参与分析/匹配 |
专项76项(9月24日)及基础41项、任务29项、HTTP15项(9月23日)通过;H5手机/桌面、Web和Android编译证据见6.5。旧54项评估测试未作为本轮证据:它测试v1新建,在新门槛和分析开关下不适用。60个任务编号和历史基线人日保持不变,新增范围实际剩余工时待重估,不计算整体完成率。
### 0.6 2026-09-24 完整度、准备状态与报告v2(实施阶段记录)
| 子范围 | 实际结果 | 状态/剩余边界 |
| --- | --- | --- |
| DEC-READINESS | 按用户继续下一步授权,采用契约等权字段及三状态;开发版self-reported-base-20260924-v1已发布 | 业务人工样例及生产验收待完成 |
| REPORT-002 | 新提交冻结targetResultVersion,首次执行冻结策略和摘要,重试不改;旧目标保持v1 | 自填快照子项待验收;真实产品/规则/排序快照、生产守护未完成,整体开发中 |
| REPORT-003 | 个人14/企业9项、other条件分母、零值/none、invalid优先、整数舍入、依据引用、报告v2原子落库 | 自填子项已联调;真实产品、外部查询、v2真实模型语义仍待验收;完整范围仍阻塞 |
| REPORT-004 | 需求概况、逐项完整度、准备依据、AI证据标签、固定风险;v1和未发布策略兼容 | 手机/桌面H5通过;微信内/Safari/真机未验收,整体开发中 |
| 数据与环境 | 复用现有analysis_context和report_data,无迁移/新表;未处理现有会员任务 | 本轮只用假模型/合成数据,无真实模型调用,密钥配置未改 |
54项报告专项、76项需求、41项基础和15项HTTP通过;Web/Android本地编译通过,详见6.6。原29项任务回归保留9月23日证据,本轮未运行含全库恢复扫描的脚本,避免影响现有业务processing记录。60个任务编号和历史基线工时不变,不推算整体完成率。
### 0.7 2026-09-24 报告v2真实模型验证
已按用户授权完成真实TokenHub调用:初始Flash个人/企业两例AI_INVALID_REPORT;修正提示词及中文数值约束后,Flash个人缺失/企业完整/个人矛盾三例、Pro企业other一例均通过格式和逐条语义检查。新增可复用的显式--live测试脚本,使用内存合成资料,不创建会员/评估或处理现存任务。
本轮58项报告回归通过;6次真实调用合计输入9369/输出2373 tokens(包含失败调用),费用以供应商账单为准。完整证据与输出见[报告v2真实模型验证](报告v2真实模型验证.md)。REPORT-001保留待验收,REPORT-003完整产品/外部数据范围仍阻塞,REPORT-004仍开发中;4个修正样例通过不代表生产稳定性或业务签收。
### 0.8 2026-09-24 评估与报告异常流程验证
完成排队/分析状态区分和长等待提示,修复分析页重试与刷新竞争、查询失败后旧按钮残留。后端31项任务、36项v2 HTTP、76项需求、58项报告检查通过,共201项;普通Chromium H5验证双击重试、回执丢失后的同键回放、报告刷新与历史跳转。Web和Android编译通过。详见6.9节。
本轮使用合成账户/假模型,没有调用收费模型;测试完成后账户、会话、队列已清理,原1个会员及2条成功评估保留,后台分析进程已恢复。ASSESS-002仍待业务验收,ASSESS-003/004与REPORT-002/004保留整体开发中;私有附件授权、真实产品、其他渠道和生产守护不在本次通过范围内。
### 0.9 2026-09-24 原型04—10改造及产品规则开发
已补[逐页清单与跳转方案](原型04-10页面改造与跳转方案.md):04/05/06复用产品详情,新增07对比和10行动两页,08明确报告/产品问答上下文,09补三栏和PDF;路径、参数、返回、公共/历史数据边界、异常及验收均已定义。当前pages.json仍25页,计划目标27页,未把文档路由标成已实现。
正式新增PRODUCT-005、REPORT-005、REPORT-006,共5—8.5工程人日,任务总数63。原69—117是历史估算,不代表当前剩余;已有页面任务的增量仍需复估。对比/PDF的旧“另行排期”说明由本轮用户明确授权覆盖。
PRODUCT-001/002进入开发中:采用既有三态、单产品覆盖、无评分和稳定ID排序作为开发口径;已完成纯硬规则计算基础及64项内存测试,详见[规则开发契约](产品匹配规则开发契约.md)。实际排序、目录筛选、产品来源/发布、冻结持久化、模型解释、API和页面仍未实现。当前无需生图;后续确需图片时使用用户指定img2-right.py方法。
### 0.10 2026-09-24 产品发布预检与字段编译
PRODUCT-003进入开发中:新增ProductPublication及Product模型发布校验,补齐来源、用途、范围、有效期和城市代码预检;支持局部更新、批量回滚及服务端版本递增。PRODUCT-002补齐按个人/企业编译规则和不适用依据。全国/现有5城市精确匹配可编译,省区覆盖尚不支持。
73项发布/编译、16项模型事务、64项规则和41项基础回归全部通过,共194项;合成记录回滚,正式worker保持运行。未修改前端页面或后台模板,未迁移数据库、发布产品或调用模型。完整JSON和限制见[规则契约](产品匹配规则开发契约.md)第6节。
产品来源真实性、首批真实资料及业务验收仍待DEC-PRODUCT;后台结构化编辑、公共查询、目录冻结/排序/理由模板、正式评估集成和04—10页面改造未完成,不标记整模块完成。
### 0.11 2026-09-24 匹配任务落库与本地演示产品(最新)
用户明确允许当前本地项目直接录入/上架样例,已新增6条演示产品(ID22—27)并验证重复录入不新增、不覆盖。PRODUCT-002补齐目录冻结、稳定排序和理由模板,REPORT-002/003接通正式任务及结果同事务落库;新评估使用已上架目录,旧报告/旧冻结失败任务不补算。
报告适配器已读取后端匹配统计和演示提示,后端465项检查通过,Web/Android编译及H5报告→刷新→历史导航通过。匹配列表/详情接口、04—10页面及真实业务验收仍待实施,未将整模块改为已完成。下一步先接只读匹配接口,再改造产品详情和匹配页面。
### 0.12 2026-09-24 匹配读取接口与03/04/05/06页面基础接入
已新增本人匹配分页、匹配详情、会员可读公共产品详情三个GET接口。读取既有快照,不重跑模型或规则;先验证评估归属与成功状态,再解析绑定账户/评估/结果摘要/分组的加密游标。当前产品下架、过期或删除只改变currentAvailability,历史参数与理由保持不变。公共详情不附个人判定、理由或事实。
报告新增“查看本次匹配与依据”;匹配列表展示三态分组、真实统计、默认三项分页、失败重试和演示标记;详情改为匹配解释/产品详情/申请条件三栏,金额及事实以万元展示,取消固定匹配百分比。已满足理由可展开,不符/待核实理由完整保留;AI解释未生成时明确提示。无评估入口引导历史或新评估,不猜测最近记录;越权不回退公共产品。
PRODUCT-004记为开发中,不能标整项完成:07对比、08上下文助手、09报告三栏/PDF、10行动页及单产品AI解释仍待开发。当前“查看资料准备说明”仅切换条件栏,不提交申请;返回重新鉴权读取列表首屏,精确滚动位置恢复与登录后原路返回待后续完善。真实产品资料/人工金标准及微信内H5、真机验收仍未完成。具体接口见规则契约第8节,验证见进度6.13。
### 0.13 2026-09-28 融资档案恢复原卡片布局
按用户确认,融资档案恢复个人/企业切换、完整度卡片和四组资料入口,新增历史记录选择;保留无草稿、提交后只读及多次评估分别存档的规则。默认展示所选类型的最新记录,可分页切换较早记录;显式assessmentId刷新后重新鉴权查看原记录,错误不回退到最新记录。数据分组展开查看,底部进入同次报告/分析状态或空白新评估。
完整度仅取本人成功报告的冻结percent,不从当前字段重算;无记录、旧版未计算、分析中/失败、未评定及读取错误使用“—”和对应说明,不能显示成0%。各组“已记录”仅指存在已提交字段,不等同该组完整或信用核验。资料与授权保持未开放。金额仍精确显示万元。代码位于archive/archive.uvue和services/records.uts,复用已有后端type过滤与读取API,本轮无后端业务修改、迁移或新增表。
### 0.14 2026-09-28 个人中心入口去重
个人中心顶部“评估记录/查看”改为图标+“开始评估”,先选择个人/企业,再进入对应融资入口;“评估报告/查看”改为图标+“最近报告”。菜单“我的融资档案”继续作为个人/企业历史、已提交资料和对应报告的管理入口。
最近报告通过已有GET /assessments?status=succeeded&limit=1查询本人所有类型中最近提交且已成功的记录,携带assessmentId直接打开报告;不被较新的未完成评估遮挡。无成功记录才查询status=processing&limit=1,提示“报告生成中”并可查看同次进度;两者都无则提示暂无报告,可发起评估,失败记录仍在融资档案查看。请求异常提示重试,不假装没有报告。查找不创建评估、不重跑分析、不缓存个人报告。
账户分包新增latest-report.uts服务,仅依赖共享请求,不跨包导入融资服务。未登录先登录,查找中防重复,离页/Token变化后丢弃迟到响应和弹窗回调。沿用既有edit-file/file-text图标,与积分中心统一样式,无新增页面或后端接口。
### 0.15 2026-09-28 原型07产品对比基础完成
PRODUCT-005新增compare页面,注册页数由25变为26。匹配列表与本次产品详情可选择最多3项,支持跨分组选择;正式对比需2—3项,0/1项仅作补选状态。URL按顺序保存assessmentId和productIds,移除会替换URL,刷新重新鉴权。选择ID只存在按账户会话/评估隔离的内存中,不新增草稿、持久个人缓存或数据表。
每列复用GET /assessments/:id/matches/:productId,最多三项并行;校验响应assessmentId、产品ID、resultVersion、catalogSnapshotId、ruleVersion和orderingPolicyVersion。错误列独立重试,版本不一致的列不展示参数,完整对比必须所有列读取成功。越权/不存在不回退公共产品,不重跑规则或模型;401清理显示并转登录,离页/会话变化丢弃迟到响应。
指标包括需求覆盖证据、额度、期限、年化利率、主体/地区、三类条件理由、准入规则、材料、还款方式、渠道、有效期与来源。历史参数和当前可用性分开显示,金额精确转万元,缺值显示未提供;未结构化的还款方式/渠道不猜测。首列固定,手机横向滚动,桌面列宽展开;长内容在单元格内滚动。当前仅提供详情/选择入口,不提供申请提交。
状态为待验收:本地编译及合成账户真实读取接口验证完成,真实机构产品签收、微信内H5/Safari与真机仍待验收。详细证据见开发进度6.16。下一步为REPORT-004报告三栏,PDF、上下文助手及行动页独立开发。
### 0.16 2026-09-28 原型09报告三栏基础完成
REPORT-004页面子项完成本地联调:report/report改为评估概况、匹配结果、改善建议。URL中的tab限定overview/matches/improvements,默认overview;切栏替换当前路由,刷新恢复栏目并重新鉴权读取本人报告,不创建评估或重跑模型。无前页时返回融资档案;产品与匹配入口始终携带当前assessmentId。
概况保留冻结需求、准备状态、真实完整度进度条、生成时间、自填来源、AI摘要/优势、风险与免责声明;事实及逐项完整度可展开。v1明确提示当时未采集/未计算,百分比显示“—”;v2未评定与实际0%分开,不用当前规则补算历史。
匹配栏从报告读取三态统计,复用GET /assessments/:id/matches?eligibility=eligible&limit=3展示最多3项候选,提供完整列表及不符/待核实入口。改善栏组合缺失/待核实字段、准备依据、已保存AI建议及不符/待核实分组各前3项产品证据,关联产品详情并标明摘要边界;没有依据不补造建议。不符条件仅解释现状,不承诺改善后获批。
报告与列表校验assessmentId、resultVersion、catalogSnapshotId、ruleVersion、orderingPolicyVersion及三态统计;不同版本不拼接。候选和两个建议分组分别加载/重试,局部失败不隐藏已保存报告,也不显示为零候选。按可见栏目请求,概况不请求产品;离页/Token变化丢弃旧响应,401清空内容并回登录。修复匹配列表返回时的卸载挂载冲突:先关闭内容渲染,再清空资料。
继续无草稿。“重新评估”选择个人/企业并清空当前流程内存,进入空白填写页;只有再次正式提交才创建新assessmentId。页面仍26个,未改后端业务、未迁移、未调用收费模型。PDF(REPORT-005)、下一步行动(REPORT-006)与上下文助手按独立任务推进,未展示虚假可用按钮。REPORT-004整体仍开发中,真实产品/外部渠道与微信内H5、真机尚未验收;证据见开发进度6.17。
### 0.17 2026-09-28 原型04/05与单产品AI解释
本轮优先完成04、05,复用product/product的eligible/ineligible/unknown三种状态。按原型恢复紧凑机构信息、AI解释/产品详情/申请条件三栏、绿色序号理由、橙色注意事项和底部双按钮;额度/年化/期限移入产品详情。每组默认最多三条,可展开全部和逐条依据。非候选的绿色区域称“已满足的条件”,不把部分满足理解为推荐。无真实Logo时沿用通用机构图标,演示产品保留标记。
新增已实现POST `/api/v1/assessments/:id/matches/:productId/explanation`,Bearer鉴权,JSON体仅`requestId:string`(8—64位字母/数字/下划线/短横线);HTTP200回传与GET匹配详情相同的data,异步状态为queued/running/completed/failed,首次未请求为not_requested。GET只读;仅点击生成/重试调用POST,不自动重跑评估。状态和逐条解释保存在fa_ai_chat.match_result,fa_ai_chat_log预留并记录调用,无新表和迁移。完整接口与故障边界见[产品匹配契约第9节](产品匹配规则开发契约.md)。
复用analysis:work消费持久调用日志;同产品并发/成功缓存/相同请求键重放不重复调用,每评估每产品最多三次尝试,与报告共用每日用户调用额度。租约失效明确失败,手动新键重试;旧回复只补用量,不覆盖新任务。DeepSeek仅解释该产品冻结理由,逐条引用由服务端绑定;模型输出允许调整顺序,按理由ID校验无缺失/重复/外来项后恢复规则顺序。禁止模型输出数值与授信承诺。
已完成本地验证,PRODUCT-004整体仍开发中;原工时/依赖与63个任务编号不变。原型08上下文咨询和10行动页未完成,当前底部为产品对比、产品详情及资料准备说明,不提供假咨询/假申请。真实产品/人工业务金标准、微信内H5/Safari及真机仍待验收。
### 0.18 2026-09-28 原型08上下文AI助手
CHAT-001—003已实现持久会话、消息分页、固定评估/产品上下文、异步回复、原键重试和页面接入,状态待验收;CHAT-004本地异常/额度检查通过,整体仍开发中。普通问答及04/05产品、07对比、09报告入口已接通,进入页面不调用模型,快捷问题只填入输入框。关键实现增加中文注释,保留26个页面和63项任务。
经本轮用户明确授权,后端fa_ai_chat新增context_assessment_id/context_data及归属约束,正式assessment_id/analysis_context和已有报告不改写。模型调用默认Flash,复用analysis:work,助手/报告/产品解释共用每日预留额度。完整接口、重试、迁移恢复和验证见[上下文AI助手开发契约](上下文AI助手开发契约.md)。下一步为原型10及09 PDF;08真实多轮语义/真机与生产容量仍需验收。
### 0.19 2026-09-28 原型10下一步行动
REPORT-006页面与入口已完成本地联调,状态待验收。新增`packages/finance/next-step/next-step`,当前27个页面、63项稳定任务。界面按原型采用白底、蓝色图标、四个行动行、重要提示和首页按钮;关键守卫与业务边界有中文注释。
本人成功报告与冻结产品只读展示;仅eligible且当前available展示申请准备材料,进入/返回/刷新重新读取状态,快照不一致时关闭准备。未选产品回本次匹配,不符/待核实/不可用可查看报告、优化资料与咨询。材料与来源使用冻结数据,渠道未提供时明确说明,不提交银行申请、不增加PDF假操作。
优化资料先展示待补/待核实项与已存建议,再清空流程内存进入同类型空白表单;不覆盖历史。AI咨询携带评估和可选产品,进入不发送。支持白名单登录返回、归属复验、离页清空及迟到响应隔离;冷启动返回本次报告,首页reLaunch。
H5 Chromium手机/桌面38项检查与最终Android/微信编译通过;详见进度6.20。复用已有API,未改后端业务、未迁移、未调用收费模型。下一步为09 PDF;08真实多轮语义、真实产品、微信内H5/Safari和真机仍未验收。
### 0.20 2026-09-28 原型09报告PDF导出
REPORT-005完成本地实施,状态待验收。09报告顶部与10行动页接入同一下载组件;用户点击后才以Bearer请求`GET /api/v1/assessments/:id/report.pdf`,不提供永久公开链接、不重跑模型、不修改已存报告或产品。27页、63项任务不变。
后端复用本人成功报告与全部冻结匹配快照,模板包含需求、概况、结构化事实、完整度/准备状态、匹配三态/产品理由、建议、版本、时间和免责声明;旧v1不补造v2指标。排除身份、联系方式、企业名和自由填写内容,纯文本转义;引擎禁止远程资源、脚本和任意文件读取。精确元字符串转万元,PDF中文字体嵌入,页脚编号、长理由分页。
导出引擎Dompdf3.1.6及传递依赖单独锁定在后端extend/report-pdf,中文Noto Sans SC Sans2.004固定400字重、字体来源/哈希/许可入库;根依赖不变,无迁移。成功响应application/pdf、no-store/private、安全文件名;401/404/409/503为JSON。引擎缺失/关闭明确503,不生成空文件。
H5检查状态、MIME及PDF首尾标识后创建Blob下载;失败可重试且保留报告,离页取消、换账号拒绝迟到文件并清空旧报告,401白名单回登录。首版普通H5开放;微信内浏览器提示“在浏览器打开并重新登录下载”,App/小程序明确未开放,不假报成功。真实Safari/微信/原生下载未验收。
29项PDF检查、20项真实HTTP检查、24项浏览器检查及Android/微信编译通过,样本渲染和文字提取通过;证据与局限见开发进度6.21。下一步为08真实多轮语义、真实产品样例及跨浏览器/真机验收,生产导出容量仍需评估。
## 1. 项目状态与维护规则
当前已具备25个页面原型、部分本机交互、优化后的数据库结构和评估内部生命周期服务;密码账户基础已完成本地前后端联调,短信、评估、报告、匹配等完整业务仍待完成。AI供应商确定为DeepSeek,模型已确定为deepseek-v4-pro-0813和deepseek-v4-flash-0731,两个模型权限及自填报告已真实验证,商业预算、余额及生产容量仍待核验;其他服务商待定。
一期目标是 **25 个页面全部接入真实业务,H5 优先上线**。短信、微信登录、一键登录、外部征信或数据查询、人工客服均为一期必做项,不能因为服务商未定而视为已完成或从首发范围中静默移除。贷款申请仅包括现有申请准备和资料引导,不含银行受理、授信、放款与还款交易。
初次交付为开发管理文档;其后已启动第0节列出的代码、迁移与验证工作。下文历史基线不等同当前所有功能状态,任务表持续更新。
### 1.1 状态定义
| 状态 | 进入条件 | 离开条件 |
| --- | --- | --- |
| 未开始 | 尚未进入实际开发;存在内部前置任务时仍使用此状态 | 前置任务可用且开始实现后改为开发中 |
| 开发中 | 已有负责人和实际实现活动 | 单元/组件验证可用后进入待联调,或记录具体阻塞 |
| 待联调 | 本模块实现和必要自测已完成,等待跨模块/真实渠道连接 | 联调通过且证据完整后进入待验收 |
| 待验收 | 所有约定测试已执行,等待业务或发布验收 | 验收通过改为已完成;发现问题回到开发中 |
| 已完成 | 范围及验收条件全部满足,具备日期、环境和可复核证据 | 回归发现缺陷时重新打开并记录原因 |
| 阻塞 | 外部资源或业务决策前置未齐,明确列出阻塞编号 | 阻塞解除后按实际工作状态更新,不能直接跳到已完成 |
初始台账仅把**直接缺少外部资源或业务决定**的任务标为阻塞。它们的下游任务暂保留未开始,通过依赖关系表示尚不具备完整实施条件;这不表示下游可以跳过前置独立验收。可开展接口壳、模拟样例等准备工作,但真实渠道验收仍须等待解除阻塞。
P0 表示核心流程、安全、首发外部能力或发布门槛;P1 表示其余一期功能。P1 同样必须在一期上线前完成。负责人“全栈开发(待指定)”代表 1 人全栈+AI 辅助的排期基线;负责人、验收人和服务商对接人须在启动时落实到人。
### 1.2 工时口径与更新规则
- 初始工程量基线为 **69–117 人日**(取消草稿及本轮实现后的实际剩余量待重估),按每周 5 个工作日约 **14–24 周**;不等于承诺上线日期,不含供应商开通、资质、审核与商务等待。
- 每类第三方暂按 1 个服务商估算;能力不足、增加渠道或调整业务范围时,修改受影响任务估算并在更新日志说明。
- 不用页面数、SQL 表数、代码行数计算业务完成率。文档完成也不计为下面 63 个业务任务完成。
- 每次开发结束同步状态、实际证据、日期、依赖变化与下一步;保留原任务编号。任务跨模块时不得重复统计工时。
- 证据优先包含代码文件或版本、脱敏接口记录、测试报告、截图/录屏、第三方请求编号、验收人;不写 Token、验证码、密钥或证件原文。
- 接口与范围调整先同步开发文档,再同步本台账。新增需求单独变更评审,不能通过扩大既有任务标题掩盖新增成本。
## 2. 当前分层基线
“有基础”只说明存在结构或代码,不代表相应真实能力可用。“待开发/联调”说明还需要业务 API、渠道或验收工作。下表按 15 个模块分别记录,避免把原型和数据库迁移视为业务交付。
| 模块 | 页面/交互 | 数据库 | 内部服务/后台 | 业务 API | 第三方 | 真实验收 |
| --- | --- | --- | --- | --- | --- | --- |
| BASE 基础接口 | 请求已接本地API;首页仍为原型 | 通用框架表已有 | v1显式路由及环境配置已有 | Bearer、响应封装和401已接;requestId等待补 | 部署环境待定 | 本地账户基础通过,模块未验收 |
| AUTH 账户安全 | 密码登录/退出/原密码改密已接入;昵称/头像后端持久化 | 用户唯一约束已有;Token仅存Redis | 旧密码兼容、加密和撤销基础已有 | 密码登录、GET/PUT资料、头像上传、退出、原密码改密已实现;短信/换绑待开发 | 短信待定 | 密码基础通过,完整模块未验收 |
| LOGIN 第三方登录 | 微信/一键入口或占位行为 | 身份关联增量设计待做 | 渠道适配待开发 | 待开发 | 微信/一键服务待定 | 未完成 |
| FILE 资料授权 | 选图本机预览、授权勾选与占位说明 | documents/consent_data 仅预留 | 通用公共上传不能代替私有证件服务 | 私有上传、下载、授权事件待开发 | 私有存储待定 | 未完成 |
| ASSESS 评估档案 | 个人/企业填写流程已有;未提交不持久化 | 一次评估一条记录及状态/幂等字段已有 | Assessment 内部服务已有 | 正式提交、状态、历史API已接通;不提供草稿接口 | 依赖上传/授权/数据渠道 | 内部历史测试已有,真实闭环未完成 |
| DATA 外部查询 | 查询选项为意向或占位 | 查询事件持久化待增量设计 | 渠道、回调和对账待开发 | 待开发 | 数据渠道待定 | 未完成 |
| PRODUCT 产品匹配 | 03/04/05/06已接正式快照及公共详情;本地产品为演示资料 | 范围/规则/版本及快照已有 | 发布预检、规则/冻结/排序/持久化已实现 | 匹配分页/详情、公共详情已接;公共列表待开发 | 真实产品及金标准待确认 | 本地接口和H5验证通过;整模块未验收 |
| REPORT AI 报告 | 已接真实自填报告,移除固定评分/雷达 | 报告快照、调用用量及任务元数据已接入 | Redis任务、补投/租约、重试已实现 | 自填报告支线已联调 | 指定Pro/Flash均真实可用 | 完整产品/查询范围未完成 |
| CHAT AI 助手 | 模拟对话 | 会话/消息/使用量字段已有 | 调用、上下文、配额待开发 | 待开发 | 依赖 DeepSeek | 未完成 |
| CONTENT 内容课堂 | 新闻/课程/搜索/FAQ 本地数据,学习进度本机 | 文章/融资课堂表已有,课程进度待增量设计 | 内容后台基础需补齐 | 真实列表/详情/进度/搜索待开发 | 内容运营素材待准备 | 未完成 |
| MSG 消息中心 | 静态消息及本机已读 | read_at/关联业务字段已有 | 通知事件/去重需补齐 | 列表/计数/已读待开发 | 无独立外部渠道要求 | 未完成 |
| POINT 积分邀请 | 体验签到、本机积分/任务 | 积分流水及业务幂等基础已有,邀请关系待设计 | 可信奖励事件和并发账本待开发 | 待开发 | 奖励业务规则待定 | 未完成 |
| SUPPORT 客服反馈 | 帮助页与 FAQ;客服暂未开放 | feedback 基础表已有 | 反馈闭环、客服签名待开发 | 待开发 | 人工客服待定 | 未完成 |
| ADMIN 后台运营 | FastAdmin 管理界面已有 | 管理员权限保持,会员组保持删除 | 档案/产品/密钥表单已适配,运营排障待补齐 | 面向管理员的新增能力待开发 | 依赖各渠道状态 | 基础界面修改不等于运营验收 |
| RELEASE 发布验收 | Web/Android 曾完成本地编译 | 本机迁移已有,其他环境须单独设计升级 | 未建立完整首发部署/恢复链路 | 无全量真实联调证据 | 域名/HTTPS/队列部署等待定 | H5 首发、真机和多端发布均未完成 |
### 2.1 已完成基础及证据边界
以下为上一轮已实施的基础建设,不重复计入剩余任务工时。源码存在只能证明实现入口,历史通过记录不能代替之后业务改动的回归测试。
| 基础项 | 2026-09-22 基线记录 | 可复核入口 | 限制 |
| --- | --- | --- | --- |
| 当前数据库结构 | 本地25张InnoDB表;按用户最新决定删除空fa_user_token,改用Redis;此前26表为历史基线 | [数据库约定](D:/AAdesk/202609/airz/database/README.md)、[结构快照](D:/AAdesk/202609/airz/database/schema.sql) | 已核验本地库;根目录旧airz.sql不能作为现状;备份见第0节 |
| 金额与产品范围 | DECIMAL(11,2) 元;前端万元;产品独立额度/期限/利率/准入字段及补充 JSON | [金额转换](../services/money.uts)、数据库约定 | 真实 API 待联调;后台录入按元,移动端展示万元 |
| 评估生命周期 | submit/complete/fail/retry/owned;事务、幂等、失效任务拒绝及所有者过滤 | [Assessment.php](D:/AAdesk/202609/airz/application/common/library/Assessment.php) | 内部服务,不是已上线 API;队列与真实 AI 未接入 |
| 输入与正式结果保护 | 提交后输入冻结;报告与匹配历史快照;正式会话避免按普通聊天删除 | 数据库约定、Assessment 服务、后台现有模型 | 后续 API/后台扩展必须延续,不能绕过生命周期 |
| 安全基础 | 身份证与模型密钥加密、后台掩码、日志脱敏;密码散列兼容和登录升级,改密撤销 Token | [Secret.php](D:/AAdesk/202609/airz/application/common/library/Secret.php)、[Password.php](D:/AAdesk/202609/airz/application/common/library/Password.php) | 私有上传、正式授权、短信和身份渠道仍未完成 |
| 基础校验与测试 | 41项基础测试本轮已回归通过,包含金额、加密、幂等、越权、历史快照、重试、产品版本和会话撤销 | [tests/finance.php](D:/AAdesk/202609/airz/tests/finance.php) | 2026-09-22;不代表全系统或真实第三方通过 |
| 编译与页面金额检查 | 上一轮 Web 与 Android 编译通过;手机 390×844、桌面 1280×900 浏览器检查金额输入、超限、确认、模拟提交和产品显示 | [前端 README](../README.md)、[页面注册](../pages.json);前序任务会话验证记录 | 不是短信/AI/上传真实联调;无 iOS/Xcode 或 Android 真机上线结论;独立历史日志路径未留档,后续回归须新增证据 |
| 迁移与恢复基础 | 本机迁移及仓库外备份已完成 | [数据库迁移说明](D:/AAdesk/202609/airz/database/README.md) | 旧迁移限定业务空表,不得直接用于已有业务数据环境;未完成通用部署和恢复演练 |
### 2.2 全部 27 个页面的验收归属
页面路径以[pages.json](../pages.json)为准。下表记录页面真实业务的主要收口任务;其内部依赖仍需全部完成。当前 27 页均未通过一期真实业务验收。
| 页面 | 注册路径 | 主要任务 | 当前状态 |
| --- | --- | --- | --- |
| 首页 | pages/home/home | BASE-004、CONTENT-002、MSG-003 | 原型/本地数据 |
| 融资入口 | packages/finance/entry/entry | ASSESS-004 | 原型 |
| 评估填写 | packages/finance/assessment/assessment | ASSESS-004、FILE-004、DATA-004 | 当前流程内存填写/本机图片预览 |
| 评估确认 | packages/finance/confirm/confirm | ASSESS-004 | 元/万元转换、正式提交及网络重试幂等 |
| 分析中 | packages/finance/analyzing/analyzing | REPORT-004 | 按assessmentId轮询状态、失败重试、成功后打开真实报告 |
| 评估报告 | packages/finance/report/report | REPORT-004 | 三栏已接本人冻结报告、匹配候选与改善证据;真实业务及平台验收未完成 |
| 匹配结果 | packages/finance/matches/matches | PRODUCT-004、REPORT-004 | 已接本人冻结结果、三态/分页及对比选择;演示产品联调 |
| 产品详情 | packages/finance/product/product | PRODUCT-004 | 已接原型04/05、历史理由/参数、逐条DeepSeek解释与失败重试;08咨询待接 |
| 产品对比 | packages/finance/compare/compare | PRODUCT-005 | 2—3项冻结对比本地联调通过,真实产品与平台待验收 |
| 下一步行动 | packages/finance/next-step/next-step | REPORT-006 | 四项行动与上下文/返回本地联调通过,真实产品及平台待验收 |
| AI 助手 | packages/finance/assistant/assistant | CHAT-004 | 持久上下文对话已本地联调,真实语义/真机待验收 |
| 融资档案 | packages/finance/archive/archive | ASSESS-004、REPORT-004 | 本人历史分页、脱敏只读详情、刷新恢复 |
| 启动引导 | packages/account/index/index | BASE-003、AUTH-002 | 原型/本机引导 |
| 登录 | packages/account/login/login | AUTH-002、LOGIN-004 | 未完成真实认证 |
| 个人中心 | packages/account/profile/profile | AUTH-003、POINT-004、MSG-003 | 服务端昵称头像/入口 |
| 修改资料 | packages/account/edit-profile/edit-profile | AUTH-003 | 昵称/头像已接服务端持久化 |
| 账户安全 | packages/account/security/security | AUTH-004 | 入口与客户端校验 |
| 修改密码 | packages/account/password/password | AUTH-004 | 真实服务未接通,不模拟成功 |
| 换绑手机 | packages/account/change-phone/change-phone | AUTH-004 | 真实服务未接通,不模拟成功 |
| 积分中心 | packages/account/points/points | POINT-004 | 体验签到与本机记录 |
| 消息中心 | packages/account/messages/messages | MSG-004 | 静态消息与本机已读 |
| 搜索 | packages/content/search/search | CONTENT-004 | 本地搜索 |
| 帮助与反馈 | packages/content/help/help | CONTENT-004、SUPPORT-004 | 本地 FAQ,客服未开放 |
| 新闻列表 | packages/content/news/news | CONTENT-002 | 本地数据 |
| 文章详情 | packages/content/article/article | CONTENT-002 | 本地数据 |
| 融资课堂 | packages/content/classroom/classroom | CONTENT-002、CONTENT-003 | 本地数据 |
| 课程详情 | packages/content/lesson/lesson | CONTENT-003 | 本机学习进度 |
## 3. 里程碑与依赖顺序
里程碑按验收结果推进,不预填实际日期。单人实施按依赖顺序排队;第三方选型、申请和材料准备在 M0 启动,其等待时间可穿插内部模块。各阶段人日仅合计归属模块,不再次累加前序工时。
| 里程碑 | 范围 | 工程人日 | 累计工程人日 | 进入/退出门槛 | 当前状态 | 实际开始/完成 |
| --- | --- | --- | --- | --- | --- | --- |
| M0 契约与接入准备 | BASE;同步发起全部外部资源和业务决策收集 | 3–5 | 3–5 | 契约、认证/响应、环境和缓存隔离可用;首页骨架具备联调入口;依赖有责任人与清单 | 未开始 | 待记录 / 待记录 |
| M1 账户与资料闭环 | AUTH、LOGIN、FILE | 14–25 | 17–30 | 真实账户、账户安全、微信/一键支持场景、私有上传与版本授权验收完成 | 未开始,存在直接外部阻塞 | 待记录 / 待记录 |
| M2 融资核心闭环 | ASSESS、DATA、PRODUCT、REPORT | 25–41 | 42–71 | 个人/企业各完成真实评估、授权查询、确定性匹配、DeepSeek 报告与历史;失败恢复可用 | 开发中,正式提交/历史/自填分析已联调;产品和外部渠道仍阻塞 | 待记录 / 待记录 |
| M3 全部页面业务化 | CHAT、CONTENT、MSG、POINT、SUPPORT、ADMIN | 20–35 | 62–106 | 助手、内容、课堂、搜索、消息、积分邀请、反馈和人工客服及运营后台验收通过 | 未开始;现有页面/部分本机功能为基础,真实业务按对应任务推进 | 待记录 / 待记录 |
| M4 H5 验收上线 | RELEASE | 7–11 | 69–117 | 全部一期任务验收;普通 H5/微信内 H5 与渠道支持矩阵通过;部署恢复演练和发布记录完整 | 未开始,部署资源待定 | 待记录 / 待记录 |
后续多端里程碑不计入上述 69–117 人日,也不属于一期 H5 验收:微信小程序需平台 AppID、隐私配置、授权/支付无关能力复核、包体与真机测试和提审;Android 需签名、真实设备与网络/权限适配、渠道材料;iOS 需 macOS/Xcode、签名、真实设备、隐私材料和审核。具体范围、顺序与工时在 H5 稳定后另行确认,不能拿历史本地编译代替发布。
## 4. 60 项任务台账
每模块分“计划与状态”和“验收记录”两张表,任务编号一一对应。依赖列只列直接前置任务;直接外部/业务阻塞在第 5 节统一维护。以下均为剩余业务工作,历史基础不重复生成任务。
### BASE|基础接口与环境
归属 M0,剩余 3–5 人日。
| 任务编号 | 任务 | 范围 | 优先级 | 直接依赖 | 预计人日 | 状态 |
| --- | --- | --- | --- | --- | --- | --- |
| BASE-001 | 接口契约与字段字典 | 定义版本路由、响应、错误、分页、ID、金额、时间及接口状态;确认前后端字段映射。 | P0 | 无 | 0.5–1 | 开发中 |
| BASE-002 | 统一请求与认证适配 | 统一共享/账户请求;后端识别 Bearer;解析业务失败和401;限定 CORS;记录 requestId。 | P0 | BASE-001 | 1–1.5 | 开发中 |
| BASE-003 | 环境与用户缓存隔离 | 开发/测试/生产配置;生产禁用 mock;会话等账户缓存按不可变 userId 隔离;未提交表单只存当前流程内存。 | P0 | BASE-002 | 1–1.5 | 开发中 |
| BASE-004 | 首页和联调骨架 | 首页接入聚合数据、加载/空态/失败重试及登录回跳;建立接口冒烟入口。 | P1 | BASE-002、BASE-003 | 0.5–1 | 未开始 |
| 任务编号 | 负责人 | 验收条件 | 证据 | 更新时间 |
| --- | --- | --- | --- | --- |
| BASE-001 | 全栈开发(待指定) | 接口样例可同时被 PHP 和 UTS 解析;区分占位接口与后端现有实现。 | 已实施子集和验证见第0节;完整任务未验收 | 2026-09-22 |
| BASE-002 | 全栈开发(待指定) | HTTP 200 中业务失败不判成功;过期 Token 清会话;普通业务按所有者鉴权。 | 已实施子集和验证见第0节;完整任务未验收 | 2026-09-22 |
| BASE-003 | 全栈开发(待指定) | 切换账户无串数据;旧草稿键清理且不恢复;退出清理敏感缓存和临时填写内容。 | 已实施子集和验证见第0节;完整任务未验收 | 2026-09-22 |
| BASE-004 | 全栈开发(待指定) | 深链接与刷新正确恢复;首页无硬编码账户数据;真实未读数后续由 MSG 接入。 | 未验收;无真实业务验收证据 | 2026-09-22 |
DEC-DEMAND已确认并发布,需求录入/提交/历史子范围已实现;其他既有前置任务不变。
### AUTH|账户与短信安全
归属 M1,剩余 5–8 人日。
| 任务编号 | 任务 | 范围 | 优先级 | 直接依赖 | 预计人日 | 状态 |
| --- | --- | --- | --- | --- | --- | --- |
| AUTH-001 | 短信接入与验证码服务 | 供应商适配、签名模板、验证码用途/有效期/频控/核销、测试发送。 | P0 | BASE-002、EXT-SMS | 1–2 | 阻塞 |
| AUTH-002 | 真实登录与会话 | 短信登录/首次注册、密码登录、资料读取、登出、禁用账户、旧密码散列升级。 | P0 | AUTH-001、BASE-003 | 1.5–2 | 开发中 |
| AUTH-003 | 资料与头像持久化 | 昵称、头像 API 和文件校验;以服务端 profile 为准,迁移本机回显逻辑。 | P1 | AUTH-002 | 1–2 | 开发中 |
| AUTH-004 | 改密与手机换绑 | 登录校验、原/新手机双挑战、号码占用、事务及全部会话撤销;修复旧改绑免登录声明。 | P0 | AUTH-002 | 1.5–2 | 开发中 |
| 任务编号 | 负责人 | 验收条件 | 证据 | 更新时间 |
| --- | --- | --- | --- | --- |
| AUTH-001 | 全栈开发(待指定) | 发送成功才倒计时;验证码过期、复用、跨用途和频繁发送均拒绝。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| AUTH-002 | 全栈开发(待指定) | 真实账户登录成功;登录失败无假 Token;登出撤销当前 Token;旧散列兼容。 | 已实施子集和验证见第0节;完整任务未验收 | 2026-09-22 |
| AUTH-003 | 全栈开发(待指定) | 不同设备资料一致;昵称不覆盖评估实名;头像不依赖临时路径。 | 本地14项HTTP及昵称/头像持久化交互通过;正式环境跨设备验收待补 | 2026-09-22 |
| AUTH-004 | 全栈开发(待指定) | 跨账户或单个验证码不能换绑;修改后旧 Token 全失效;新密码8–32位且含字母和数字。 | 已实施子集和验证见第0节;完整任务未验收 | 2026-09-22 |
直接阻塞:AUTH-001 → EXT-SMS。
### LOGIN|微信与一键登录
归属 M1,剩余 5–10 人日。
| 任务编号 | 任务 | 范围 | 优先级 | 直接依赖 | 预计人日 | 状态 |
| --- | --- | --- | --- | --- | --- | --- |
| LOGIN-001 | 登录渠道能力与身份方案 | 确认微信内/普通H5方式、号码认证H5能力;定义渠道身份与手机号账户绑定方案。 | P0 | BASE-001、EXT-WX、EXT-ONE | 1–2 | 阻塞 |
| LOGIN-002 | 微信登录接入 | 授权发起、state校验、code服务端交换、首次手机号绑定与已有账户冲突处理。 | P0 | LOGIN-001、AUTH-002、EXT-WX | 1.5–3 | 阻塞 |
| LOGIN-003 | 一键登录接入 | 号码认证SDK/网页流程、服务端验证、能力检测、账号绑定、短信回退。 | P0 | LOGIN-001、AUTH-002、EXT-ONE | 1.5–3 | 阻塞 |
| LOGIN-004 | 身份渠道联调 | 微信内、普通移动H5和桌面H5分别验证;解绑/冲突与失败恢复按已选渠道能力实现。 | P0 | LOGIN-002、LOGIN-003 | 1–2 | 未开始 |
| 任务编号 | 负责人 | 验收条件 | 证据 | 更新时间 |
| --- | --- | --- | --- | --- |
| LOGIN-001 | 全栈开发(待指定) | 形成渠道支持矩阵、回调和身份唯一键方案;不以昵称/openid跨应用猜测同一账户。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| LOGIN-002 | 全栈开发(待指定) | 授权取消和重放安全失败;绑定现有账户需原账户证明;获批H5场景真机通过。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| LOGIN-003 | 全栈开发(待指定) | 按渠道支持的网络/运营商/浏览器验收;客户端自报手机号不能登录。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| LOGIN-004 | 全栈开发(待指定) | 身份关联不误合并账户;重放无效;不支持场景有清晰短信回退。 | 未验收;无真实业务验收证据 | 2026-09-22 |
直接阻塞:LOGIN-001 → EXT-WX、EXT-ONE;LOGIN-002 → EXT-WX;LOGIN-003 → EXT-ONE。
### FILE|资料与授权
归属 M1,剩余 4–7 人日。
| 任务编号 | 任务 | 范围 | 优先级 | 直接依赖 | 预计人日 | 状态 |
| --- | --- | --- | --- | --- | --- | --- |
| FILE-001 | 私有资料存储方案 | 区分公开头像与私有证件;确定文件白名单、大小限制、存储密钥、附件元数据与保留策略。 | P0 | BASE-001、EXT-STORAGE、DEC-PRIVACY | 1–1.5 | 阻塞 |
| FILE-002 | 私有上传与下载 | 持久附件ID、归属校验、大小/MIME/内容校验、鉴权读取、失败重试和删除策略。 | P0 | FILE-001、AUTH-002 | 1–2 | 未开始 |
| FILE-003 | 协议与授权版本 | 协议全文展示、同意/撤销事件、范围与协议版本、历史快照及外部授权凭据边界。 | P0 | FILE-001、AUTH-002、DEC-PRIVACY | 1–2 | 阻塞 |
| FILE-004 | 资料授权页面联调 | 替换选图预览和占位协议;展示上传/授权状态;拒绝、取消、断网恢复。 | P0 | FILE-002、FILE-003 | 1–1.5 | 未开始 |
| 任务编号 | 负责人 | 验收条件 | 证据 | 更新时间 |
| --- | --- | --- | --- | --- |
| FILE-001 | 全栈开发(待指定) | 私有文件不在公开web目录;形成文件用途/权限/生命周期配置清单。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| FILE-002 | 全栈开发(待指定) | 无登录/跨用户不能读取;客户端临时路径不能提交为附件;失效链接不可访问。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| FILE-003 | 全栈开发(待指定) | 提交可追溯所见协议版本;撤销阻止新查询;前端布尔勾选不冒充第三方授权。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| FILE-004 | 全栈开发(待指定) | 仅已上传且有权访问的附件入评估;拒绝可选授权仍可自填,不显示已查询。 | 未验收;无真实业务验收证据 | 2026-09-22 |
直接阻塞:FILE-001 → EXT-STORAGE、DEC-PRIVACY;FILE-003 → DEC-PRIVACY。
### ASSESS|评估与融资档案
归属 M2,剩余 5–8 人日。
| 任务编号 | 任务 | 范围 | 优先级 | 直接依赖 | 预计人日 | 状态 |
| --- | --- | --- | --- | --- | --- | --- |
| ASSESS-001 | 评估字段与增量模型 | 统一现有字典并补融资需求四字段、inputVersion及增量列;用途字典/必填规则按专项契约确认,保留附件和授权映射。 | P0 | BASE-001、DEC-DEMAND | 1–2 | 开发中 |
| ASSESS-002 | 正式评估记录与历史 | 本人历史分页/只读详情及用户隔离;补v1/v2需求回显与旧未采集提示,无草稿保存或续填。 | P0 | ASSESS-001、AUTH-002 | 1–2 | 待验收 |
| ASSESS-003 | 提交与生命周期API | 保留提交201及重试202幂等;补inputVersion切换、新需求校验、输入字典冻结、同键全字段比较和旧请求重放兼容。 | P0 | ASSESS-002、FILE-004 | 1.5–2 | 开发中 |
| ASSESS-004 | 评估全页面联调 | 评估/确认/分析/报告/档案贯穿assessmentId;新增资金需求分组和只读展示,保留金额、清理与并发回归。 | P0 | ASSESS-003 | 1.5–2 | 开发中 |
| 任务编号 | 负责人 | 验收条件 | 证据 | 更新时间 |
| --- | --- | --- | --- | --- |
| ASSESS-001 | 全栈开发(待指定) | 现有与v2字段映射明确,元字符串/整数月/用途条件校验;历史新字段NULL,不新建评估表。 | 需求四字段/版本/用途字典及迁移已实现;金额/期限/other/信用卡一致性含于76项检查;私有附件与正式授权仍待接入 | 2026-09-24 |
| ASSESS-002 | 全栈开发(待指定) | 同用户可多次评估;越权拒绝;历史v1不回填需求、不重算,v2显示冻结需求且不可编辑。 | v1未采集/v2冻结需求只读回显、HTTP越权检查及个人/企业H5刷新通过;待业务验收,旧54项仅作历史证据 | 2026-09-24 |
| ASSESS-003 | 全栈开发(待指定) | 同键同内容原回执,合法需求或版本变化409、非法格式422;最低新建版本2或用途停用不阻断原键回放;旧重试返回原taskId。 | 76项覆盖新建最低2、旧v1键/旧用途回放、全字段冲突、并发唯一记录、重试原回执和输入快照不变;附件授权待接 | 2026-09-24 |
| ASSESS-004 | 全栈开发(待指定) | 个人/企业需求均能提交及回显;12.345678万元=123456.78元;无草稿,历史不串账户,处理中无假报告。 | H5个人12.345678万元及企业0.000001万元正确提交/刷新;确认编辑、other清理、字典失败恢复、刷新清空通过;真实渠道待验收 | 2026-09-24 |
直接外部/业务阻塞:无;仍须满足前置任务。
### DATA|外部征信或数据查询
归属 M2,剩余 6–12 人日。
| 任务编号 | 任务 | 范围 | 优先级 | 直接依赖 | 预计人日 | 状态 |
| --- | --- | --- | --- | --- | --- | --- |
| DATA-001 | 查询渠道与范围定稿 | 确认实际可开通数据产品、个人/企业范围、授权凭证、测试样例、计费与返回解释。 | P0 | BASE-001、EXT-DATA、DEC-QUERY | 1–2 | 阻塞 |
| DATA-002 | 授权查询适配与记录 | 服务端发起、请求唯一键、渠道凭证隔离、查询事件持久化及assessmentId绑定。 | P0 | DATA-001、FILE-003、ASSESS-003 | 2–4 | 未开始 |
| DATA-003 | 回调与结果标准化 | 验签、防重放、回调幂等、主动查询对账、结果字段/来源/时间映射与受限留存。 | P0 | DATA-002 | 2–4 | 未开始 |
| DATA-004 | 异常与渠道端到端验收 | 超时、撤销、拒绝、余额不足、重复回调、重查和H5往返恢复。 | P0 | DATA-003 | 1–2 | 未开始 |
| 任务编号 | 负责人 | 验收条件 | 证据 | 更新时间 |
| --- | --- | --- | --- | --- |
| DATA-001 | 全栈开发(待指定) | 每种首发授权都有明确数据来源和支持范围;缺失渠道记阻塞并更新估算。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| DATA-002 | 全栈开发(待指定) | 无有效授权不调用;重复发起不重复建本地请求;不得将他人结果用于本次评估。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| DATA-003 | 全栈开发(待指定) | 伪造/过期回调拒绝;迟到结果不覆盖冻结输入;查询失败不转换成零风险。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| DATA-004 | 全栈开发(待指定) | 成功和失败均可追踪;超时收费不明先对账;各已承诺首发场景有真实渠道证据。 | 未验收;无真实业务验收证据 | 2026-09-22 |
直接阻塞:DATA-001 → EXT-DATA、DEC-QUERY。
### PRODUCT|产品库与匹配规则
归属 M2。原6–9人日为历史基线,本次新增对比1.5–2.5人日;当前剩余需按实施复估。
| 任务编号 | 任务 | 范围 | 优先级 | 直接依赖 | 预计人日 | 状态 |
| --- | --- | --- | --- | --- | --- | --- |
| PRODUCT-001 | 规则字典与评分口径 | 确定准入三态、来源要求、单产品需求覆盖、用途规则、证据结构和版本化排序;评分未发布时null。 | P0 | ASSESS-001、DEC-MATCH | 1.5–2 | 开发中 |
| PRODUCT-002 | 准入与排序执行器 | 执行上架/有效期/对象/地区及需求硬规则;保存pass/fail/unknown证据,生成eligibility和稳定rank。 | P0 | PRODUCT-001 | 2–3 | 开发中 |
| PRODUCT-003 | 产品后台与公共查询 | 补规则条件编辑、来源/用途依据、发布预检、版本与公共详情;录入真实产品,缺依据阻止发布。 | P0 | PRODUCT-001、BASE-002、DEC-PRODUCT | 1.5–2 | 开发中 |
| PRODUCT-004 | 匹配页面与快照 | 按assessmentId展示三态分组、最多三个候选及分页;结果详情展示依据/注意项/AI解释,保留产品快照与申请准备。 | P0 | PRODUCT-002、PRODUCT-003、ASSESS-004、REPORT-003 | 1–2 | 开发中 |
| PRODUCT-005 | 同类产品对比 | 新增compare页,同评估2—3项冻结产品、状态/范围/条件对照、补选与返回、刷新恢复。 | P1 | PRODUCT-004 | 1.5–2.5 | 待验收 |
| 任务编号 | 负责人 | 验收条件 | 证据 | 更新时间 |
| --- | --- | --- | --- | --- |
| PRODUCT-001 | 全栈开发(待指定) | 发布规则与人工样例可审阅;非法字段/操作符阻止发布;fail优先于unknown,匹配指标不作为审批概率。 | 首版字段/操作符/来源门槛已形成规则契约;64项内存测试;真实产品发布依据与业务样例待验收 | 2026-09-24 |
| PRODUCT-002 | 全栈开发(待指定) | 同输入/快照结果稳定;未知不当满足,配置错误不归咎用户;需求不拆额、不改期;未运行与零候选区分。 | 目录冻结/排序/理由已接正式worker;51项内存和19项任务测试通过;真实产品金标准、规模/生产验收仍待完成 | 2026-09-24 |
| PRODUCT-003 | 全栈开发(待指定) | 产品用途/地区/额度/期限有真实依据;规则可配置并启停,版本变化留依据;公共详情无个人分数。 | 发布预检及模型保存已实现;本地6条演示产品已授权上架,重复录入不覆盖;公共详情已接;真实资料/发布验收、结构化编辑和公共列表待完成 | 2026-09-24 |
| 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 |
剩余门槛:DEC-MATCH开发口径已采用既有契约,真实产品规则/金标准业务签收待完成;PRODUCT-003真实发布仍依赖DEC-PRODUCT。纯规则、后台模型预检及字段编译已实施,未解除整模块验收依赖。
### REPORT|AI任务、报告与历史
归属 M2,行动与助手联调延伸至M3。原8–12人日为历史基线,新增PDF/行动3.5–6人日;不是当前剩余工期。
| 任务编号 | 任务 | 范围 | 优先级 | 直接依赖 | 预计人日 | 状态 |
| --- | --- | --- | --- | --- | --- | --- |
| REPORT-001 | DeepSeek适配与配额 | 配置模型标识、服务端密钥读取、超时、结构化输出校验、配额预留和消耗记录。 | P0 | BASE-002、EXT-AI、DEC-AI | 1.5–2 | 待验收 |
| REPORT-002 | 异步任务与补偿 | 保留Redis派发、补投、租约和taskId隔离;沿用提交时input_snapshot,一次性补入execution_snapshot并在重试时复用,支持跨部署v1/v2任务。 | P0 | ASSESS-003、REPORT-001 | 2.5–4 | 开发中 |
| REPORT-003 | 报告生成与持久化 | 保留v1自填报告;补v2需求、完整度/准备等级、规则证据及定性AI区块;版本快照和正式结果原子落库。 | P0 | REPORT-002、DATA-004、PRODUCT-002、PRODUCT-003、DEC-MATCH、DEC-READINESS | 2–3 | 阻塞 |
| REPORT-004 | 分析报告历史联调 | 保留轮询/重试和v1历史;接v2需求、完整度、准备等级、三态匹配及证据解释,不显示无规则分数/雷达。 | P0 | REPORT-003、PRODUCT-004、ASSESS-004 | 2–3 | 开发中 |
| REPORT-005 | 报告PDF导出 | 鉴权流式下载、受控中文模板、报告与产品冻结快照、H5保存与失败提示。 | P1 | REPORT-004 | 2.5–4 | 待验收 |
| REPORT-006 | 下一步行动 | 新增next-step页,准备材料、查看已存报告、优化资料、新评估、咨询及首页导航。 | P1 | PRODUCT-004、REPORT-004、CHAT-003 | 1–2 | 待验收 |
| 任务编号 | 负责人 | 验收条件 | 证据 | 更新时间 |
| --- | --- | --- | --- | --- |
| REPORT-001 | 全栈开发(待指定) | 模型可配置;密钥不下发;失败与使用量可追踪;数值事实不被模型改写。 | 两个指定模型真实连通;v2修正后Flash3例/Pro1例格式及语义检查通过;合成输入隐私过滤,调用tokens已记录;商业预算/生产稳定性待验收 | 2026-09-24 |
| REPORT-002 | 全栈开发(待指定) | 漏投/中断可恢复或明确失败;旧任务不可回写;输入/目标结果/策略/产品快照重试不隐式变化。 | 54项报告检查覆盖目标版本冻结、超时重试快照不变、旧v2输入仍v1、损坏快照先于模型失败;产品快照/生产守护未完成,旧29项任务证据保留 | 2026-09-24 |
| REPORT-003 | 全栈开发(待指定) | 完整度按发布字段集复算,等级有依据且非审批;null rank/score按状态验证;格式错误不成功,产品/规则更新不改旧报告。 | v2自填支线已实现;本轮58项回归及Flash3例/Pro1例真实样例通过;真实产品/外部查询、生产与业务人工签收待完成 | 2026-09-24 |
| REPORT-004 | 全栈开发(待指定) | 个人/企业真实链路按版本展示;未发布无分或等级,100%不等于授信;旧报告不重算;新复评新assessmentId。 | 6.17三栏/局部重试/旧版/权限及生命周期验证;真实产品与外部渠道仍待验收 | 2026-09-28 |
| REPORT-005 | 全栈开发(待指定) | 本人成功报告可导出;金额/理由与历史一致;不重跑模型/泄露身份;中文分页可读,JSON错误不保存成PDF。 | 鉴权接口/H5导出已实施,29项PDF+20项HTTP+24项浏览器检查通过;跨浏览器/真机和生产容量待验收,见6.21 | 2026-09-28 |
| REPORT-006 | 全栈开发(待指定) | 根据判定及当前可用性开放行动;无银行申请提交;新评估不改历史、无草稿;上下文和返回正确。 | 27页已注册;38项H5流程/边界检查、Android/微信编译通过,真实产品与平台待验收,见6.20 | 2026-09-28 |
剩余依赖:REPORT-001商业预算/生产额度待DEC-AI;REPORT-003完整报告仍依赖DATA、PRODUCT、DEC-MATCH;DEC-READINESS首版开发策略已发布,人工业务验收待完成。模型真实权限已验证。
### CHAT|AI助手
归属 M3,剩余 4–7 人日。
| 任务编号 | 任务 | 范围 | 优先级 | 直接依赖 | 预计人日 | 状态 |
| --- | --- | --- | --- | --- | --- | --- |
| CHAT-001 | 会话与消息API | 普通会话创建/列表/消息分页/归属;明确可引用评估上下文且不占用正式assessment_id。 | P1 | AUTH-002、BASE-001 | 1–1.5 | 待验收 |
| CHAT-002 | DeepSeek对话调用 | 上下文裁剪、敏感信息最小化、消息幂等、异步回复与本地配额记录。 | P1 | CHAT-001、REPORT-001、REPORT-002 | 1–2 | 待验收 |
| CHAT-003 | 助手页面接入 | chatId/requestId、历史加载、发送状态、失败重试、由报告进入解释上下文。 | P1 | CHAT-002、REPORT-004 | 1–2 | 待验收 |
| CHAT-004 | 对话异常与额度验收 | 并发消息、重复点击、额度耗尽、供应商超时及失效会话。 | P1 | CHAT-003 | 1–1.5 | 开发中 |
| 任务编号 | 负责人 | 验收条件 | 证据 | 更新时间 |
| --- | --- | --- | --- | --- |
| CHAT-001 | 全栈开发(待指定) | 用户只能读自身会话;评估会话与普通会话分离;重进恢复历史。 | 本地70项助手及H5联调通过;真实语义/真机待验收,见6.19 | 2026-09-28 |
| CHAT-002 | 全栈开发(待指定) | 同请求不重复建消息或记本地消耗;错误回复不标成功;不会发送无关证件资料。 | 本地70项助手及H5联调通过;真实语义/真机待验收,见6.19 | 2026-09-28 |
| CHAT-003 | 全栈开发(待指定) | 切换会话不串上下文;超时保留可重试消息;重进页面能继续。 | 本地70项助手及H5联调通过;真实语义/真机待验收,见6.19 | 2026-09-28 |
| CHAT-004 | 全栈开发(待指定) | 配额并发不超扣;供应商计费不明可对账;仅真实成功回复显示完成。 | 并发额度/超时/迟到/重试本地通过;供应商真实语义与生产容量待验收,见6.19 | 2026-09-28 |
直接外部/业务阻塞:无;仍须满足前置任务。
### CONTENT|内容、课堂、搜索与FAQ
归属 M3,剩余 4–6 人日。
| 任务编号 | 任务 | 范围 | 优先级 | 直接依赖 | 预计人日 | 状态 |
| --- | --- | --- | --- | --- | --- | --- |
| CONTENT-001 | 内容模型与发布后台 | 补齐文章/课程结构、稳定章节ID、分类、封面/摘要、发布状态、FAQ类型及协议入口。 | P1 | BASE-001 | 1–1.5 | 未开始 |
| CONTENT-002 | 列表详情与首页推荐 | 新闻/文章/课堂/详情真实API、分页、富文本清洗、缺失内容与首页推荐接入。 | P1 | CONTENT-001、BASE-004 | 1–1.5 | 未开始 |
| CONTENT-003 | 云端课程进度 | 按用户/课程/章节记录完成,章节版本兼容、跨设备恢复和本机缓存策略。 | P1 | CONTENT-002、AUTH-002 | 1–1.5 | 未开始 |
| CONTENT-004 | 搜索与FAQ联调 | 真实全文字段检索、分类/分页、请求竞态、FAQ读取、无结果和断网恢复。 | P1 | CONTENT-002 | 1–1.5 | 未开始 |
| 任务编号 | 负责人 | 验收条件 | 证据 | 更新时间 |
| --- | --- | --- | --- | --- |
| CONTENT-001 | 全栈开发(待指定) | 后台可发布/下架;章节重排不换ID;草稿不可公开;FAQ可维护。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| CONTENT-002 | 全栈开发(待指定) | 首页/列表/详情ID一致;无模拟兜底内容;下架详情有明确不可用状态。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| CONTENT-003 | 全栈开发(待指定) | 用户隔离;重复完成幂等;章节排序变化不串进度;跨设备一致。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| CONTENT-004 | 全栈开发(待指定) | 旧搜索响应不覆盖新关键词;返回ID可开详情;FAQ与实际业务行为一致。 | 未验收;无真实业务验收证据 | 2026-09-22 |
直接外部/业务阻塞:无;仍须满足前置任务。
### MSG|消息中心
归属 M3,剩余 2–4 人日。
| 任务编号 | 任务 | 范围 | 优先级 | 直接依赖 | 预计人日 | 状态 |
| --- | --- | --- | --- | --- | --- | --- |
| MSG-001 | 通知事件与去重 | 定义评估结果等事件、通知去重键及写入时机,补齐唯一性保障。 | P1 | BASE-001、REPORT-004 | 0.5–1 | 未开始 |
| MSG-002 | 消息读写API | 当前用户分页/分类/未读数/单条已读/全部已读,read_at与is_read一致。 | P1 | MSG-001、AUTH-002 | 0.5–1 | 未开始 |
| MSG-003 | 消息页面与首页红点 | 替换静态通知与固定红点,处理业务跳转、空态、刷新及批量已读。 | P1 | MSG-002、BASE-004 | 0.5–1 | 未开始 |
| MSG-004 | 事件消息验收 | 事件重复、失败重试、分页期间新通知和并发全部已读测试。 | P1 | MSG-003 | 0.5–1 | 未开始 |
| 任务编号 | 负责人 | 验收条件 | 证据 | 更新时间 |
| --- | --- | --- | --- | --- |
| MSG-001 | 全栈开发(待指定) | 重复任务不会重复通知;成功/失败通知关联正确assessmentId。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| MSG-002 | 全栈开发(待指定) | 跨用户读写拒绝;已读重复操作幂等;列表/计数一致。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| MSG-003 | 全栈开发(待指定) | 换设备状态一致;打开通知到对应历史;关联记录不可用有提示。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| MSG-004 | 全栈开发(待指定) | 全部已读不误吞操作后新增消息;通知去重和未读数通过数据库核对。 | 未验收;无真实业务验收证据 | 2026-09-22 |
直接外部/业务阻塞:无;仍须满足前置任务。
### POINT|积分、任务与邀请
归属 M3,剩余 4–7 人日。
| 任务编号 | 任务 | 范围 | 优先级 | 直接依赖 | 预计人日 | 状态 |
| --- | --- | --- | --- | --- | --- | --- |
| POINT-001 | 积分规则定稿 | 确认签到、资料完成、邀请奖励的条件/次数/额度、业务时区和权益范围。 | P1 | BASE-001、DEC-POINT | 0.5–1 | 阻塞 |
| POINT-002 | 积分账户与签到 | 事务更新score与流水、业务唯一键、服务端日期签到、余额/流水查询。 | P1 | POINT-001、AUTH-002 | 1.5–2 | 未开始 |
| POINT-003 | 邀请码与邀请关系 | 生成唯一邀请码、首次有效绑定、防自邀、可信奖励事件与发放幂等。 | P1 | POINT-002 | 1–2 | 未开始 |
| POINT-004 | 任务积分页面联调 | 真实余额、流水、签到状态、个人邀请码、任务状态和规则说明。 | P1 | POINT-003、ASSESS-004 | 1–2 | 未开始 |
| 任务编号 | 负责人 | 验收条件 | 证据 | 更新时间 |
| --- | --- | --- | --- | --- |
| POINT-001 | 全栈开发(待指定) | 形成版本化活动规则;复制/分享不等于奖励;未确认奖励规则不得上线。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| POINT-002 | 全栈开发(待指定) | 同用户同日并发只加一次;流水与积分一致;错误不静默吞掉。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| POINT-003 | 全栈开发(待指定) | 客户端不能自报完成奖励;重复/自邀拒绝;已有关系不随分享覆盖。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| POINT-004 | 全栈开发(待指定) | 真实到账后才提示成功;跨账户/跨设备一致;邀请复制不立即发奖励。 | 未验收;无真实业务验收证据 | 2026-09-22 |
直接阻塞:POINT-001 → DEC-POINT。
### SUPPORT|反馈与人工客服
归属 M3,剩余 3–6 人日。
| 任务编号 | 任务 | 范围 | 优先级 | 直接依赖 | 预计人日 | 状态 |
| --- | --- | --- | --- | --- | --- | --- |
| SUPPORT-001 | 客服方案与运营准备 | 选定H5客服、身份签名、坐席/工作时间、离线策略、反馈状态及责任人。 | P0 | BASE-001、EXT-CS | 0.5–1 | 阻塞 |
| SUPPORT-002 | 反馈提交与处理闭环 | 帮助页增加反馈表单/记录;附件权限、后台状态/回复、用户查看处理结果。 | P1 | AUTH-002、FILE-002 | 1–2 | 未开始 |
| SUPPORT-003 | H5人工客服接入 | 服务端签发访客身份、前端打开客服、在线/排队/离线、失败回退。 | P0 | SUPPORT-001、AUTH-002、EXT-CS | 1–2 | 阻塞 |
| SUPPORT-004 | 客服反馈联调 | 普通/微信内H5、账户切换、关闭重开、无坐席、SDK失败和消息记录。 | P0 | SUPPORT-002、SUPPORT-003、CONTENT-004 | 0.5–1 | 未开始 |
| 任务编号 | 负责人 | 验收条件 | 证据 | 更新时间 |
| --- | --- | --- | --- | --- |
| SUPPORT-001 | 全栈开发(待指定) | 具有可测试坐席和离线处理渠道;确认SDK/隐私及首发支持范围。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| SUPPORT-002 | 全栈开发(待指定) | 反馈可提交到后台并回复;仅当前用户可查;附件无越权。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| SUPPORT-003 | 全栈开发(待指定) | 真实到达人工坐席;不由前端伪造用户身份;离线可留言并有处理路径。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| SUPPORT-004 | 全栈开发(待指定) | 会话无跨账户泄漏;客户可获回复;供应商不支持项准确提示。 | 未验收;无真实业务验收证据 | 2026-09-22 |
直接阻塞:SUPPORT-001 → EXT-CS;SUPPORT-003 → EXT-CS。
### ADMIN|后台运营与排障
归属 M3,剩余 3–5 人日。
| 任务编号 | 任务 | 范围 | 优先级 | 直接依赖 | 预计人日 | 状态 |
| --- | --- | --- | --- | --- | --- | --- |
| ADMIN-001 | 菜单与角色权限 | 将新增运营能力纳入现有管理员权限;明确运营/客服/技术可见字段。 | P0 | BASE-001 | 0.5–1 | 未开始 |
| ADMIN-002 | 任务与查询排障 | 按assessmentId/taskId/requestId查进度/错误、人工重试/对账入口及操作审计。 | P1 | REPORT-004、DATA-004、ADMIN-001 | 1–1.5 | 未开始 |
| ADMIN-003 | 模型额度与服务检查 | DeepSeek配置、密钥状态、用户额度、调用消耗、队列/存储/短信状态检查。 | P1 | REPORT-001、CHAT-004、ADMIN-001 | 1–1.5 | 未开始 |
| ADMIN-004 | 运营交接验收 | 真实产品、内容、课程、积分、消息、反馈及客服操作演练,形成操作说明。 | P1 | ADMIN-002、ADMIN-003、CONTENT-004、MSG-004、POINT-004、SUPPORT-004 | 0.5–1 | 未开始 |
| 任务编号 | 负责人 | 验收条件 | 证据 | 更新时间 |
| --- | --- | --- | --- | --- |
| ADMIN-001 | 全栈开发(待指定) | 管理员权限最小化;无需恢复已删除会员组/规则;敏感字段继续掩码。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| ADMIN-002 | 全栈开发(待指定) | 可定位失败原因;重试仍走生命周期和幂等;不允许后台手改正式结果。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| ADMIN-003 | 全栈开发(待指定) | 密钥不回显;配置失败可定位;本地消耗与渠道对账有入口。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| ADMIN-004 | 全栈开发(待指定) | 运营可独立发布/下架/处理反馈及定位异常;业务字段无占位数据。 | 未验收;无真实业务验收证据 | 2026-09-22 |
直接外部/业务阻塞:无;仍须满足前置任务。
### RELEASE|联调、测试与发布
归属 M4,剩余 7–11 人日。
| 任务编号 | 任务 | 范围 | 优先级 | 直接依赖 | 预计人日 | 状态 |
| --- | --- | --- | --- | --- | --- | --- |
| RELEASE-001 | 核心与权限回归 | 完整个人/企业流程、跨用户攻击、金额边界、幂等、产品变更及并发用例。 | P0 | REPORT-004、LOGIN-004、AUTH-004、ADMIN-004 | 2–3 | 未开始 |
| RELEASE-002 | H5与第三方真实验收 | 普通手机/桌面/微信内浏览器,键盘/上传/回跳/断网/弱网及全部渠道成功失败验证。 | P0 | RELEASE-001 | 2–3 | 未开始 |
| RELEASE-003 | 部署与恢复演练 | 分环境配置、增量迁移预检、HTTPS、队列守护/告警、备份恢复、发布回滚手册。 | P0 | RELEASE-001、ADMIN-003、EXT-DEPLOY | 1.5–2.5 | 阻塞 |
| RELEASE-004 | 首发验收与发布记录 | 核对范围/外部依赖/验收证据,正式发布检查,发布后冒烟及回退条件。 | P0 | RELEASE-002、RELEASE-003 | 1.5–2.5 | 未开始 |
| 任务编号 | 负责人 | 验收条件 | 证据 | 更新时间 |
| --- | --- | --- | --- | --- |
| RELEASE-001 | 全栈开发(待指定) | 关键用例通过且有证据;无阻断或高危未解决缺陷;所有一期模块进入验收。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| RELEASE-002 | 全栈开发(待指定) | 真实渠道与目标浏览器矩阵通过;不是仅编译通过或mock成功。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| RELEASE-003 | 全栈开发(待指定) | 干净测试环境可部署;有数据环境升级可恢复;不重跑旧空表限定迁移。 | 未验收;无真实业务验收证据 | 2026-09-22 |
| RELEASE-004 | 全栈开发(待指定) | 所有一期必做项已验收;生产无demo数据/占位协议/模拟Token;记录实际版本和时间。 | 未验收;无真实业务验收证据 | 2026-09-22 |
直接阻塞:RELEASE-003 → EXT-DEPLOY。
任务状态计数(仅用于核对台账):未开始 34 项;开发中 11 项;待联调 0 项;待验收 1 项;已完成 0 项;阻塞 14 项。这些计数不换算为项目完成率。
## 5. 外部依赖、业务决策与阻塞传播
所有条目初始更新时间均为 2026-09-22。对接负责人和业务拍板人尚未落实,启动时必须补齐。只记录准备状态与非敏感标识;密钥通过环境配置交接,不粘贴进文档。
### 5.1 外部依赖
| 编号 | 当前状态 | 解除条件/需准备的材料 | 直接影响任务 | 责任分工与目标节点 |
| --- | --- | --- | --- | --- |
| EXT-SMS | 服务商待定 | 服务商、可测试账户、签名/模板、回执与限流能力、环境配置交付可用;测试号码发送成功 | AUTH-001 | 用户/业务负责选型与开通,开发负责验证;M0 发起,M1 验收前解除 |
| EXT-WX | 服务类型和账号准备待定 | 确认微信内 H5/普通 H5 登录方式、主体资质、应用/公众号权限、域名回调与测试能力 | LOGIN-001、LOGIN-002 | 业务负责账号权限,开发形成能力矩阵;M0 发起,M1 前解除 |
| EXT-ONE | 服务商及 H5 能力待定 | 明确浏览器/运营商/网络限制、合法的服务端验证接口、测试环境、SDK 和降级策略 | LOGIN-001、LOGIN-003 | 业务与开发联合选型;M1 接入前解除 |
| EXT-STORAGE | 私有存储服务待定 | 私有桶或等价私有存储、权限策略、服务端访问配置、签名链接/鉴权读取能力、容量和生命周期方案 | FILE-001 | 开发提出方案,业务确认预算与保留边界;M1 开发前解除 |
| EXT-DATA | 数据渠道待定 | 可开通数据产品、个人/企业覆盖、正式授权流程、样例与字段字典、验签/回调/对账、计费及测试权限 | DATA-001 | 业务确认可获得的产品及资质,开发验证接口;M0 发起,M2 前解除 |
| EXT-AI | 腾讯云TokenHub;Pro/Flash真实权限、JSON和用量字段已验证;余额/预算待运营确认 | 确认可用模型标识、服务端测试配置、实际额度、返回格式、超时和费用核对入口;完成最小真实调用 | REPORT-001 | 开发验证能力,业务确认预算;M2 接入前解除 |
| EXT-CS | 客服服务商和坐席待定 | 支持普通/微信内 H5 的客服方案、用户身份签名、测试坐席、工作时间与离线接待责任人 | SUPPORT-001、SUPPORT-003 | 业务负责供应商与坐席,开发负责接入;M3 前解除 |
| EXT-DEPLOY | 部署目标及域名资源待定 | 测试/生产资源、域名/HTTPS、数据库/Redis、队列进程守护、日志监控、备份位置及恢复权限 | RELEASE-003 | 业务确认资源,开发落地运维;M0 收集,M4 演练前解除 |
EXT-AI已具备真实调用证据,尚不代表商业预算与生产容量验收完成。其他服务商未定不是本轮文档交付的阻塞,但确实阻塞对应真实接入任务及整体一期验收。
### 5.2 业务规则决策
| 编号 | 当前状态 | 必须定稿的内容 | 决策产物与直接影响任务 | 目标节点 |
| --- | --- | --- | --- | --- |
| DEC-PRIVACY | 待确认 | 资料用途、可选/必选项、协议正式全文与版本、保存期限、撤销后处理及对外字段范围 | 协议与资料生命周期清单;FILE-001、FILE-003 | M1 私有资料/授权实现前 |
| DEC-QUERY | 待确认 | 首发查询项目、个人/企业适用条件、查询失败/拒绝后的自填路径、重新查询触发和费用归属 | 数据产品与页面授权逐项映射;DATA-001 | M2 渠道实现前 |
| DEC-DEMAND | 已确认并发布 | 用户授权采用个人/企业用途、other说明及v2必填;新建最低2 | assessment.php用途版本、76项专项与H5证据;ASSESS-001/003 | 2026-09-24复核 |
| DEC-READINESS | 首版开发策略已发布 | 用户继续下一步授权采用既有等权字段集、条件分母和资料准备状态;不代表授信 | readiness.php、54项专项和H5;人工业务样例待验收 | 2026-09-24实施;生产发布前验收 |
| DEC-MATCH | 开发口径已采用,业务待签收 | 三态/来源门槛/单产品覆盖、无评分和productId升序;真实产品条件与金标准待提供 | 产品规则开发契约、64项内存测试;完整发布/冻结和业务验收未完成 | 2026-09-24启动;正式发布前完成签收 |
| DEC-PRODUCT | 待确认 | 首发真实产品、地区与对象、额度/期限/利率/准入条件、有效期、发布责任人、申请准备说明 | 可录入的真实产品资料及运营确认记录;PRODUCT-003 | 产品发布/匹配真实验收前 |
| DEC-AI | 模型已确认,其余待确认 | 单用户/单评估额度、重试上限、超时、输入最小化、月预算及超额处理 | AI 配置和额度规则;REPORT-001 | DeepSeek 接入和压测前 |
| DEC-POINT | 待确认 | 签到/资料/邀请奖励数额、次数、可信达成条件、业务时区、有效期与权益范围 | 版本化奖励规则及反例;POINT-001 | M3 积分实现前 |
上述决定没有在本台账中擅自填入分数、积分数额或第三方费用。它们本身属于对应已有任务的工作,不新增第 61 项开发任务。涉及新增表或字段时,先在相应任务记录增量方案、回填与恢复步骤,再实施迁移。
### 5.3 依赖传播与解除记录
- AUTH-001 未解除会影响真实账户、上传、评估、用户内容和其他登录渠道的完整联调。可先明确公共契约和已有密码登录适配,但不能标记整个 AUTH-002 完成。
- FILE-001/FILE-003 及 DATA-001 未解除会使正式资料授权、外部查询、报告生成和发布验收无法闭环。不能用本机勾选或模拟返回充当渠道验收。
- PRODUCT-001/PRODUCT-003、REPORT-001/REPORT-003 未解除时,允许准备确定性规则骨架和报告结构,不能将模拟评分、产品或 AI 文本判为真实报告验收通过。
- LOGIN、POINT 和 SUPPORT 的直接阻塞不妨碍其他独立模块开发,但它们仍在 M4 一期验收门槛内。
- EXT-DEPLOY 不阻止本地实现,但 RELEASE-003/RELEASE-004 不能完成。任何外部项长期不可获得,都须由用户明确调整范围或顺序并更新两份文档,不能自动删项。
阻塞解除时在下面追加记录,并同时更新任务状态、更新时间及依赖模块;不要删除历史原因。
| 日期 | 阻塞编号 | 原因/当前进展 | 责任人 | 预计解除日 | 解除依据/证据 | 受影响任务与计划调整 |
| --- | --- | --- | --- | --- | --- | --- |
| 2026-09-22 | EXT-AI | 指定模型与本地密钥配置已就绪,预算、额度与真实调用待核验 | 待指定 | 待确认 | 用户已确认供应商;无真实调用证据 | REPORT-001配置开发已启动,DEC-AI及真实调用验收仍待完成 |
| 2026-09-22 | 其余 EXT / 全部 DEC | 服务资源或正式业务口径待补齐 | 待指定 | 待确认 | 本轮计划基线,无已解除证据 | 逐项维护,不合并视为可跳过 |
## 6. 测试与验收台账
测试状态单独使用“历史通过(待回归)”“未执行”“通过”“失败”,不替代任务状态。每次记录必须包含日期、环境/构建版本、数据来源、结果、证据链接和验收人;没有真实外部证据不得填写“真实渠道通过”。
### 6.1 已有验证记录
| 验证项目 | 执行日期 | 环境 | 状态 | 证据与限制 | 后续归属 |
| --- | --- | --- | --- | --- | --- |
| 41项基础测试 | 2026-09-22,本轮回归 | 本地PHP 7.4 / MySQL 8.0.44,外层事务回滚 | 通过 | tests/finance.php;Redis测试会话清理,不含全部一期真实接口 | RELEASE-001 |
| 14项Redis测试 | 2026-09-22 | 本地Redis、随机隔离前缀 | 通过 | tests/token_redis.php;TTL、索引、撤销、用户隔离、Redis不可用不降级 | BASE-002、AUTH-002 |
| 16项HTTP会话测试 | 2026-09-22 | 本地Nginx/PHP/Redis | 通过 | tests/api_session.php;含特殊字符密码、非法Bearer、单会话登出、改密撤销两个有效Token、短信503 | AUTH-002、AUTH-004 |
| Web / Android本地编译 | 2026-09-22,本轮 | Windows / HBuilderX 5.26 | 通过 | Web原有layout.uts等类型提示;Android回调类型已修复;未验证真机或正式包 | RELEASE-002 |
| 账户H5联调 | 2026-09-22 | http://localhost:5174/;Chromium 390×844、1280×900 | 已测范围通过 | 密码登录、底栏进入个人中心、确认退出、A/B草稿隔离;短信503提示且无倒计时 | BASE-003、AUTH-002、RELEASE-002 |
| 金额相关浏览器检查 | 2026-09-22,前序任务 | 本地 Web;390×844 和 1280×900 | 历史通过(待回归) | 金额输入、超限、确认、模拟提交、产品展示,最终控制台无错误/警告;未留独立可链接归档 | ASSESS-004、PRODUCT-004、RELEASE-002 |
### 6.2 一期验收矩阵
前轮(草稿取消前)的浏览器证据与复核范围:使用Playwright CLI(`Browser plugin not available`),目标为真实密码登录→首页→底栏“我的”→确认退出→登录页,另验证A/B草稿隔离及短信未接入提示。页面标题“AI融资”与路由正确、非空、无框架错误遮罩;桌面及手机视口无本轮新增遮挡。正常登录/退出控制台无错误或警告;短信场景唯一错误为预期的HTTP 503资源日志。早期脚本直接改hash使弹框检查失效,改用实际底栏导航后完整退出流程通过,未修改框架。
截图:[登录后个人中心](<C:/Users/JUN/AppData/Local/Temp/airz-redis-qa/profile-mobile.png>)、[切换账户后的空白草稿](<C:/Users/JUN/AppData/Local/Temp/airz-redis-qa/account-isolation-mobile.png>)、[短信未配置手机提示](<C:/Users/JUN/AppData/Local/Temp/airz-redis-qa/sms-unavailable-mobile.png>)、[桌面提示](<C:/Users/JUN/AppData/Local/Temp/airz-redis-qa/sms-unavailable-desktop.png>)。位于本机临时目录,清理后可能失效,正式验收应另行归档。两条临时合成账户及其Redis会话已清理;复核数据库25表、Token表不存在。未覆盖微信内置浏览器、Safari、真机、正式发行、真实短信/AI或产品链路。接口复核命令为`php tests/api_session.php`,驱动为`php tests/token_redis.php`;前端编译命令见开发文档8.2。
以下为一期完整验收条件。第6.1节已测子集不代表整行完成;尚未完整覆盖的场景保留未执行。执行时用实际日期、环境和证据替换占位单元格;同一场景多端验证可追加多行。
| 场景 | 关联任务 | 必须验证的结果 | 日期 / 环境 | 状态 | 证据 / 验收人 |
| --- | --- | --- | --- | --- | --- |
| 请求与 Token | BASE-002、AUTH-002 | HTTP 200 业务错误不能被当成功;过期/撤销 Token 拒绝;错误可定位 requestId | 待记录 / 测试 API + H5 | 未执行 | 待补充 / 待指定 |
| 账户隔离 | BASE-003、ASSESS-002、CHAT-001、MSG-002 | A/B 用户切换不串临时填写内容、消息、聊天、资料和历史;跨用户 ID 读写失败 | 待记录 / 至少两个测试账户 | 未执行 | 待补充 / 待指定 |
| 短信与登录 | AUTH-001、AUTH-002 | 真短信成功/失败、用途隔离、频控、过期和核销;无假 Token | 待记录 / 真实短信测试权限 | 未执行 | 待补充 / 待指定 |
| 改密与换绑 | AUTH-004 | 原/新手机双挑战,号码占用拒绝,事务一致,修改后全部旧会话失效 | 待记录 / 测试 API + 双账户 | 未执行 | 待补充 / 待指定 |
| 微信授权 | LOGIN-002、LOGIN-004 | 获批 H5 场景真实成功;取消/state 错误/code 重放/已有账号冲突安全处理 | 待记录 / 微信内与支持的普通 H5 | 未执行 | 待补充 / 待指定 |
| 一键登录 | LOGIN-003、LOGIN-004 | 独立流程初始化、过期/重复交换;服务端验凭证;支持矩阵真实通过;绑手机专用挑战不跨用途复用;不支持时短信回退 | 待记录 / 渠道支持设备与网络 | 未执行 | 待补充 / 待指定 |
| 私有资料权限 | FILE-002、FILE-004 | 跨用户/未登录下载失败;大小/MIME/内容校验;临时路径不可提交;过期链接失效 | 待记录 / 私有测试存储 | 未执行 | 待补充 / 待指定 |
| 授权版本与撤销 | FILE-003、DATA-002 | 可追溯所见协议版本;撤销后不发新查询;用户拒绝可选授权有可用自填路径 | 待记录 / 授权服务 + H5 | 未执行 | 待补充 / 待指定 |
| 金额精度与边界 | ASSESS-004、PRODUCT-004 | 0.800001 万元提交为 8000.01 元;0/上限/超限/空值区分;万元展示无重复换算 | 待记录 / API + 数据库 + H5 | 未执行 | 待补充 / 待指定 |
| 多次评估与历史 | ASSESS-002、REPORT-004 | 同用户同类型可多次评估;已提交输入不可覆盖;再次评估创建独立记录 | 待记录 / 个人、企业各至少两次 | 未执行 | 待补充 / 待指定 |
| 提交与重试幂等 | ASSESS-003、REPORT-002 | 重复 requestId 只提交一次;多次重试后回放旧键仍返回原 taskId;旧任务不能回写;重复消费无重复完成 | 2026-09-24 / 本机API、独立进程并发、Chromium | 自填范围技术验证通过 | 6.9节:31/36/76项及H5双击/回执丢失;业务签收待指定 |
| 外部查询与收费不明 | DATA-003、DATA-004 | 真结果与字段来源可核对;伪造/重放回调拒绝;重复回调幂等;超时先对账;失败不转成零风险 | 待记录 / 真实数据测试渠道 | 未执行 | 待补充 / 待指定 |
| 确定性匹配 | PRODUCT-002、PRODUCT-004 | 下架、过期、地区/硬条件不符不推荐;未知不当已满足;人工样例与版本结果一致 | 待记录 / 真实产品 + 人工样例 | 未执行 | 待补充 / 待指定 |
| 产品历史快照 | PRODUCT-004、REPORT-003 | 更改产品额度/利率/版本后历史报告仍保留原快照;当前下架有提示 | 待记录 / 产品版本变更用例 | 未执行 | 待补充 / 待指定 |
| DeepSeek 报告 | REPORT-001、REPORT-003、REPORT-004 | 真实模型调用;结构化输出校验;评分/事实来源明确;个人/企业各完成一条全链路 | 待记录 / DeepSeek 测试配置 + H5 | 未执行 | 待补充 / 待指定 |
| 队列故障恢复 | REPORT-002、ADMIN-002 | 派发失败、worker 崩溃、超时/迟到结果、漏投扫描均可恢复且不写错任务 | 2026-09-24 / 本机Redis、假模型、过期租约模拟 | 本地模拟通过,生产待验收 | 6.9节:31项任务检查;未做真实生产进程崩溃演练 |
| AI 助手与额度 | CHAT-004、ADMIN-003 | 消息幂等、上下文隔离、历史分页、并发配额、额度耗尽、供应商超时及对账可用 | 待记录 / 测试会话 + DeepSeek | 未执行 | 待补充 / 待指定 |
| 内容/课程/搜索 | CONTENT-002、CONTENT-003、CONTENT-004 | ID 可到真实详情;下架不公开;章节重排不串进度;跨设备一致;搜索旧响应不覆盖新关键词 | 待记录 / 内容后台 + 两个浏览器 | 未执行 | 待补充 / 待指定 |
| 消息事件与已读 | MSG-004 | 重复任务只发一条通知;关联正确历史;全部已读不误吞操作后新消息 | 待记录 / 并发事件 + 数据库核对 | 未执行 | 待补充 / 待指定 |
| 积分与邀请并发 | POINT-002、POINT-003、POINT-004 | 同日并发签到一次;流水与余额一致;禁止自邀/重复关系;客户端不能自报奖励成功 | 待记录 / 多请求、多账户 | 未执行 | 待补充 / 待指定 |
| 反馈与人工客服 | SUPPORT-004 | 反馈到后台并回复;真人坐席可接待;离线可留言;SDK 失败回退;账户切换无会话泄漏 | 待记录 / 真实客服坐席 + H5 | 未执行 | 待补充 / 待指定 |
| 后台运营与权限 | ADMIN-004 | 运营可发布/下架和处理反馈;客服无技术密钥权限;任务重试走统一幂等入口;密钥不回显 | 待记录 / 运营、客服、技术角色 | 未执行 | 待补充 / 待指定 |
| H5 浏览器与弱网 | RELEASE-002 | 普通移动 H5、桌面 H5、微信内 H5 分别检查键盘、上传、回跳、刷新、横屏、安全区、断网恢复 | 待记录 / 实际浏览器版本与设备 | 未执行 | 待补充 / 待指定 |
| 部署/迁移/恢复 | RELEASE-003 | 干净环境部署、有数据增量迁移、密钥备份、队列守护、告警和恢复演练;不盲目重跑旧迁移 | 待记录 / 独立测试部署环境 | 未执行 | 待补充 / 待指定 |
| 首发完整性 | RELEASE-004 | 全部一期必做项已验收,25 页有真实数据来源;无模拟 Token、demo 数据、占位协议;发布后冒烟和回退依据完整 | 待记录 / 候选版本及正式环境 | 未执行 | 待补充 / 待指定 |
### 6.3 缺陷与发布记录模板
| 发现日期 | 关联任务 | 环境/版本 | 问题与复现步骤 | 严重程度 | 负责人 | 修复依据 | 回归结果/日期 |
| --- | --- | --- | --- | --- | --- | --- | --- |
| 2026-09-22 | AUTH-002 | HBuilderX 5.26 / Android编译 | 退出确认的success回调不能使用async返回Promise | 编译阻断 | 全栈开发 | profile.uvue使用同步回调内then/catch | 修复后编译通过;H5退出通过 |
发布前存在阻断或高危未解决缺陷、必做渠道无真实验收、资料越权、金额错误、重复积分或任务污染时,不通过 RELEASE-004。其他缺陷须明确影响、处理方案和验收决定,不以“页面可打开”代替业务验收。
| 候选版本/提交 | 计划日期 | 实际日期 | 配置/迁移版本 | 验收人 | 发布与冒烟证据 | 回退条件/恢复点 | 结果 |
| --- | --- | --- | --- | --- | --- | --- | --- |
| 待生成 | 待里程碑就绪后确定 | 未发布 | 待记录 | 待指定 | 未执行 | 按 RELEASE-003 演练结果补齐 | 未开始 |
## 7. 更新日志与下一步
| 日期 | 更新内容 | 任务状态变化 | 验证范围 | 下一步 |
| --- | --- | --- | --- | --- |
| 2026-09-24 | 真实DeepSeek报告v2输出验证,修正引用约束和中文数值复述,新增显式live脚本 | REPORT-001/003记录真实样例通过;整体状态不变 | 首轮2例拒绝,修正后Flash3例/Pro1例通过;58项回归;未调用现存业务任务 | 扩充业务金标准样例;待DEC-MATCH和真实产品接确定性匹配 |
| 2026-09-24 | 实施等权完整度、准备状态、执行策略快照及报告v2自填支线,无迁移 | DEC-READINESS开发版已发布;REPORT-002/004开发中,REPORT-003完整范围仍阻塞 | 54项报告+76项需求+41项基础+15项HTTP;H5手机/桌面及Web/Android编译 | 验收v2真实模型语义和策略样例;待DEC-MATCH与真实产品后接匹配引擎 |
| 2026-09-24 | 完成需求输入v2、字典、迁移、正式提交与历史回显,保留v1报告 | DEC-DEMAND已发布;ASSESS-002待验收;其余相关任务保留开发中/阻塞 | 76项专项+41/29/15回归;H5手机/桌面、字典恢复与无草稿;Web/Android编译 | 确认DEC-READINESS字段集和等级,再实现执行策略快照与报告v2;真实产品待准备 |
| 2026-09-23 | 补需求字段、完整度/准备等级与匹配解释契约,明确v1/v2/策略快照及迁移边界;同步主文档 | ASSESS-002/003、REPORT-002整体改开发中;新增DEC-DEMAND/DEC-READINESS待确认;本轮仅文档 | 字段/枚举/JSON样例、编号/基线人日/依赖及文档链接静态核对;未执行业务测试或迁移 | 先确认用途/必填与准备策略,再按ASSESS→REPORT/PRODUCT实施,重估新增工作量 |
| 2026-09-23 | DeepSeek适配、持久任务、幂等重试、自填报告;本地启用并启动worker | ASSESS-003、REPORT-001/002待验收,REPORT-003完整范围仍阻塞 | 29项任务+15项HTTP;真实个人报告、企业H5重试/报告;Android编译 | 决定匹配评分口径并准备真实产品;补私有资料/正式授权及运营排障 |
| 2026-09-23 | 正式提交/历史列表/详情/状态;严格路由、金额与归属校验、请求幂等、取消假分析 | ASSESS-002待验收;ASSESS-003/004、REPORT-004开发中 | 54项评估+41项基础+14项资料;H5个人/企业/断网重试/23条分页;Android编译 | 下一步接DeepSeek适配、可靠任务派发及重试,完善真实报告;短信/产品资料待准备 |
| 2026-09-22 | 取消评估草稿;账户资料/头像持久化、缓存清理;DeepSeek配置记录 | AUTH-003、ASSESS-001、REPORT-001开发中;ASSESS-002范围改正式历史 | 14项资料HTTP、41项基础、16项会话;H5昵称/头像与不保存填写内容;Android编译 | 下一步开发正式评估提交/历史及DeepSeek适配,等待真实产品与短信 |
| 2026-09-22 | Redis切换与M0/账户基础启动;Token表备份删除,真实密码会话与缓存隔离 | BASE-001/002/003、AUTH-002/004改开发中,外部依赖保留阻塞 | 41项基础+14项Redis+16项HTTP,Web/Android编译,H5退出/隔离/短信失败 | 继续完善BASE-001/003及资料API,供应商未就绪不阻塞内部开发 |
| 2026-09-22 | 建立开发文档和进度基线;登记 15 模块、60 任务、25 页映射及外部/业务阻塞 | 业务任务按基线记录;本次没有把文档编写计为业务完成 | 文档任务编号、估算、页面范围与相互引用静态核对;无业务测试或迁移 | 从 BASE-001 开始,M0 同步推进选型、资源和业务规则准备 |
后续推进顺序(已启动项继续收口):
1. BASE-001:冻结路由、响应、Token、ID、金额、时间和字段映射样例;同步指定实际开发和验收负责人。
2. BASE-002、BASE-003:完成统一请求与环境/缓存隔离;满足依赖后推进 BASE-004。生产环境不得继续以空 API 地址进入模拟流程。
3. 在 M0 同步收集第 5 节外部资源与业务决定。DeepSeek 重点核验模型、测试权限和预算;短信、微信/一键、查询、客服及私有存储从选型与能力清单开始,不要求把密钥填写在文档。
4. BASE-001 完成后,可穿插 ASSESS-001、CONTENT-001、ADMIN-001 等不依赖真实渠道的工作;保持它们原有任务工时和阶段归属,避免重复计时。
5. 外部前置就绪后推进 AUTH/LOGIN/FILE,再完成 ASSESS→DATA/PRODUCT→REPORT 核心闭环,随后按 M3、M4 验收全部首发功能。
每次完成开发活动,追加一行更新日志并同步相应任务的证据、状态和日期。需要调整一期范围或工时必须在两份文档中一起记录;第三方未接通时保留阻塞,不以模拟替代验收。
### 2026-09-22 本轮最终复核:无草稿与账户资料
环境:本地 `http://localhost:5175/`,Chromium,390×844及1280×900。Browser plugin not available,沿用Playwright CLI;本轮没有安装依赖。
| 检查 | 结果与边界 |
| --- | --- |
| 页面及渲染 | 标题AI融资、评估填写路由正确;非空、无框架错误遮罩;手机/桌面截图检查通过 |
| 控制台 | 最终会话0错误、0警告 |
| 无草稿流程 | 真实登录→融资档案→开始个人评估→填写→确认→编辑;返回后输入保留,刷新后清空,无草稿保存按钮或缓存键 |
| 账户资料 | 昵称与真实头像上传/保存/刷新回显已验证;默认头像恢复、附件跨用户拒绝由HTTP测试覆盖 |
| 后端检查 | 14项资料HTTP、41项基础、16项会话回归通过;本轮7个相关PHP文件语法检查通过 |
| 编译 | 18:02 Android本地编译成功,Web可运行;不代表真机或正式发行验收 |
| 数据清理 | 两个UI合成账户、头像附件及Redis会话已清理;本地剩1个原有用户、25张表,无fa_user_token及草稿专用字段 |
| 范围限制 | 正式提交/历史接口待开发;DeepSeek仅配置、未真实请求;未验证微信内置浏览器、Safari及真机 |
证据:[手机无草稿页面](<C:/Users/JUN/AppData/Local/Temp/airz-draft-qa/no-drafts-final-mobile.png>)、[桌面无草稿页面](<C:/Users/JUN/AppData/Local/Temp/airz-draft-qa/no-drafts-final-desktop.png>)、[头像持久化](<C:/Users/JUN/AppData/Local/Temp/airz-draft-qa/profile-persisted-mobile.png>)。截图位于临时目录,正式验收时需归档。
下一步按无草稿范围实现 `POST /assessments` 全量校验、提交幂等及事务建记录,随后接已提交历史与DeepSeek适配。真实产品与短信仍为外部依赖;不能以固定报告或模拟短信替代验收。
### 2026-09-23 本轮验证记录:正式提交与历史查询
环境:PHP 7.4.3开发服务127.0.0.1:80、本地MySQL/Redis;HBuilderX 5.26 Web http://localhost:5173/,Chromium 390×844及1280×900。Browser plugin not available,使用现有Playwright CLI,未安装依赖。
| 检查 | 证据与结果 |
| --- | --- |
| API及数据库 | `php tests/api_assessments.php` 54项通过:个人/企业、金额边界/精度/类型、零与null、加密/脱敏、越权、非法字段无落库、重复请求/冲突、两独立PHP进程竞争同一键、游标分页/筛选、软删除/内部draft排除、状态变更后原回执稳定 |
| 既有回归 | `php tests/finance.php` 41项通过;`php tests/api_profile.php` 14项通过,草稿断言改为POST /assessments/drafts不存在 |
| 真实H5 | 登录→空历史→个人提交0.800001万元→状态→详情刷新;企业18个月/120.123456万元回显;服务端已保存但客户端响应丢失后重试,复用同键且仅一条记录;23条记录分两页无重漏,最旧详情正确 |
| 不支持能力 | 勾选外部授权后提交被明确阻止;移除后可提交;分析暂未开放时显示真实原因,无计时成功或假报告跳转 |
| 页面检查 | 标题AI融资/路由正确、非空、无框架遮罩;手机/桌面截图可读;正常提交流程浏览器控制台0错误/0警告;故意断开响应及跨账户404为已预期负向场景 |
| 构建 | Android最后本地编译15:52:12成功;Web可运行。Web编译保留原有layout.uts类型提示,非本轮引入;无真机或正式发行结论 |
| 工具故障及修正 | 初始HBuilderX未启动,启动后继续;UTS异步递归声明限制已修复并重编译;ThinkPHP前缀路由误匹配已改完整匹配并回归 |
| 仍未验收 | 微信内H5、Safari、原生真机;私有上传/正式授权、DeepSeek真实调用、任务派发/重试、报告/匹配结果未接通 |
截图:[状态手机](<C:/Users/JUN/AppData/Local/Temp/airz-assessment-qa/status-mobile.png>)、[个人详情手机](<C:/Users/JUN/AppData/Local/Temp/airz-assessment-qa/detail-mobile.png>)、[企业详情手机](<C:/Users/JUN/AppData/Local/Temp/airz-assessment-qa/enterprise-mobile.png>)、[历史列表手机](<C:/Users/JUN/AppData/Local/Temp/airz-assessment-qa/history-mobile.png>)、[历史桌面](<C:/Users/JUN/AppData/Local/Temp/airz-assessment-qa/history-desktop.png>)。使用临时合成数据,不是真实客户资料,临时目录证据可能被清理。
本轮下一步:REPORT-001 DeepSeek适配与结构化输出检查;REPORT-002可靠派发及失败补偿,并补ASSESS-003请求级幂等重试。新接口开发前更新对应契约;产品匹配必须等待真实产品资料和规则口径,不用模型猜测硬准入。
最终清理:23条UI合成评估及关联会话、2个合成账户和Redis令牌已移除;复核本地25表、1个原有用户、0条评估记录。本轮无数据库迁移。补充H5验证:真实退出A并登录B,B历史为空,直接访问A详情显示不存在且无旧资料残留。测试脚本与合成凭据已清理,截图保留。
### 6.4 2026-09-23 本轮验证与后续
- 后端:`tests/analysis_tasks.php --worker-stopped` 29项通过(假模型,含两个独立PHP消费者);`tests/analysis_http.php --worker-stopped` 15项通过。先停止所有worker再运行,防止数据库恢复扫描拾取测试行;仅隔离Redis队列不足以隔离数据库扫描。
- 真实模型:两个指定版本连通成功;收紧输出规则后个人Flash报告 input582/output408 tokens、4438ms;企业浏览器真实worker报告成功。仅合成数据,不使用会员实际资料。测试调用次数不等同正式业务配额或费用账单。
- UI检查:页面身份、非空、无框架错误遮罩、控制台无相关运行错误、截图和交互均通过。金额 `1000000.01` 元准确显示 `100.000001 万元`。报告缺少产品规则时无固定分数或匹配入口。
- 浏览器证据:`C:/Users/JUN/AppData/Local/Temp/analysis-report-mobile.png`、`analysis-report-desktop.png`;本地临时文件,不提交仓库。Browser插件不可用,使用已安装Playwright CLI。Android HBuilderX 5.26编译通过。
- 下一步:PRODUCT-001/DEC-MATCH明确准入、未知值与评分排序口径,收集首批真实产品;内部可先做产品字段校验和版本快照,不生成假匹配。并行准备FILE私有资料/正式授权、ADMIN任务排障界面、短信选型和商业AI预算;一期仍未整体验收。
### 2026-09-23 需求契约后的下一步(历史计划,第1—2项已按0.5实施)
1. DEC-DEMAND:确认用途草案及必填口径;ASSESS-001实现字典与五列增量迁移,预检/备份后执行;本次未迁移。
2. ASSESS-003:先支持v1/v2及幂等重放,再由ASSESS-004接入需求录入/确认,由ASSESS-002补历史展示;按发布记录切换新建最低输入版本。
3. DEC-READINESS:发布等权字段集与资料准备等级;REPORT-002/003补冻结context及确定性完整度/等级,保持v1历史展示。
4. DEC-MATCH与真实产品准备完成后,PRODUCT实现三态规则、证据和快照,再接REPORT-004结果解释;此前不虚构匹配结果或评分。
5. 本专项验收用例见契约第8节,均待实施后执行。已通过的旧测试不覆盖新增字段、等级、用途和匹配解释。
### 6.5 2026-09-24 本轮最终验证:需求v2录入、提交与历史
环境:PHP 7.4.3、本地MySQL/Redis;HBuilderX 5.26,Web `http://localhost:5173/`,Chromium 390×844和1280×900。Browser plugin not available,使用已有Playwright CLI,未安装依赖。浏览器API转发至仅本机的隔离PHP服务,执行真实后端和数据库;该服务禁用模型,因此截图中“分析暂未开放”只代表隔离环境。本轮未修改真实模型开关或发起收费调用。
| 检查 | 日期与结果 | 边界/证据 |
| --- | --- | --- |
| 需求API/数据 | 9月24日 `php tests/assessment_demand.php --worker-stopped` 76项通过 | 含个人/企业、金额/期限边界、非法输入无落库、other、全字段冲突、并发唯一记录、最低版本切换、旧用途/旧键、越权、损坏哈希503、假模型重试及旧回执 |
| 既有回归 | 9月23日 finance.php 41项、analysis_tasks.php 29项、analysis_http.php 15项通过 | 旧任务用例显式保留v1兼容配置;旧54项api_assessments.php未计本轮通过 |
| 手机个人流程 | 填写需求→确认→编辑期限→提交→状态→历史→刷新通过 | 12.345678万元仅转换一次为123456.78元;18个月/教育进修;切离other清说明 |
| 企业与旧历史 | 0.000001万元提交为0.01元,1个月/其他用途说明刷新保留;个人专属用途不出现 | v1金额/期限/用途均显示“当时未采集”,不补造值 |
| 故障与无草稿 | 用途接口503时提示“重新加载用途”,移除故障后选项恢复;刷新后收入/需求金额/期限/用途清空 | 缺少需求或other说明阻止下一步;只保留当前流程内存 |
| 页面与控制台 | 标题/路由正确、非空、无框架遮罩;手机/桌面可读 | 正常提交0错误/0警告;故障会话仅1条刻意模拟的503资源错误,恢复刷新无新增应用错误 |
| 编译 | 9月23日Web及Android本地编译成功,Android最终20:04:31 | 修复UTS函数声明顺序后通过;原layout.uts提示仍在;未验真机/微信内H5/Safari |
| 迁移与清理 | 9月23日已备份并完成9项增量,立即复跑预检0 DDL;9月24日测试账号/3条UI记录/令牌已清理,隔离服务已停止 | 最终25表、1个原会员、1条非测试评估及会话(processing)保留;无测试用户。9月24日预检因该运行中记录被保护规则拒绝,未执行DDL,不能记为本次复跑成功 |
测试断言曾将MySQL JSON对象键顺序当作回执内容,改为排序后严格比较类型和值,76项复跑通过。浏览器刷新后页面位于开发框架子页面,批量role读取工具报错;改用新DOM快照与截图核实空输入,没有据此修改业务代码。
证据:[需求填写](<C:/Users/JUN/AppData/Local/Temp/airz-demand-qa/demand-mobile.png>)、[确认](<C:/Users/JUN/AppData/Local/Temp/airz-demand-qa/confirm-mobile.png>)、[个人历史](<C:/Users/JUN/AppData/Local/Temp/airz-demand-qa/history-mobile.png>)、[桌面历史](<C:/Users/JUN/AppData/Local/Temp/airz-demand-qa/history-desktop.png>)、[企业历史](<C:/Users/JUN/AppData/Local/Temp/airz-demand-qa/enterprise-history-mobile.png>)、[用途失败](<C:/Users/JUN/AppData/Local/Temp/airz-demand-qa/dictionary-error-mobile.png>)、[用途恢复](<C:/Users/JUN/AppData/Local/Temp/airz-demand-qa/dictionary-recovered-mobile.png>)、[刷新清空](<C:/Users/JUN/AppData/Local/Temp/airz-demand-qa/no-draft-after-refresh.png>)。均为合成资料,本机临时证据待正式验收归档。
下一步:先确认DEC-READINESS中的字段集和准备等级,再补REPORT-002执行策略快照、REPORT-003确定性完整度/等级和报告v2;DEC-MATCH及真实产品就绪后开发匹配。本轮未启动模型worker处理现存非测试记录,也未修改其状态;需要分析时按开发文档启动 `php think analysis:work`。本轮需求子项待业务验收,不等于一期完成。
### 6.6 2026-09-24 本轮验收记录:完整度/准备状态及报告v2
环境:PHP 7.4.3、本地MySQL/Redis、HBuilderX 5.26;Chromium `http://localhost:5174/`(5173被占用,开发服务选择5174),390×844/1280×900。沿用frontend-testing-debugging与Playwright流程;Browser plugin not available,使用已有Playwright CLI,未安装依赖。
| 检查 | 结果与证据 | 边界 |
| --- | --- | --- |
| 计算与任务 | `php tests/assessment_readiness.php --worker-stopped` 54项通过 | 含11/14=79、8/9=89、other分母、零值有效、invalid/一致性优先、未发布null、策略/快照损坏不调用模型、重试复用、旧目标版本、拒绝无依据/重复引用和审批承诺 |
| 需求与旧报告回归 | assessment_demand.php 76项、finance.php 41项、analysis_http.php 15项通过 | 本轮不运行含全库recover扫描的29项脚本,不修改原业务待处理任务 |
| 页面检查 | 标题与路由/记录编号一致,非空、无框架错误遮罩;最终0错误/0警告 | 开发框架刷新产生子页面,切换旧报告后完整刷新核对实际编号,不能仅凭地址判通过 |
| 真实接口H5 | 合成账号登录→报告79%/三项待补→历史→企业详情→报告100%→刷新;未发布无分、旧v1不添完整度均通过 | 报告由真实后端及数据库生成、假模型输出;不是DeepSeek真实语义或渠道验收 |
| 金额与来源 | 123456.78元显示12.345678万元、年营收100.000001万元、经营0个月;证据标签来自实际fact引用 | 姓名/手机/证件/企业名/城市职业自由文本/用途说明不发送模型 |
| 编译与语法 | Web和Android编译通过,相关12个PHP文件lint通过 | Web保留原layout.uts提示;最终Android编译11:47:22通过;无正式发行/真机结论 |
| 数据 | 无迁移、新表、原业务输入/历史报告重写;测试仅创建合成账户和记录 | 合成账号/4条UI报告及令牌已清理,测试服务已停;最终25表、1个原会员及其1条processing评估/会话保留,未启动真实模型worker |
截图:[个人需求与完整度](<C:/Users/JUN/AppData/Local/Temp/airz-readiness-qa/report-personal-mobile.png>)、[准备依据](<C:/Users/JUN/AppData/Local/Temp/airz-readiness-qa/readiness-mobile.png>)、[企业报告桌面](<C:/Users/JUN/AppData/Local/Temp/airz-readiness-qa/report-enterprise-desktop.png>)、[未发布规则](<C:/Users/JUN/AppData/Local/Temp/airz-readiness-qa/report-unpublished-desktop.png>)、[旧v1报告](<C:/Users/JUN/AppData/Local/Temp/airz-readiness-qa/report-legacy-desktop.png>)。截图均为合成资料/假模型,本地临时目录待正式归档。
下一步:报告v2真实模型和人工语义样例验收;DEC-MATCH确认准入三态、单产品需求覆盖及无评分排序,真实产品资料准备后实施PRODUCT-001/002/003/004。可先用合成样例测试确定性规则,但不得发布假产品或宣称真实匹配已完成。短信、外部查询、私有授权与生产队列守护仍为一期未完成项。
### 6.7 2026-09-24 报告v2真实输出复核
详见[独立验证记录](报告v2真实模型验证.md):直接调用现有prepare/messages/DeepSeekClient/parse,用内存合成资料,未入队/落库。初始两例因引用结构违规被拒,发现的越界语义一并收紧;修正后四例格式、数值保护、引用和语义复核通过。58项报告回归通过,相关PHP语法检查通过;无前端变更,不重复移动端构建。
外部调用6次:输入9369 tokens、输出2373 tokens;不虚构金额费用或长期成功率。未读取/修改会员输入,最终25表、1个原会员和1条processing评估/会话保持;未启动worker。存量任务、真实队列和页面本轮未重新验收,相关旧证据保留。
### 6.8 2026-09-24 本地提交持续分析中排障
用户反馈正式提交后持续“分析中”。检查确认 DeepSeek 已启用,但本机没有 `analysis:work` 进程;两条正式记录均为 `processing/queued`,尚未执行模型。14:37 启动后台分析进程后,两条任务均在首次尝试完成,状态转为 `succeeded/completed`;最新记录生成 v2,旧记录保持冻结的 v1 目标版本。正式报告读取服务校验通过,数据库报告版本一致,调用日志无错误。
本次由正式任务产生 Flash 调用两次,输入合计2368 tokens、输出636 tokens,分别耗时5951ms和3093ms。恢复补投产生的重复队列项未重复调用模型,两条记录各有一条 completed 调用记录。仅核对状态、报告结构及用量,未将用户填写内容写入文档。本轮未重新验收浏览器呈现、失败重试或生产守护,不能记为全链路验收完成。
前后端 README 已补本地队列启动、重启及测试前停进程说明。当前开发进程保持后台运行,未配置开机自启或生产守护;电脑重启后需按 README 重启分析进程。业务代码及数据库结构未变更,已有报告与任务记录通过正式队列流程生成。
### 6.9 2026-09-24 异常流程、权限及H5验收
关联ASSESS-002/003/004、REPORT-002/004。修复分析页重试提交期间手动刷新可能覆盖回执的问题;查询失败后清除旧重试/报告按钮。后端共用摘要现在区分排队/运行,并在排队60秒、运行90秒时给出等待提示;不新建任务、不增加调用次数、不改写processing状态。
| 验证 | 本轮结果 | 证据及边界 |
| --- | --- | --- |
| 任务故障与并发 | analysis_tasks.php 31项通过 | 非法报告、超时/权限/限流/网络异常、配额、补投、过期租约、迟到结果;新增两个独立进程并发重试,仅一次预留;消费者并发仅一次模型调用。使用假模型及租约模拟,非生产崩溃演练 |
| 报告v2 HTTP | analysis_http.php 36项通过 | 排队/运行/耗时提示、超时重试、上下文保持、完成后旧键回放;匿名401、跨账户404/列表隔离、成功后禁止新重试;账户资料修改/退出重新登录后报告不变 |
| 需求及报告回归 | assessment_demand.php 76项、assessment_readiness.php 58项通过 | 提交并发/重复键/输入冲突、金额与版本、执行策略冻结、v1兼容、v2严格结构与证据校验;共201项 |
| 页面身份、非空、错误覆盖层 | 通过 | Chromium,http://localhost:5175/,标题AI融资;分析页→报告→历史,内容非空且无框架错误覆盖层 |
| 交互 | 通过 | 390×844:长排队→长运行→超时失败;状态503后隐藏重试、刷新恢复;双击仅一次重试;后端接受但响应503,再次点击同requestId/taskId;重试期间刷新不额外发状态请求 |
| 报告与历史 | 通过 | 重试成功后打开v2报告、刷新保留12.345678万元;历史入口正确;历史另以1280×800查看,无明显裁切/重叠 |
| 控制台 | 预期故障已解释 | 注入的status/retry两个503各有资源错误;恢复并刷新后无error/warning,无未解释的运行时错误 |
| 构建与语法 | 通过 | HBuilderX 5.26 Web/Android编译通过,3个本轮修改PHP文件lint通过;Web仍有既有layout.uts类型提示,未扩大修改 |
| 数据与运行恢复 | 通过 | 合成用户/评估/会话/测试队列已清理,测试服务停止;最终25表、1个原会员、2条原成功评估/会话、0合成用户;正式analysis:work已恢复后台运行 |
浏览器路径:Browser插件及browser技能未提供(Browser plugin not available),按前端测试技能使用已安装Playwright CLI,未安装依赖。前端真实页面请求转发至127.0.0.1:18769隔离测试服务;模型使用ReadinessFakeClient,状态503及回执丢失由浏览器路由注入。无收费模型调用、数据库迁移或产品发布。隔离服务最初的组合启动命令被工具策略拦截后,改为单独本机命令成功启动。
可复跑命令(先停全部正式worker,逐条执行并确认PASS,完成清理后再恢复):`php tests/analysis_tasks.php --worker-stopped`、`php tests/analysis_http.php --worker-stopped`、`php tests/assessment_demand.php --worker-stopped`、`php tests/assessment_readiness.php --worker-stopped`。首次并发测试断言误把JSON对象键顺序作为差异,已改成比较字段和值后通过;首次浏览器脚本误将首页别名#/当成固定/pages/home/home、延迟函数不适用CLI沙箱,均调整测试脚本后复验通过。
截图均为合成资料:[排队提示](<C:/Users/JUN/AppData/Local/Temp/airz-analysis-acceptance/queued-mobile.png>)、[运行等待](<C:/Users/JUN/AppData/Local/Temp/airz-analysis-acceptance/running-mobile.png>)、[失败重试](<C:/Users/JUN/AppData/Local/Temp/airz-analysis-acceptance/failed-mobile.png>)、[查询错误](<C:/Users/JUN/AppData/Local/Temp/airz-analysis-acceptance/status-error-mobile.png>)、[重试后排队](<C:/Users/JUN/AppData/Local/Temp/airz-analysis-acceptance/retry-queued-mobile.png>)、[报告刷新](<C:/Users/JUN/AppData/Local/Temp/airz-analysis-acceptance/report-mobile.png>)、[手机历史](<C:/Users/JUN/AppData/Local/Temp/airz-analysis-acceptance/history-mobile.png>)、[桌面历史](<C:/Users/JUN/AppData/Local/Temp/airz-analysis-acceptance/history-desktop.png>)。
剩余:微信内H5、Safari/真机、生产并发与进程守护、供应商真实故障计费对账、业务负责人签收未验收。下一步为PRODUCT-001规则口径确认与PRODUCT-002确定性执行器;真实产品未准备时仅做合成规则测试,不发布模拟产品或显示真实推荐。
### 6.10 2026-09-24 原型补齐与规则基础
交付[04—10页面方案](原型04-10页面改造与跳转方案.md)及[产品规则开发契约](产品匹配规则开发契约.md),同步开发文档和63项台账。明确新增compare/next-step两页,PDF不新增页面;公共资料与本次匹配详情分离,同评估对比和助手上下文、PDF鉴权、空白重新评估及返回路径均已列出。现有页面未改版,pages.json未注册新路由,不把规划算成页面验收。
后端新增ProductMatchRules纯模块及product_match_rules.php。64项内存测试通过,覆盖元金额精度、包含边界、类型/空值、fail优先但保留unknown、来源门槛、other人工核实、代码地区、产品级证据ID、确定性和非法规则。PHP语法通过;不连接数据库/Redis/模型,不需要停worker。返回的是已适用规则集合的局部判定,不能绕过上架校验/目录编译直接作为真实推荐。
文档检查通过:63项任务编号、依赖及工时在两份主文档一致,任务依赖无环,当前25个路由保持;新增文档相对链接有效,修改文本UTF-8无BOM。正式产品报告后端先于匹配页面、页面再进入报告联调,已调整对应依赖避免按旧顺序等待前端。
本轮没有产品录入、数据库迁移、正式worker行为修改、模型调用或生图调用;此前本地分析进程继续运行。已检查用户指定img2-right.py的参数及异步提交/轮询/下载方法,未读取其私密凭据、未改脚本。页面组件/图标优先复用,确需位图时再按指定方法生成。
下一步:PRODUCT-003产品发布预检与字段/地区/用途来源编译;再补PRODUCT-002冻结目录、稳定排序、理由模板和正式评估集成,随后按04—10方案接页面。真实产品尚未提供时只用合成样例验证,仍不发布假产品。
### 6.11 2026-09-24 产品发布预检与规则编译
交付ProductPublication、Product模型保存预检、合成资料fixture及两份专项测试。金额保持数据库元字符串、年化利率保持百分比;独立额度/期限不能被补充规则覆盖。地区复用现有城市白名单,明确全国和未配置不同;按个人/企业分支编译用途、收入/经营要求,保留not_applicable依据。来源资料需可核对,校验本身不证明真实有效。
| 验证 | 结果 | 覆盖及边界 |
| --- | --- | --- |
| product_publication.php | 73项通过 | 必填/来源/用途/地区、金额精度、日期/过期、对象作用域、保留字段、条件上限、缺失/other、来源门槛、错误分支和确定性编译;纯内存 |
| product_publication_model.php | 16项通过 | 草稿兼容、上架/修改、局部更新、旧模型按最新行校验、版本防指定、整批回滚、旧品下架;产品前后记录一致 |
| product_match_rules.php | 64项通过 | 三态、精确边界、来源和证据回归 |
| finance.php | 41项通过 | 更新合成产品fixture以满足新发布契约;金额/账户/评估生命周期/快照和模板基础回归,合成数据库记录回滚、Redis测试会话清理 |
| PHP与文档 | PHP语法、diff检查、UTF-8无BOM通过;63项任务编号/依赖/工时一致且无环,25条现有路由及文档链接检查通过 | 未修改页面/模板,不宣称浏览器或真实产品联调通过 |
模型save将锁定最新记录、合并变更、发布预检及写入纳入同一事务,避免部分修改绕过检查;默认后台add/edit/multi均走该模型。旧rules格式只允许存草稿,已上架旧品可直接下架后完善。未迁移或批量修改已有产品,合成产品未提交发布;数据库事务可能正常消耗自增编号,不影响业务记录。
正式analysis:work保持运行;本轮测试不进行全库恢复扫描、不派发评估队列、不调用DeepSeek。收尾只读检查:25表、1原会员、2条原成功评估/会话,0合成评估测试会员。194项通过仅覆盖内部实现,缺少真实产品资料仍阻止正式产品验收。下一步:目录筛选与执行快照冻结、稳定ID排序和证据理由模板,然后接入正式评估及04—10页面。
### 6.12 2026-09-24 目录冻结、匹配任务及演示产品
完成ProductMatching、matching开关、needs-report-v2-match-v1分支、v2落库复算校验及报告真实匹配统计适配。来源与条件由规则解释,模型不决定候选与排序;单产品AI解释not_requested。目录上限100条上架记录/2MiB,超限或配置损坏明确失败,不截断;旧目录和旧unavailable分支兼容。
数据库新增6条演示产品,switch=1、version=1,ID22—27;金额元字符串,名称/来源注明演示。首次seed --apply创建6条,再次全部kept_existing。文件、命令与参数表见[规则契约第7节](产品匹配规则开发契约.md)。用户“直接入当前库”的要求覆盖前序“不得发布模拟产品”的本地实施限制,不改变正式上线须真实产品的验收标准。
| 验证 | 结果 | 边界 |
| --- | --- | --- |
| product_matching.php | 51项通过 | 合成目录三态、筛选/摘要/排序、证据引用、null值、来源、隐私、配置/快照失败 |
| product_matching_tasks.php --worker-stopped | 19项通过 | 正式提交/任务/结果落库,个人2符合1不符1待核实、企业2符合1不符,冻结重试、开关、旧引擎、失败无部分报告;假模型 |
| readiness / tasks / HTTP / demand | 58 / 31 / 36 / 76项通过 | 需求、报告、任务及HTTP回归;完整度专项显式关闭匹配以保留无匹配支线测试 |
| publication / publication_model / rules / finance | 73 / 16 / 64 / 41项通过 | 发布、模型事务及基础回归;合计465项 |
| Web / Android | HBuilderX 5.26编译通过 | 非正式发行或真机验收 |
| H5联调 | Chromium,localhost:5174,390×844及1280×900通过 | 合成账号真实登录→真实报告接口(假模型报告)→统计→刷新→历史;无空白或框架遮罩,万元保持 |
Browser插件/browser技能未提供,按frontend-testing-debugging及Playwright技能使用已有Playwright CLI(Browser plugin not available),未安装依赖。测试API经浏览器转发至127.0.0.1:18769隔离服务。初次脚本点击协议文字未勾选,改点实际复选区后通过;脚本直接改变hash从档案回报告时出现一次框架attachVmProps挂载错误,完整刷新后重复报告→历史→刷新无新增错误/警告,未为开发框架现象改无关代码。
截图:[手机报告统计](<C:/Users/JUN/AppData/Local/Temp/airz-product-matching-qa/report-mobile.png>)、[桌面报告统计](<C:/Users/JUN/AppData/Local/Temp/airz-product-matching-qa/report-desktop.png>)。关键约束保留中文注释,无迁移、新增表或收费模型调用。测试账户/评估/会话/队列及隔离服务收尾清理,6条演示产品保留,正式worker在测试后重启加载新代码。
未验收:新提示的真实DeepSeek语义、真实产品与渠道、微信内H5和真机、匹配列表/详情接口及04—10页面。下一步:按评估ID提供冻结匹配分页/详情,校验归属和游标,再接产品详情三栏及匹配结果页面。
收尾验证:正式worker已恢复(本次PID34404,错误日志为空);原1会员、2条成功评估/会话、25表保留,测试账户及队列清理。6条演示产品保留,种子文件预检再次通过。63项任务编号/依赖/工时一致且无环、25条现有路由、文档链接、UTF-8无BOM和diff检查通过。
### 6.13 2026-09-24 匹配读取API与03/04/05/06页面验证
本轮完成范围:本人匹配分页/详情、会员公共产品详情,报告入口、匹配三态列表、产品解释/资料/条件三栏。任务PRODUCT-004保持开发中,PRODUCT-003公共详情部分有实现证据,其他工时和依赖未改。
| 检查 | 环境/结果 | 覆盖及限制 |
| --- | --- | --- |
| match_records.php --worker-stopped | PHP7.4/MySQL/Redis,62项通过 | HTTP鉴权/所有权/GET限制、分页三态/游标、旧报告、损坏快照、重复GET无副作用;下架/过期/删除/改价的历史稳定性用事务回滚验证;假模型不调用供应商 |
| Web编译 | HBuilderX5.26,成功 | 开发服务初始存在layout.uts既有类型提示,不是本轮新增;浏览器业务运行正常 |
| Android编译 | HBuilderX5.26,成功 | 修复分组对象Any?类型后Kotlin/class通过;未做真机测试 |
| H5主链路 | Chromium,390×844、1280×900,通过 | 登录→报告→本次匹配→详情三栏→展开理由→返回→不符/待核实;刷新同一评估、万元精度0.800001/12.345678;无框架错误遮罩 |
| H5边界 | 同浏览器,通过 | 公共模式无个人解释、无ID引导及新评估、越权404不回退、查看更多无重复、网络失败后重新加载成功 |
浏览器使用Playwright CLI,原因:本会话没有Browser插件及browser技能(Browser plugin not available)。分页UI测试仅将真实API请求limit改为1,使现有两个候选产生第二页,不伪造响应。网络失败为一次主动abort,用于验证重试;控制台出现预期net::ERR_FAILED,正常主链路无运行错误/警告。测试工具脚本曾因运行环境没有URL构造器失败,改用字符串替换后复验通过,未因此修改业务代码。
截图:[手机匹配](<C:/Users/JUN/AppData/Local/Temp/airz-match-pages-qa/matches-mobile.png>)、[手机产品](<C:/Users/JUN/AppData/Local/Temp/airz-match-pages-qa/product-mobile.png>)、[待核实原因](<C:/Users/JUN/AppData/Local/Temp/airz-match-pages-qa/unknown-mobile.png>)、[桌面产品](<C:/Users/JUN/AppData/Local/Temp/airz-match-pages-qa/product-desktop.png>)。临时截图不是正式发布验收档案。
剩余:单产品AI解释尚未生成;真实产品与人工样例签收、微信内H5/Safari/真机未验证;返回列表首屏/原路登录恢复待完善。下一步按既定页面方案推进PRODUCT-005同评估2—3产品对比,再接REPORT-004报告三栏;PDF、行动页和上下文助手独立验收。本轮无迁移/新增表,无收费模型调用。
收尾:合成账户/评估/会话/队列和隔离HTTP服务已清理;原1会员、2条成功评估/会话、25张表保留,syntheticUsers=0。正式分析worker已恢复(本轮PID21560),错误日志为空;6条本地演示产品继续保留。63项任务编号/依赖/工时一致且无环,25条路由、文档链接、UTF-8无BOM及git diff --check通过。
### 6.14 2026-09-28 融资档案布局恢复与只读交互验证
对应ASSESS-004、REPORT-004的档案展示子项,原任务编号/依赖/估时不变,不将页面改造计为一期整体验收。保留截图中的分段切换、蓝色完整度卡片、四组图标/资料卡及蓝色主按钮;与旧图的有意差异为新增历史选择、只读展开、查看报告/新评估双入口,移除草稿保存与继续编辑。旧assessmentId深链仍可读取本人记录。
| 检查 | 结果与证据 | 范围限制 |
| --- | --- | --- |
| Web、Android、微信小程序编译 | HBuilderX5.26通过;Android将不支持的baseline对齐修正为flex-end | Web保留layout.uts既有类型提示;小程序未进行微信开发者工具/真机验证,Android未真机运行 |
| 主流程 | Chromium,http://localhost:5175/,390×844与1280×900通过;有页面标题、非空内容、无框架遮罩 | Browser plugin not available,沿用已有Playwright CLI,无安装新依赖 |
| 真实接口链路 | 随机合成账户+2条个人/1条企业记录+假模型报告:类型过滤、历史选择/刷新、分组只读展开、金额12.345678/0.800001/100.000001万元、0经营月数、同次报告入口、新评估入口通过 | 真实本地PHP/MySQL/Redis读接口,假模型不调用供应商;非真实用户资料 |
| 分页与边界 | 历史请求limit临时转为1验证第二页、无重复;他人评估161返回真实404且无最新记录回退 | 仅测试请求改limit,业务默认20;不改数据库已有历史 |
| UI异常分支 | 浏览器响应拦截验证空记录、v1未计算、processing/failed不请求报告、报告断网后可看资料并重试、401清除页面资料并转登录 | 这些分支为受控响应/网络故障注入,不代表供应商或生产环境验收 |
| 控制台 | 正常操作无业务错误/警告;故障注入对应预期网络错误、越权404及会话401 | 初次浏览器导航受启动时序影响中断、重复登录脚本在已登录页等待超时;回到正确页面后重新验证通过 |
[手机档案](<C:/Users/JUN/AppData/Local/Temp/airz-archive-20260928/archive-mobile.png>)、[企业档案](<C:/Users/JUN/AppData/Local/Temp/airz-archive-20260928/archive-enterprise-mobile.png>)、[空档案](<C:/Users/JUN/AppData/Local/Temp/airz-archive-20260928/archive-empty-mobile.png>)、[桌面档案](<C:/Users/JUN/AppData/Local/Temp/airz-archive-20260928/archive-desktop.png>)。截图为临时验证证据。
尚未验证:微信内置浏览器、小程序与Android/iOS真机;账户切换并发采用代码中的Token/请求序号/离页清理防护,本轮通过401清理验证但未做完整双账户并发压力测试。后续计划仍为PRODUCT-005产品对比及REPORT-004报告三栏,不恢复草稿功能。
收尾记录:本轮合成账户、3条评估/会话和测试队列已清理,隔离HTTP服务已停止;保留原1会员、2条成功评估/会话、25张表,syntheticUsers=0。正式分析worker已恢复(PID44028),错误日志为空。最终Android编译通过,UTF-8无BOM、文档63项任务/依赖/估时一致及diff检查通过。
### 6.15 2026-09-28 个人中心入口去重验证
对应ASSESS-004/REPORT-004的入口体验,任务编号/依赖/工时不变。修改profile/profile.uvue、新增账户分包services/latest-report.uts;未改后端、未执行迁移或数据库写入、未调用模型。
- HBuilderX5.26:Web、Android、微信小程序本地编译通过;微信/Android/iOS真机尚未验证。
- Chromium,http://localhost:5175/,390×844及1280×900:页面标题/内容正确,三个图标入口对齐,无框架遮罩。使用已有Playwright CLI,原因Browser plugin not available。
- 浏览器使用拦截的合成登录/账户/评估/报告响应验证入口行为,没有使用真实账户或写库:未登录跳登录;个人/企业选择进入对应entry;最近成功报告直接打开指定ID;无成功时提示处理中并进入该任务;全空/无可用报告提示后可取消;融资档案仍进入历史;网络失败后再次点击成功。
- 检查成功路径只请求status=succeeded&limit=1,空成功路径再请求processing;通过延迟响应验证连续点击只发一次请求、离页后响应不抢跳;401回到登录。真实服务已有status筛选/ID倒序/limit实现,本轮未增加后端逻辑,也未将合成响应验证视为生产联调。
- 正常路径无业务控制台错误/警告;故障注入的net::ERR_FAILED与401为预期。最终文本UTF-8无BOM、diff检查及文档63项任务一致性检查通过。
截图:[手机个人中心](<C:/Users/JUN/AppData/Local/Temp/airz-profile-20260928/profile-mobile.png>)、[桌面个人中心](<C:/Users/JUN/AppData/Local/Temp/airz-profile-20260928/profile-desktop.png>)。测试脚本及截图在临时目录,不引入生产模拟数据。浏览器测试会话完成后关闭。
### 6.16 2026-09-28 原型07产品对比验证
PRODUCT-005基础实现,状态待验收;原依赖PRODUCT-004、1.5–2.5人日估算及63个任务编号不变。新增compare页面和选择服务,修改匹配列表/详情入口、冻结详情元数据适配及pages.json。26个注册页面(融资分包10页),不新增后端接口、业务表或数据库迁移。
| 检查 | 结果与证据 | 验证边界 |
| --- | --- | --- |
| 编译 | HBuilderX5.26的Web、Android、微信小程序本地编译通过 | Web已有layout.uts类型提示保留;Android不支持百分比min-width,已将该桌面样式限制为非App;非真机运行结论 |
| 主流程 | Chromium,http://localhost:5173/;390×844及1280×900。列表跨分组加入2/3项→对比→详情→返回→补选;上限提示、3→2→1→0移除、单产品详情加入、URL刷新均通过 | 使用已有Playwright CLI,Browser plugin not available,无新安装依赖 |
| 真实接口 | 临时随机合成账户与假模型完成的个人评估,经真实PHP/MySQL/Redis读取;符合22、不符23、待核实24各列正确,产品顺序保持,金额12.345678/0.800001万元精度保留 | 6条演示产品,无真实机构资料验收,不调用收费模型,不更改原2条成功评估 |
| 权限与参数 | 非法评估ID、重复/超3/带前导零/空段产品ID拦截;无效产品参数不发详情请求;他人评估161和不在本次目录的产品25真实404,无公共产品回退 | 不将错误结果当作完整对比,不自动改查最新评估 |
| 故障注入 | 单列断网仅重试该列;assessmentId错配与catalogSnapshotId不同拒绝;缺失额度/期限显示未提供;下架保留历史且标识当前不可用;401跳登录 | 以上变体通过浏览器拦截,不改数据库或供应商服务;最多3个详情请求并行 |
| 生命周期 | 延迟列在离页后明确释放并收到响应,页面保持在匹配列表,不恢复旧列;刷新重新鉴权 | 尚未做双真实账户并发压力测试;选择内存按账户/Token/评估隔离 |
| 视觉及控制台 | 页面标题/内容非空、无框架遮罩;首列横向不移动,产品区可横滚,桌面列宽展开。正常流程无业务控制台错误/警告 | 故障注入的ERR_FAILED、404、401为预期;长单元格内部上下滚动,微信内H5/Safari及真机待测 |
脚本和截图位于临时目录airz-compare-20260928:flow.js、interactions.js、edges.js、late.js;其中异常深链测试通过完整导航/刷新独立载入各参数。初次滚动检测误选嵌套单元格滚动容器,修正选择器后验证通过;不把脚本定位失败计为业务通过。图示:[手机对比](<C:/Users/JUN/AppData/Local/Temp/airz-compare-20260928/compare-mobile.png>)、[手机横向滚动](<C:/Users/JUN/AppData/Local/Temp/airz-compare-20260928/compare-mobile-scrolled.png>)、[桌面对比](<C:/Users/JUN/AppData/Local/Temp/airz-compare-20260928/compare-desktop.png>)、[失败列](<C:/Users/JUN/AppData/Local/Temp/airz-compare-20260928/compare-failed-column.png>)。
下一步:REPORT-004报告三栏;单产品AI解释、PDF、上下文助手和行动页仍分别开发与验收。真实产品/人工金标准及微信内H5、真机尚未验收,不将PRODUCT-005记为整体已完成。
收尾:合成账户、评估/会话、会话Token及隔离队列已清理;测试HTTP服务与浏览器会话已关闭。正式分析worker已恢复(本轮PID28124),错误日志为空;原1会员、2条成功评估/会话、25张表保留,syntheticUsers=0。63项任务编号/依赖/工时一致且无环,当前26路由、相对链接、UTF-8无BOM与diff检查通过;无提交、推送或发布。
### 6.17 2026-09-28 原型09报告三栏验证
REPORT-004三栏页面子项完成本地联调,整体仍开发中。改动report/report.uvue、records.uts报告适配、matches.uts列表元数据及matches/matches.uvue离页渲染守卫;保留26个页面、63项任务、原依赖与估时。后端业务未修改,无迁移、无新增表、无收费模型调用。
| 检查 | 结果与证据 | 范围限制 |
| --- | --- | --- |
| 编译 | HBuilderX5.26的Web、Android、微信小程序本地编译通过 | Web既有layout.uts类型提示保留;没有微信开发者工具、Android/iOS真机或发行验证 |
| 主流程与视觉 | Chromium,http://localhost:5173/,390×844与1280×900;标题、非空页面、无框架遮罩;三栏切换/刷新、展开事实/逐项完整度、产品详情返回、分组入口、历史入口通过 | Browser plugin not available,沿用现有Playwright CLI;无新依赖安装,未做微信内H5/Safari验收 |
| 真实接口数据 | 随机合成账号,2份个人/1份企业评估,假模型报告;读取真实PHP/MySQL/Redis,金额12.345678、0.800001、100.000001万元与经营0个月保留;企业100%及个人缺失字段正确 | 不使用真实用户资料,演示产品不代表真实机构资料验收;原2条历史报告未修改 |
| 请求与跳转 | 概况不查询匹配;候选limit=3,改善分组各limit=3;流程登录后只有GET,无提交/重试分析写请求;重新评估选择主体进入空白表单 | 未恢复草稿或复制旧报告资料;PDF/下一步行动/上下文助手独立排期 |
| 旧版与空状态 | 浏览器受控响应验证v1三栏兼容且不请求匹配,未发布完整度显示“—”,真实0%不当缺失;未匹配与已匹配零候选区分,不补假卡片 | v1/策略变体为合成响应,没有重写已有报告;不据此认定所有生产历史格式均已覆盖 |
| 独立失败与边界 | 候选失败只重试候选,建议某组失败保留另组;目录版本不一致不显示卡片;下架保留历史参数;AI建议显示关联字段;不支持报告版本提示错误,报告断网可重试 | 异常为浏览器故障注入,非真实供应商故障;三态统计/冻结版本校验使用真实DTO |
| 权限与生命周期 | 无效ID/tab不请求API;他人评估161真实404不回退;401清理并回登录;候选延迟响应在切到概况后释放,不能恢复旧卡片 | 本轮未做双真实账户并发压力;Token/请求序号/可见性守卫保留 |
| 返回回归 | 定位Matches卸载时重建空状态引发的attachVmProps挂载错误;增加pageActive守卫,先关闭渲染再清理;重新加载后连续3次列表→返回→切栏无控制台错误/警告,延迟测试同样无错误 | 热更新期间旧页面实例仍可能保留旧生命周期;最终证据来自完整重新载入后的脚本 |
脚本和截图位于临时目录airz-report-tabs-20260928:flow.js、edges.js、navigation.js、late.js、capture.js。最初API路由拦截未命中,改用**/api/v1/**并确认隔离HTTP服务收到请求后重跑通过。正常流程最终无业务控制台错误,故障注入ERR_FAILED/404/401为预期;未将前期失败掩盖为通过。
截图:[概况手机](<C:/Users/JUN/AppData/Local/Temp/airz-report-tabs-20260928/overview-mobile.png>)、[匹配手机](<C:/Users/JUN/AppData/Local/Temp/airz-report-tabs-20260928/matches-mobile.png>)、[改善手机](<C:/Users/JUN/AppData/Local/Temp/airz-report-tabs-20260928/improvements-mobile.png>)、[产品依据](<C:/Users/JUN/AppData/Local/Temp/airz-report-tabs-20260928/improvements-evidence-mobile.png>)、[概况桌面](<C:/Users/JUN/AppData/Local/Temp/airz-report-tabs-20260928/overview-desktop.png>)、[匹配桌面](<C:/Users/JUN/AppData/Local/Temp/airz-report-tabs-20260928/matches-desktop.png>)。
后续建议按页面方案推进08上下文AI助手(CHAT模块),再衔接10行动页与09 PDF独立任务。真实产品/人工金标准、外部渠道、微信内H5及真机均仍待验收,不标整体验收完成。
收尾:随机合成账户、3条评估/会话、Token和隔离队列已清理,测试HTTP服务和浏览器会话已关闭;原1会员、2条成功评估/会话、25张表保持,syntheticUsers=0。本轮开始时未发现运行中的analysis:work,清理后已启动正式worker(PID33796),错误日志为空。文本编码、diff检查、63任务一致性与26条路由检查通过;未提交、推送或发布。
### 6.18 2026-09-28 原型04/05还原与单产品AI解释
本轮优先实现PRODUCT-004的04、05子范围。页面按原型还原机构头部、状态标签、三栏栏目、绿色推荐依据、橙色不推荐/注意事项、底部双按钮;真实匹配仍使用符合已知条件/条件不符/待核实三态,不展示原型中的匹配百分比、审批概率或虚构银行优势。额度、年化、期限移入产品详情;证据和来源保持可展开查看。
| 检查 | 结果与证据 | 验证边界 |
| --- | --- | --- |
| 后端回归 | `php tests/product_explanations.php --worker-stopped`通过51项;`php tests/match_records.php --worker-stopped`通过70项。覆盖鉴权、归属、POST参数、并发幂等、成功缓存、失败三次边界、用量记录、超时回收、迟到结果、快照/游标和删除记录 | 使用随机合成账户与假模型,测试前停止worker,结束自动清理;无迁移/新表 |
| 真实模型 | DeepSeek `deepseek-v4-flash-0731`调用成功,输入911—1087 tokens、输出235—315 tokens,耗时约2.9—4.5秒;保存逐条reasonId/text/evidenceRefs | 共6次真实Flash调用,4次成功、2次因理由顺序被旧校验拒绝;按ID集合校验修复后不符与待核实样例通过。未声称真实机构业务准确性,不记录密钥 |
| 前端主流程 | Chromium,H5 `http://localhost:5173/`;390×844、390×1000、1280×900。已保存解释读取、证据展开、产品详情/申请条件切换、失败重试、刷新保留queued、三态页面和底部操作通过 | Browser plugin不可用,使用Playwright CLI;未做微信内置浏览器、Safari、Android/iOS真机 |
| 故障与安全 | 轮询断网后规则理由仍保留并可手动查询;迟到响应不切回旧栏;下架保留历史参数且禁用资料准备;公共模式不显示AI栏;非法评估ID不发请求;越权不回退公共产品;401回登录;读取已保存结果不发POST | 故障为本地路由注入;未做多设备压力测试 |
| 视觉对照 | 已查看`docs/原型.jpg`原图及04/05放大局部;对照机构头部、绿色/橙色编号、三栏、底部按钮、白底密度五类要素。保存截图于`C:/Users/JUN/AppData/Local/Temp/airz-product-explanation-20260928/` | 原型中的真实银行Logo、92%匹配度、立即申请和咨询AI无已确认数据/接口,因此使用通用图标、状态标签、资料准备/对比入口并在页面说明 |
本轮新增接口和状态契约见`docs/产品匹配规则开发契约.md`第9节;不新增业务表或数据库迁移。analysis:work已恢复运行。下一步为原型08上下文助手,随后10行动页和09 PDF;真实产品资料与人工金标准提供后再做正式匹配验收。
6.18收尾补记:HBuilderX5.26 Android与微信小程序最终编译通过;H5运行页面身份正确、非空、无框架错误遮罩,最终三态读取流程无console.error/warn,不发POST。首次Android暴露UTS局部函数前向引用限制,调整声明顺序和轮询回调后修复。临时HTTP服务首次未指定public目录导致首页HTML响应,修正启动参数后重跑;早期脚本误用不存在的按钮文案和CLI环境未定义setTimeout,修正定位/等待后通过,不将脚本失败算作业务通过。
最终对照检查了机构头部、栏目文字/选中线、理由顺序和编号、字体与行距、底部按钮及桌面容器;原型单页小图不适合按原始像素直接作为可读手机界面,使用390×1000接近纵横比并同时检查390×844。长规则标题缩短重复核验模板,原始依据仍完整可展开。首屏有意差异为演示标记/通用图标、三态替代百分比、真实理由数量、资料准备和对比替代尚未接通的申请/咨询;说明见原型方案第8节。
截图:[04手机](<C:/Users/JUN/AppData/Local/Temp/airz-product-explanation-20260928/product04-mobile.png>)、[05手机](<C:/Users/JUN/AppData/Local/Temp/airz-product-explanation-20260928/product05-mobile.png>)、[04/05并排](<C:/Users/JUN/AppData/Local/Temp/airz-product-explanation-20260928/prototype04-05-result.png>)、[待核实](<C:/Users/JUN/AppData/Local/Temp/airz-product-explanation-20260928/product-unknown-mobile.png>)。测试脚本flow.js/retry.js/states.js/capture05.js/edges.js/final-capture.js均在同一临时目录;界面已保存输出来自真实Flash,基础评估报告由假模型生成。
合成账号及其评估/会话/日志、Token和隔离队列已清理,测试HTTP服务关闭,正式analysis:work恢复(PID50752);数据库仍为1会员、2成功评估/会话、25张表。63项编号/依赖/工时一致且无环、26路由、UTF-8无BOM、链接及diff检查通过;本轮没有执行git提交、推送或发布。
### 6.19 2026-09-28 原型08上下文助手实施与验证
- 界面按原型恢复机器人问候、快捷问题、聊天气泡和输入栏,新增紧凑上下文卡与历史对话。报告/单产品/对比入口、登录返回及H5 chatId刷新已接通。
- 后端AssistantChats/Assistant控制器、四组助手API、持久日志任务已实现。普通会话不占正式assessment_id;服务端冻结事实、同键幂等、三次重试、租约恢复、迟到只补用量、六轮历史裁剪及共享每日额度均已接入。API与边界见[助手契约](上下文AI助手开发契约.md)。
- 经本轮用户授权,停止空闲worker并备份后完成5项增量迁移,复跑0项;备份为后端相邻airz-backups/assistant-context-20260928-154651-271907。逐条对照确认原2份会话/2条日志未改写,原评估保留。数据库仍25表、1会员、2份评估/会话。
| 验证 | 结果 | 边界 |
| --- | --- | --- |
| 后端 | 助手70项、产品解释51项、分析任务31项、评估HTTP36项、匹配HTTP/快照70项通过 | 合成账户/假模型;无本轮收费模型调用 |
| 并发及故障 | 双进程发送串行;跨会话仅剩一次额度不会超扣;同键重放、三次重试、租约失效、迟到用量、归属及上下文冲突通过 | 修复MySQL旧快照导致序号竞争,关键查询使用锁定当前读 |
| H5 | Chromium390×844及1280×900;普通/评估/产品/对比、23轮分页、刷新、回执丢失、额度错误、失败重试、跨账号清理、真实密码登录返回通过 | Browser plugin not available,使用现有Playwright CLI;无安装依赖 |
| 编译及视觉 | HBuilderX5.26 Android、微信编译通过;最终页面非空、无框架遮罩,正常流程console.error/warn为0 | 原生端百分比max-width已修正;旧开发服务器未载入新登录代码,重启后复测通过;H5编译器仍提示共享layout既有类型声明警告,不是浏览器运行错误 |
| 清理 | 合成账号、评估、会话、日志、Token及队列已清理,隔离HTTP服务与浏览器关闭 | 截图及无凭据QA脚本保留临时目录,不提交仓库 |
截图:[普通助手](<C:/Users/JUN/AppData/Local/Temp/airz-assistant-20260928/assistant-normal-mobile-final.png>)、[上下文助手](<C:/Users/JUN/AppData/Local/Temp/airz-assistant-20260928/assistant-context-mobile-final.png>)、[桌面](<C:/Users/JUN/AppData/Local/Temp/airz-assistant-20260928/assistant-context-desktop-final.png>)。真实DeepSeek多轮语义、真实产品人工样例、微信内H5/Safari、真机键盘/安全区及生产容量未验收,不能将假模型联调描述成真实回复验收。CHAT-001—003待验收、CHAT-004开发中;原型10及09 PDF仍未开始。保留用户已有改动,未提交、推送或发布。
### 6.20 2026-09-28 原型10实施与验证
- 新增next-step页、主包白名单路由帮助函数和四个SVG图标;报告/产品/助手/登录入口增量接通。63项编号及依赖保持不变,REPORT-006待验收;无提交、推送或发布。
- H5 Chromium 390×844、1280×900:主流程14项、边界21项、导航及本机缓存3项,共38项通过。覆盖报告/产品入口、无产品选择、准备刷新、AI上下文往返、个人/企业空白重评、首页清栈、冷启动返回、越权、错误产品、参数、账户切换迟到响应及真实密码登录恢复。正常主流程无业务console.error/warn,无POST或模型请求。
- 主流程使用临时合成个人/企业成功报告和真实只读API;不符/待核实及跨账户拒绝也来自真实API。不可用、快照不一致、503、无匹配、旧版、未完成、迟到响应采用可控响应注入,未修改正式产品。登录验证单独发送登录POST,不能把只读页面测试说成无任何写入。
- 最终HBuilderX5.26 Android(17:04:58)及微信小程序(17:05:58)27页编译成功。共享layout既有H5类型警告保留,未做无关重构。真机、微信内H5/Safari、真实产品渠道未验收;08真实多轮语义仍待验收。
- 测试前确认worker空闲并停止,结束清理全部合成账号/评估/会话/日志/令牌/队列,关闭隔离HTTP和浏览器。恢复1会员、2评估/会话、2日志;原评估161/229会话摘要前后相同。正式worker恢复PID45420,H5最新服务5173(PID51832),新会话须重新检查PID。
- 证据目录:`C:/Users/JUN/AppData/Local/Temp/airz-next-step-20260928/`,包含无凭据QA脚本与verification.md;脚本中的__QA_FIXTURE__需由新合成数据注入。截图:[行动页手机](<C:/Users/JUN/AppData/Local/Temp/airz-next-step-20260928/actions-mobile.png>)、[材料准备手机](<C:/Users/JUN/AppData/Local/Temp/airz-next-step-20260928/prepare-mobile.png>)、[行动页桌面](<C:/Users/JUN/AppData/Local/Temp/airz-next-step-20260928/actions-desktop.png>)。
下一步实施REPORT-005 PDF导出;当前无下载按钮或虚假成功提示,不包含银行受理/授信/放款。
### 6.21 2026-09-28 PDF导出实施与验证
- 后端ReportPdf、Assessments::pdf、MatchRecords::exportSnapshot及report.pdf路由;前端ReportExport组件、report-export.uts下载器与report-route.uts登录白名单。只读本人成功报告,无迁移/新表/收费模型调用。依赖和部署见后端extend/report-pdf/README.md。
- `php tests/report_pdf.php`29项:精度、零值、最大金额、隐私字段与文本遮蔽、HTML转义、v1、未匹配/零候选、企业、关闭引擎503、真实PDF。样本通过Poppler逐页渲染、pdfplumber中文提取/隐私/页面边界检查,末尾版本说明整体分页,避免只剩免责声明的尾页。
- `php tests/report_pdf_http.php --worker-stopped`20项真实HTTP:401/404/409 JSON、no-store、合法二进制/MIME/安全文件名、重复下载不改报告与调用日志、不查询当前产品目录、损坏/撤销会话拒绝。合成账号/评估/日志/Token/队列及隔离服务已清理;没有真实模型调用。
- 浏览器使用Playwright CLI(Browser plugin not available),Chromium390×844/1280×900,24项检查通过:普通流程6项、边界18项。页面身份/非空/无框架浮层、正常流程console.error/warn为空;实际download事件文件可解析。API响应采用合成报告及后端生成的真实PDF注入;错误页、损坏、断网、503、401、离页、账号切换、微信UA提示均验证。不能把受控UI响应检查描述为浏览器完整真实后端联调;真实HTTP另由上项覆盖。真实密码登录回跳本轮未重跑。
- 最终HBuilderX5.26 Android17:34:03、微信小程序17:36:09编译通过。原生/小程序仅提示普通H5下载,不宣称原生保存可用;微信内H5/Safari/真机、生产并发容量仍未验收。共享layout既有H5类型警告保留。
- 自动审批曾拒绝一条“创建合成UI账号+启动隔离服务+浏览器”的组合命令,仅返回blocked by policy,未给具体理由;没有重试该组合或规避限制。已恢复worker,并采用无服务器凭据的受控浏览器响应完成UI检查。其他工具路径/定位问题修正后验证通过。
- 当前数据库1用户、2成功评估/会话、2日志、0待处理;原161/229报告会话摘要与执行前一致。worker PID34324、H5 5173/PID51832已核对运行,后续勿硬编码PID。无提交/推送/发布。
- 证据目录`C:/Users/JUN/AppData/Local/Temp/airz-report-pdf-20260928/`:personal/enterprise/legacy/unmatched/zero-candidates/long.pdf、http-personal.pdf、browser-report.pdf及对应渲染图;ui-flow.js/ui-edges.js只含不能访问服务器的合成会话标识。截图:[手机报告](<C:/Users/JUN/AppData/Local/Temp/airz-report-pdf-20260928/report-pdf-mobile.png>)、[桌面报告](<C:/Users/JUN/AppData/Local/Temp/airz-report-pdf-20260928/report-pdf-desktop.png>);[合成PDF样本](<C:/Users/JUN/AppData/Local/Temp/airz-report-pdf-20260928/personal.pdf>)。
REPORT-005待验收。下一步08真实DeepSeek多轮语义、真实产品人工样例与微信内H5/Safari/真机验收;真实模型调用会产生用量,应在具体样例及预算边界明确后执行。