Files
airz-uniapp/README.md
T
hujun b418969e92 refactor(login): move match-route logic to dedicated service and fix import
- 提取登录回跳、产品对比的路由匹配逻辑至独立的 match-route.uts 服务
- 修复登录页面导入对比服务的错误,改为导入新的 match-route 模块
- 保持原有的路由参数校验和跳转逻辑不变,仅重构代码结构
2026-10-12 09:28:09 +08:00

249 lines
50 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-10-10:产品AI条件分析与后台人工复核已按用户要求撤回,试点及其余20条接续取消;小程序修正和既有产品/匹配功能保持。见[回撤记录](docs/产品条件分析功能回撤记录-20261010.md)。
最新设备反馈(2026-10-09):用户确认小程序1.0.7已发行。已在前端修正缴纳时长排序/简写、基数万元重复和概况重复原因;本批修正版需重新发行,后端保持profile-grade-r4。45受控H5/32报告适配/31分包检查及微信/Android27页编译通过;发行时间/包摘要与修正版真机复核仍待。见[交接](docs/新会话交接.md)顶部,下方“待用户发行”为前轮状态。
最新(进度2.04/1.14、文档v1.72/0.85):小程序全部业务金额含社保/公积金基数统一万元,API/快照仍元两位小数。后端20261009-profile-grade-r4已配套发布新时长/基数、12档融资等级和PDF优化;小程序由用户从当前源码重新发行。53受控H5、微信/Android27页编译及31分包检查通过,真机/真实模型及正式验收待补。正式25条产品仍v2草稿。见[发布与发行说明](docs/后端配套发布与小程序发行-20261009.md)。
前轮本地优化记录(2026-10-09,本轮后端已配套发布):综合融资能力80%+资料完整度20%,A+至D-共12档;原型03匹配列表与PDF说明节删除。微信/Android编译、122分级/36PDF/62受控H5/31分包检查通过。规则见[融资能力分级规则](docs/融资能力分级规则.md),范围与未发布事项见开发进度2.02/1.12。该段记录开发时状态;当前后端已发布、小程序待用户发行,旧候选r3-mp1保持。
2026-10-09最新(进度2.01/1.11、文档v1.69/0.82):搜索旧响应竞态与反馈持久恢复H5组合78项检查通过(113合成请求/32POST),覆盖原键重试、浏览器重启、换账户和存储故障。业务源码未变,候选4346文件/产物摘要一致;本轮最终直接Vite预览使用导航前拦截,首次未拦截Built启动排除并说明只读访问无法确认。专用浏览器/storage/5175服务已清理;真机/多设备与正式验收待补。[本轮受控前端回执](D:/AAdesk/202609/airz-backups/frontend-content-recovery/airz-front-content-recovery-20261009/verification.json);下一项准备微信1.0.6目标端执行单与回执模板。
2026-10-09最新(进度2.00/1.10、文档v1.68/0.81):固定候选rc-20261009-r3-mp1的149前端/4197后端源码资产依赖摘要、63个正式用例与21前置条件。用户报告小程序1.0.6于09:35发行,上传源码摘要绑定仍待补;后端保持security-r3且线上AssessmentRecords变体单列。已有31项产物检查通过,正式用例未执行;本轮无生产/DB/模型/部署操作。下一项内部工作为搜索旧响应竞态和反馈持久恢复前端组合验证。见[候选与用例](docs/候选版本与验收用例-20261009.md)。
2026-10-09最新(进度1.99/1.09、文档v1.67/0.80):修复微信账号分包登录页跨引用融资compare服务导致的module未定义。纯路由逻辑迁至主包services/match-route.uts,原回跳参数和对比选择隔离保持。微信27页/Android class编译与31项生成产物回归通过;微信编译后可运行 `node scripts/test-match-route.cjs`。实际微信模拟器/真机待验证,小程序仍由用户自行发行,后端保持security-r3。详见[交接](docs/新会话交接.md)。
2026-10-08最新发布(进度1.98/1.08、文档v1.66/0.79):按用户本轮“部署一版”授权,已在既有airz.hqling.cloud发布9运行文件:内容CSRF8文件(包含超管批量字段限制)与历史匹配列表/导出重试权限修复。版本20261008-security-r3,85源码/依赖摘要核对通过;AssessmentRecords线上已审阅变体保持。只同步fa_config id4/version value与site.php版本,其余配置及维护期26表业务数据/结构一致,无业务数据导入或权限/账号/策略/积分变更。18:02:22完成私密备份、18:02:35发布、18:03:27恢复入口/worker,18:07:10最终复核(Asia/Shanghai)。20服务器HTTPS/22公网可信TLS检查及9文件定向恢复干跑通过;三服务active、活动评估/调用0、三队列0,worker心跳ready/idle且2秒新鲜。本次维护模型请求0,未触发生产评估或内容写入。12项发布工具文件/版本守卫与7语法检查通过;旧本地1794 PHP/63后台浏览器及主流程1666证据保持,不跨轮累计。小程序由用户自行部署,H5未发布;正式运营/真机/多设备和全模块签收未完成,RELEASE-001仍开发中/整体未验收,RELEASE-003阻塞、63任务/27页面保持。独立Linux测试机路线已取消,不再等待;本次既有worker恢复不替代Linux/systemd完整故障/守护验收。见[发布记录](D:/AAdesk/202609/airz/database/security-r3-release.md)和[连接说明](docs/生产部署连接.md)。下一项:收口已发布后端与用户自发小程序的候选版本及验收用例,固定源码摘要、已验证范围和外部阻塞;后续记录小程序发行版本/源码对应关系,不预填正式签收。
2026-10-08前轮开发(进度1.97/1.07、文档v1.65/0.78):完成资讯、课程、FAQ与旧协议新增/编辑/批量/删除的内容专用CSRF门禁:独立随机256位Session Token、仅POST请求体、缺失/错误/数组/跨会话/旧Token拒绝,成功及失败刷新,客户端手动重试、不自动重放。权限/撤权、类型和版本范围、超管批量仅合法status保持。8个运行文件配套,通用Backend/Form/Table与公开内容/整篇一次已读不改。新增CSRF627项/128次HTTP,内容组合522/147、课程服务56、内容HTTP362/90和后台权限227/158回归通过,本批五入口1794项/523次本机HTTP,模型0。实际Chromium宽1440×1000/窄390×844验证63项、18次内容POST,错误/警告/外部请求0;保存按钮与Token刷新/手动恢复、Table.api.multi及真实删除控件通过,手机保存按钮滚动后可见,不声称存在批量状态按钮或手机首屏保存。失败/重复运行及浏览器与PHP检查分开,不跨轮累计。说明见[内容CSRF](D:/AAdesk/202609/airz/database/content-csrf-regression.md)及[验收矩阵](docs/核心与权限验收矩阵.md)。所属合成环境已清理,未部署/提交。8个运行文件尚未部署;没有生产访问、真实worker/模型、外部消息、安装或提交/推送/PR。未重跑小程序/H5编译、搜索旧响应竞态、真实回执丢失/多设备恢复或真机/正式运营签收。RELEASE-001开发中/整体未验收,独立Linux测试机路线已取消、Linux/systemd未验证、RELEASE-003阻塞;63任务/27页面保持。下一项:RELEASE-001候选版本与验收用例收口:固定本地候选源码清单/摘要,关联已验证范围和剩余外部阻塞,形成可复核交付基线;不部署、不预填正式签收,不继续扩张同类回归工具。
2026-10-08前轮开发(进度1.96/1.06、文档v1.64/0.77):新增内容发布/下架与整篇课程已读组合518项、143次本机HTTP通过;原课程服务56、内容HTTP362、后台权限227项回归通过,本批四个入口共1163项、391次本机HTTP,模型调用0。红测试复现超管批量修改任意字段绕过内容编辑;ContentEditor::multi现统一只接受合法status,非法/混合字段拒绝,保留父类权限、类型范围及事务。仅这一trait修复,原业务改动和旧测试保持。说明见[内容组合](D:/AAdesk/202609/airz/database/content-flow-regression.md)及[验收矩阵](docs/核心与权限验收矩阵.md)。所属合成环境已清理,未部署/提交。RELEASE-001开发中/整体未验收;独立Linux测试机路线已取消,Linux/systemd未验证、RELEASE-003阻塞。63任务/27页面保持。下一项:后台内容写入CSRF门禁与配套表单/批量请求改造,覆盖资讯、课程、FAQ和旧协议;先缺失/错误/跨会话Token红测试,再补服务端校验和有效请求/Token刷新/撤权验证,全新本机合成环境、不改通用Backend。
2026-10-08前轮开发(进度1.95/1.05、文档v1.63/0.76):新增反馈处理/站内消息组合344项、97次本机HTTP通过;原反馈67、处理32、通知43、恢复24、账户281和后台权限227项回归通过,本批7个入口共1018项、324次本机HTTP,模型调用0。双会员/本人多会话与运营/技术/两名客服/超管贯穿原键提交、处理/回复、唯一通知/已读、退出/改密和重新登录恢复;验证角色权限/撤权、CSRF/旧版本/原文写入拒绝、跨用户消息和反馈隔离、回复修订/水位分页、通知或审计故障完整回滚及私密正文不进入通知/审计。新增[组合测试](D:/AAdesk/202609/airz/tests/feedback_message_flow.php),说明见[反馈消息组合](D:/AAdesk/202609/airz/database/feedback-message-regression.md)及[验收矩阵](docs/核心与权限验收矩阵.md)。未发现新的业务源码缺陷,测试环境已清理;未部署/提交。RELEASE-001仍开发中/整体未验收;独立Linux测试机路线已取消,Linux/systemd未验证、RELEASE-003阻塞。63任务/27页面保持。下一项:内容发布/下架→列表/搜索/详情→整篇课程一次已读的跨角色/跨账户组合回归,先用全新本机合成环境;不重复扩张告警模拟工具。
2026-10-08前轮开发(进度1.94/1.04、文档v1.62/0.75):新增后台五角色诊断/人工重试组合167项(41次本机HTTP、4次假调用),原后台权限227项(158请求)、针对性权限/隐私/诊断/重试/审计/服务用量575项和主流程280项回归通过;本批14个入口共1249项、199次本机HTTP、20次显式假调用,失败和重复运行不累计。已汇总[核心与权限验收矩阵](docs/核心与权限验收矩阵.md),说明见[后台组合](D:/AAdesk/202609/airz/database/admin-flow-regression.md)。本轮没有业务源码修复或部署。RELEASE-001保持开发中/整体未验收;独立Linux测试机路线已取消,Linux/systemd未验证、RELEASE-003仍阻塞。63任务/27页面保持。下一项:已有反馈处理与站内消息的跨角色/跨账户组合回归:会员原键提交→客服处理/回复→唯一通知/已读→退出或改密→重新登录/原键恢复;随后补内容发布/下架与整篇课程已读/搜索组合。
2026-10-08前轮开发(进度1.93/1.03、文档v1.61/0.74):新增会话撤销/跨账户权限/消息与助手组合检查375项、100次本机HTTP、8次显式假调用通过;原会话并发281、助手165、资料268、主流程280项回归通过,本轮五个入口共1369项,失败和重复运行不累计。本轮补组合测试,未发现新的业务缺陷,业务源码保持。见[组合说明](D:/AAdesk/202609/airz/database/session-assistant-regression.md)。RELEASE-001保持开发中/整体未验收;独立Linux测试机路线已取消,Linux/systemd未验证、RELEASE-003仍阻塞。63任务/27页面保持。下一项汇总RELEASE-001核心与权限验收矩阵,继续后台跨角色权限及评估排障/人工重试组合检查,明确剩余开发用例与正式签收条件。
2026-10-08前轮开发(进度1.92/1.02,文档v1.60/0.73):用户已取消独立Linux测试机路线,原执行方案存档,不再等待目标绑定;Linux/systemd未验证,RELEASE-003仍阻塞/正式未验收。个人/企业评估→报告→产品匹配组合检查280项通过;提交、版本并发、持久化、匹配读取/解释/任务/纯规则及历史报告/PDF相关回归共1666项通过。修复新报告发布后历史匹配列表和导出仍允许解释重试的问题,列表/详情/导出统一依据published_input_id计算权限;重评处理中或失败时,仍在发布的旧版保留重试权限,不能用isPreviousResult直接禁用。见[组合回归说明](D:/AAdesk/202609/airz/database/core-flow-regression.md)。RELEASE-001进入开发中,整体未验收;下一项继续RELEASE-001的会话撤销/跨账户权限、消息与助手组合回归,覆盖旧Token失效、资源归属、消息幂等与历史报告上下文;不重复同类告警模拟。
2026-10-08历史准备(进度1.91/1.01,独立机路线已取消):[真实Linux隔离执行方案](D:/AAdesk/202609/airz/database/worker-supervision/linux-execution-plan.md)已整理,待目标绑定;用户明确测试机尚未准备,本机无WSL发行版。原49/42回归共91项及历史核验通过,未冻结目标运行包或执行Linux服务/采样。下一步完成独立测试机核对、主控与可信采样适配,再冻结具体操作和恢复范围;RELEASE-003阻塞/正式未验收保持。
2026-10-08前轮开发(进度1.90/1.00):合成告警链统一预检和证据汇总完成,52项新测试/3 owned进程及原43/63/51/56/49/42回归共356项通过。见[链路契约](D:/AAdesk/202609/airz/database/worker-supervision/alert-chain.md);一致性/排空/合成就绪分别报告,7事件最终7模拟确认/7效果/2审计,样本过旧会阻止合成ready。正式未验收,下一项真实Linux隔离验证条件核对与冻结方案。
2026-10-08前轮开发(进度1.89/0.99):dead模拟回执对账和同事务人工恢复审计完成,匹配回执只补确认、无回执只grant一次且不清零尝试次数,43项新测试/9 owned进程和原63/51/56/49/42回归通过。见[恢复契约](D:/AAdesk/202609/airz/database/worker-supervision/alert-recovery.md);合成7事件恢复后7确认/7唯一效果/2审计。旧证据/四旧库保持,仅新合成账本,正式未验收;下一项合成告警链统一预检与证据汇总。
2026-10-08前轮开发(进度1.88/0.98):outbox有界调度/领取租约/失败退避和模拟接收端幂等完成,63项测试/12 owned进程通过并退出;7事件先模拟接收成功但超时再重投,最终7模拟确认/7唯一效果,源库不改。见[调度契约](D:/AAdesk/202609/airz/database/worker-supervision/alert-dispatch.md)。原51/56/49/42回归和历史证据保持,仅合成账本/进程内渠道,正式未验收;下一项dead事件回执对账与带审计人工恢复门禁,不接外部通知。
2026-10-08前轮开发(进度1.87/0.97):告警state/outbox本地SQLite原子保存、互斥/整批重试/eventId唯一与崩溃恢复完成,51项测试、10个owned进程通过并全部退出;24合成样本7事件,整批重试24跳过/0新增,模拟确认幂等。见[存储契约](D:/AAdesk/202609/airz/database/worker-supervision/alert-store.md)。原56/49/42回归与历史证据保持,仅合成文件/模拟确认,正式未验收;下一项outbox调度/领取租约/失败退避和模拟接收端幂等,不接外部通知。
2026-10-08前轮开发(进度1.86/0.96):告警连续门槛/去重/恢复与维护窗口处理完成,56项测试、24合成样本7事件/4维护重置通过;默认故障3次打开/健康2次恢复,纯状态/只读序列、无采集或投递。见[告警状态](D:/AAdesk/202609/airz/database/worker-supervision/alert-state.md)。原49/42项回归与历史回执保持,正式验收仍待办;下一项原子state/outbox保存、互斥和崩溃恢复,合成文件/模拟确认不投递。
2026-10-08前轮开发(进度1.85/0.95):Linux/systemd队列守护与告警离线准备完成,49项文件测试和10类PHP心跳兼容检查通过;合成unit/作用域spec/只读预检与安全告警预览见[隔离准备](D:/AAdesk/202609/airz/database/worker-supervision/README.md)。本机无systemd原生命令,未做真实信号/重启/开机或外部投递,正式验收保持待办。下一项连续失败门槛、故障去重/恢复及维护边界,仍合成序列不投递。
2026-10-08前轮开发(进度1.84/0.94):RELEASE-003部署恢复手册与只读证据入口完成,42项合成文件测试、五组14份回执/21不同源码核验通过;唯一历史共享工具hash差异由两个新回归明确覆盖,旧回执保持。校验器标准库/无DB或服务操作/默认stdout,formalAcceptance=false,清理只代表历史回执。见[恢复手册](D:/AAdesk/202609/airz/database/deployment-recovery-runbook.md)及[交接](docs/新会话交接.md)。下一项Linux/systemd守护与告警隔离准备,正式验收及生产条件待办。
2026-10-08前轮开发(进度1.83/0.93):全库恢复导入中断/部分目标保留/另建空库恢复92项通过,共享密钥恢复入口另一个新环境53项回归通过;真实客户端终止覆盖部分11表、32行未提交事务回滚、完整26表已落库但缺回执,非空重导拒绝且来源/现场保持。小合成样本恢复1.235秒,自己的进程/四端口停止,零生产/worker/模型执行。见[导入中断演练](D:/AAdesk/202609/airz/database/restore-interruption-rehearsal.md)和[交接](docs/新会话交接.md),下一项部署恢复手册/证据校验,生产守护告警及正式验收待办。
2026-10-08前轮开发(进度1.82/0.92):队列进程生命周期隔离演练76项通过,覆盖强制退出/重投/租约恢复/明确重试、并发迟到结果、心跳接管及MySQL/Redis实际中断重启。模型配置始终禁用,成功路径仅显式进程内替身,0真实模型网络调用;自己的进程和服务已停止。说明与接续见[队列演练](D:/AAdesk/202609/airz/database/queue-lifecycle-rehearsal.md)和[交接](docs/新会话交接.md),下一项全库导入中断/恢复耗时,生产守护/外部告警及正式验收待办。
2026-10-08前轮开发(进度1.81/0.91):合成26表/8触发器全库备份恢复及单独AES密钥恢复53项通过,错误密钥、损坏包/密文、客户端连接漂移和非空目标均拒绝,来源保持;自己的服务停止,零生产/worker/模型执行。说明及接续见[密钥恢复演练](D:/AAdesk/202609/airz/database/key-recovery-rehearsal.md)与[交接](docs/新会话交接.md),下一项队列进程生命周期,正式验收待办。
2026-10-08最新开发(进度1.80/0.90):r2新合成环境的实际增量部署、异常中断与定向恢复157项通过,覆盖13运行文件、权限/FAQ/课程简介/资源版本,保留发布后合成业务数据。零生产连接/worker/模型执行,隔离服务已停止;正式验收及RELEASE-003其余守护/灾难恢复证据仍待办。当前接续见[交接](docs/新会话交接.md)与[隔离演练说明](D:/AAdesk/202609/airz/database/release-rehearsal.md)。以下1.79/0.89仍为既有生产发布记录,不重复发布。
2026-10-08最新(进度1.79/0.89):后台与内容r2已按用户授权完成生产维护,13运行文件、16权限节点/3正式模板、8FAQ、课程ID1简介及资源版本上线;22服务器HTTPS与20公网可信TLS烟测通过,服务/队列恢复正常,0模型调用。账号密码/绑定、策略及学习进度保持,小程序仍由用户自行发行,暂不正式验收。当前状态与下一开发入口见[交接](docs/新会话交接.md)和[开发进度](docs/开发进度.md),下面“最新/未部署”日期段落均为历史快照。
2026-10-04最新(0.59):后台首次有效反馈回复已接站内服务通知,每条反馈最多一条;重复保存/修订不重复通知,反馈/审计/通知同事务。消息“查看回复”打开本人单条反馈,支持第一页以外记录、最新回复刷新及登录回跳,并防止换账户或迟到响应回填。后端142项、页面48项隔离检查及Android/微信27页面编译通过,未部署或正式验收;新目标类型需要配套更新前后端。测试库/Token已清除,隔离服务停止;私密临时文件删除被策略拒绝,精确ROOT见[交接](docs/新会话交接.md),不要直接复用或整体共享。下文保留历史阶段记录。
2026-10-04最新:会员反馈未知提交已支持离页、浏览器进程重启、退出/401及原账户重新登录后恢复原请求键和原文,恢复后由用户点击确认,不自动发送;存储故障阻止覆盖待确认记录,成功回执核对 `requestId` 后才清理。后端67项、页面93项隔离开发检查及Android/微信27页面编译通过,未开展正式验收。用户此前发布的小程序版本不包含本轮新增源码;这批前后端尚未部署/发行,新前端需要后端先或配套发布 `requestId` 回执,无新增DDL。测试库/Token已清除、隔离服务已停止,私密文件删除被自动审批拦截,精确路径及证据见[交接](docs/新会话交接.md)和[开发进度0.58](docs/开发进度.md)。H5发行、积分规则和正式迁移仍按各自记录处理,下文为历史阶段记录。
2026-10-01开发更新(0.49 / v1.42):积分 HTTP 协议与隔离开发检查已完成,真实87请求/1079项检查通过;显式Bearer、JSON Content-Type、三个唯一字符串字段、原始查询参数白名单及错误方法405已落实,跨域预检沿用既有入口。主服务238项、HTTP输入190项纯检查及原表23项只读预检通过;新增流水时间/正UINT主键校验,14类质量计数全0,原表仍需4增量。检查创建的独立合成数据库、Token及临时服务已清理,原两表和Redis队列摘要保持。积分仍默认关闭,业务规则未批准,前端页面尚未接入,未部署;最新见[开发进度0.49](docs/开发进度.md)和[积分契约](docs/积分规则与开发契约.md)。
迁移纯110项、独立合成库apply/完整备份/Windows ACL/恢复89项通过:仅复制共享库表结构,在新库合成2会员4流水,实际4增量后重复apply为0;双表schema和NDJSON备份在第二新库完整恢复、摘要一致。已修Windows原生备份路径校验并补路径边界纯检查。两自建库、私密INI/备份及权限probe已清理,原表未执行DDL。下一开发子项为积分页真实读取、登录恢复和原键确认,规则未发布时继续关闭签到。
以下0.48为上一轮后端基础记录;当前能力与检查以0.49为准。
2026-10-01开发更新:POINT-002 积分后端基础进入开发中,新增余额、规则、流水、签到和任务五个路由及领域服务;配置默认关闭,规则版本、奖励和权益/期限/等级策略均为null。旧后台score/level修改及旧User::score路径已封闭,既有level 0/1初始化保持。schema.sql增加期望的两字段/两索引及中文注释,显式迁移脚本已编写并通过只读预检,apply未运行。页面仍是本机体验签到,未接后端,不表示已实现页面真实到账。首阶段奖励额、权益、有效期和等级建议仍未获确认,DEC-POINT/POINT-001保持待确认,POINT-003/004未实施;27页面/63任务不变。最新见[开发进度0.48](docs/开发进度.md)和[积分契约](docs/积分规则与开发契约.md)。
本轮主服务纯237项、写保护纯98项、迁移纯84项、隔离事务45项、只读预检22项及16PHP lint通过。事务检查仅使用127.0.0.1:3309隔离库内随机pts_合成表,覆盖双PHP同键/异键、锁等待跨业务日及trigger故障回滚;原fa_user/score_log结构与数据摘要保持,合成表精确清理。连续两次显式默认只读迁移预检在3309/airz_product_test_20260930通过:4增量、13类质量计数各项0、applied=false,无备份/apply,读前后原两表摘要一致。未实际迁移原表、未验证迁移apply/完整备份/ACL、未HTTP/浏览器/Redis/worker/模型调用,不改正式库或默认.env,未部署。下一步先业务确认、隔离迁移演练及HTTP开发检查,再接积分页面,不复用历史发布授权。
2026-10-01历史设计(0.47):积分规则与技术方案已形成草案,见[积分规则与开发契约](docs/积分规则与开发契约.md)及[开发进度0.47](docs/开发进度.md)。首阶段建议每日10分、上海业务日一次且不补签,资料/邀请奖励关闭;奖励额、权益、有效期和会员等级处理仍待DEC-POINT确认。保留 `/points/check-in`目标路径,拟请求为requestId/expectedRuleVersion/expectedDate,流水拟采用有界游标;复用现有业务键/事件唯一/时间索引,仅拟增加请求键/规则版本、用户请求唯一索引和(user_id,id)游标索引。本轮仅规则/接口/数据库设计,未实现任何积分API、签到到账、迁移或部署,未执行数据库/运行测试/收费调用。POINT-001仍阻塞,POINT-002/003/004未实施,下一步确认首阶段规则后推进POINT-002;总任务数63不变。
以下日期段落保留历史开发记录;当前源码和检查以0.49为准,不复用此前生产迁移或发布授权。
本轮仅文档校验:8文档UTF-8无BOM/无行尾空白、两新方案10处本地链接及围栏配对、两仓库限定文档diff检查通过;未执行运行测试,积分规则尚未批准。
2026-10-01开发更新:ADMIN-003 模型运行参数和调用额度受控配置子项源码已完成。独立后台 `modelconfig/index/update` 只允许暂停新调用、新评估模型Flash/Pro、每日三场景共享次数1–1000和评估尝试1–3;环境启用开关仍是硬限制,旧调用模型冻结,进行中的请求自然收尾。复用保留 `fa_config.ai_runtime_policy` JSON,不新增表/字段、不编辑凭据/地址/timeout/maxTokens。版本比较、CSRF、请求重放和成功审计同事务;技术独立v5模板,旧规则/绑定保持。策略纯83/事务24、并发43、业务路径纯63/隔离DB43、权限97、审计20、HTTP207(95请求)及桌面/移动页面67项检查通过;0模型/worker调用,合成夹具/私密JSON精确清理、原Config/site.php和13表/队列保持。仅本地开发,正式库、默认 `.env`、线上和移动端未改,未部署或验收,最新记录见[开发进度0.46](docs/开发进度.md)及[交接](docs/新会话交接.md)。
2026-10-01历史:分析常驻进程心跳与后台进度超时提示子项源码及隔离检查已完成,记录见[开发进度0.45](docs/开发进度.md)。供应商余额/费用对账仍依赖接口能力确认,外部告警投递方案另定,ADMIN-003保持开发中。
2026-10-01历史:ADMIN-003 首个子项已增加后台只读模型与服务检查、调用用量和会员当日预留额度查询。供应商未探测,未知Token与已知零分开;技术新增独立v4模板,旧角色绑定保留。该阶段未接分析进程心跳,记录见[开发进度0.44](docs/开发进度.md)。
2026-10-01最新:资讯、融资课堂、详情、首页推荐与搜索已接真实服务,课程完成进度按会员存服务器,后台支持内容编辑/发布/下架与章节排序。FAQ已改为服务端读取,帮助页新增文字反馈提交、本人记录和后台处理闭环;正式后端连同消息中心及产品编辑/公共目录已部署至 https://airz.hqling.cloud,FAQ/反馈本轮源码尚未部署。前端体验版API已同步新域名,微信/Android开发编译通过;本轮小程序需重新发行,微信request合法域名改为 `https://airz.hqling.cloud`,头像上传/文件下载还需核对相应平台域名配置。H5未部署、真机及多设备未验收。最新证据与恢复见[交接](docs/新会话交接.md)及[开发进度0.40](docs/开发进度.md);以下日期段落为历史记录。
2026-09-30消息中心:评估成功/失败通知、服务器已读、分类分页、原版本跳转及首页真实红点已完成本机开发,50项隔离数据库、57项HTTP/Playwright、16项索引迁移恢复检查及微信/Android编译通过。fa_user_message只增加一个唯一索引,无新表/字段。正式索引/PHP和本轮前端尚未发布;用户上一版小程序已上传,HTTPS排查暂停。最新状态见[交接](docs/新会话交接.md)顶部及[开发进度0.37](docs/开发进度.md),以下日期段落为历史状态。
2026-09-30产品展示更新:正式库现有六条产品已同步正常业务名称和资料,匹配/详情/报告/对比/行动/助手/PDF去除环境标签,内部来源记录保留。微信开发编译及手机/桌面页面联调通过;本轮源码未部署、小程序/H5未发行。备份与恢复、验证及发布边界见[交接](docs/新会话交接.md)顶部和[开发进度0.36](docs/开发进度.md)。
2026-09-30最新:已实现“最新资料+评估版本”,新建评估新增记录,修改评估回填并在原记录下保存新版本;历史报告/匹配/助手/PDF绑定版本。正式MySQL5.7/airz迁移、配套PHP部署与63项维护验收已完成,服务恢复;小程序/H5尚未发布。微信/Android此前编译通过,体验版API已配置https://aitest.ychysg.cn/api/v1,但外网HTTPS仍连接重置,发行前需解决并复测。完整状态见[交接](docs/新会话交接.md)及[版本契约](docs/评估版本与最新资料.md)。以下日期段落为历史记录;后端.env仍连接远程正式库,本机worker启动说明只可用于显式隔离环境。
基于 uni-app x、Vue 3、UTS 的移动端原型,包含 27 个页面。使用 HBuilderX(VDOM 模式)开发,已验证 5.24 和 5.26 的本地编译;本项目没有独立的 npm 构建入口。
2026-09-28:原型07产品对比已接通,匹配列表/本次产品详情可选择2—3项历史产品,支持补选、移除、刷新恢复、失败列重试及手机横向滚动。复用本人冻结匹配详情,不新增表或模型调用;当前26页,真实产品与跨平台验收仍待完成。见[开发进度6.16](docs/开发进度.md)。
2026-09-28:原型09报告已改为“评估概况/匹配结果/改善建议”,支持栏目URL刷新、最多3项历史候选、分组产品依据与局部重试;重新评估进入空白个人/企业表单,旧报告不补算。PDF、上下文助手与行动页继续独立开发。验证见[开发进度6.17](docs/开发进度.md)。
2026-09-28:原型10下一步行动已接通报告/产品入口,支持材料准备、查看已存报告、优化资料后同类型空白重评和上下文AI咨询;登录返回与当前可用性守卫已验证。H5 38项检查、Android/微信编译通过;09 PDF待开发,真实产品/真机待验收。见[开发进度6.20](docs/开发进度.md)。
2026-09-28:09报告与10行动页已接入普通H5 PDF下载:鉴权、冻结数据、中文分页、脱敏及失败重试;29项文件检查、20项HTTP及24项浏览器检查通过,Android/微信编译通过。微信内浏览器/原生下载与生产容量待验收。见[开发进度6.21](docs/开发进度.md)。
## 本地运行
2026-09-24:本地产品库已按用户要求上架6条演示产品(ID22—27)。新评估会冻结目录、计算三态及证据并保存匹配结果;报告已展示实际统计和演示标记,旧报告不补算。匹配列表/详情API和03/04/05/06基础已接通,可从新报告进入本次匹配;07—10扩展待开发。数据、脚本与参数见[产品规则契约第7节](docs/产品匹配规则开发契约.md),验收进度见[开发进度6.12](docs/开发进度.md)。
本地评估分析还需要启动后端队列进程;仅启动 phpStudy、Redis 和前端页面不会执行模型任务。在 PowerShell 中运行下列命令,并保持终端运行(重启电脑后需重新启动):
```powershell
Set-Location 'D:\AAdesk\202609\airz'
& 'D:\Develop\phpstudy_pro\Extensions\php\php7.4.3nts\php.exe' think analysis:work
```
提交后一直“分析中”时,先检查此进程是否运行;未运行时任务会保留在队列中,启动后继续处理,无需重复提交。运行会调用已配置的真实模型并产生用量。生产环境需要独立的进程守护;本地手动启动不代表已配置开机自启。
在 HBuilderX 中导入当前目录,选择“运行 → 运行到浏览器”。共享请求配置位于 `services/api.uts`,账户、融资服务分别位于对应分包的 `services/`。现已接入本地后端密码登录、账户资料、头像、退出及改密,以及融资需求v2录入、正式提交、历史、DeepSeek自填报告与失败重试;完整度/准备状态及报告v2自填支线已接入;短信与真实机构产品资料仍待接入。无草稿;金额显示万元、接口传元字符串。最新状态和验证范围见[开发进度](docs/开发进度.md)0.6及6.6。
也可使用 HBuilderX CLI。以下 PowerShell 命令中的安装路径应按本机环境调整;在项目根目录执行:
```powershell
$hbuilderCli = 'D:\Develop\HBuilderX\cli.exe'
$projectPath = (Get-Location).Path
& $hbuilderCli open
& $hbuilderCli launch web --project $projectPath --compile false --continue-on-error false
```
## 各平台编译
以下命令仅本地编译,不上传、不发布:
```powershell
& $hbuilderCli launch mp-weixin --project $projectPath --compile true --continue-on-error false
& $hbuilderCli launch app-android --project $projectPath --compile true --continue-on-error false
& $hbuilderCli launch app-ios --project $projectPath --iosTarget simulator --compile true --continue-on-error false
```
产物位于 `unpackage/dist/dev/` 对应平台目录。Android 命令可检查 Kotlin/class 编译;Windows 上 iOS 命令只检查当前编译链生成的源码产物,不代表已完成 Xcode 构建或生成 IPA。
运行微信小程序需配置自己的 AppID,并开启微信开发者工具服务端口。Android 真机运行需启用 USB 调试;iOS 真机运行需相应签名环境。正式发行还需配置应用图标、签名、真实接口及平台要求的资料,并完成真机测试。
## 跨端维护约定
- 页面尺寸和安全区计算集中在 `services/layout.uts`。新增页面应复用这里的逻辑,并检查小屏、横屏、键盘弹出及底部安全区。
- 微信小程序首页在右侧预留胶囊区域与 8px 间距;公共页面标题采用左右对称的安全留白,始终按屏幕中心定位。获取胶囊失败时按 104px 避让。产品分享入口在小程序端放在内容区,App 和 Web 仍保留在标题栏右侧。导航不新增顶部空行,顶部按状态栏和安全区计算。
- 首页右上角依次为搜索、消息通知;微信端两个按钮与胶囊等高、顶部对齐,按钮组向左展开,左侧 Logo 对齐胶囊的垂直中心;其他端仍在导航栏内居中。AI 助手保留首页横幅及快捷入口。
- 原生样式遵循 uni-app x 支持范围。仅 Web/小程序支持的样式用条件编译隔离;修改 UTS 类型后应重新验证 Android 编译。
- 首页及跨包共用的轻量位图位于 `static/mobile/`,专属大图位于各分包的 `static/`,原始图片保留在 `static/images/` 与 `static/icons-generated/`。箭头继续使用 `static/icons/` 下的 SVG。
- 底栏使用 `static/mobile/navigation/` 的专用位图,由现有高清图标按可见边界裁切、等高居中得到。更换素材时保持一致的图案高度和画布留白,避免仅统一图片元素尺寸却出现视觉错位。
- 微信打包忽略原始图片目录和未使用的 `static/logo.png`,规则位于 `manifest.json` 的 `mp-weixin.packOptions.ignore`。新增资源要检查引用与排除规则,最终包体以微信开发者工具结果为准。
- API 环境配置在 `services/config.uts`,开发地址为 `http://127.0.0.1/api/v1`,当前test环境体验版地址为 `https://airz.hqling.cloud/api/v1`。共享请求已统一Bearer、FastAdmin响应解包及401处理;模拟开关关闭,production地址仍空,切换production前须明确配置HTTPS地址。
## 当前前端交互
个人与企业评估不提供草稿功能:填写页与确认页仅通过内存传递本次输入,离开流程、刷新或退出账户后丢弃;已接入正式提交及历史列表/详情接口,可修改原评估并增加输入版本。选图仅供本机预览,证件资料上传和数据查询尚未接入。消息已读及课程阅读记录已接服务器,首页同真实未读数;2026-10-07课程页改为整篇连续阅读,底部仅一次标记课程已读,兼容已有记录,本轮源码未发行。体验签到仍保存在当前设备。
个人中心顶部的头像、昵称、手机号区域统一进入修改资料;账户安全独立提供修改密码、验证码重设密码及换绑手机号。昵称和头像缓存按稳定userId隔离,手机号仅保留为内部兼容键。头像已接入后端上传及持久化,限制 500KB 以内的 JPG / PNG / WebP,服务端验证真实图片并重新编码,保存时校验附件归属,不修改融资档案的实名信息。密码登录、原密码改密及退出已接入Redis会话;短信验证和换绑尚未接入,不在本机模拟成功,也不保存密码、验证码或其散列。安全接口成功后清除当前会话并要求重新登录;验证码计时仅在服务端发送成功后启动。
账户接口集中在 `packages/account/services/account.uts`,请求携带当前会话的 `Authorization: Bearer <token>`;后端需根据 token 确定账户,校验验证码用途与有效期、限制发送频率并完成旧会话撤销。接口状态:
- 已实现 `GET/PUT /account/profile`:PUT 接收 `nickname`(2–20字符)及可选 `avatarId`;省略保留原头像,`null` 恢复默认。GET 返回服务端资料。
- 已实现 `POST /account/avatar`:multipart 的 `file`,返回 `attachmentId`、`avatarUrl`;头像为公开资料,不能用该接口上传私有证件。
- `POST /account/security/sms-code`:`purpose`(`password` / `phone-current` / `phone-new`)与 `newPhone`(仅新号码验证传入);当前号码从认证账户读取。
- `PUT /account/password`:`verification`(`password` / `sms`)、`oldPassword` 或 `code`、`newPassword`。新密码为 8–32 位可打印 ASCII,需含字母和数字,不允许空格。
- `PUT /account/phone`:`newPhone`、`currentCode`、`newCode`;后端验证两组验证码及新号码占用情况。
资产与负债包含 `creditLoanCount`(信用贷款笔数)、`totalDebtBalance`(欠款总余额)、`monthlyLoanPayment`(贷款月还款金额)、`creditCardCount`(银行信用卡张数)、`creditCardTotalLimit`(总额度)、`creditCardUsedLimit`(已使用总额度)、`house` / `car`(有 / 无)。移动端所有金额统一以万元输入和展示,最多六位小数;提交接口前精确换算成元的两位小数字符串,范围为 0–999999999.99 元(DECIMAL(11,2))。数量为非负整数;资产负债保持原来的可跳过规则。企业经营时间使用实际经营月数,不从区间猜测。启动时清理旧评估草稿缓存,不导入、不恢复。
新闻与课程的数据定义位于 `packages/content/services/content.uts`。正式匹配与产品适配位于 `packages/finance/services/matches.uts`;GET /assessments/:id/matches及结果详情返回冻结的产品范围、判定和证据;GET /products/:id返回当前公共资料。金额范围使用元的十进制字符串,在适配层精确转换为万元。旧无评估GET /matches和模拟fetchProduct入口已移除。后端产品表使用独立的额度、期限和利率范围字段,匹配分数与理由属于评估结果。申请入口目前仅引导准备资料,不向金融机构提交申请。
首页搜索进入内容分包的 `search/search`,支持全部、新闻、融资课堂筛选、分页及真实详情跳转。共享 `services/content.uts` 调用 `GET /content/search`,参数为 `keyword`、`type`(`all` / `news` / `lesson`)、`page`、`pageSize`,返回 `items/total/hasMore`;多关键词需同时命中标题、摘要或正文。离页、账户切换和新关键词拒绝迟到响应,空态/断网可重试,无本地内容数组兜底。
## 页面与分包
“帮助与反馈”从个人中心进入内容分包的 `help/help`,按账户使用、融资评估、资料与隐私分组展示可展开的问答,并提供文字反馈提交、本人记录及处理回复,不跳转 AI 助手。FAQ数据位于 `packages/content/services/help.uts`,反馈数据位于 `packages/content/services/feedback.uts`;公开FAQ使用 `GET /help/faqs`,反馈接口需要登录。附件服务尚未开放,联系客服当前只展示暂未开放提示。
`pages/` 只保留 `home/home.uvue`,也是唯一主包页面。页面注册统一维护在 `pages.json` 的 `pages` 和 `subPackages`,分包内的 `path` 相对于 `root`。
| 目录 | 内容 | 页面数 |
| --- | --- | --- |
| `pages/home` | 首页 | 1 |
| `packages/finance` | 融资入口、评估、确认、分析、报告、匹配、产品、对比、助手、档案 | 10 |
| `packages/account` | 启动引导、登录、个人中心、修改资料、账户安全、修改密码、更换手机号、积分、消息 | 9 |
| `packages/content` | 搜索、帮助与反馈、新闻、文章、融资课堂、课程详情 | 6 |
当前各模块体积较小,优先保持完整业务链;普通内容统一一个包。新增功能先放入所属分包,再根据微信编译产物大小决定是否细分。单包以 2 MiB 为保守预算,需预留增长空间,最终体积以微信开发者工具为准。
2026-09-20 使用 HBuilderX 5.26 本地微信开发编译,按 `packOptions.ignore` 排除原始素材后统计:主包约 887 KiB,融资包 378 KiB,账户包 148 KiB,内容包 355 KiB。此为磁盘产物统计,不等同于开发者工具上传后的压缩体积。
- 分包页面使用完整绝对路由 `/packages/<模块>/<页面>/<页面>`,包含路由比较和携带参数的跳转;主包首页仍为 `/pages/home/home`。
- 微信按 `subPackages` 下载分包。Android、iOS 使用相同目录、页面注册和路由编译为应用,不将小程序按需下载机制等同于 App 热更新。
- 保留现有自绘 `BottomNav`,新闻、消息、我的允许在分包中;不配置要求页面留在主包的原生 `tabBar`。底栏切换使用 `reLaunch`,详情使用 `navigateTo` / `navigateBack`。
- 冷启动首页通过 `services/launch.uts` 只触发一次账户引导,之后按登录状态进入首页或登录;直接打开分包页面和正常返回首页不会重复触发引导。
- `components/` 与 `services/` 只保留共享组件、布局、请求、会话和当前评估流程的内存状态。主包或其他分包不得 import 某个分包的专属模块;分包间只通过路由与共享服务交互。
- 仅某个分包使用的图片放在该包 `static/`;首页也使用的插图及通用图标保留在根 `static/`,避免分包资源被主包引用。
参考:[uni-app x 页面与分包配置](https://doc.dcloud.net.cn/uni-app-x/collocation/pagesjson.html#subpackages)。
## 2026-09-22 金额与评估存储约定
`services/money.uts` 集中处理万元与元的精确转换;填写页与确认页均为万元,`submitAssessment` 仅在提交边界转换。后端每次评估对应一条 `fa_user_info`,其报告和产品快照保存在唯一关联的 `fa_ai_chat` 中。后端数据库及生命周期服务已准备,移动端已切换真实本地接口,未完成的评估、AI、私有证件上传及授权接口不会模拟成功,需按开发进度继续接入。
## 2026-09-22 开发启动状态
- 登录默认使用密码模式;需已有手机号账户。尚未配置短信服务商,发送验证码会展示后端503提示,不启动倒计时或生成demo Token。
- 会话包含userId/有效期,旧无身份的模拟会话作废。昵称头像、课程本机进度、体验签到和消息已读按userId隔离;退出、会话过期和401时清理当前账户缓存。评估输入不写本机存储,应用启动清理旧草稿键。
- DeepSeek配置已记录在后端私密环境文件,腾讯云TokenHub地址及两个模型见开发文档;密钥不进入前端,尚未发起真实模型调用。
- 首批真实接口不等于25页已业务化。首页/资讯/课程等部分展示仍为原型;正式评估提交与历史已接通,产品匹配和AI助手接口尚未实现。各模块状态以 [开发进度](docs/开发进度.md)为准。
- 默认开发环境不代表正式部署;发布前需核验目标环境、API地址、HTTPS/CORS及所有必做依赖,禁止把本机地址作为生产配置。
## 2026-09-23 正式评估记录
- `packages/finance/services/records.uts` 负责表单白名单DTO、元/万元转换、枚举和历史适配;确认页提交获得assessmentId后清空流程内存及页面栈。幂等键在网络失败时复用,不跨刷新保存。
- 个人/企业评估提交后保存到后端;分析页读取真实状态,只有processing时每5秒轮询,离开停止;不自动跳到固定分数报告。
- 当前分析服务未接通,显示“资料已保存,分析服务尚未开放”;不意味着DeepSeek已经执行。附件/外部授权尚未接入,必须移除本次资料与授权选择后才能提交。
- 档案页展示本人历史、分页、错误重试及只读详情;金额万元,身份证/手机号脱敏。无新增页面,仍为25页。
## 2026-09-23 DeepSeek与分析任务(覆盖此前未接入状态)
已接腾讯云TokenHub,指定Pro/Flash真实权限通过,默认Flash生成自填资料分析。新增POST `/api/v1/assessments/:id/retry`(HTTP202)及GET `/api/v1/assessments/:id/report`,初次提交HTTP201回执保持不变。前端已接真实状态、幂等失败重试、报告与档案跳转,移除固定评分/雷达;金额精确显示万元,无产品规则时明确未执行匹配。
后端目录运行 `php think analysis:work`;`--once`只消费一条,`--recover-only`仅补投和回收过期租约。已开启本地私密.env的deepseek.enabled,示例默认false;配置/代码变更后重启worker。开发进程不代表生产守护。
数据库事务预留任务后投Redis,数据库queued状态支持漏投补偿;running租约过期明确失败,不自动重复调用收费模型。行锁+taskId拦截重复消费和旧结果回写;重试键映射保存原任务回执。fa_ai_chat保存报告和空匹配,fa_ai_chat_log记录用量/状态,未知tokens为null。开发默认每用户每日20次预留、每评估3次;商业预算待确认。
迁移 `database/migrate_analysis_tasks.py --apply` 已执行,仅增补fa_user_info的task_requests/task_stage/attempt_count/lease_until/dispatched_at及idx_task_dispatch;无新表。执行前0条评估,备份为 `D:/AAdesk/202609/airz-backups/analysis-tasks-20260923-172957-846359/user_info.sql`。回退需先停worker并关闭分析,核对新增业务数据后再用备份恢复,不能直接覆盖后来评估;优先保留兼容字段、回退代码。
验证:先停全部worker,运行 `php tests/analysis_tasks.php --worker-stopped`(29项)和 `php tests/analysis_http.php --worker-stopped`(15项),使用合成数据与假模型;恢复扫描可能发现任意queued测试行,不能只依赖随机Redis队列隔离。任务测试可显式追加`--live`真实调用一次;`tests/deepseek_smoke.php --live`真实调用两个模型。常规正式评估HTTP回归需分析关闭,开启时会SKIP。当前真实个人自填报告及企业H5重试→worker→报告均通过,普通Chromium与Android编译通过;生产、微信内H5、Safari/真机、外部数据及真实产品匹配未验收。
## 2026-09-24 匹配读取与页面接入
新增GET /api/v1/assessments/:id/matches、GET /api/v1/assessments/:id/matches/:productId、GET /api/v1/products/:id,均需会员Bearer;前两者还校验评估归属及成功状态。匹配使用已存快照,当前可用性另查,不重跑规则或模型。报告→匹配三态列表→解释/详情/条件三栏已接通,金额显示万元;演示产品明确标识,旧报告不补算。产品对比已完成本地接口联调,报告三栏已完成本地联调;单产品AI解释、PDF和行动页仍待开发。
后端tests/match_records.php --worker-stopped验证62项接口/快照边界(先停止正式worker,合成账户/假模型自动清理,产品变动回滚);前端Web/Android本地编译通过,H5验证记录见前端docs/开发进度.md第6.13节。无新增表或迁移。
## 2026-09-28 融资档案界面
“我的融资档案”恢复个人/企业切换、完整度与四组资料卡;默认读取该类型最新提交,支持历史分页选择与只读展开。完整度使用所选成功报告中的冻结结果,旧版/未完成/无记录显示未评定说明;底部可查看同次报告或发起空白新评估。不恢复草稿,不编辑历史资料。后端沿用GET /assessments的type过滤及详情/报告接口,验证范围见docs/开发进度.md第6.14节。
2026-09-28:个人中心入口去重,顶部为“开始评估”(选择个人/企业)和“最近报告”(本人最近提交且已完成的报告直达),下方“我的融资档案”管理历史资料。无报告但有任务时可查看进度,无记录时明确提示;不重新提交或调用模型。验证范围见开发进度6.15。
## 2026-09-28 原型04/05与单产品解释
已按原型还原产品匹配详情,接通逐条DeepSeek解释、状态查询、失败重试和历史保存。新增POST /api/v1/assessments/:id/matches/:productId/explanation,body仅requestId,返回匹配详情中的异步状态;GET不调用模型。复用fa_ai_chat匹配JSON和fa_ai_chat_log,无新表/迁移。analysis:work新增消费解释任务,更新代码后重启进程;成功解释重复打开不收费,失败须明确新键重试,每产品最多三次,与报告共享每日用户额度。
原型08上下文咨询、09 PDF、10行动页和真实产品验收仍待完成。51项解释回归、70项匹配HTTP/快照检查及真实Flash/浏览器验证详见前端docs/开发进度.md第6.18节;模型凭据只从后端配置读取。
## 2026-09-28 原型08上下文AI助手
已接普通/报告/产品/对比的持久会话、消息分页、异步回复、原键重试和登录返回,界面参考原型08。需保持后端analysis:work运行;进入页面、点击快捷问题不调用模型,明确发送才预留调用。后端本机增量迁移已获授权并完成;原报告未改写。助手70项及相关回归通过,Android/微信编译与H5手机/桌面联调通过;真实多轮DeepSeek语义、真机和生产容量待验收。详见[助手契约](docs/上下文AI助手开发契约.md)及[开发进度6.19](docs/开发进度.md)。