Repository navigation
补丁版本,收敛 0.8.0 之后全仓复核发现的安装恢复、任务提取边界、项目接入写入与协议事实判断问题,不新增任务协议或学习契约。
安装与接入
install/uninstall先落盘意图再改 hooks 配置;准备阶段或最终状态保存失败后,重试按配置前后指纹、current原/新目标和管理区绑定意图收敛,遇到第三种用户内容保留现场待核对。project onboard核对实际 hooks 注册:分组matcher、disableAllHooks、handler 被修改或配置无法读取时不再报告已注册;doctor复用同一判断。- AGENTS 管理区改为同目录临时文件写入并同步,替换前复核全文;接入/停用留下绑定意图,替换成功但状态保存失败后仍可收敛,用户手改内容继续按冲突保留。
协议与信号
- 工作包
role登记后不可修改;需要换角色时新建接替包,避免借改role改写审查与取消事实。 - 同一批接替链按合并后的整批目标图判断历史 PASS 与已审事实,新建的中间包也参与判断。
- 宿主
permission_mode作为当前事件的可信观测,普通工具事件在模式变化时同步;拒绝信号只回滚业务声明,不回滚该观测。
任务提取与对齐
task-start记录本任务起点,task-end固定 transcript 前缀的大小、SHA-256 与消息边界;登记后继续追加不进入旧作业,替换、截断、起点不可确认或旧作业缺少范围时跳过,不回退读取会话全文。- 学习被禁止的任务也推进边界;重放
task-end只查询原任务已有作业,不为当前新任务提前登记。 - 对齐只解析管理区内的标题与表格,目录检查计入完整性;读取失败或超出检查上限时给出“不完整”提示。
- 进程输出按流解码,跨块多字节字符不再损坏。
验证
npm test:380 项,378 通过,0 失败,2 跳过(Windows 符号链接用例)。npm run check:ok,版本 0.8.1,51 个语法文件、29 份文档、48 个发布文件、176 个本地链接。npm run demo:合成隔离 CLI smoke 通过;realACP: not-tested,不代表真实宿主回调或模型调用。node bin/workflow.mjs spec check --project .:ok,无 drift 发现。
升级后重装宿主即可;两个宿主共用 current,AGENTS 管理区未变,不需要重新接入。真实回调、模型调用和超大仓库下的 4 秒 Git 预检预算仍需另行验收。