fix: 修复帮助内容加载、搜索滚动和账户同步的问题

- 完善帮助内容接口的响应校验,增加数据格式和范围验证
- 优化搜索页面的滚动位置管理,避免H5页面激活时的组件重建问题
- 增加账户切换时的定时器清理,防止内存泄漏和重复请求
This commit is contained in:
hujun
2026-10-08 17:43:53 +08:00
parent 71b3c25695
commit 25cb06b71c
9 changed files with 1317 additions and 39 deletions
+406 -1
View File
@@ -1,6 +1,411 @@
# AI融资项目新会话交接
记录日期:2026-10-07。本文件为接续入口;课程最新交互以[开发进度](开发进度.md)0.77节及下方课程简化检查点为准,整篇连续阅读、仅一次标记已读。其余当前存储与流程以[评估版本与最新资料](评估版本与最新资料.md)、[开发进度](开发进度.md)0.76节(CONTENT-002/003/004内容、课程进度与搜索组合开发检查)、0.75节(AUTH-003/004账户资料、头像及会话撤销后端隔离HTTP开发检查)、0.74节(AUTH-003/004账户资料、改密及退出组合开发检查)、0.73节(ASSESS-004评估新建/修改后端隔离HTTP开发检查)、0.72节(ASSESS-004资料填写、确认提交与档案回显组合开发检查)、0.71节(PRODUCT-004匹配读取与产品解释后端隔离开发检查)、0.70节(PRODUCT-004/005匹配详情与对比历史版本组合开发检查)、0.69节(CHAT-004后端幂等/额度/历史隔离开发检查)、0.68节(CHAT-004历史版本上下文与异常会话组合开发检查)、0.67节(REPORT-006行动页与报告可用性组合开发检查)、0.66节(REPORT-005微信PDF与导出边界开发检查)、0.65节(REPORT-004历史报告与重评组合开发检查)、0.64节(REPORT-003报告生成与持久化开发检查)、0.63节(REPORT-002异步任务与补偿链开发检查)、0.62节(反馈与消息后端生产发布)、0.61节(反馈与消息配套发布准备)、0.60节(反馈恢复与消息组合检查)、0.59节(反馈回复通知联动)、0.58节(会员反馈原键恢复)、0.57节(后台反馈处理及既有小程序发布状态)、0.55节(后端发布)及[开发文档](开发文档.md)v1.46为准。历史章节中的域名、部署及“待开发”以最新记录为准。
## 最新接续:2026-10-08 后台内容写入CSRF防护
完成资讯、课程、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检查分开,不跨轮累计。
仅全新本机合成MySQL/Redis与安全配置;26表核空、结构和8原触发器保持,DB15零键,本轮精确库删除、所属HTTP/服务退出/端口释放。911份退出屏蔽回执确认真实模型类未加载。旧安全材料、35固定输入/缓存、13旧合成库及既有两仓库改动保持;源码/语法/链接/ACL回执私密留存,配置/session/原始日志/manifest不能整包分享。 [防护与验证说明](D:/AAdesk/202609/airz/database/content-csrf-regression.md)、[验收矩阵](核心与权限验收矩阵.md)及安全[verification.json](D:/AAdesk/202609/airz-backups/content-csrf-regression/airz-content-csrf-1791450130328/verification.json)。
8个运行文件尚未部署;没有生产访问、真实worker/模型、外部消息、安装或提交/推送/PR。未重跑小程序/H5编译、搜索旧响应竞态、真实回执丢失/多设备恢复或真机/正式运营签收。RELEASE-001开发中/整体未验收,独立Linux测试机路线已取消、Linux/systemd未验证、RELEASE-003阻塞;63任务/27页面保持。 进度1.97/1.07、文档v1.65/0.78。
下一项:RELEASE-001候选版本与验收用例收口:固定本地候选源码清单/摘要,关联已验证范围和剩余外部阻塞,形成可复核交付基线;不部署、不预填正式签收,不继续扩张同类回归工具。 真实渠道/产品/内容、私有附件/真人客服、正式运营/真机及生产守护/恢复/密钥托管/规模RTO/RPO仍待各自条件。小程序用户自行发行、课程整篇一次已读、身份证明文输入/后台脱敏、积分默认关闭/DEC-POINT待确认及供应商约定保持。
红测试先复现无Token写入,后确认默认时间Token不符合独立随机契约。中间数组Token500是新实现缺陷,现原始POST读取/类型核对后明确拒绝;浏览器准备和截图时机调整另留记录,不计通过次数。
## 前轮接续:2026-10-08 内容发布与整篇课程已读组合回归
最新进度 **1.96 / 1.06**,开发文档 **v1.64 / 0.77**。RELEASE-001开发中/整体未验收;独立Linux测试机路线已取消,Linux/systemd未验证、RELEASE-003阻塞。63任务/27页面保持。
- 新增后端tests/content_publication_flow.php,复用账户HTTP、现行权限夹具与后台路由。运营/客服/技术v5/超管与双会员贯穿三类草稿/发布、首页/列表/搜索/详情、整篇已读、重排/简介/正文更新、下架/重新发布和退出/重新登录;验证撤权、类型隔离、旧版本409、部分保存故障补齐与双账户隔离。
- 新增内容发布/下架与整篇课程已读组合518项、143次本机HTTP通过;原课程服务56、内容HTTP362、后台权限227项回归通过,本批四个入口共1163项、391次本机HTTP,模型调用0。红测试复现超管批量修改任意字段绕过内容编辑;ContentEditor::multi现统一只接受合法status,非法/混合字段拒绝,保留父类权限、类型范围及事务。仅这一trait修复,原业务改动和旧测试保持。两次修复后试运行纠正FAQ路由与搜索顺序的夹具假设,最终组合和三回归通过;失败/重复运行不累计。
- 本批是后端组合,未重跑前端编译/浏览器旧响应竞态或真机/多设备;内容写入尚无专用CSRF门禁,未携带__token__也可写,不能声称安全或正式验收完成。原api_content只用本轮私密bootstrap适配content_ Token前缀,保留门禁和源码;其worker是合成测试探针。
- 仅全新本机合成MySQL/Redis与安全配置,真实模型预先屏蔽;26空表/结构和8原触发器保持、DB15零键,精确库删除、所属HTTP/服务退出及端口释放,509份退出回执确认真实模型类未加载。旧安全材料、35固定输入/缓存及13旧合成库摘要保持,既有两仓库改动保留。无生产访问、部署、真实worker/模型、外部消息、安装或提交/推送/PR;本批trait修复尚未发布。
- [组合说明](D:/AAdesk/202609/airz/database/content-flow-regression.md)、[验收矩阵](核心与权限验收矩阵.md)及私密安全[verification.json](D:/AAdesk/202609/airz-backups/content-flow-regression/airz-content-flow-1791448910652/verification.json),同目录tests/red-test/fixture-trials/cleanup/历史核验/最终源码/ACL;配置/session/原始日志/manifest不能整包分享。
**下一开发入口:** 后台内容写入CSRF门禁与配套表单/批量请求改造,覆盖资讯、课程、FAQ和旧协议;先缺失/错误/跨会话Token红测试,再补服务端校验和有效请求/Token刷新/撤权验证,全新本机合成环境、不改通用Backend。真实渠道/产品/内容、私有附件/真人客服、正式运营/真机及生产守护/恢复/密钥托管/规模RTO/RPO仍待各自条件。小程序用户自行发行、课程整篇一次已读、身份证明文输入/后台脱敏、积分默认关闭/DEC-POINT待确认与供应商约定保持。
## 前轮接续:2026-10-08 反馈处理与站内消息组合回归
最新进度 **1.95 / 1.05**,开发文档 **v1.63 / 0.76**。RELEASE-001仍开发中/整体未验收;独立Linux测试机路线已取消,Linux/systemd未验证、RELEASE-003阻塞。63任务/27页面保持。
- 新增后端tests/feedback_message_flow.php,复用账户HTTP/现行权限夹具与后台路由。双会员/本人多会话与运营/技术/两名客服/超管贯穿原键提交、处理/回复、唯一通知/已读、退出/改密和重新登录恢复;验证角色权限/撤权、CSRF/旧版本/原文写入拒绝、跨用户消息和反馈隔离、回复修订/水位分页、通知或审计故障完整回滚及私密正文不进入通知/审计。
- 新增反馈处理/站内消息组合344项、97次本机HTTP通过;原反馈67、处理32、通知43、恢复24、账户281和后台权限227项回归通过,本批7个入口共1018项、324次本机HTTP,模型调用0。首次组合与六回归均通过,未发现新的业务缺陷,业务源码和原测试保持;仅新增测试与文档,不跨轮累计。
- 四个旧反馈测试只在私密目录复制,将固定3309字面量绑定到本批3336,其余字节/门禁保持;并发测试探针不是实际队列worker。原键补确认只证明后端恢复语义,本轮未重跑前端持久恢复/回执丢失/浏览器/编译或真机。
- 仅全新本机合成MySQL/Redis与安全合成配置,不读默认.env或原私密site/upload;真实模型类预先屏蔽。26空表/结构与8原触发器保持、DB15键0,精确库删除后所属服务/HTTP退出、端口释放;348份退出回执确认真实模型类未加载。没有生产访问、真实worker/模型、外部消息、部署、安装或提交/推送/PR。旧安全材料、35固定输入/缓存及13旧合成库摘要保持,既有业务改动保留。
- [组合说明](D:/AAdesk/202609/airz/database/feedback-message-regression.md)、[核心与权限验收矩阵](核心与权限验收矩阵.md)、私密安全[verification.json](D:/AAdesk/202609/airz-backups/feedback-flow-regression/airz-feedback-flow-1791447922008/verification.json)和同目录tests/regression-copy-map/cleanup/收尾前状态/历史核验/最终源码/ACL;配置/session/原始日志/manifest不整包共享。
**下一开发入口:** 内容发布/下架→列表/搜索/详情→整篇课程一次已读的跨角色/跨账户组合回归,先用全新本机合成环境;不重复扩张告警模拟工具。真人客服/私有附件、真实渠道/产品、正式运营/真机及生产恢复/密钥托管/规模RTO/RPO仍待各自条件;小程序用户自行发行、课程整篇一次已读、身份证明文输入/后台脱敏、积分默认关闭/DEC-POINT待确认和供应商约定保持。
## 前轮接续:2026-10-08 核心权限矩阵与后台组合回归
最新进度 **1.94 / 1.04**,开发文档 **v1.62 / 0.75**。RELEASE-001保持开发中/整体未验收;独立Linux测试机路线已取消,Linux/systemd未验证、RELEASE-003仍阻塞。63任务/27页面保持。
- 新增[核心与权限验收矩阵](核心与权限验收矩阵.md),汇总三批本地子集、15模块缺口及正式签收条件;不把各轮复用入口累计为去重业务用例,不预填验收人。
- 后端新增tests/admin_assessment_flow.php、admin_flow_fixtures.php、admin_flow_http_router.php。覆盖运营/客服/技术v5/超管/合成旧技术只读角色,当前失败与旧发布版区分、隐私投影、CSRF/查询参数/版本冲突/暂停拒绝、撤权即时生效、幂等回执跨完成及后续重评、唯一成功审计和审计故障事务回滚。
- 新增后台五角色诊断/人工重试组合167项(41次本机HTTP、4次假调用),原后台权限227项(158请求)、针对性权限/隐私/诊断/重试/审计/服务用量575项和主流程280项回归通过;本批14个入口共1249项、199次本机HTTP、20次显式假调用,失败和重复运行不累计。没有新的业务源码修复,原后台权限及核心入口不改;测试准备失败只记fixture-trials,不记业务缺陷或通过次数。
- 仅全新本机合成MySQL/Redis与合成配置、实际HTTP及显式假客户端;不读默认.env或原site/upload私密配置,真实模型类在初始化前屏蔽。26空表/结构与8原触发器保持、DB15键0,精确库已删除;正常关闭后首次PID检查偏早,稍后复核所属服务/HTTP均退出、端口释放。357份退出回执确认真实模型类未加载,不是357个独立进程。没有生产连接、真实worker/模型、外部消息、部署、安装、提交/推送/PR。原有源码改动、旧证据、35固定输入/缓存及13旧合成库摘要保持。
- [后台组合说明](D:/AAdesk/202609/airz/database/admin-flow-regression.md)、私密安全[verification.json](D:/AAdesk/202609/airz-backups/admin-flow-regression/airz-admin-flow-1791445932955/verification.json)和同目录tests/fixture-trials/cleanup/历史核验/最终源码/ACL回执;配置/session/原始日志/manifest不整包共享。
**下一开发入口:** 已有反馈处理与站内消息的跨角色/跨账户组合回归:会员原键提交→客服处理/回复→唯一通知/已读→退出或改密→重新登录/原键恢复;随后补内容发布/下架与整篇课程已读/搜索组合。先全新本机合成环境和假客户端,不接真人客服或生产存储;私有资料受EXT-STORAGE/DEC-PRIVACY阻塞,不自行决定保留策略或模拟授权。小程序用户自行发行、课程整篇一次已读、身份证明文输入/后台脱敏、积分默认关闭/DEC-POINT待确认和供应商约定保持;真实渠道/真机、正式运营账号与签收、生产守护/恢复/密钥托管/规模RTO/RPO仍待各自条件。
## 前轮接续:2026-10-08 会话撤销、权限、消息与助手组合回归
最新进度 **1.93 / 1.03**,开发文档 **v1.61 / 0.74**。RELEASE-001保持开发中/整体未验收;独立Linux测试机路线已取消,Linux/systemd未验证、RELEASE-003仍阻塞。63任务/27页面保持。
- 新增后端tests/session_assistant_flow.php,复用既有账户HTTP/匹配夹具与助手HTTP路由,个人/企业两账户贯穿登录→报告/通知→助手→退出/改密→重新登录/重试→重评/历史上下文→消息已读。验证退出只撤销当前Token、改密撤销本人全部会话且不影响另一账户;旧Token在报告/匹配/消息/助手各读写入口拒绝且无业务写入。重新登录和显式重试保留同一逻辑问题、调用预算及幂等,重评发布后旧通知/助手仍绑定原报告,手机号/证件输入不进入模型提示,旧消息水位全部已读不吞新通知。
- 新增会话撤销/跨账户权限/消息与助手组合检查375项、100次本机HTTP、8次显式假调用通过;原会话并发281、助手165、资料268、主流程280项回归通过,本轮五个入口共1369项,失败和重复运行不累计。没有发现新的业务缺陷,本轮业务源码保持,包括上一项MatchRecords修复;仅新增组合测试及文档。
- 仅本轮全新本机合成MySQL/Redis、实际HTTP/服务层和进程内假模型,真实模型客户端构造被拦截;26表回到空库/结构保持、Redis DB15键0后删除精确合成库,两个所属服务PID退出/端口释放。测试开发中纠正HTTP状态码假设、企业产品选择及助手外键清理顺序,部分合成夹具已按归属恢复并核空;不把这些测试夹具失败记作业务缺陷或通过次数。没有部署、安装、真实worker/模型、外部消息或提交/推送/PR。
- [组合说明](D:/AAdesk/202609/airz/database/session-assistant-regression.md)及私密安全[verification.json](D:/AAdesk/202609/airz-backups/security-flow-regression/airz-security-flow-1791445051475/verification.json)、tests/cleanup/fixture-trials/历史核验/最终源码/ACL证据。上一轮及更早安全回执、35固定输入/旧缓存和13旧合成库摘要保持,旧执行摘要不刷新,两仓库既有改动保留。
**下一开发入口:** 汇总RELEASE-001核心与权限验收矩阵,继续后台跨角色权限及评估排障/人工重试组合检查,明确剩余开发用例与正式签收条件。小程序用户自行发行、课程整篇一次已读、身份证明文/后台脱敏、积分默认关闭/DEC-POINT待确认和供应商约定保持;真机/真实渠道、生产恢复/密钥托管/规模RTO/RPO及运营签收仍待各自条件。
## 前轮接续:2026-10-08 核心评估主流程组合回归
最新进度 **1.92 / 1.02**,开发文档 **v1.60 / 0.73**。用户已取消独立Linux测试机路线,原执行方案存档,不再等待目标绑定;Linux/systemd未验证,RELEASE-003仍阻塞/正式未验收。RELEASE-001由未开始转为开发中,本轮完成个人/企业主流程子集,整体仍未验收。
- 修复新报告发布后历史匹配列表和导出仍允许解释重试的问题,列表/详情/导出统一依据published_input_id计算权限;重评处理中或失败时,仍在发布的旧版保留重试权限,不能用isPreviousResult直接禁用。
- 新增后端tests/core_assessment_flow.php,贯穿新建/原键重放、初版成功、解释超时、修改失败、独立评估更新最新资料、原版重试、目录变化与冻结策略、新版发布/旧解释关闭、跨账户拒绝无写入和三次解释预算。个人/企业评估→报告→产品匹配组合检查280项通过;提交、版本并发、持久化、匹配读取/解释/任务/纯规则及历史报告/PDF相关回归共1666项通过。组合检查使用16次显式假调用;修复前红测试真实复现历史列表错误允许重试,修复后通过。
- 仅全新本机合成MySQL/Redis与显式假模型,真实模型客户端构造被拦截;PDF使用仓库已有锁定引擎/字体,未安装依赖。26表回到空库且结构保持、Redis DB15键0后删除本轮精确合成库,两个所属服务PID退出/端口释放。版本回归初次缺PDF依赖、匹配任务初次缺演示产品夹具,补齐隔离环境后58/19项分别通过;不计失败运行或重复运行次数。
- 新[组合回归说明](D:/AAdesk/202609/airz/database/core-flow-regression.md)及私密安全[verification.json](D:/AAdesk/202609/airz-backups/core-flow-regression/airz-core-flow-1791443749845/verification.json)、tests/red-test/cleanup/最终源码核验。旧安全材料、固定输入/旧缓存和13份旧合成库摘要保持,旧执行摘要不刷新;既有两仓库业务改动保留。没有部署、真实worker/模型、外部消息、提交/推送/PR。
**下一开发入口:** 继续RELEASE-001的会话撤销/跨账户权限、消息与助手组合回归,覆盖旧Token失效、资源归属、消息幂等与历史报告上下文;不重复同类告警模拟。63任务/27页面保持;小程序用户自行发行、课程整篇一次已读、身份证明文/后台脱敏、积分默认关闭/DEC-POINT待确认及供应商约定保持。H5/真机、真实渠道、Nginx/FPM/TLS恢复、密钥托管/规模RTO/RPO和运营正式签收仍待各自条件。
## 历史准备:2026-10-08 真实Linux隔离条件与执行方案(路线已取消)
最新进度 **1.91 / 1.01**,开发文档 **v1.59 / 0.72**。完成[Linux执行条件与方案](D:/AAdesk/202609/airz/database/worker-supervision/linux-execution-plan.md),状态 **prepared-unbound(待目标绑定)**;用户明确测试机“尚未准备”,本机WSL没有已安装发行版,目标包未冻结。RELEASE-003仍阻塞/正式未验收,63任务/27页面保持。
- 固化目标/账号/权限/全新作用域、一次性MySQL与Redis、完整依赖包、有效unit/drop-in、出口约束、可信采样、证据及恢复条件。原unit/spec/探针和全部历史回执保持;现Python主控依赖Windows,真实Linux主控和采集器尚需适配,根composer.lock不存在,八份源码hash不算完整运行包。
- 分阶段列出原生解析/idle启动/显式stop/SIGTERM/SIGKILL/60秒3次启动限速与受控reset-failed,以及等待期限、owned PID/cgroup、失败停止和恢复证据。worker没有SIGTERM排空处理,.stop自然退出/遗留event不当信号验收;存储中断、enable/开机、长调用替身、断电和外部消息各自绑定授权。
- 原49项预检/42项证据测试共91项、未传observation的原离线预检及五组14历史回执核验通过。本项纯文档准备不新增镜像测试;60份旧安全材料、35固定输入/参考源码与旧缓存、13旧合成库摘要保持,无新漂移豁免,旧执行摘要不刷新。
- 新私密[verification.json](D:/AAdesk/202609/airz-backups/worker-linux-preparation/airz-linux-preparation-1791442489789/verification.json)与platform-check/offline-preflight/tests/historical-evidence/receipt-baseline/ACL/final-source-validation,ACL仅当前用户/SYSTEM。正式四字段恒false,无实际Linux采样/服务/worker/模型、生产或项目DB/Redis/网络、外部消息、安装、提交/推送/PR;两仓库业务改动保持。
**下一开发入口:** 获得独立测试机信息后按方案阶段一只读核对,完成Linux主控与可信采样适配,再冻结精确目标/包/命令/恢复范围并取得服务操作授权。目标未备时不连接生产替代、不反复扩张同类合成工具。Nginx/FPM/TLS恢复、真实密钥托管/规模RTO/RPO与运营/真机签收待条件;小程序用户发行、课程整篇一次已读、身份证明文/后台脱敏、积分默认关闭/规则待确认与供应商约定保持。
## 前轮接续:2026-10-08 合成告警链统一预检与证据汇总
最新进度 **1.90 / 1.00**,开发文档 **v1.58 / 0.71**。本轮完成来源→状态→outbox→调度→接收→恢复的统一快照预检,52项新测试及原43/63/51/56/49/42回归,共356项通过、34个有审计的测试子进程全部退出。说明见[链路契约](D:/AAdesk/202609/airz/database/worker-supervision/alert-chain.md)、[进度1.00](开发进度.md)。RELEASE-003仍阻塞/正式未验收,63任务/27页面保持。
- 新增tests/worker_alert_chain.py、worker_alert_chain_test.py和database/worker-supervision/alert-chain.md;旧工具源码/回执/七旧合成库保持,无新漂移豁免。CLI只显式新合成root、固定绝对alert-sequence.json和now,完整安全历史先重放,再dispatch→receiver→source持三库锁读取一致快照,不调用同步/领取/接收/确认/恢复,不推进clock。
- 按规范JSON核完整样本时间/摘要、state、outbox和顺序,调度须源有序前缀、每来源确认前缀且后续零尝试pending;接收每来源须源前缀。delivered及人工补确认历史回执须本接收账本真实存在,不能只凭确定性字符串或source simulated_ack证明效果。source损坏/锁忙保留原错误归属,未知/坏账本不当空状态。
- 报告分别输出ledgerConsistent/outboxDrained/syntheticReady:输入与账本一致不等于排空,排空不等于当前合成样本健康或正式签收。未同步/退避/活动及过期lease/已接收未确认/dead两路径/人工限次/维护/活动或待确认故障/未知健康/样本空档有固定诊断、来源blockedBy和下一动作;不输出claimToken/ownerId。逻辑seal/snapshot摘要与七份当前工具hash只做一致性,不认证来源/权限;now是合成时钟。
- 52项覆盖序列/state/样本/outbox重算seal后偏差、越序/多lease、普通和人工确认回执丢失、预算/回执区分、v1审计未enable、90/91秒边界、路径/CLI/不写及异常归属。三项owned进程验证三库锁、等写提交后读最新clock和中止检查释放锁/字节保持,全部退出;暂停只测试内。现有SQLite事务可能恢复热日志,不能宣称不可变取证;仅干净合成库字节保持已验证,不读历史库验证现场。
- 新公开24样本7事件形成pending/unconfirmed/dead/recovered/complete/stale六份报告;先接收超时再耗尽成dead、另来源永久失败,两路径人工恢复,最终7模拟delivered/7唯一效果/2审计。每次预检三个干净库前后字节保持,source贯穿保持。排空时syntheticReady=true,样本91秒过旧仍outboxDrained=true但syntheticReady=false;四正式验收字段始终false。
- 私密[verification.json](D:/AAdesk/202609/airz-backups/worker-alert-chain/airz-alert-store-1791440789040/verification.json)及tests/receipt-baseline/red-tests/red-source-attribution/final-source-validation与六份报告,ACL当前用户/SYSTEM。首次异常归属修正前报告另存initial-stage-evidence、首次现场库保持,最终演示用其下第二个新合成目录。39份历史安全材料/16固定输入/七旧库摘要保持,五组14回执/21不同源码按原catalog核验,旧执行摘要不刷新。
- 无生产/项目MySQL/Redis/网络/env或私密log/key/config、实际采样、服务启停、worker/模型/外部消息、安装或提交/推送/PR。Python-B/旧缓存和两仓库业务改动保持;本地合成SQLite/Windows进程证据不算Linux/systemd/断电耐久或真实投递验收。
**下一开发入口:** 合成告警链已汇总,转向真实Linux隔离验证的条件核对与冻结执行方案。先明确测试主机/目录/账号、允许服务与信号范围、可信采样、渠道/收件目标和独立证据位置,再按授权执行,不继续扩大同类模拟状态工具。Nginx/FPM/TLS恢复、真实密钥托管/生产规模RTO/RPO及运营/真机签收仍待条件;小程序用户发行、课程整篇一次已读、身份证明文/后台脱敏、积分默认关闭/规则待确认与供应商约定保持。
## 前轮接续:2026-10-08 dead事件对账与人工恢复审计
最新进度 **1.89 / 0.99**,开发文档 **v1.57 / 0.70**。本轮完成RELEASE-003模拟回执对账与同事务人工恢复审计,43项新测试/9个owned子进程、原63/51/56/49/42回归通过,共304项/31测试进程全部退出。说明见[恢复契约](D:/AAdesk/202609/airz/database/worker-supervision/alert-recovery.md)、[进度0.99](开发进度.md)。RELEASE-003阻塞/正式未验收、63任务/27页面保持。
- 新增tests/worker_alert_recovery.py、worker_alert_recovery_test.py与database/worker-supervision/alert-recovery.md;必要修改共享worker_alert_dispatch.py,兼容旧v1/新v2。默认初始化及receiver仍v1,仅在新合成dispatch显式enable追加recovery_audit;DDL/版本/seal同事务、幂等,坏库/陌生版本不清空重建。历史四库不迁移、不改字节。
- 仅dead可review:本模拟接收账本有匹配回执→confirm-received,只补模拟确认;正常账本明确无此event→grant-retry,只在当前attempts基础上再领取一次,默认延迟5秒,人工grant每事件最多3次。attempts不清零;首次永久失败1次也只grant到2次,不恢复原自动5次预算。dead仍阻塞同来源,事件ID/来源顺序保持,次数耗尽后有回执仍可补确认;旧finishedToken不能冒充正常confirm。
- 方案覆盖作用域/政策/事件/状态/预算/人工次数/clock/审计头/回执,execute锁内重新核对,过期方案或迟到接收拒绝。锁序dispatch→receiver→source,接收/来源锁持到恢复commit;状态、预算来源、时钟、审计与seal在同一dispatch事务提交,SQL/commit失败一起回滚,没有跨库写入。hash/令牌/request/actor别名不认证来源或授权,可信本地目录约束保持。
- 32位小写hex requestId,同plan/actor/固定reason/now重试changed=false,仅一条审计,正常调度推进后仍可重试旧请求;同键改参数冲突。actor安全别名/reason枚举,不保存私密自由文本;审计保留安全before/after状态和预算、回执及hash链,加载核对链/预算/当前状态。CLI固定绝对plan文件名和显式--apply,安全错误不回显正文。
- 43项涵盖对账/单次预算/三次上限/lease/非dead/过期快照/请求冲突/类型/坏receiver/审计篡改/IO回滚/CLI。7项进程测试9个owned Python进程,4次enable/execute提交前后终止,确证热日志/脏页、重开回滚与提交后幂等;同键/异键并发及正常调度/接收/来源锁竞争通过。连同旧调度12/存储10共31个测试进程全部退出,不记Linux或断电耐久验收。
- 公开24样本7事件,新现场两个来源首事件先dead,一条已接收、一条未接收;分别补确认/grant并幂等重试,人工恢复不改source/receiver字节。随后正常调度7模拟delivered/7唯一接收效果/其他状态0、2条审计,源字节/来源顺序保持。33份旧安全材料、13份未改输入、四份旧合成库摘要保持;dispatch源码必要漂移单列旧/new hash并关联新63项回归,上一项执行回执/摘要不刷新。五组14回执/21不同源码按原catalog核验,原密钥漂移豁免不扩大。
- 新私密[verification.json](D:/AAdesk/202609/airz-backups/worker-alert-recovery/airz-alert-store-1791439388039/verification.json)及tests/receipt-baseline/red-tests/final-source-validation、三个SQLite现场,ACL当前用户/SYSTEM。formalAcceptance/liveSystemdVerified/externalDeliveryVerified/hostPowerFailureVerified均false;零生产/项目MySQL/Redis/网络/实际采样/服务启停/worker/模型/外部消息、安装或提交/推送/PR。Python-B/保留旧缓存和两仓库既有业务改动保持。
**下一开发入口:** 合成告警链统一预检与证据汇总,核对来源→状态→outbox→调度→接收→恢复的完整快照和剩余条件,避免把局部模拟通过当作正式签收。真实Linux信号/守护/开机、可信实际采样、授权渠道/收件目标、Nginx/FPM/TLS恢复、实际密钥托管/生产规模RTO/RPO及运营/真机签收仍待条件。小程序用户发行、课程整篇一次已读、身份证明文/后台脱敏、积分默认关闭/规则待确认及供应商约定保持。
## 前轮接续:2026-10-08 outbox调度租约、失败退避与模拟接收幂等
最新进度 **1.88 / 0.98**,开发文档 **v1.56 / 0.69**。本轮完成RELEASE-003有界调度与独立模拟接收,63项新增测试/12个owned子进程通过,原51/56/49/42回归和五组历史核验保持。说明见[调度与接收契约](D:/AAdesk/202609/airz/database/worker-supervision/alert-dispatch.md)、[进度0.98](开发进度.md)。RELEASE-003阻塞/正式未验收、63任务/27页面保持。
- 后端新增tests/worker_alert_dispatch.py、worker_alert_dispatch_test.py与database/worker-supervision/alert-dispatch.md。新合成本地目录追加alert-dispatch.sqlite3/alert-receiver.sqlite3,原alert-store.sqlite3 v1/源码/旧回执保持;三个账本独立事务,调度从已提交outbox按eventId幂等同步,不改source simulated_ack/state。
- DELETE日志/FULL同步/BEGIN IMMEDIATE,锁内核对最新源快照,claim同步新事件/单调时钟/领取同事务;状态pending/leased/delivered/dead严格校验,损坏/错scope或policy/陌生schema/WAL/缺库/孤立日志拒绝,不自动清空重建。目录/库/sidecar沿用可信本地路径/链接/reparse/硬链接元数据/64MiB门禁,摘要/合成令牌不认证来源,禁止网络盘。
- 合成默认租约30秒、最多5次领取、失败退避5/10/20/40秒且上限60秒、每轮limit1–20,两个来源实际每轮最多2条。每来源只领最早未delivered事件,dead仍阻塞同来源后续,其他来源可推进;永久失败/次数耗尽保留dead、不无限重试。显式合成now单调,令牌当前且now<leaseUntil才确认/失败,到期可接管换令牌,迟到成功/失败均拒绝。
- 接收端独立提交后才确认调度,不持调度写锁模拟发送。eventId主键+完整规范载荷去重,同ID不同内容/数值类型拒绝;回执必须匹配且本接收账本真实存在,重复接收/重复确认/重复失败幂等。CLI只accepted/retryable/permanent/timeout-after-accept四种进程内场景,无实际渠道/URL/外部消息;delivered仅模拟确认,externalDeliveryVerified=false。
- 63项涵盖边界/顺序/限次/退避/回执/坏存储/IO回滚/安全输出,9项进程测试12个owned Python子进程,6个在claim/receive/confirm提交前后终止,全部退出。测试内强制脏页写回/验证热日志:领取回滚不耗attempt,接收/确认中断重投同ID只一次效果,双领取/双接收并发去重。连同原存储回归10进程,共22个测试进程全部退出;不记Linux/systemd/机器断电耐久验收。
- 公开24样本7事件,首轮2条模拟接收成功但超时,退避前无领取,5秒后2条重投均duplicate;随后全部7个模拟delivered/7唯一效果、pending/leased/dead=0,来源顺序和源库原字节保持。原51/56/49/42回归、14回执/21不同源码核验、28份此前安全材料/12固定输入及上一项合成库摘要保持。
- 新私密[verification.json](D:/AAdesk/202609/airz-backups/worker-alert-dispatch/airz-alert-store-1791436020494/verification.json)及tests/receipt-baseline/red-tests/final-source-validation、三个合成SQLite现场,ACL仅当前用户/SYSTEM。formalAcceptance/liveSystemdVerified/externalDeliveryVerified/hostPowerFailureVerified均false;无生产/项目MySQL/Redis/网络/实际采样/服务启停/worker/模型/外部消息、系统安装或提交/推送/PR。Python-B/旧保留缓存和两仓库既有业务改动保持。
**下一开发入口:** RELEASE-003 dead事件与模拟接收回执对账、带审计的人工恢复门禁;在新合成账本区分“效果已存在但未确认”与“确未接收”,避免直接清空次数/跳过事件或自动外部补发。可信实际采样、真实Linux信号/守护/开机、授权渠道/收件目标仍待条件;Nginx/FPM/TLS恢复、实际密钥托管/生产规模RTO/RPO及正式运营/真机签收待办。小程序用户发行、课程整篇一次已读、身份证明文/后台脱敏、积分默认关闭/规则待确认与供应商约定保持。
## 前轮接续:2026-10-08 告警state/outbox原子保存与崩溃恢复
最新进度 **1.87 / 0.97**,开发文档 **v1.55 / 0.68**。本轮完成RELEASE-003标准库SQLite本地合成持久化,51项测试/10个owned子进程通过,原56/49/42项回归及五组历史核验保持。说明见[原子存储契约](D:/AAdesk/202609/airz/database/worker-supervision/alert-store.md)、[进度0.97](开发进度.md)。RELEASE-003阻塞/正式未验收、63任务/27页面保持。
- 后端新增tests/worker_alert_store.py、worker_alert_store_test.py与database/worker-supervision/alert-store.md;仅新airz-alert-store-数字目录/固定SQLite文件,DELETE日志/FULL同步/BEGIN IMMEDIATE,先锁再读最新state,state/样本摘要/新outbox同事务。只用Python标准库,不连接项目MySQL/Redis,旧纯状态/预检/spec/unit/catalog/业务源码不改。
- samples按时间主键保存摘要,支持整批/交叠/最新边界重试;已记录同时间同内容跳过,同时间冲突/未记录旧样本/过快仍拒绝,输入整批预检、中途SQL失败全部回滚。outbox eventId唯一,冲突不静默忽略;模拟确认只同事务置标记且幂等,不删除事件,不代表收件成功。
- 版本/schema/quick_check、严格JSON、policy/state/样本/事件关系与检查点摘要验证;损坏/陌生schema/WAL、作用域政策变化、缺库/孤立日志拒绝,不自动重建。根/库/sidecar检查链接/reparse/普通文件/硬链接元数据/64MiB上限;目录必须可信,本项不认证来源或抵抗同权限路径替换,不支持网络盘。
- 7项进程测试创建10个本轮owned Python进程,4个在apply/ack commit前后终止;全部退出。测试连接cache_size=1强制脏页写回,提交前确证DB变化和有效热日志,重开回滚state/samples/outbox;提交后但回执未输出可整批重试,确认中断也幂等。故障注入仅测试工具;不记真实Linux/systemd、断电或磁盘耐久验收。
- 公开24样本实际CLI得到7事件/4维护重置,整批重试0新样本/24重放/0新事件,最终无活动故障;模拟确认1条后仍7条事件/6条待确认,再次确认不变。原56/49/42回归、14回执/21不同源码核验及23份此前安全材料摘要保持,旧执行摘要不刷新。
- 新私密[verification.json](D:/AAdesk/202609/airz-backups/worker-alert-store/airz-alert-store-1791434240512/verification.json)及tests/receipt-baseline/red-tests/final-source-validation、合成SQLite现场,ACL当前用户/SYSTEM。formalAcceptance/liveSystemdVerified/externalDeliveryVerified/hostPowerFailureVerified均false;零实际采样/生产或项目DB/Redis/网络/外部通知/服务启停/worker/模型、系统安装或提交/推送/PR。Python-B/旧保留缓存和两仓库既有业务改动保持。
**下一开发入口:** RELEASE-003告警outbox有界调度、领取租约、失败退避、迟到确认与模拟接收端eventId幂等;仅新合成存储/进程内模拟渠道,不接外部通知。真实Linux信号/重启/开机、可信实际采样和渠道/收件目标仍需条件;Nginx/FPM/TLS恢复、实际密钥托管/生产规模RTO/RPO及正式运营/真机签收待办。小程序用户发行、课程整篇一次已读、身份证明文/后台脱敏、积分默认关闭/规则待确认和供应商约定保持。
## 前轮接续:2026-10-08 告警连续门槛、去重、恢复与维护
最新进度 **1.86 / 0.96**,开发文档 **v1.54 / 0.67**。本轮完成RELEASE-003告警纯状态处理和安全序列只读重放,56项测试通过;24个公开合成样本得到7个事件/4次维护连续性重置,分段恢复和边界重放与整段事件/state一致。说明见[告警状态契约](D:/AAdesk/202609/airz/database/worker-supervision/alert-state.md)、[进度0.96](开发进度.md)。RELEASE-003阻塞/正式未验收、63任务/27页面保持。
- 后端新增`tests/worker_alert_state.py`、`tests/worker_alert_state_test.py`、`database/worker-supervision/alert-state.md`与`alert-sequence.json`。纯advance/replay复用原安全DTO预览/标准库文件读取;不改worker/模型/任务业务、旧preflight/spec/unit/catalog或历史摘要。CLI只读绝对路径固定名alert-sequence.json和可选alert-state.json,stdout安全JSON/固定错误码,不写输入或状态文件。
- 默认failure3/recovery2/minInterval15秒/maxGap90秒/heartbeat阈值180秒,仅合成开发默认非生产告警时效。同码连续3次firing,持续同故障不重复;换码连续3次changed且incidentId保持,不把异常变化当恢复。两个来源明确active/success+近期心跳且非维护连续2次才恢复;新一轮故障新incidentId,eventId确定性。
- 双来源独立,短暂健康/不同故障码打断待确认;重复最新同时间/同内容不计数/不发事件,同时间冲突、乱序、过快拒绝。长空档与维护进出清零待确认故障/恢复计数但保留打开事件;维护预期stop/missing不恢复,真实degraded/限速等仍开事件。unknown/缺失/旧近期心跳不证明健康;累计NRestarts仍不当近期风暴。
- 状态schema/作用域/policy摘要、计数/时间/事件ID关系严格验证,坏state不自动重置;纯函数不修改输入,JSON序列化可恢复。replay1–1000样本完整验证后输出,中途失败不吐部分事件。SHA与结构不认证来源,state/采样/代码仍需可信流程;当前没有跨进程锁、原子state+outbox或投递回执,不能保证发送不丢/不重复,不能先存状态再发送。
- 56项测试涵盖门槛/去重/码变/恢复/双来源、采样边界/空档/重放/冲突/乱序、维护与真实异常、政策/作用域/坏状态、确定ID/输入不变/JSON恢复、CLI只读/安全错误/分段与部分失败。原守护49项、证据42项回归和五组14回执/21不同源码核验保持;另记录上一项5份安全回执,19历史材料摘要不改。
- 新私密安全证据`D:/AAdesk/202609/airz-backups/worker-alert-state/airz-alert-state-1791432337110/`,ACL仅当前用户/SYSTEM,含verification/tests/receipt-baseline/final-source-validation。formalAcceptance/liveSystemdVerified/externalDeliveryVerified均false;无实际采样/DB/Redis/网络/服务启停/worker/模型/外部通知、系统安装、提交/推送/PR。Python-B/旧拒绝删除缓存及两仓库既有业务改动保持。
**下一开发入口:** RELEASE-003告警state与事件outbox原子保存、跨进程互斥、eventId去重及崩溃/重复输入恢复;先临时合成文件/序列和模拟确认,不采生产或接外部投递。真实Linux信号/重启/限速/开机、可信实际采样与渠道/收件目标仍需具体条件和范围;Nginx/FPM/TLS恢复、实际密钥托管/生产规模RTO/RPO及正式运营/真机签收保持待办。小程序用户发行、课程整篇一次已读、积分默认关闭/规则待确认与供应商约定保持。
## 前轮接续:2026-10-08 Linux/systemd守护与告警隔离准备
最新进度 **1.85 / 0.95**,开发文档 **v1.53 / 0.66**。本轮完成RELEASE-003合成unit样例、标准库离线预检和安全快照告警预览;49项文件测试及10类现有PHP心跳纯回调/Python兼容检查通过。说明见[守护隔离准备](D:/AAdesk/202609/airz/database/worker-supervision/README.md)、[进度0.95](开发进度.md)。RELEASE-003整体阻塞/正式未验收和63任务/27页面保持。
- 后端新增`tests/worker_supervision_preflight.py`、`tests/worker_supervision_preflight_test.py`、`database/worker-supervision/`中的README/公开rehearsal-spec.json/airz-analysis-rehearsal.service/合成supervision-observation.json。unit独立airz-rehearsal用户和合成srv目录,直接运行原queue_lifecycle_probe persistent/real策略,模型和网络函数禁用,读写仅runtime/events。没有私密运行config或Linux目录/账号/服务安装;样例不能直接部署生产。
- 离线入口复用release_evidence的标准库安全读文件/严格JSON,核8份依赖源码hash;拒绝生产路径、默认/远程存储、共享队列、凭据/未知字段、模型开启、root用户、生产think/fake策略、重复指令/续行、EnvironmentFile及过宽写目录/无限时间/无启动限速。只stdout,不写文件、运行子进程或连DB/Redis/网络/启动worker/模型。
- unit计划Restart=always/5秒、StartLimit60秒3次、Stop240秒、SIGTERM/control-group/最终强杀及沙箱。源码没有应用级SIGTERM排空;官方语义确认Stop240秒不保证任务完成,显式stop不自动重启、命中限速不保证窗口后自动复活。worker存储异常继续degraded/active,OnFailure不足以覆盖;累计NRestarts不能当近期风暴。
- 预览只接受规范化supervisor四字段和原心跳安全DTO/作用域/采样时间/maintenance,校验年龄/阈值/状态一致性;识别限速、失败、非计划停止/转换及所有异常观测。维护只抑制预期inactive/deactivating的stopped/missing,不隐藏失败/存储异常;无定时采集、连续失败门槛/去重/恢复状态/持久outbox或投递。公开样本是固定历史合成时刻/PID且active但degraded,不代表当前服务。
- 49项测试覆盖门禁、源码漂移、时间/维护/严格类型、CLI只读和固定错误码;PHP7.4.3只加载AnalysisWorkerHeartbeat纯类,用回调生成ready/边界/stale/degraded/stopped/missing/invalid/unavailable/disabled/misconfigured十类DTO,Python兼容核对通过,无框架/env或DB/Redis。原证据入口42项回归、五组14回执/21不同源码核验保持,旧回执/业务源码不改。
- 本机无systemctl/systemd-analyze,未做原生unit解析或真实信号/守护/开机恢复,不尝试生产替代。新私密证据`D:/AAdesk/202609/airz-backups/worker-supervision-preflight/airz-supervision-preflight-1791431462713/`,ACL仅当前用户/SYSTEM,含verification/native-heartbeat-compatibility/tests/final-source-validation。输出formalAcceptance/liveSystemdVerified/externalDeliveryVerified均false;服务启停、生产/模型/外部通知均0。Python-B/旧缓存保留,两仓库既有改动保持,未提交/推送/PR或系统安装。
**下一开发入口:** RELEASE-003告警安全快照的连续失败门槛、同故障去重、恢复事件与维护窗口边界;先做纯状态/合成序列及离线检查,不实际采集生产或投递消息。真实Linux信号/重启/限速/开机仍需明确新隔离环境和具体范围;外部投递需渠道/收件目标与授权。Nginx/FPM/TLS恢复、真实密钥托管/生产规模RTO/RPO和正式运营/真机签收保持待条件;小程序用户发行、课程整篇一次已读、积分默认关闭/规则待确认及供应商约定保持。
## 前轮接续:2026-10-08 部署恢复手册与只读证据校验
最新进度 **1.84 / 0.94**,开发文档 **v1.52 / 0.65**。本轮完成RELEASE-003统一恢复手册与标准库只读证据入口,42项合成文件测试通过,五组14份历史回执/21个不同源码文件核验通过。说明见[部署恢复手册](D:/AAdesk/202609/airz/database/deployment-recovery-runbook.md)、[进度0.94](开发进度.md)。RELEASE-003整体阻塞、正式未验收、63任务/27页面保持。
- 后端新增`tests/release_evidence.py`、`tests/release_evidence_test.py`、`database/release-evidence.json`及`database/deployment-recovery-runbook.md`。固定catalog记录三类安全JSON回执路径、SHA256、逐组检查数及源码/纯类映射;校验器只用标准库,不导入演练脚本/框架、运行子进程、连DB/Redis/网络或启动worker/模型,默认仅输出安全JSON。
- 逐组核验r2发布/定向恢复157、密钥恢复53、队列76、导入中断92及共享密钥新回归53的历史证据,不合并累计成新验收数。14份回执摘要、关键断言、cleanup和63任务/27页面一致;134条队列模型禁用审计、三导入故障与恢复阶段耗时/回归关联核对。历史清理回执不代表当前服务/端口/ACL状态。
- 唯一历史源码差异是key_recovery_rehearsal.py:旧5913a69c…、当前a49ac108…,只由catalog明确记录且restore-import/key-regression两组通过、相同文件执行摘要匹配当前时覆盖。旧回执原字节保持,不刷新历史hash或要求正常更新的文档继续匹配历史fileSha256。新的源码再漂移或替代回归失败均拒绝。
- 42项测试包括缺失/篡改/失败、组/计数、严格布尔与零调用类型、未释放端口/cleanup errors、目录越界/秘密文件/源码白名单、符号链接/Windows reparse元数据拒绝、JSON重复键/非有限数/指数溢出、文件大小、三故障/耗时和新回归关联、CLI成功/失败只读不回显正文。仅临时合成文件,无服务或外部系统验证;链接/junction测试为元数据注入,不记真实创建系统链接。
- 新安全证据目录`D:/AAdesk/202609/airz-backups/release-evidence-reviews/airz-evidence-review-1791430386861/`,ACL仅当前用户/SYSTEM;verification、receipt-baseline、测试及final-source-validation独立保存。校验器自身不写文件。Python-B,旧拒绝清理的缓存保持;本轮没有启停服务或安装依赖。
- 仓库SHA256是已审阅快照而非数字签名,catalog/校验器/回执须来自可信来源,不能独立识别三者同时被篡改。输出始终formalAcceptance=false并列正式条件;不读取默认/生产.env、dump、实际密钥或私密config/log,不连接生产,不操作账号/策略/积分或代发小程序;既有业务改动全部保留,无提交/推送/PR。
**下一开发入口:** RELEASE-003 Linux/systemd队列守护与告警的隔离验证准备。先审阅现有部署单元、任务/租约/心跳/重启边界,形成可离线核验的方案与检查入口;实际信号/守护/开机恢复需要明确的新Linux隔离环境,告警投递需要通道和收件目标。不能直接停止生产worker、发送外部通知或沿用历史发布授权。Nginx/FPM/TLS恢复、真实密钥托管/生产规模RTO/RPO及正式运营/真机签收仍待条件;小程序用户发行、课程整篇一次已读、积分默认关闭和供应商约定保持。
## 前轮接续:2026-10-08 合成全库恢复导入中断与耗时
最新进度 **1.83 / 0.93**,开发文档 **v1.51 / 0.64**。本轮完成RELEASE-003全库导入中断/部分目标保留/另建空目标恢复及耗时记录,92项通过;共享密钥恢复入口在另一新环境完整53项回归通过,不合并累计。说明见[导入中断演练](D:/AAdesk/202609/airz/database/restore-interruption-rehearsal.md)、[进度0.93](开发进度.md)。RELEASE-003整体阻塞/正式验收及63任务/27页面保持。
- 新后端`tests/restore_interruption_rehearsal.py`、`database/restore-interruption-rehearsal.md`。共享`tests/key_recovery_rehearsal.py`提取原有verified_backup预检并记录restore各阶段耗时,原门禁顺序/错误码保持;PHP探针/Secret/Env/schema/业务源码不改。检查父/就近指令无项目AGENTS,保留两仓库所有已有未提交工作,未提交/推送/PR。
- 新MySQL5.7.26/3320、Redis5.0.14.1/6400、PHP7.4.3、6座合成库/私密ROOT/随机key,目录沿用共享PHP精确门禁airz-key-recovery-<数字>,位于本轮专属restore-interruption-rehearsals父目录。607合成行(601 config、1模型/3凭据/1会员/1资料)、26表/8触发器,5GCM密文/1NULL;身份明文123456.78元保持。模型false/URL127.0.0.1:1,只加载Secret/Env纯类、不读默认/生产.env/私密dump/真实key,不运行worker/模型。
- 三个真实mysql.exe客户端各由主控核对本机连接ID/owned PID后强制kill:前11完整表块保留DDL/601 config;config前32完整INSERT显式事务时,session见32/另一连接0且INNODB_TRX实际活跃,终止后回滚32行但11表保留;全SQL26表已完成但本地成功回执未写,终止后全数据/结构其实完整,独立密钥认证通过。暂停输入/显式事务是明确测试注入,不覆盖任意半语句、服务器断电或磁盘故障。
- 三中断目标重复restore均RESTORE_TARGET_NOT_EMPTY且前后摘要保持,不自动清库/续灌;实际重启owned MySQL后三现场/来源持久化,未提交行不复活。另建空目标全26表/全部行/列/索引/外键/8触发器和密钥恢复一致,重复恢复拒绝,旧现场和源库全程保持。
- SQL371203字节/gzip18876字节,小本机样本完整恢复1.235秒:预检0.063、SQL导入1.031、结构数据0.094、DB解密0.047,空目标门禁低于测量分辨率;备份0.109秒、故障后MySQL重启1.922秒、92项清理前14.203秒/cleanup0.375秒。单调时钟阶段总和核对;来源无并发写,不能记生产RTO/RPO或真实规模承诺。
- 私密最终证据`D:/AAdesk/202609/airz-backups/restore-interruption-rehearsals/airz-key-recovery-1791429283246/verification.json`、`cleanup.json`、三份interruption-*.json和`final-source-validation.json`,六源码hash/备份hash/阶段耗时齐备。14隔离负例与错误key/损坏包/manifest/cnf/来源即目标守卫通过,父/key/gzip/config/MySQL数据ACL实测一致;无密钥/凭据明文回执。全部owned客户端和服务停止、3320/6400释放,6库/备份/key/事件日志私密保留。
- 共享工具53项回归新环境证据`D:/AAdesk/202609/airz-backups/restore-interruption-regression/airz-key-recovery-1791429315094/verification.json`及cleanup,MySQL3321/Redis6401停止、端口释放,默认服务未处理。两个首轮均完整通过,Python-B/旧缓存不重试删除;无系统/全局安装。此前1.81历史回执保持,不修改旧源码摘要来冒充新验证。
- 零生产连接/worker/模型执行;未生产发布/小程序代发/账号绑定改密/策略/积分迁移。身份证明文/后台脱敏、课程整篇一次已读、小程序用户发行、积分和供应商约定保持。
**下一开发入口:** RELEASE-003部署/恢复手册整合及证据校验入口。先阅读r2发布/定向恢复、密钥、队列、导入中断说明和安全回执,形成可复核的入口与当前证据范围,区分历史执行hash/当前源码及正式未验收条件;只读核验不启动生产维护或模型/worker。Linux/Nginx/FPM/TLS、systemd信号/守护/开机恢复、外部告警、实际密钥托管/生产规模耗时和正式签收仍待各自条件;不用默认.env/生产dump/key,不整库覆盖后续数据或复活Token,不重复r2/账号改密绑定/策略积分,小程序仍用户发行。
## 前轮接续:2026-10-08 队列进程生命周期隔离演练
最新进度 **1.82 / 0.92**,开发文档 **v1.50 / 0.63**。承接密钥恢复,本轮完成RELEASE-003队列进程生命周期隔离演练,76项通过/134子进程审计;说明见[队列演练](D:/AAdesk/202609/airz/database/queue-lifecycle-rehearsal.md)、[进度0.92](开发进度.md)。任务/队列/心跳业务源码未改;RELEASE-003整体阻塞/正式验收及63任务/27页面保持。
- 后端新增`tests/queue_lifecycle_rehearsal.py`、`tests/queue_lifecycle_probe.php`及`database/queue-lifecycle-rehearsal.md`。先检查两仓库状态及父/就近指令,无项目AGENTS;保留所有既有未提交工作,不提交/推送/PR。仅演练工具/说明和进度交接文档变更。
- 新MySQL5.7.26/3319、Redis5.0.14.1/6399、PHP7.4.3、ROOT/唯一队列/合成库,26表8触发器无数据schema。模型Config/Env始终false、api_key空、URL127.0.0.1:1;双入口18项目标/模型/.env拒绝,真实客户端未加载、网络调用函数禁用。
- 真实AnalysisWork/AnalyzeAssessment/AnalysisTasks/冻结发布/Redis connector/心跳执行。成功/中断/迟到路径仅显式fake-policy进程内class_alias策略返回值和客户端,实际启用策略/供应商能力未验收;常驻command用测试Input stop文件有界退出,不等于Linux信号/systemd。产品解释/助手只覆盖真实空闲扫描,没有任务夹具。
- 实际强制终止本轮持有的进程:领取后fire前退出reserved真到期重投,delivery attempts1→2但业务attempt1;运行中有效租约不改/重复消费不调用,过期AI_TASK_INTERRUPTED不自动收费重试、未知用量NULL,同键明确重试新task且attempt2。旧客户端阻塞时新进程发布,释放旧响应仅补原task用量,新报告/日志/通知保持。
- 心跳新owner接管后旧退出不能覆盖,有界退出stopped、强制kill不伪报stopped、180秒显式时间stale、缺键stop不重建;6安全字段/TTL核对。自建MySQL实际停机/重启同command恢复,Redis实际停机/无持久重启后按DB/超过30秒边界补投。业务租约过期/派发时间及只读stale测试有显式时间注入,生产配置不改。
- 最终22非目标表/结构保持、三队列0;1合成会员/1资料/7评估会话/15日志/9成功或失败通知。私密证据`D:/AAdesk/202609/airz-backups/queue-lifecycle-rehearsals/airz-queue-lifecycle-1791428470406/verification.json`、`cleanup.json`和`final-source-validation.json`;13源码摘要齐备,134成功进程审计,stderr全空。全部owned进程/MySQL/Redis停,3319/6399释放,默认服务不处理,合成数据/事件/日志私密保留、ACL实测通过。
- 四轮早期脚本适配失败尾号1791428313479/1791428354628/1791428368512/1791428403444现场和cleanup保留,不计成功;两级Config、PHP7禁用函数检查、通知版本ID、假正文数字已修正,全新完整重跑76项通过,不改业务校验。Python-B、此前被审批拒绝的旧缓存仍保留,不换工具重试删除。
- 零生产连接/活动库worker/真实模型网络调用,未生产发布/小程序代发/账号绑定改密/调整策略/积分迁移。身份证明文/后台脱敏、课程整篇一次已读、小程序用户发行、积分和供应商约定保持。
**下一开发入口:** RELEASE-003合成全库恢复的导入中断、部分新目标保留/另建空目标恢复及耗时记录。先审阅`tests/key_recovery_rehearsal.py`及恢复门禁,用全新合成库/私密目录/单独合成密钥,不复用旧夹具或生产dump/.env/密钥;模型关闭且地址127.0.0.1:1,不启动活动库worker。不整库覆盖已有数据或复活已撤销Token。Linux/Nginx/FPM/TLS、systemd守护/信号/开机恢复、外部告警、实际密钥托管及正式签收仍待其条件;不重复既有生产r2,不绑定账号/改密/策略/积分,小程序仍用户发行。
## 前轮接续:2026-10-08 合成加密资料与单独密钥恢复
最新进度 **1.81 / 0.91**。承接r2恢复演练,本轮完成新合成环境的全26表/8触发器备份恢复及单独AES密钥恢复,53项通过;说明见[密钥恢复演练](D:/AAdesk/202609/airz/database/key-recovery-rehearsal.md)、[进度0.91](开发进度.md)。当前AES持久字段为模型api_key/api_secret,身份证按既有业务约定明文、后台读取脱敏;本轮没有修改业务加密源码或生产密钥。RELEASE-003整体/正式运营真机验收保持待办,63任务/27页面保持。
- 后端新增`tests/key_recovery_rehearsal.py`、`tests/key_recovery_probe.php`及`database/key-recovery-rehearsal.md`。复制并核对既有Secret/Env纯类,独立Env前缀和显式key文件,不加载框架、默认/生产.env或生产私密dump。双入口先拒绝正式库/远程地址/默认端口/模型开启/外部URL,mysql客户端cnf也精确核对。
- 全新本机MySQL5.7.26/3318、Redis5.0.14.1/6398和三座新合成库。合成源库无数据schema后加入一个禁用模型/三凭据、一个合成会员/明文资料和配置标记;五非空密文含中文/换行/NUL,一secret为NULL。26表全部行及列/索引/外键/8触发器实际恢复一致,金额123456.78元保持,来源全程不变。
- 数据gzip/ciphertext快照与随机合成密钥分文件私密保管;封存原密钥路径,只用单独备份复制的新key文件恢复并解密。缺失/非法Base64/短/错误密钥,损坏包/manifest/密文、MySQL cnf漂移、非空目标和重复导入均明确拒绝,拒绝前后目标保持;跳过文件摘要的篡改密文仍被GCM认证拒绝。恢复库故障夹具已撤销并核对完整。
- 最终证据`D:/AAdesk/202609/airz-backups/key-recovery-rehearsals/airz-key-recovery-1791427161829/verification.json`及`cleanup.json`,53检查/两个工具源码hash/纯类hash齐备;目录和数据包/密钥ACL实际通过,安全回执不含密钥或凭据明文。自己的MySQL/Redis停止,3318/6398释放;合成库/备份/密钥私密保留,不复用旧夹具。零生产连接/真实worker/模型调用。
- 首轮尾号1791427042626失败回执保留:系统Windows PowerShell安全模块无法自动加载,ACL核验误读空结果;改用显式已安装pwsh及Stop策略,全新环境完整重跑成功,不安装/升级软件或放宽权限门禁。Python使用-B,本轮未新增字节码;前轮被自动审批拒绝清理的旧缓存仍保留,不重新处理。
- 保留两仓库既有业务改动,未提交/推送/PR、生产发布/回退、小程序代发、账号绑定/改密/策略/积分迁移。同步文档并纠正database/README“card_no仍加密”的过时一句,实际明文约定和源码不变。
**下一开发入口:** RELEASE-003队列进程生命周期。审阅任务/租约/心跳和现有隔离测试,使用新合成库/Redis和受控测试进程验证退出、重启、补偿、迟到结果及重复任务;模型继续禁用,地址127.0.0.1:1,不启动真实analysis:work连接活动库。生产Linux/Nginx/FPM/TLS/systemd/外部告警、恢复耗时及导入中断、实际密钥托管与正式签收仍待各自条件。不能整库覆盖已有数据或恢复已撤销Token;小程序仍用户发行,积分规则/供应商/真实资料依既有约定。
## 前轮接续:2026-10-08 r2 隔离实际部署与定向恢复
最新进度 **1.80 / 0.90**。已完成上一检查点要求的新显式隔离r2增量部署、异常中断及实际定向恢复开发演练,最终157项通过;生产r2既有发布不重复执行。详见[开发进度0.90](开发进度.md)、[隔离演练说明](D:/AAdesk/202609/airz/database/release-rehearsal.md)。RELEASE-003整体仍有守护/告警、密钥及灾难恢复等证据待补,正式运营/真机验收保持待办,63任务/27页面保持。
- 后端新增`tests/release_rehearsal.py`、`tests/release_rehearsal_runner.py`、`tests/release_rehearsal_db.php`。显式config、ROOT标记、非默认本机端口及合成库名先于连接校验;不读默认/生产.env,不启动analysis:work,模型关闭且URL固定127.0.0.1:1。冻结生产脚本未改,不用于Windows演练。
- 全新MySQL5.7.26/3317、Redis6397、PHP7.4.3及HTTP18177,schema来自仓库无数据结构,六座新合成库/ROOT/检查点。运行包仍冻结13文件,71依赖/保护保持;合成旧源码仅增加无行为注释,不是历史生产before复刻。16权限节点/3模板、8FAQ、课程intro及资源版本实际apply/恢复,无整表/整库导入。
- 正常/重复部署、文件第5项退出、DB提交前退出及提交回执丢失续跑、site版本后退出、恢复DB提交前后/第5文件退出与重复恢复通过。新增FAQ/课程正文/资源版本/源码编辑、组绑定及发布后新角色引用新节点均安全拒绝,拒绝前后数据库保持。
- 实际定向恢复保留发布后的合成admin密码、积分、浏览量、已读时间、通知、新配置及另一FAQ;26表列结构保持。10本机HTTP请求/2正文检查及双入口12隔离拒绝通过。零生产连接、零worker/模型执行,本轮自己的MySQL/Redis/PHP服务停止,端口释放,默认服务未处理。
- 最终私密证据`D:/AAdesk/202609/airz-backups/release-rehearsals/airz-release-rehearsal-1791425757362/verification.json`及`cleanup.json`,三个工具源码hash已记录;尾号7363—7367为各故障场景。更早失败/143项首轮目录保留且不作为最终成功证据,原因和修订见演练说明。合成库文件/检查点私密保留,不作为可直接复用夹具。
- 收尾文档/源码摘要、UTF-8无BOM、空白/链接、63任务/27页面核对通过,回执为同目录`final-source-validation.json`。自动审批拒绝清理后端`tests/__pycache__/release_rehearsal_runner.cpython-311.pyc`的组合命令,仅返回`blocked by policy`;未换工具重试,缓存未跟踪保留,不影响演练或服务清理结果。
- 本轮仅新增演练工具/说明及文档,前后端原有未提交业务改动保留,未提交/推送/PR、生产发布或小程序代发。账号已改密码、正式绑定、策略及积分业务规则保持既有约定;小程序仍用户发行、暂不正式验收。
**下一开发入口:** 继续RELEASE-003可隔离推进的合成加密资料/密钥备份恢复、队列进程生命周期及恢复手册证据;先审阅对应实现、检查两仓库状态和新本机端口,仍用新合成环境,不复用生产私密dump/密钥、默认.env或真实worker。生产Linux所有者/Nginx/FPM/TLS/systemd与外部告警、整库灾难恢复及正式验收按各自条件推进,不把本批r2合成演练扩大为全部RELEASE-003完成。不要重复生产发布、绑定账号/改密/调整策略或迁移积分。
## 上轮收尾检查点:2026-10-08(准备新会话,历史)
本轮仅保存交接,不新增开发或验收版本。最新进度保持 **1.79 / 0.89**;后台与内容 r2 已生产发布,具体范围、备份和回执见下方最新接续。历史“等待授权/未部署”已被本次发布记录取代,本批授权已经执行完毕,不重复发布。
- 工作目录:前端 `D:/WorkSpace/cyun/ai融资`,后端 `D:/AAdesk/202609/airz`;线上管理端入口为 https://airz.hqling.cloud。生产服务/PID/队列记录只是发布当时快照,本轮未重新连接生产。
- 下一开发项:在全新显式隔离环境完成本批增量部署、异常中断及**实际定向恢复演练**,补充 RELEASE-003 开发证据。生产回退守卫干跑不等于实际恢复演练,也不等于正式业务验收。
- 隔离约束:使用新合成库与合成资料、独立本机非默认 MySQL/Redis 端口和配置,模型关闭且地址固定为 `127.0.0.1:1`;不加载默认或生产 `.env`,不启动真实 worker,不将生产私密备份导入测试环境。现有发布执行脚本硬编码生产路径,不能直接用于本机演练,先审阅并改为显式隔离目标。
- 两仓库已有未提交源码、测试和文档改动全部保留;前端 `packages/content/help/help.uvue`、`packages/content/search/search.uvue`、`packages/content/services/help.uts` 已有改动。开始修改前检查各仓库状态及适用指令;不自动提交、推送或创建 PR。
- 用户约定:小程序已由用户发布,后续仍由用户自行发行,暂不正式验收;课程整篇连续阅读、一次已读,不恢复章节交互。用户已自行更改 admin 密码,不使用旧临时密码或再次重置;不自动绑定正式账号、调整运行策略、迁移积分或调用收费模型。
**新会话起手:** 先读本节与下方最新接续,再读[开发进度](开发进度.md)0.89、[后台内容增量发布清单](后台内容增量发布清单.md)及后端适用指令,从上述隔离演练继续。私密备份与执行证据的位置已在下方列明;凭据不写入交接文档。本轮没有开展下一开发项。
## 最新接续:2026-10-08 后台与内容 r2 已生产发布
最新以[开发进度](开发进度.md)1.79/0.89及[发布清单](后台内容增量发布清单.md)的已执行记录为准。用户回复“同意授权”后,本批已通过宝塔Playwright完成维护;下方“等待本批授权/未部署”均为历史快照,不再重复申请本批授权或重新部署。
- 目标https://airz.hqling.cloud、/www/wwwroot/xctai.cn、127.0.0.1:3306/airz保持。09:29复核,09:35:21完成备份,09:35:46发布,09:37:37恢复入口/worker,09:39:34最终观察,均+08:00。13运行文件上线、60依赖和10保护保持、AssessmentRecords.php保留已审阅线上哈希;原始预检ok=false仍保留,最终r2门禁另有证据。
- 16权限节点ID134—149,三模板ID6/7/8(运营v1/客服v2/技术v5),父根1;总147节点/8组/1绑定、复检0增量。未创建/换绑账号,用户已改admin密码保持。
- 首次导入8 FAQ,ID5—12按profile/password/phone/assessment/result/amount/files/draft顺序,公开GET /api/v1/help/faqs返回8条。课程credit-basics/ID1仅intro及更新时间维护,正文/稳定ID/顺序/推荐/发布/进度保持;新version729e675e4e67da195fd7a77a47b9c1d838d60748d9763b2673317f3cb0f318b8。整篇连续阅读、一次已读保持,不重复import_content。
- fa_config ID4/version和线上site.php/version为20261007-admin-content-r2,只同步目标字段;.env/其余配置、ai_runtime_policy缺行及环境默认Flash/20次/3尝试保持。File __menu__精确缓存已清,受影响模板缓存当次不存在;未清Redis或修改Nginx长期配置。
- 22本机HTTPS烟测+20公网可信TLS检查通过;84文件after、15表结构及26表数据核对,21非目标表、账号/绑定/策略/学习进度/模型日志保持。0模型调用,不触发真实重试。回退干跑通过但未实际回退,不记RELEASE-003恢复演练/正式业务验收。
- 私密服务器备份/root/airz-admin-content-20261007-r2-20261008,目录700/文件600,含13before、site、权限/内容before/after、26表完整数据库gz、受限脚本与回执。完整dump SHA256 be8791b009fb236bc6b0500b94f177ffb2906060d2d41fe7bbd3f6e1dbb4c09e。禁止整表/整库覆盖后续数据;回退先重新审阅当前状态/引用/编辑,在停写/空闲worker窗口内按守卫处理目标字段/新增ID和源码。远程database.private.ini/mysql.private.cnf及站点暂存文件已清理。
- 最终analysis/FPM/Redis active,PID3489163/3488235/552222,三队列0,心跳ready/idle且0秒新鲜;恢复后journal最多300条样本0,不推断全时段无错。宝塔会话已退出、清cookies、关闭;未用网站admin密码,未保存面板凭据。
- 本机安全证据在D:/AAdesk/202609/airz-backups/admin-content-release-reviewed-20261007/execution-20261008/,重点[release-receipt.json](D:/AAdesk/202609/airz-backups/admin-content-release-reviewed-20261007/execution-20261008/release-receipt.json)与[final-verification.json](D:/AAdesk/202609/airz-backups/admin-content-release-reviewed-20261007/execution-20261008/final-verification.json)。冻结包/manifest/verifier保持;大段命令超过Linux参数限制时尚未建远程目录,已分4段传输并整体核对,不改变发布范围。
**下一开发入口:** 在新显式隔离环境做本批增量部署、异常中断与实际定向恢复演练,完善RELEASE-003开发证据;不能把生产干跑当实际演练。不要再次发布本批、绑定正式账号/重置密码或修改运行策略。小程序由用户自行发行,暂不正式验收;H5/积分/供应商/真实业务资料及运营/真机验收依各自条件推进。两仓库现有业务改动全部保留,不提交/推送/PR;63任务/27页面保持。
## 同日收尾:2026-10-07 22:14(只读复核、凭据清理和本批确认单)
承接下方1.78/0.88,不新增开发/正式验收版本。宝塔专用Playwright会话再次登录,22:14:43/22:14:55+08:00执行原冻结内存只读脚本;84文件before/属主/权限、15相关表、19权限计划、8缺FAQ/7现有内容slug、ID1课程原版本/简介/正文/进度、环境/资源版本/策略全部保持,r2共13个观察门禁通过。服务PID2525192/2525169/552222保持active,活动任务/调用与三队列0,心跳idle且0秒新鲜;15分钟最多300条worker journal样本仍0,不能推断全时段无错。原始主预检ok=false及已审阅换行/缺FAQ例外保持,未停写/停worker、备份、上传包、发布或业务/模型写入。
临时`admin-content-preflight-20261007/panel.private.json`和`refresh-command.private.js`已精确删除;宝塔专用会话退出关闭,无凭据写入仓库/回执。r2归档新增`refresh_readonly.py`、`preapproval-main.json`、`preapproval-supplement.json`、`preapproval-review-r2.json`与[维护执行确认单](D:/AAdesk/202609/airz-backups/admin-content-release-reviewed-20261007/维护执行确认单.md)。初次本机审阅误将DB版本ID4转为字符串而拒绝,已改为原类型精确比较;初次`preapproval-review.json`保留,修正后全通过,无重复数据库连接。冻结包/manifest/verifier和两仓库业务源码均保持,84后端/28前端本机哈希核对通过;不提交/推送/PR。
**接续行动:** 按确认单向用户取得r2本批13运行文件、19权限增量、8FAQ首次导入、ID1课程intro和资源版本同步的具体维护窗口授权。此前入口/反馈维护已完成,不重复申请其授权;本批新增生产数据范围依据用户提供的AGENTS.md第8节确认。批准后再窗口复核、停写/空闲worker、私密备份、逐项发布与零模型烟测;不操作账号/已改密码、角色绑定或策略,小程序仍用户发行、暂不正式验收。
## 新会话接续检查点:2026-10-07(生产只读实测与r2计划,未部署)
最新以[开发进度](开发进度.md)1.78/0.88和[后台内容增量发布清单](后台内容增量发布清单.md)为准。用户补宝塔登录方式后已用Playwright完成生产只读实测;没有发布、apply、内容/策略/账号修改、模型调用或worker执行,无提交/推送/PR和正式验收。历史“待登录”已解决,具体生产维护仍待本批范围授权,不扩大此前反馈/入口/密码发布授权。
- 主回执21:50:51+08:00、补充21:57:17+08:00,精确目标/www/wwwroot/xctai.cn及127.0.0.1:3306/airz,Python3.12.13/PHP7.4.33/MySQL5.7.44-log。84文件:13运行全待更新、60依赖/10保护匹配,AssessmentRecords.php仅4行CRLF/LF差异,规范LF逐字节相同;保留线上SHA256 6e294e8db263ad5a705ac308741f02fd1dfd12a191c9a20270d0039e49aecc71,不纳入runtime。原始ok=false回执保留,r2显式审阅变体及缺FAQ计划,不删门禁。
- 15相关表规定结构/索引/外键/InnoDB通过;权限真实131节点/5组/1绑定、根1,待补16节点/3正式模板共19项。不能照搬测试63项/根37,不绑定admin或其他账号。策略ai_runtime_policy缺行,合法环境默认Flash/20次/3尝试,环境开启;不创建/删除/调整现行策略,不调用模型或供应商。
- FAQ type6总行0,8 slug均不存在;改计划为首次导入8条已冻结FAQ,原两FAQ答案编辑取消。4资讯/3课程均唯一现有,不能重复import_content。credit-basics已发布/推荐ID1,baseVersion 009a6ac642d2be36f89a867dc42c0f4df9c86954f498fff0fb510f51f9cb6946,原intro匹配参考,3稳定ID/正文摘要与进度0已记录;只改简介,整篇一次已读保持。资源版本DB id4/value=1.0.2而site.php=1.0.1,独立计划同步为20261007-admin-content-r2,仅version字段,不refreshFile整体生成配置。
- 三服务active,实际PID analysis2525192/FPM2525169/Redis552222,活动processing/pending/streaming0、三队列0、心跳idle且1秒新鲜。worker日志为journal,最近15分钟最多300条样本实际0,不能宣称全时段无错误。窗口内重新检查,不把快照当空闲保证/部署许可。
- 新受限材料D:/AAdesk/202609/airz-backups/admin-content-release-reviewed-20261007/,ACL JUN/SYSTEM:runtime/maintenance仍原13/7文件和哈希;r2 manifest dad26e8d1e8067d840f9dc8ed0b7d062798239fb5d8736f26cba59a6c4aedca0,verifier 5bcfed4dae360fde7c7a18d2dd737d30749cb5dd346acc058907526686260b0e。13真实before/属主/权限、60依赖+1精确审阅变体/10保护、production/supplemental回执与权限/内容/资源计划齐备。包/84后端/28前端核对及5类变体门禁验证通过,合成文件清理,不重复业务全量测试或小程序编译。
- 宝塔终端画布改从实际Playwright WebSocket捕获内存脚本回执;直接刷新曾缺ws_callback,经首页→终端进入恢复。专用面板会话显式加载既有ignoreHTTPSErrors配置处理证书,未改站点/系统认证;无上传/生产检查文件/框架初始化。面板仅正常登录/访问审计,PDO会话只读,不输出凭据/会员资料/模型正文/日志原文;面板凭据不写文档。用户已自行修改网站admin密码,不使用旧临时密码、不重置。
- 下一步:按具体授权在维护窗口复核、停写/空闲worker、私密备份后,13运行文件+资源版本同步+19权限增量+8 FAQ首次导入+ID1课程intro维护,零收费烟测及恢复观察。不包含账号绑定/密码/策略/积分/供应商接入,小程序由用户发行、暂不正式验收。保留两仓库既有工作,不提交/推送/PR;63任务/27页面保持。本轮未启停本机服务,历史5175/PID3484不作为当前活动服务。
## 新会话接续检查点:2026-10-07(生产只读预检准备,待宝塔登录)
最新以[开发进度](开发进度.md)1.77/0.87及[后台内容增量发布清单](后台内容增量发布清单.md)为准。本轮完成内存只读预检脚本与本机拒绝检查,**尚未登录宝塔或读取生产文件/数据库**。原13文件runtime包、7文件maintenance包及manifest保持,不发布、不停写、不执行迁移、内容维护、权限绑定或模型调用;保留两仓库既有工作,未启停本机服务,不提交/推送/PR。
- 本轮新受限目录 `D:/AAdesk/202609/airz-backups/admin-content-preflight-20261007/`,ACL仅JUN/SYSTEM。`server-probe.py`/`database-probe.compiled.php`将核对84文件、15相关表、实际权限根/节点/模板计划、15个种子slug、三条内容ID/版本/目标字段、策略缺行兼容、服务/PID、15分钟最多300条worker日志的错误计数、活动调用与Redis三队列/心跳。只返回安全摘要,不回显.env、管理员凭据、会员资料、模型正文或原始日志。
- 独立PDO使用当次明确服务器.env,精确拒绝非`127.0.0.1:3306/airz`及错误站点,MySQL会话只读事务;候选纯库按原manifest哈希冻结后在内存加载,无ThinkPHP初始化、FOR UPDATE、apply或导入。Python脚本和PHP代码通过终端内存运行,不上传/解压维护包、不创建生产检查文件。观察仅为当次快照,不能替代维护窗口内复核/备份或授权。
- 本机6类检查通过:编译Python/PHP语法、错误现存根路径在子进程前拒绝、本机缺生产根在读.env前拒绝、合成错误DB目标与损坏纯库在假PDO构造前拒绝、安全压缩回执传输。无真实数据库连接,SQL/当前结构/版本/队列尚未实测。安全回执为`prepared.json`、`probe-spec.json`和`validation.json`,不把本机检查计为生产预检通过。
- 历史H5的5175/PID3484在本轮末未见对应监听/进程,仅保留历史记录,未重启预览。当前登录条件未满足:缓存Playwright CLI可用但无打开会话;此前面板私密配置已清理。浏览器会话查询对Chrome/Edge返回`unsupported Codex auth method: apikey`,没有可用的在应用浏览器页签;未修改认证设置或升级工具。已向用户请求当前宝塔入口和面板凭据,**不需要网站admin密码,不使用旧临时密码,也不再次重置**。
- 下一步:收到宝塔登录信息后用Playwright登录、核对终端和目标,在内存运行冻结脚本并将安全回执保存本机。有依赖/保护漂移、权限计划冲突、内容重复/版本差异时先审阅;补实际before哈希及具体备份/发布/恢复范围后,按明确授权执行生产写入。小程序仍由用户发行、暂不正式验收,课程整篇连续阅读、一次已读;63任务/27页面和开发/验收状态保持。
## 新会话接续检查点:2026-10-07(后台/内容/评估增量发布准备)
最新以[开发进度](开发进度.md)1.76/0.86及[后台内容增量发布清单](后台内容增量发布清单.md)为准。候选包及预检/备份/发布/恢复清单已准备,本轮零生产连接/写入、零模型/worker/DB执行,无正式验收、提交/推送/PR。用户已自行修改线上admin密码,不能使用旧临时凭据或重置;小程序由用户自己发行、现有发布保持,课程整篇连续阅读、一次已读,63任务/27页面保持。
- 根据部署记录识别10月4日后端包、10月5日7反馈/消息文件及迁移、10月7日3根入口;本机7反馈文件与已部署artifact manifest逐字节哈希相同。10月4日完整生产快照尚未取得,当前服务器文件没有读取;后端560d089只是仓库参考,不作为生产before。
- 受限长期材料 `D:/AAdesk/202609/airz-backups/admin-content-release-prep-20261007/`,JUN/SYSTEM ACL:runtime.zip仅13文件(四评估/八内容/一服务JS)、maintenance.zip独立7维护/种子/纯依赖文件;61个配套文件与10个已部署入口/反馈文件只读核对。完整哈希/门禁在manifest与清单;不整体覆盖工作树、site.php、.env、上传/依赖/运行时,不执行积分迁移或供应商接入。
- 前端28个相对1723363业务源码哈希冻结,不等于已知小程序线上差异;实际上传版本/源码hash未知,须完整项目重新编译/核对,由用户发行。课程正文/顺序/稳定ID保持,planned三处仅FAQ password/phone答案和credit-basics简介;重复种子导入不更新已有条目,生产ID/版本/before尚待只读定位,写入需具体授权。
- 仓库外verify_release.py要求显式可信manifest哈希及目录,只校验包/显式源码/指定生产文件,标准库无框架初始化/DB/网络/部署。20归档条目/84后端/28前端哈希通过,14包内PHP lint/2JS/2种子JSON通过,四种损坏/错误目标/缺文件拒绝通过,负例精确清理;未重复0.82—0.85业务专项、未新编译或启动服务/浏览器,原5175/PID3484保留。UTF-8无BOM/LF、diff、链接及包/保护项/种子非目标字段保持检查通过。
- 安全回执为归档中的manifest.json/package-summary.json/package-verification.json/validation.json/frontend-source-reference.json/content-maintenance-plan.json;材料不含凭据或业务原行。runtime SHA256 c1c3adb13d82c89b2bf280911266b951a50da59b268e535962d2eca213477a91,maintenance SHA256 576f36650b86e08b6d9f0ee5da34c0a48ba63c5787d4ae66dfeb8ad4f3cd2a59。候选脚本无授权不执行写入;prepare.py依赖历史本地manifest且拒绝覆盖已准备包,不直接重跑已冻结包。
- 下一步:宝塔Playwright当次生产只读文件/DB预检,补真实哈希、模板缺项/根角色、内容ID/版本和服务状态。实际权限增量不得照搬测试63项/根37;依赖/保护漂移先核对再重建包。依据真实结果形成具体发布/备份/恢复范围,生产停写/部署/权限apply、内容编辑、账号分配分别按具体授权执行;现行策略不为开入口而创建/删除/调整。真实重试可能收费,不能当零模型烟测。不把本次准备算RELEASE-003演练或ADMIN-004/RELEASE-004验收。
## 新会话接续检查点:2026-10-07(ADMIN-001正式模板、菜单与跨模块权限组合)
最新以[开发进度](开发进度.md)1.75/0.85及[后台权限维护](D:/AAdesk/202609/airz/database/admin-permissions.md)为准,561项隔离开发检查通过,ADMIN-001仍开发中,63任务/27页面保持。用户已自行修改线上管理员密码;不要使用此前临时密码、重新重置账号或把此前入口发布授权扩大到配套增量。课程仍整篇连续阅读、一次已读,小程序既有发布状态保持,暂不正式验收。
- 本轮后端仅改 `tests/admin_access.php`:共享显式隔离bootstrap、随机本机端口/无PHP base(兼容显式旧入口)、按base清匿名日志、按合成会员清反馈新增通知。无业务源码/权限定义/数据库结构或小程序源码改动,保留两仓库既有未提交工作,不提交/推送/PR、生产写入或模型/worker执行。
- 权限纯97项、真实HTTP/数据库227项(158请求)、Chrome页面/接口组合237项,共561项;页面夹具清后最终HTTP复跑仍保持原13表,不重复累计。正式运营v1/客服v2/技术v5完整菜单/默认首页、无PHP地址、旧技术v4不获新配置权、多角色权限并集、直接越权/敏感字段/正文隐藏、实际内容发布/客服回复通知/技术策略与用量一致、打开后撤权和清旧用量通过。环境关闭时实际技术重试拒绝,业务完整基线及队列保持,无新增业务缺陷;不重复0.82/0.83/0.84全量单层专项。
- Chrome1280×900/390×844真实菜单切换/手机折叠展开/当前页签、身份/非空/无遮罩/控件边界及十截图通过,pageerror/console错误警告/外网均0。框架透明行负边距受body横向裁切,实际面板/控件在视口内,宽表容器内滚动;隔离脚本iframe等待/空标题/响应式姓名及夹具字段适配中断已排除。Browser plugin not available,缓存Playwright CLI,无新增依赖;无前端业务源码变更,沿用0.81编译,不代表真机/运营验收。
- ROOT `C:/Users/JUN/AppData/Local/Temp/airz-permissions-combo-20261007-1791361600000/`,MySQL3330/Redis6410/HTTP49586仅本机,新schema26表、独立ENV/Token/session、模型关闭且固定127.0.0.1:1。新库备份应用60节点/3模板共63项、根角色37、复检0项,不自动绑定;五合成管理员组合检查后精确清理。先清业务/策略及41管理员日志、恢复规则,再最终HTTP回归、核对备份哈希/新增ID字段清60节点/3模板,原权限/根角色保持;owned根角色清后26表/Redis16库0、故障触发器0,schema8触发器核对后随库DROP。
- 浏览器清存储/cookies/routes关闭,三个服务/端口停,原5175/PID3484保留;私密JSON/config/session/runtime/MySQL数据删356文件/15目录。PowerShell清理被策略拦截,已核对所属后逐文件/空目录完成。安全证据为ROOT内 `verification.json`、`access-final.out`/err、三个 `cleanup-*.json`与 `cleanup.json`、`services.json`、`checks.json`及十张 `roles-*` 截图;权限备份受限,临时目录不整体分享,环境已删、脚本不能直接复用。
- 下一开发入口:尚未上线增量的配套发布准备。核对线上基线与内容隔离/换行兼容、评估排障、服务用量、正式模板及配套资源、迁移预检/备份/绑定/缓存/回退依赖,形成具体可审阅清单;实际生产发布、正式库迁移和分配角色需另行授权。供应商能力/账单余额/外部告警、积分业务规则和真实worker/运营/真机仍待,不做ADMIN-004正式验收。
## 最新线上入口:2026-10-07(管理端无 PHP 后缀)
用户选择第二种方案并单独授权重置管理员密码后,已通过宝塔 Playwright 发布后端三个文件:`public/index.php`、`public/ZYurKboadX.php`、`application/admin/view/index/login.html`。管理端直接访问 **https://airz.hqling.cloud**,匿名进入 `/index/login`,菜单及页签地址无 `.php`;旧 `/ZYurKboadX.php` 以308保留路径、查询和POST方法跳转。API `/api/v1` 保持,验证码走原框架路由,登录图使用 `/captcha`,静态资源正常。
线上唯一正常超级管理员已确认 `id=1 / admin`,按本轮明确授权重置为随机临时密码,并完成密码+实际图形验证码登录;密码不在文档保存。仅更新凭据/登录失效字段,其余账号字段、角色绑定及业务数据保持。备份 `/root/airz-admin-root-20261007`:三源码原件、原账号私密记录、`receipt.json`、`restore-entries.py`;代码回退 `python3 /root/airz-admin-root-20261007/restore-entries.py` 保持新密码与业务数据。完整说明见[部署记录](D:/AAdesk/202609/airz/deployment-baota.md)。
隔离本机21项HTTP与实际浏览器菜单检查、公网17项入口检查及服务器HTTPS/FPM检查通过,生产管理员实际登录成功、菜单无PHP路径、最终浏览器error0;PHP-FPM/Redis/analysis均active,.env/Nginx rewrite保持,无业务迁移/worker重启/模型调用。仅发布上述三文件,其他前后端开发成果仍未配套发布,不把本次入口检查算业务正式验收。专用3330/6410/64684服务与随机测试库已清理,原5175/PID3484保留;浏览器退出关闭、私密临时凭据清理,不提交/推送。
当前ADMIN-001组合检查、配套发布准备及生产只读预检已完成,接续为顶部检查点的r2具体生产维护授权;63任务/27页面与既有开发/验收状态保持。课程仍整篇连续阅读、一次已读,小程序既有发布状态保持。本轮入口/密码授权不扩大到其他功能发布或数据库迁移。
当前接续入口:生产只读预检与r2具体计划已完成,最新为[开发进度](开发进度.md)1.78/0.88及顶部检查点;下一项为明确本批范围/维护窗口授权后备份并发布。
记录日期:2026-10-07。本文件为接续入口;后台内容编辑与发布最新以[开发进度](开发进度.md)0.82节及下方CONTENT-001检查点为准,资讯、课程与搜索实际联调最新以[开发进度](开发进度.md)0.81节及下方内容实际联调检查点为准,帮助FAQ最新以[开发进度](开发进度.md)0.80节及下方FAQ实际联调检查点为准,页面专项见0.79节,内容后端检查以0.78节为准,课程交互仍以0.77节为准,整篇连续阅读、仅一次标记已读。其余当前存储与流程以[评估版本与最新资料](评估版本与最新资料.md)、[开发进度](开发进度.md)0.76节(CONTENT-002/003/004内容、课程进度与搜索组合开发检查)、0.75节(AUTH-003/004账户资料、头像及会话撤销后端隔离HTTP开发检查)、0.74节(AUTH-003/004账户资料、改密及退出组合开发检查)、0.73节(ASSESS-004评估新建/修改后端隔离HTTP开发检查)、0.72节(ASSESS-004资料填写、确认提交与档案回显组合开发检查)、0.71节(PRODUCT-004匹配读取与产品解释后端隔离开发检查)、0.70节(PRODUCT-004/005匹配详情与对比历史版本组合开发检查)、0.69节(CHAT-004后端幂等/额度/历史隔离开发检查)、0.68节(CHAT-004历史版本上下文与异常会话组合开发检查)、0.67节(REPORT-006行动页与报告可用性组合开发检查)、0.66节(REPORT-005微信PDF与导出边界开发检查)、0.65节(REPORT-004历史报告与重评组合开发检查)、0.64节(REPORT-003报告生成与持久化开发检查)、0.63节(REPORT-002异步任务与补偿链开发检查)、0.62节(反馈与消息后端生产发布)、0.61节(反馈与消息配套发布准备)、0.60节(反馈恢复与消息组合检查)、0.59节(反馈回复通知联动)、0.58节(会员反馈原键恢复)、0.57节(后台反馈处理及既有小程序发布状态)、0.55节(后端发布)及[开发文档](开发文档.md)v1.46为准。历史章节中的域名、部署及“待开发”以最新记录为准。
## 新会话接续检查点:2026-10-07(ADMIN-003服务、用量与现行策略组合)
最新以[开发进度](开发进度.md)1.74/0.84及[服务检查与策略维护](D:/AAdesk/202609/airz/database/admin-services.md)为准,620项开发检查通过,63任务/27页面及ADMIN-003开发中保持。未正式验收、发布、提交或推送,保留两仓库全部既有工作及用户小程序既有发布状态。
- 仅三后端源码/测试变更:`public/assets/js/backend/servicestatus.js` 补会员摘要“评估尝试上限”,有效策略显示当前值、坏策略显示未知;两个数据库入口接共享显式 `report_test_bootstrap.php`、去固定3309并保持模型禁用守卫。服务测试完整设置隔离队列/心跳配置,回滚后核对原表完整摘要才输出成功。无API/表结构/权限模板迁移或小程序业务源码变更;修复尚未上线。
- 纯逻辑345项、数据库41项、Chrome桌面1280×900/手机390×844/360×844页面及接口组合234项通过。25记录分页/五状态/三场景、NULL/零/超大Token精度、历史报表与今日共享预算分离、删除/坏请求键/未来预留、会员隔离/停用/空态,真实策略保存/暂停/降低额度/恢复与坏策略降级、真实Redis队列/登录/观测断连恢复、合成心跳八状态与关闭、网络失败清旧指标/分页/时间及慢请求禁控、日期/参数/分页/POST拒绝通过。心跳为合成记录切换,无真实worker/模型执行。
- 四合成管理员真实密码登录:只读策略无写入口/伪造POST拒绝、仅服务权限隐藏用量、无关角色/匿名拒绝、打开后撤权清旧数据与恢复重读通过。六截图/身份/非空/无遮罩/控件边界通过,宽表容器内滚动、无文档横溢或文字重叠;pageerror0/外网0,console仅2条刻意中断ERR_FAILED。Browser plugin not available,缓存Playwright CLI,无新依赖;临时脚本传参和main角色选择器适配中断已排除。PHP/JS语法、缺bootstrap拒绝、六变更文本UTF-8无BOM/LF、diff及链接通过;前端业务源码未改,沿用0.81平台编译,不宣称真机验收。
- ROOT `C:/Users/JUN/AppData/Local/Temp/airz-services-admin-20261007-1791357448842/`,MySQL3329/Redis6409/HTTP54031仅本机,26表新schema/独立ENV/Token/session。bootstrap模型禁用,HTTP仅合成开关启用固定不可连127.0.0.1:1来源以观察配置元数据,无正式.env/生产/真实短信模型或worker。精确清4管理员/组/绑定/规则、4会员、12会话、36日志、1策略行、17管理员日志,3队列键/1心跳键;业务摘要保持,26表/Redis16库/故障触发器0,schema8触发器核对后随库DROP。最终数据库回归保持摘要,凭据JSON/session/runtime/MySQL临时目录删除,浏览器清存储并关闭、三服务/端口停,既有5175/PID3484预览保留。自动审批两次拒绝递归清理且未提供具体原因,按所属核对后逐文件/逐空目录清理已完成。
- 安全证据:ROOT内 `verification.json`、`service-final.out`/`usage-final.out`及err、`cleanup-fixtures.json`、`cleanup.json`、`cleanup-files.json`、`services.json`、`checks.json`及六张 `service-*`/`usage-*` 截图。临时bootstrap/脚本不可整体分享或直接复用,环境和夹具已删;供应商余额/账单对账、外部告警、真实worker/运营/真机仍待,本轮源码未发布。
- 下一开发入口:ADMIN-001后台菜单、角色模板与跨模块权限组合检查。0.41模板基础与0.82/0.83/0.84各模块最小动作已有证据,补正式模板在隔离库中的菜单/默认页及内容/反馈/排障/服务/策略动作组合、敏感字段/直接越权/打开后撤权。另建显式ROOT,仅新测试库备份增量应用模板、绑定合成管理员;旧权限脚本先核对固定目标或适配守卫,不直接重跑。保持课程整篇一次已读、不接供应商、不做ADMIN-004正式运营验收或自行发布。
## 新会话接续检查点:2026-10-07(ADMIN-002评估排障与失败重试组合)
最新以[开发进度](开发进度.md)1.73/0.83及[评估排障维护](D:/AAdesk/202609/airz/database/admin-assessment.md)为准,426项开发检查通过,63任务/27页面及ADMIN-002开发中保持。未发现新业务源码缺陷,未正式验收、发布、提交或推送,保留两仓库既有工作及用户小程序既有发布状态。
- 后端仅两数据库测试接共享 `report_test_bootstrap.php`,去除固定3309并保持模型禁用守卫;回滚后核对原记录摘要才输出成功。无业务接口、数据库结构/权限模板或前端业务源码改动。实际模型运行策略通过真实后台保存;合成角色仅构造所需最小动作,未执行正式权限迁移或绑定。
- Chrome桌面1280×900/手机390×844/360×844最终155项页面、177项纯逻辑、94项数据库通过。历史/current/published版本、23版本/调用独立分页、旧任务/提交键/人工键定位、产品解释排除、未知/零用量、跨chat损坏指针、冻结正文/旧结果保持;最新策略暂停/额度/次数拦截与恢复、Pro新预留、跨页CSRF、已接受响应丢失/取消/页内刷新同键、后续新版本/暂停仍回原任务且不覆盖、队列故障接受及同键补投、版本冲突新意图、审计故障原子回滚、撤权/只读/他人日志范围组合通过。真实模型及worker未执行。
- 身份/非空/无遮罩/无横溢/五截图通过,pageerror=0/外网0;console仅3次刻意丢响应的ERR_FAILED,含1次已排除旧队列夹具中断。Browser plugin not available,缓存Playwright CLI,无新依赖。早期隔离账号、三级配置覆盖、DDL连接及弹窗动画等待适配已修正,不计业务缺陷或通过场景。PHP/JS、五文本UTF-8无BOM/LF、diff及链接检查通过。
- ROOT `C:/Users/JUN/AppData/Local/Temp/airz-assessment-admin-20261007-1791346885227/`,MySQL3328/Redis6408/HTTP61702仅本机,26表新schema/独立ENV/Token/session。bootstrap模型关闭,HTTP仅合成开关启用且URL固定不可连127.0.0.1:1,用于元数据预留与派发;无worker/真实模型短信/正式.env/生产。精确清5管理员/组、7规则/绑定、10会员评估/版本调用审计、1策略行及10队列消息;26表/Redis16库/故障触发器0,schema8触发器随新库DROP。数据库回滚摘要保持、合成凭据JSON/session文件删除、浏览器清存储并关闭、三服务/端口停,既有5175/PID3484保留。
- 安全证据:ROOT内 `verification.json`、`diagnostics-final.out`/`retry-final.out`及err、`cleanup-fixtures.json`、`cleanup.json`、`services.json`、`checks.json`及五截图。临时脚本/runtime/CLI日志不整体分享或复用;供应商查询/对账、真实worker/运营/真机验收仍待,本轮源码未发布。
- 下一开发入口:ADMIN-003服务状态/调用用量/现行策略的实际隔离组合联调,补pending/失败/历史用量、共享额度、队列故障及心跳页面一致性。另建显式ROOT/库/Redis,心跳使用业务替身,无真实worker/供应商/自行发布;0.44/0.46基础不重复全量单层专项。课程仍整篇连续阅读、一次已读。
## 新会话接续检查点:2026-10-07(CONTENT-001后台内容编辑与发布)
完成资讯、课程及FAQ实际后台页面专项。台账1.72/0.82,共180项开发检查通过,63任务/27页面及CONTENT-001开发中状态保持;未正式验收、发布、提交或推送,保留两仓库全部既有工作及用户小程序既有发布状态。
- 后端课程表单/共享编辑器改为阅读时长、正文段落、小标题,操作按钮补名称及排序/最后一段删除/30段上限禁用。前台仍整篇连续阅读、一次“我已读完”;内部chapters/稳定ID只供兼容,不恢复章节交互。
- 修复共表跨类型维护:Acticle查询排除type6、Faq限定type6,4资讯/8FAQ列表隔离,跨入口GET/POST/multi均拒绝;旧协议1–4继续维护,type只读且伪type不写入。修复前两列表均12条并可打开其他类型,修复后正确。
- 修复浏览器表单LF→CRLF使未修改课程的正文哈希/版本变化、已读失效:ContentPublication仅编辑保存路径按课程稳定ID/资讯位置对比等价换行,旧正文等价时保留原LF或CRLF,新文本用LF。复现前unchanged=false、后true;服务回归验证两种旧换行的版本/已读/完成时间保持,数组段落ID明确拒绝。不改变全局decode/text、不迁移旧正文。
- Chrome桌面1280×900/手机390×844/360×844最终124项实际页面检查,加56项真实数据库服务回归通过。覆盖新建草稿/发布/下架/再次发布与公开API/首页推荐、回填/纯文本多行/段落新增排序删除及ID保持、双页面旧版拒绝/不覆盖/刷新/缺版本、资讯及FAQ保存/slug/发布同步、旧课程确认重整/旧协议保持、三种合成管理员真实登录/最小权限/只读无写按钮/无关角色拒绝/页开后撤权拒写。身份/非空/无遮罩/无横溢/三截图通过;pageerror=0、console0、外网0,额外业务写入0。仅开发检查,不算正式验收。
- Browser plugin not available,缓存Playwright CLI、无新依赖。早期隔离语言路由、会员路由与本地封面挂载/等待适配已修正,中断不计最终;不改框架通用协议。PHP/JS语法、11个本轮变更文本UTF-8无BOM/LF、两仓库diff与链接通过。前端业务源码本轮未改,沿用0.81微信/Android编译,不重复前轮H5专项。
- ROOT `C:/Users/JUN/AppData/Local/Temp/airz-content-admin-20261007-1791344309503/`,MySQL仅127.0.0.1:3327、Redis127.0.0.1:6407/DB15、随机PHP HTTP63075;26表初始化,独立ENV_PREFIX/Token/session,模型禁用且127.0.0.1:1/心跳关闭,无worker/正式.env/生产/真实短信模型。15原内容完整恢复/按ID比对后删除,再跑事务回滚测试;精确清3管理员/3组/12规则/绑定及189日志,26表/Redis键/故障触发器0,schema自带8触发器核对后随测试库DROP。浏览器清存储/cookies/routes并关闭;HTTP/MySQL/Redis和三端口停,既有5175/PID3484预览保留。
- 安全证据:ROOT内 `verification.json`、`repro-newlines-before.json`/`repro-newlines-after.json`、`content-cleanup.json`、`catalog-final.out`/`catalog-final.err`、`cleanup.json`、`services.json`、`checks.json`、三张 `admin-course-*` 截图。临时bootstrap/runtime/脚本含本机合成账户,不整体分享或直接复用。本轮修复与前轮源码未配套上线,正式运营/真机/微信内H5/Safari与多设备验收仍待。
- 下一开发入口:ADMIN-002后台评估排障与当前版本生命周期实际隔离联调。0.42/0.43已有任务定位、人工重试及审计,0.46已有服务/受控策略页面证据;补当前评估/历史版本、失败重试、原键重放、权限及审计组合,必要时结合现行额度策略。另建显式本机ROOT/库/Redis和合成管理员,保持假环境/模型禁用,无真实worker/供应商接口,不重复内容专项、自行发布或正式验收。
## 新会话接续检查点:2026-10-07(CONTENT-002/003内容实际联调)
完成资讯、课程与搜索的真实隔离后端H5组合开发检查,修复搜索返回详情滚动空引用并对齐一条课程简介。台账1.71/0.81,63任务/27页面及CONTENT-002/003待验收、CONTENT-004开发中保持;未正式验收、发布、提交或推送,保留两仓库全部既有工作和用户既有小程序发布状态。
- 前端仅改 `packages/content/search/search.uvue`:动态key重建scroll-view与H5返回activated钩子冲突,复现 `Cannot set properties of null (setting 'scrollTop')` 及Vue警告;改scroll-top/nextTick回顶,组件保持。独立实际后端复现修复前两错误true、修复后false;真实分页滚动后重新搜索回顶、资讯/课程结果进入详情再返回通过。
- 后端仅改 `database/content_initial.json` 一条credit-basics简介,去掉逐节记录提示;`database/content-publication.md` 补后续维护边界。全部正文/顺序/稳定段落ID与原种子完全一致,不使段落已读失效;简介改变课程版本,旧版保存409刷新。重复导入不覆盖旧课程,后续授权维护后台只改该简介,保留其他字段、推荐及发布状态。课程仍整篇连续阅读、一次“我已读完”,不恢复章节交互。
- Chrome手机390×844/360×740、桌面1280×900最终126项/86次实际本机业务请求通过:78H5转发、8直接HTTP、其中15进度PUT,另38测试控制。22资讯/21课程真实分页、分类/场景/完整正文/两类详情、实际Acticle/Finance编辑发布下架及空态、更新正文搜索/草稿隐藏、搜索分页/类型/无节数摘要/返回重读/回顶、Redis503和数据库500页面恢复通过;首页推荐本轮仅直接HTTP3资讯/3课程核对,不宣称首页页面组合。
- 课程匿名零进度请求/真实密码登录回跳,一次保存/重复零写/刷新与另一真实会话恢复、SQL第二段失败第一段保留/不假已读/重载仅补缺失且首次时间保持、重排保持已读/正文变更仅补对应段落、409停止后刷新重试、两真实合成账户切换隔离、进度故障仍可读且禁写、下架无按钮/恢复/课堂空态通过。pageerror=0/外网0,业务no-store,console仅刻意404/409/500/503。六截图/身份/非空/无遮罩/无横溢/无正文重叠/实际封面/小屏按钮通过。
- HBuilderX5.26 Android11:27:20、微信11:27:52,27页面编译成功。Browser plugin not available,缓存Playwright CLI,无新依赖。临时控制脚本DDL连接及推荐整数/字符串适配已修正,不计早期中断为通过,不修改框架/通用错误协议。PHP/JS语法、JSON/正文完全一致、五变更文本UTF-8无BOM/LF/无尾空白、两仓库diff和文档链接通过。
- ROOT `C:/Users/JUN/AppData/Local/Temp/airz-content-live-20261007-1791343150236/`,MySQL5.7.26仅127.0.0.1:3326、Redis127.0.0.1:6406/DB15、随机PHP HTTP61451;26表初始化,仅初始4资讯/3课程加各18合成条目和两合成用户,独立ENV_PREFIX/Token前缀,模型关闭/127.0.0.1:1及心跳关闭,无worker/正式.env/生产/真实短信模型。精确恢复22资讯/21课程及推荐、清进度/Token后核对删除,11业务表/Redis键/故障触发器0,来源搜索计数键精确清除,测试库DROP;HTTP/MySQL/Redis和三端口停,schema自带8触发器随库删除。存储/cookies/routes清空,content-live关闭,既有5175/PID3484预览保留并核对归属。
- 安全证据:ROOT内 `verification.json`、`repro-before.json`/`repro-after.json`、`cleanup.json`、`services.json`、`checks.json`、六张content截图和两平台最终日志。临时bootstrap/runtime/脚本含本机合成账户,不整体分享或复用。新增搜索修复、课程简介及前轮源码未配套上线;旧课程简介后续授权更新,真机/微信内H5/Safari/实际多设备及正式验收仍待。
- 下一开发入口:CONTENT-001后台内容编辑与发布页面专项。先核对资讯/课程/FAQ共享编辑器,将课程编辑表述与整篇阅读对齐并保留内部稳定段落ID;另建显式本机ROOT/库/Redis和合成管理员,检查新建/编辑/排序/草稿/发布/下架/旧版拒绝与最小权限。0.80/0.81已覆盖模型发布,补实际后台页面缺口,不恢复用户章节流程、不全量重复前后端单层专项、不读正式.env/接供应商/自行发布或正式验收。
## 新会话接续检查点:2026-10-07(CONTENT-004 FAQ实际联调)
完成FAQ与真实隔离后端H5组合开发检查。台账1.70/0.80,63任务/27页面与CONTENT-004开发中状态保持,未正式验收、发布、提交或推送;用户既有小程序发布状态保持,保留两仓库全部既有改动。
- 本轮后端仅改 `database/faq_initial.json`、`database/content-publication.md`:password/phone两条去掉未接入客服核验承诺,明确短信登录/验证码重设密码及手机号换绑暂未开放、忘记密码暂不能自行重设、已有密码可登录改密并重登录。核对现行短信接口 `SMS_NOT_CONFIGURED` 与无换绑路由。重复按slug导入不覆盖旧内容,已导入FAQ须后续授权维护时后台逐条更新。前端业务源码、接口与数据库结构未改,沿用0.79微信/Android编译证据。
- Chrome手机390×844/360×740、桌面1280×900最终83项/30次真实本机业务请求通过:21H5转发、9直接HTTP,另16测试控制操作。覆盖8实际正文/ID顺序/3-3-2分组/展开收起、分类与非法422、后台Faq模型真实下架/发布/编辑/保留slug/旧版及空白拒绝/草稿隐藏/全下架空态/恢复、数据库实际断连与恢复重新加载。FAQ非空切标签不刷新,发布变化用离页返回onShow核对。真实密码登录回跳、两合成账户切换清草稿、公开零私有读取、Token撤销后的反馈门禁/公开恢复及真实退出通过;零反馈写入、零外网、业务响应no-store。
- 三截图及身份/非空/无遮罩/无横溢/正文与底部通过,pageerror=0,console仅刻意数据库故障500/Token撤销401。断连由现行通用处理返回500,页面重试恢复正确,未扩展通用错误协议。早期Windows路径、反馈表名、422码、标签刷新与500预期造成的中断已修正,不计最终通过。Browser plugin not available,缓存Playwright CLI;裸php无PATH后用显式路径lint通过,无新增依赖。PHP/JS语法、两仓库diff及四变更文本UTF-8无BOM/LF/无尾空白通过。
- ROOT `C:/Users/JUN/AppData/Local/Temp/airz-faq-live-20261007-1791341832972/`,MySQL5.7.26仅127.0.0.1:3325、Redis仅127.0.0.1:6405/DB15,随机PHP HTTP65196,26表初始化,仅8FAQ与两合成账户;独立ENV_PREFIX/Token前缀,模型关闭且127.0.0.1:1,无worker/正式.env/生产连接/真实短信模型。精确恢复FAQ后核对删除,11业务表/Redis键/故障触发器0,schema自带8个触发器随库DROP;HTTP/MySQL/Redis与三端口均停止。停止脚本初次过早检查退出竞态,补同时等待进程/端口后确认。存储/cookies/routes清空,专用faq-live关闭;既有5175/PID3484预览保留并核对当前项目归属。
- 安全证据为ROOT内 `verification.json`、`cleanup.json`、`services.json`、`checks.json`、三张 `faq-live-*` 截图,最终verification.err空;临时bootstrap/runtime/脚本含本机合成会话,不整体分享或复用。前轮新增源码及本轮FAQ文案仍未上线;正式内容更新、真机/微信内H5/Safari与正式验收仍待,不沿用历史生产发布授权。
- 下一开发入口:CONTENT-002/003资讯与课程的真实后端H5页面联调。0.76/0.77已做受控前端、0.78已做真实后端,补真实组合缺口即可。另建显式本机ROOT/库/Redis,仅导入合成环境内容;资讯列表/详情/搜索与发布变化,课程整篇一次已读、刷新恢复、两个真实合成账户隔离、部分保存失败和版本更新。不要恢复章节交互、全量重复单层专项、接供应商、正式验收或自行发布。
## 新会话接续检查点:2026-10-07(CONTENT-004帮助FAQ)
完成帮助FAQ页面专项,修复五类已复现问题。台账1.69/0.79,63任务/27页面与CONTENT-004开发中状态保持,未正式验收、发布、提交或推送;用户既有小程序发布状态保持。
- 两前端源码:`packages/content/services/help.uts` 严格校验数组/对象、正INT字符串ID/合法分类/非空字符串问题答案及唯一ID,任一坏条目报错,真正空items保持空态;`packages/content/help/help.uvue` 补可见期每秒账户核对、标签/FAQ请求与回包代次守卫、旧请求失效和重新读取,换账户清旧反馈状态,仅反馈标签读私有记录。离页停止计时器/回填,重载收起旧展开。原问题为非法ID、空白正文、全坏误空态、重复静默丢弃及闲置登录状态未更新,复测均消失。
- Chrome手机390×844/360×740、桌面1280×900最终88项/62次受控请求通过:57FAQ GET、4合成反馈GET、1合成密码登录POST,无反馈写入。覆盖29类坏响应/3类合法响应、固定分类/展开收起/多行正文、坏包/空态/503/断网重试、慢请求/双击、匿名门禁/密码登录回跳、立即登录/闲置换账户/退出、公开FAQ无私有读取、旧401/离页迟到回包/返回刷新及客服未开放。身份/非空/无遮罩/无横溢/问题箭头/固定底部/三截图通过,pageerror=0、未定义API=0,console仅刻意503/401及net::ERR_FAILED。同页hash/同名提交定位造成的早期中断不计最终数。
- HBuilderX5.26 Android10:41:45、微信10:42:15,27页面编译成功;两源码/两台账UTF-8无BOM/LF、JS语法及两仓库diff通过。Browser plugin not available,缓存Playwright CLI,无新依赖;首次连接拒绝来自初编译等待,之后正常,共享layout既有H5类型警告保留。后端本轮只读,0.78全部未提交改动保留,无数据库/Redis/worker、正式.env/正式数据库、短信模型调用。初次预览发生1次未拦截匿名线上FAQ GET,无凭据/写入;最终全部外部API拦截,不计初次读取为隔离证据。
- ROOT `C:/Users/JUN/AppData/Local/Temp/airz-faq-20261007/`,安全证据 `verification.json`、`repro-before.json`/`repro-after.json`、`checks.json`、三FAQ截图及 `android-final.log`/`weixin-final.log`。临时脚本/CLI日志含无服务器权限合成会话,不整体分享。存储/cookies/routes清空,专用faq浏览器关闭;新5175/PID3484预览保留,启动归属当前项目/ROOT h5,后续核对归属再复用。开始5173/5174/5175无监听,未停止其他服务。
- 下一开发入口:FAQ与隔离后端实际H5联调,另建显式本机ROOT/库/Redis,检查8条初始FAQ与严格解析兼容、后台发布/下架/更新及页面重读、匿名/登录只读恢复;导入只写新合成库。0.52已做导入/HTTP基础,本轮已做受控坏包和账户边界,不重复全量专项、不接真实客服/短信模型、不沿用历史授权部署。真实后端页面组合、真机/微信内H5/Safari及正式验收仍待补,新增源码未发行。
## 新会话接续检查点:2026-10-07(CONTENT-002/003/004后端)
完成内容、课程已读与搜索后端隔离HTTP开发检查。课程继续整篇阅读、一次已读,后台段落ID仅用于历史兼容。台账1.68/0.78,63任务/27页面及既有待验收/开发中状态保持,未发布、提交、推送或正式验收。
- 后端四文件:`ContentCatalog.php` 搜索课程meta改为阅读时长,去掉节数;`tests/content_catalog.php` 接共享显式bootstrap并移除固定3309,回滚清零后才成功;新增 `tests/api_content.php`、`tests/content_http_router.php`,随机本机HTTP、独立竞争进程、runtime故障模式及精确清理。无前端源码、数据库结构或接口形状变更。
- 最终服务45项、HTTP362项/90次请求通过,合计407项:内容列表/详情/首页/分类/分页/坏行/下架、JSON及鉴权边界、重复完成时间保持/双会话恢复/账户隔离、SQL故障回滚及部分保存补齐、重排保持/正文变化失效/删除新增/409、双PHP重复保存唯一行/发布行锁竞争、搜索AND/字面%/_/类型/空/非法、无章节数摘要、双HTTP共享60/61原子限流/TTL/429恢复及Redis503重试。仅开发检查,不宣称真机或跨设备验收。
- ROOT `C:/Users/JUN/AppData/Local/Temp/airz-content-backend-20261007-1791338749380/`,MySQL5.7.26仅127.0.0.1:3324、Redis5.0.14.1仅127.0.0.1:6404/DB15,模型关闭且127.0.0.1:1,26表由schema初始化,无worker/真实短信模型/新增依赖/正式.env或生产连接。十业务表/测试触发器/Redis键清零,测试库DROP,随机HTTP/竞争进程/MySQL/Redis全停,3324/6404无监听。schema自带8个约束触发器单独核对后随库删除。初轮空数组预期、TP5两级故障配置及清理触发器枚举已修正,中断结果不计最终数。
- 安全证据:ROOT内 `verification.json`、`cleanup.json`、`services.json`、`catalog-final.out`/`catalog-final.err`、`http-final.out`/`http-final.err`,最终stderr空;临时bootstrap/runtime/脚本不整体分享或直接复用。四PHP lint、两缺bootstrap拒绝、两仓库diff及六文件UTF-8无BOM/主要行尾通过。前端未改,沿用0.77浏览器及微信/Android证据;本轮未启浏览器/H5,开始结束5175无监听,历史PID不再视为当前服务。
- 新搜索课程文案需后端发布才生效。H5与真实后端页面组合、真机/跨设备及正式验收仍未覆盖,不沿用历史生产授权。用户自行发布小程序的既有状态保持,本轮新增源码未发行。
- 下一开发入口:CONTENT-004帮助FAQ页面级组合检查,`packages/content/services/help.uts`、`packages/content/help/help.uvue`。核对合法/损坏/重复条目解析、空态/错误重试/迟到回包、分类与展开、匿名/登录/账户变化及客服未开放回退;先受控API,必要时再另建显式隔离HTTP。FAQ服务端导入/HTTP基础在0.52、帮助反馈/消息组合在0.60已有证据,补FAQ专项即可,不重复反馈消息专项、不接真实客服或自行发布。
## 新会话接续检查点:2026-10-07(课程简化)