Files
LWLT-AIBOT/progress.md
2026-08-30 00:13:22 +08:00

88 lines
11 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.

# 项目进度
## 2026-08-30 — 恢复 0.5.156 单团写前校验范围(已完成)
- 已确认当前阻断来自 `0.5.160` 新增的编号动态 `ys_*` 保护,而 `0.5.156` 实际只校验静态核心订单字段。按生产操作方明确要求,`0.5.163` 恢复旧范围,但保留 `0.5.162` 的 jQuery Ajax 稳定态、正式域名和链路恢复修复。
- 回归先红后绿:核心字段变化仍阻断;仅 `ys_danwei1/ys_danweiid1/ys_jine0` 等编号动态应收字段变化时不再产生受保护字段 blocker。专项 3/3、原生 Ajax 稳定态 11/11 通过。
- `dist/ltjt-order-assistant-0.5.163.zip` 已生成,SHA-256 为 `90c550054cdf747aa9c2c80bca5ee5fba0d13f126acfd4779f85400764379bf0`。仓库治理 9/9、TypeScript、控制面 123 通过/4 个 Windows 预期跳过、legacy 255/255 和 build 均通过。
## 2026-08-29 — Program 单团原生 Ajax 稳定态修复(已完成)
- 生产实时握手确认 `0.5.161` 已加载,但仍出现 `xiaoshouren` 及零人数应收行 `ys_danwei*/ys_danweiid*` 漂移;用户确认 `0.5.156` 无同类阻断。版本差分证明旧版已保护销售人,但动态应收数字后缀当时因正则错误未进入保护。
- 新反馈环先稳定复现 lookup 数据齐全、`jQuery.active=2` 时仍错误返回 ready;修复后 frame 保持 loading,`GetProduct` 后继续等待原生 `ajaxStop` 再应用最终业务字段。定向计时/稳定态 11/11、漂移 2/2 通过。
- `dist/ltjt-order-assistant-0.5.162.zip` 已生成并与 19 个源码文件逐字节一致,SHA-256 为 `2b257fd61610e8cb6f21c99441b6072246ce06397e2ea05e96488ef414926f12`。仓库治理 9/9、TypeScript、控制面 123 通过/4 个 Windows 预期跳过、legacy 254/254 和 build 均通过。
## 2026-08-29 — 0.5.161 lookup readiness(生产复测未通过)
- 生产加载 `0.5.160` 后报告唯一漂移字段 `xiaoshouren`。真实 probe 回归先稳定复现 lookup 数据为空仍返回 ready,再让 `0.5.161` 只有在 `zutuanshe/gendanren/xiaoshouren` 原生 SelectBox 数据均就绪后进入预检,红灯原样转绿。
- `dist/ltjt-order-assistant-0.5.161.zip` 已生成并与 19 个源码文件逐字节一致,SHA-256 为 `4a5f680bfe7524f8215ef80b83c681076602e3f59e3a9c7f33005698256809cb`;`0.5.160` ZIP/清单已归档。
- 本轮门禁通过:定向 readiness 2/2、仓库治理 9/9、TypeScript、控制面 123 通过/4 个 Windows 预期跳过、legacy 253/253、build。未访问 ERP、重试任务、重载扩展、重启服务或部署。
- 后续生产握手确认 `0.5.161` 已加载,但同一业务仍出现销售人及动态应收结算单位漂移;该版本仅检查三个 lookup 数据,不能作为最终稳定态版本。
- 已根据用户提供的服务工作线程证据确认:预检表单/请求摘要一致,实时提交字段数仍为 822,但当前受保护字段摘要发生变化;旧任务在网络请求前安全阻断,未尝试 ERP 写入。
- 扩展 `0.5.160` 在预检后仅把受保护字段投影保留于 ERP 页面内存,漂移回执只暴露字段名和数量并标记 `values_redacted=true`;原有 fail-closed 写前门禁和零写入行为保持不变。
- 新增行为回归覆盖日期规范化、普通受保护字段、动态应收字段和真实 `liveSubmitApproved` 阻断路径;同时修正 `ys_jine0` 等数字后缀字段未被保护的正则双转义问题。
- 扩展、平台最低版本、mapping、发布门槛、缓存键和测试已同步到 `0.5.160`;`0.5.159` ZIP/清单已归档。
- `dist/ltjt-order-assistant-0.5.160.zip` 共 19 个文件并与源码逐字节一致,SHA-256 为 `e331d3d63967ae7278ce0ded35de6210c09555b5e69374c9190e8e7b380c2a70`。
- 定向回归 3/3、仓库治理 9/9、TypeScript、控制面 123 通过/4 个 Windows 预期跳过、legacy 252/252 和 build 全部通过。未访问 ERP、重试任务、重载扩展、重启服务或部署。
## 2026-08-29 — ERP 链路恢复状态残留(已完成)
- 已先用真实平台状态函数复现“ERP 会话正常但 recovery running 仍告警并阻断派发”,再补活动/中断恢复的最小失败回归并完成红→绿。
- 后台现在保留真实在途 `running`,把失去内存 Promise 的持久化 `running` 收敛为 `interrupted`;后续普通只读保活成功转为 `idle`。
- 扩展、平台最低版本、mapping、发布门槛和缓存键已同步到 `0.5.159`;`0.5.158` ZIP/清单已归档。
- `dist/ltjt-order-assistant-0.5.159.zip` 共 19 个文件并与源码一致,SHA-256 为 `dcb44f1a6e3336ed1876753c658e664eaf224f55c3d0c792bb2e83b1c8398276`。
- 定向回归 6/6、仓库治理 9/9、TypeScript、控制面 123 passed/4 Windows skips、legacy 250/250 和 build 已通过;最终文档门禁记录在活动任务中。未访问 ERP、重放任务、重载扩展、重启服务或部署。
## 2026-08-29 — 正式控制面域名插件接入(已完成)
- 已用真实 Popup 代码复现 `https://lwlt.nianxx.cn` 被 `0.5.157` 判定为“未打开业务系统页面”,并将该路径固化为回归测试。
- 已精确同步正式 origin 到 Popup、后台和 Manifest,版本、平台最低版本、mapping、发布门槛及运行时握手均推进到 `0.5.158`。
- `dist/ltjt-order-assistant-0.5.158.zip` 已生成,19/19 文件与源码一致,SHA-256 为 `99ba7b29d1d4418cb02fcbb345aeaf8494877dbc397ae8592b4e3fdb68b4cf9d`;旧 ZIP/清单已归档。
- Windows 发布门禁的换行、直接测试依赖、URL 路径和 Unix 假转换器问题已在测试边界收敛。未重载扩展、部署服务、访问 ERP 或执行 ERP 写入。
## 2026-08-28 — AgentBus 断线后重启(已完成)
- 用户明确授权重启控制面;预检确认在途 task 与 `accepted/running` attempt 均为 0。旧进程组 `62152` 退出后,运行会话管理器自动从标准入口拉起新进程组 `66218`、服务 PID `66228`,8786 只有一个监听。
- 新实例 live/ready、数据库、Schema、迁移 014 正常;连续 25 秒 6 次采样均保持 AgentBus connected、session ready 和 4/4 渠道 ready。
- 未创建或变更任务,未重载扩展,未访问或写入 ERP,未部署或外发。
- 重启后门禁通过:仓库治理 9/9、TypeScript、控制面 127/127、legacy 248/248、build 与 diff 检查。
## 2026-08-28 — 新版运行态切换(已完成)
- 用户明确授权后,旧 8786 进程组已优雅停止;标准 `pnpm run dev` 新进程组 `62152`、服务 PID `62164` 成为唯一监听。live/ready、数据库、Schema、迁移 014 与 4/4 AgentBus 渠道均正常。
- 已通过操作台只读 API 确认 `confirmation_export` 使用 Program parser `v1.0.6` 与输入契约 `0.5.123`;在途 task、`accepted/running` attempt 及活动任务均为 0。
- 已重载本地“联泰下单助手”,握手为插件 `0.5.157` / 最低版本 `0.5.157` / 兼容;桥接已连接、ERP 会话正常、最近错误为无。诊断字段“ERP 链路恢复”仍为 `failed`,未访问 ERP 业务页扩大复测范围。
- 本次仅切换运行态并做只读健康/版本检查;未创建或变更任务,未访问 ERP 业务数据、执行 ERP 写入、部署或外发。
## 2026-08-28 — 散拼母团“整团游客信息”导出(已完成)
- 已按项目治理规则恢复 README、task plan、findings、progress 和工作区状态,并通过业务登记定位到 `confirmation_export`、`lwlt-confirmation`、双 Schema、mapping、Program parser、平台 validator 与 Chrome 导出适配器。
- 已用报告同形输入离线复现:`整团游客信息` 返回 `program_invalid_value`;`游客信息`和`游客名单`均解析为 `visitor-list`。报告任务没有插件派发或 ERP 写入。
- 历史只读 ERP 证据确认:散拼母团整团游客源为 `orders_Visitor.asp?tid`;独立团/散拼具体子单游客名单为 `orders_Visitor.asp?did&tid`。当前活动源码只支持后者并明确禁止母团。
- 用户已授权增加该能力。设计收敛为同一 `confirmation_export` action、同一 canonical `visitor-list`、按 `existing_refs.kind` 做严格范围分流;母团只开放此单一文件类型。
- 已启用 Planning with Files、Skill Creator 和 Documents 工作流;未创建子智能体。由于 findings/progress 接近治理上限,已先逐字节冻结完整快照,再压缩活动摘要。
- 已补四组失败回归并取得预期红灯:Program 语义、Agent/执行契约、operation plan 参数和页内导出源都准确暴露当前缺口;测试基础设施正常。
- 已完成核心实现并让同一四组回归转绿:`整团游客信息`生成 `shared_plan + visitor-list`;Agent/执行 gate 拒绝母团其他类型和子单 ddid;operation plan 与页内 exporter 对母团使用 tid-only,现有子单/独立团路径保持 did+tid。
- 已同步双 Schema、mapping、平台最低版本、运营模板、`lwlt-confirmation`、业务/风险/证据登记和 AgentBus 回执边界;Program parser 升为 `v1.0.6`。
- 已发布扩展 `0.5.157`、五 Skill `0.5.125` 和运营 DOCX `0.5.123`。扩展/Skill 包逐文件匹配源码,DOCX 12/12 页无方框字、截断或重叠;旧制品及 `0.5.156` 清单已日期化归档。
- 全量门禁通过:仓库治理 9/9、TypeScript、控制面 127/127、legacy 248/248、build,以及 JS/JSON/ZIP/Skill、DOCX、哈希和 diff 检查。
## 最近有效发布基线
- Chrome 扩展 `0.5.157`:新增散拼母团整团游客 `shared_plan + visitor-list + tid-only` 窄导出;ZIP SHA-256 为 `872640668c52cf1ef0135ff51ec33e3c1f5dee304434fbb58ceee4cb3518fcd7`。
- Program parser `v1.0.6`、工作簿规范化器 `v1.1.0`、生命周期契约 `v2.9`、五 Skill `0.5.125`、运营 DOCX `0.5.123`。
- 名单确认覆盖规则:未确认的占用位要求确认;确认后所有附件指定序号都覆写,同值也写;父表单明确成功即完成。
- 8786 与 Chrome 扩展当前均已切换到本次发布基线:Program parser `v1.0.6`、输入契约 `0.5.123`、扩展 `0.5.157`,且操作台版本握手兼容。
## 本轮安全边界
- 不访问或写入 ERP,不查看或输出 `.env` 内容,不创建、补充、确认、重试、删除或派发真实任务。
- 用户已另行明确授权当前版本的 Chrome 扩展重载和 8786 重启;除此之外不部署、不调用外部 Agent/AI、不发送文件。
- 运行态切换仅包含进程/扩展重载与只读健康、版本检查;真实 ERP 路径验证仍需另行授权。
## 错误与治理记录
- 预期红灯、旧版本断言、缺少 bundled `PyYAML` 及非登录 shell 缺少 bundled Node PATH 的启动/门禁命令均已记录在 `task_plan.md` 并修复;最终规定门禁全绿。
- 压缩前完整 progress 已按相同 SHA-256 `6e6c01b01a7fd294855edc1dcdf797c6ec0513f8b5e131f204660420341bd768` 冻结到 [2026-08-28 progress 快照](archive/project-history/2026-08-28/progress-pre-compression-shared-plan-visitor-export.md)。
- 更早完整过程见 `archive/project-history/`;归档只供追溯,不定义当前规则。