• v0.19.0 Stable

    fourbroad released this 2026-09-26 12:33:24 +08:00 | 11 commits to main since this release

    v0.19.0 (MINOR) — 2026-09-26

    v0.18.0(2026-09-20)后首个主轨道 minor:76 个合并 PR / 171 个非合并提交,含桌面 0.18.1(内置浏览器 Basic auth 登录热修)归一。

    主线主题:

    • 统一浏览器读/写工具面:统一读工具面 + 桌面读桥 webview:* 冻结通道 + 后端选择器四读工具 + 会话读授权 UX;写面 act surface 契约 + 四写工具 + 桌面写桥 + 跨会话持久闩授权模型 + confirm-bar/撤销面;headless 写驱动(内置 isolated playwright,读+写);playwright MCP 退役
    • strip 桥——agent 操作会话标签条 (epic #5032):strip 域命令事件 + 快照缓存 + review_strip_list/pin/move/close 工具组 + reporter/consumer 桥(engage→settle 回执)+ 断线补偿 + close 确认条 UI + M-01 全链 e2e
    • skill 声明式工具挂载 (epic #5083):frontmatter tools 字段 + 会话挂载集 + 面解析 union/纪元 + tools_exclude 来源区分;strip-control skill 首个消费者 + desktop e2e 三断言
    • presence 活跃 tab (epic #5073):presence ping 携带 views 活跃 tab 元数据(注册表 TTL)+ 只读工具 user_viewport + 桌面发送面心跳/ask-dock ping
    • 侧栏分组家族:统一会话列表自适应分组(多项目按项目分组表头/单项目时间分组)+ 项目/置顶/日期分组头文件夹+徽标组合图标 + 分组三态菜单(自动/按项目/按时间线)
    • 稳定性:读/写桥三连修(live-guest 读挂起 / act 桥 deadline / 失败审计 cause 区分)、流式渲染重复两连修、strictKeys 写工具空 schema 根治(全供应商 invalid-tool)、鉴权类错误快速失败(401/403 显式不可重试)
    • 可观测与操作面:sidecar 自监控探针(event-loop lag + CPU 采样,#5106 复发留证)、thinking 行 wall-clock 计时、项目移除端到端、desktop electron e2e 纳入 nightly CI

    完整策展清单见仓库 CHANGELOG.md 0.19.0 段。

    Full commit-level changelog (171 commits since v0.18.0)

    Changes since v0.18.0

    Added

    • 侧栏工具条 ... 菜单——会话分组三态切换(自动/按项目/按时间线)
    • 日期分组头统一为文件夹+时钟徽标组合图标,修复徽标 warning 色板缺失,会话行标题光学居中微移
    • #5106 自监控探针——event-loop lag + CPU 采样,脱敏 JSONL 落 sidecar 日志目录(复发留证)
    • 置顶分组头改用文件夹+琥珀 pin 徽标组合图标,标题与会话行 36px 基线对齐
    • 项目分组头改用文件夹开合+项目头像组合图标,标题与会话行 36px 基线左对齐
    • idle 会话行不再渲染装饰点/迷你头像,状态指示器仅在有状态时出现
    • N-02 首个消费者——strip-control skill 声明 #5032 四工具 + desktop e2e 三断言(零成本面/激活挂载往返/用户排除错误路径)
    • 桌面发送面——心跳/pulse 与 ask-dock ping 携带当前活跃 tab view(发送侧截断,非桌面端零改动) (#5073 DAG N-03, Closes #5079)
    • 侧边栏会话项 idle 态不再渲染装饰性状态圆点——有状态才显示,idle 仅保留项目色 avatar(无 avatar 时留空,固定槽位保对齐)
    • skill 声明式工具挂载——frontmatter tools 字段 + 会话挂载集 + 面解析 union/纪元语义 + tools_exclude 来源区分
    • 置顶区行次要信息带所属项目名——全局置顶段脱离分组表头后的目录归属补全 (Refs #5072)
    • 只读工具 user_viewport——agent 查询本会话用户当前活跃 tab(kind=unknown 回落) (#5073 DAG N-02, Closes #5078)
    • presence ping 载荷可选 views 活跃 tab 元数据 + 注册表 view 存储/TTL (#5073 DAG N-01, Closes #5077)
    • 侧栏统一会话列表自适应分组——多项目范围按项目分组表头/单项目维持时间分组 (Refs #5072)
    • N-04 close 确认条——agent-open 形态确认条 controller+哑组件(允许=parseStripTab close op+applied settle/拒绝=user-denied 标签不动/600s confirm 窗口超时自动消失不执行) + facade 扩 TabCloseOps + i18n stripClose.* ×18 + parity 门(AC-1/2/3) (#5037)
    • strip 桥——reporter(commit 级防抖上报,sessionKey=sessionID 绑定)+ consumer(sessionID 守卫/tabs facade 执行/engage→settle 回执)+ 断线补偿(gap 信号一次性 drain pending)(#5036)
    • 反馈渠道迁移至公开仓库 octopus-release/issues
    • strip 工具组——review_strip_list/pin/move/close + registry 注册 + builder 默认 tools_exclude (#5035)
    • N-05 内置 isolated playwright headless 驱动 + setHeadlessFace 接线(读+写)
    • strip 域——命令事件 + 快照缓存 + PendingTable + strip route group + SDK regen, N-01 of #5032 epic (work item #5034)
    • 会话标签条统一可拖混排(stripOrder 持久化 + moveStripTab 三 store 同步)+ 与 #5010 browser pin 组合落地 (#5020)
    • N-03 agent-act settle surface + dual-leg relay (#4992)
    • N-01 browser 标签 pin 落地——BrowserInstance.pinned additive(守卫家族语义/旧存量零重写)+ strip 浏览器区前置锚定/隐藏×/中键免疫 + 菜单 pin 项(复用 command.tab.pin/unpin)+ sweep 豁免键控 browser:{id}(isPinnedStripTab 推广)(#5010)
    • 项目移除端到端——DELETE /project/:id + Home 最近项目行 hover 移除按钮
    • N-02 guest act bridge (#4991)
    • N-04 persistent act consent latch (#4993)
    • N-01 act surface contract + four write tools + evaluate pane unlock (#4990)
    • N-05 (#4977) playwright MCP 退役——配置迁移+allowlist 清理+skill 改指+双名保留
    • N-03 后端选择器 + 四读工具接线
    • N-04 会话读授权 UX + evidence 截图内容策略字段
    • N-01 统一浏览器读工具面——四读工具注册 + browser-tool-surface-v1 契约
    • guest 读桥 webview:* 增量通道(#4974 N-02)
    • 内置浏览器 Basic auth 登录(guest login 质询凭据条)
    • linux feed 首装搭车——debRpmAssets() 随移动 tag 发布 deb/rpm(对齐 dmg 先例,REQ-F-004 feed 语义不动)

    Changed

    • strip 排序三 store 同步纯核抽取 + stripOrder 读侧 sanitize + 同序短路 (TD-1137/1139/1140) (#5026)

    Fixed

    • builder agent-md 移除显式 tools_exclude——继承原生默认,恢复 strip-control skill 按需挂载通道(#5032/#5083)
    • 项目分组头头像徽标改由普通 span 承载角标几何,修复 AvatarV2 无层样式表压过 absolute 工具类导致头像排在文件夹右侧
    • #5106 评审修订——tick 兜底守卫/轮转 rm 容错/开关提取可测/lag-ongoing+边界测试/runbook(R1 findings COR-F001/2 TST-F001/2/3 STY-F001 DOC-F001)
    • isAuthFailure 状态码权威化——非 401/403 状态不再被 auth 文本劫持(评审 COR-F001)
    • 文件夹包裹层 flex 块化,修 badge 相对文件夹底边的基线错位
    • 分组头徽标锚定文件夹角并收小(10px 平齐角 + 1px 底色环)
    • r1 评审修订——SKILL.md 补契约 §6 四要素(bridge 规范引用/10s+600s 双时限/幂等/confirm 文案示例,COR-F001)+ 逐工具 outcome 枚举(COR-F002)+ catalog 生产级解析与正文十标记钉死(TST-F001)+ e2e 阳性对照与载体绑定断言(TST-F002/F003) (#5086)
    • 鉴权类错误快速失败——401/403 显式不可重试 + AuthError 指引文案(#4778)
    • r1 评审修订——browser 分支生产可达(raw state 直解)、composer untrack 一次性 ping、接线守护腿、测试拆分、类型去重 (#5079)
    • r1 评审修订——挂载确认文案按 tools_exclude 来源分桶(用户显式否决不入库不列可用,COR-F001)+ 注册点移入状态构建器/union 语义(DGN-F001/F002+PERF-F001)+ session.deleted 清扫(COR-F002/PERF-F002)+ overlay 路径解析 tools(COR-F004)+ 锚点改名对齐与五项测试强化(TST/TRC/DOC) (#5085)
    • strictKeys 写工具序列化空 schema 补 ZodOverride——browser click/type/press_key/navigate wire 参数恢复 + 全注册表 schema 护栏测试 (Refs #5090 #5088)
    • bundle review_history per_round 去 schema 外 note 字段 (#5078)
    • 置顶行项目名只在多项目窗口显示——与 #5072 分组模式门共享 owner 多样性探针 (Refs #5072)
    • r1 评审修订——since 对齐契约 RFC 3339、title/path 去 schema 拒绝面(截断非拒绝)、registry 字段名 at→ts (#5077)
    • 移除项目筛选清除 chip——重置唯一入口回归菜单“全部会话”项 (Refs #5067)
    • 评审修订——合并点注册以载体非已知重复为前提(COR-F001 保新 delta 重放自愈)+ part.removed 同款失序回查(COR-F002)+ 注释措辞校准(DOC-F001)(Refs #5070)
    • 流式重放双追加——delta id 去重窗口补全三处注册(coalesce 合并/stale 丢弃/缓冲)+ part 查找失序线性回查守卫 (Refs #5070)
    • review R1 MINOR 分诊——徽标去 role=status(A11Y-F004 教训)+ 注释措辞修正 + i18n key 归组 + 2 边缘测试
    • 只读 browser 工具不再抢占视口——读徽标注记替代 activate/openBrowser(#5069)
    • 侧栏项目筛选三连修——菜单打开期间拖拽区让位可点击关闭+一键清除+多选具名标签 (Refs #5067)
    • 流式尾部重复渲染——pendingEvents 回放过滤盲追加 message.part.delta(#5053)
    • review r1 修订——destroyed 腿 denied 审计防御性目标 auditTargetOf(COR-F001,不再触已死 webContents 的 getURL,:destroyed 行真正可达)+ 守卫校验字段类型非仅键存在(COR-F002)+ payload 契约注释 error/native 保留键(COR-F004) (#5054)
    • 读桥失败审计 cause 区分——guardedReadOutcome 纯核给三类失败腿打 cause 标(destroyed/deadline/rejected),审计后缀 :destroyed/:deadline/:rejected 短标签,envelopeOnly 剥 cause 保 pane-read-bridge-v1 冻结形状;snapshot coerce-fail read 自带信封不冒充 deadline(保持 :pane-guest-unavailable) (#5054)
    • review r2 残留硬化——own 取 intake 验证值+形成期拒绝(engage RTT 路由翻转不再形成条, DBT-F004/COR-F005a) + canPresent 改面板自身可见性上报 onStripSurfaceVisible(内化 shown() 等全部门, A11Y-F003/COR-F007 根治镜像漂移) + 路由撤销改盯复合 sessionKey(dir-only 切换, COR-F005b) + cancel()/allow-throw/supersede 定时器测试腿(TST-F008/009/010) + 类型面抽取 191+63≤200(STY-F005) + s_bye04 rename(DOC-F003) (#5037)
    • review r1 修订——跨会话守卫(request 捕获会话+allow 校验+路由切换撤销, COR-F001/SEC-F001/DBT-F001) + canPresent 同意完整性门(A11Y-F001) + allow 兜底(COR-F003/DBT-F002) + issuedAt 定序 supersession(COR-F002) + disposed 标志(PERF-F001) + TST 六腿补齐(F001/F002/F003/F004/F007/回归) + 注释卫生(DOC/STY) (#5037)
    • act 桥 deadline——guardedAct 全原语包 withReadDeadline race,遮挡 pane 不再永久楔死 agent act (#5055)
    • BACKEND_ROUTE_ROOTS 补 strip——N-01 新增 /strip 组的 web dev 代理覆盖(CI 契约测试 vite-dev-proxy.test.ts 抓漏;AC-4 web 形态同通路)(#5036)
    • review r2 残留——reporter 追踪 fixedVisible 读(COR-F006) + 锚点 fixture 行声明化(TST-F002) + 桥级门注释点名残余后果(DGN-F004) + 账本空键机会性清除(PERF-F001/DBT-F001) (#5036)
    • review r1 修订——gap 频道改挂 global(COR-F001) + 行为级 gap 链路测试(TST-F001) + move 基准共享 draggable 推导(DGN-F001/F002/COR-F003) + drain 重入闩(COR-F002) + 命令判别穷尽(SEC-F001) + settle 账本 localStorage 跨挂载去重(COR-F004) (#5036)
    • gap 信号(server.replay.truncated / server.events.dropped 非 slimmed)顺流入队转发给监听者——strip 桥 onGap 生产链路点亮(AC-3 补偿触发面),resync 语义不变 (#5036)
    • 读桥 live-guest 读挂起根治——e2e 注入 guest 可见性根因修复 + withReadDeadline AC-5 兜底(reject≠销毁)+ console-message 事件对象迁移 + #5009 三腿 e2e 期望迁移 (#5050)
    • review-code r1 修订——registry/config-enable 断言(TST-F001) + tools_exclude 文档同步(DOC-F001/F002) + 模块拆分(STY-F001) + noop/边界/NFR 守卫测试 + 值域镜像(SEC-F002) (#5035)
    • 补 strip 路由根到 vite dev proxy 白名单(#5032 新增 groups/strip.ts 漏加,上游 main 自身红的 merge-blocker,影响所有 update 后的 PR CI)
    • 浏览器标签条拖拽不再清空 webview —— 内容区宿主改用成员稳定序派生(stableInstanceOrder,拖拽/置顶重排不再移动已挂载的 guest webview 节点)
    • round-2 中轮修订——收割改死亡签名匹配,输入形错误不再毁健康会话(COR-R2)
    • round-1 评审修订——import 真依赖/单飞 spawn/崩溃收割/选择器白名单/看门狗超时/生命周期日志/a11y walker(#4994)
    • sidecar dev 入口解析改 ESM 惯用例——主进程包无 CJS dirname 全局, dev 启动即 ReferenceError 崩溃 (#5040)
    • review round-1 修订——嵌套闭集 400 + 快照缓存驱逐/上限 + settle 语义对齐 + 边界测试与断言强化 (#5034)
    • 标签条菜单宽限窗内重开走 epoch 键 fresh-mount——TD-1154 竞态产品级修复(lifecycle 抽取 + keyed Show + 状态机单测 + e2e 确定性腿 raw dispatch)(#5033)
    • layout 存储读写两侧自愈——空 browserInstances 持久化为字段缺席(browserStateFields 编码器+读侧一次性剥离,恢复 migrate identity no-op)+ 旧 pinned 沉尾数组读侧稳定分区 pins-front;reorder 家族测试拆至 companion 套件回预算 (TD-1138/1144/1143) (#5030)
    • N-03 review R2 follow-ups — evaluate reads frozen §工具 function field + consent deny/gate settle-leg coverage (#4992)
    • 标签条键盘可达性——菜单键盘开(菜单键/Shift+F10) + 左移/右移命令 + aria-live 播报 (TD-1136/1141/1145 + TD-1142 注释 rider) (#5028)
    • N-03 review R2 — read settle lands on frozen §回流 union (kind-tagged mapping) + per-window destroyed sweep (#4992)
    • N-03 review R1 revisions — renderer consent wiring + consumer mount + frozen field passthrough (#4992)
    • #5021 落地后两处遗留 (#5023)
    • browser 工具条 focus 环宽 2px→1.5px,对齐全局细环规格 (#5015)
    • let a fresh guest's jump-stub bounce complete in place instead of stranding a blank tab
    • messagesCold overlay 守卫改按 Session2 类体内检测——全局组同名生成方法不再误跳过挂载
    • 新建会话目录下拉去重——主目录已注册时隐藏底部固定 Home 入口,搜索过滤改用 itemLabel
    • N-02 bundle slug matches schema (#4991)
    • browser 工具条 10 处 focus outline 接 --v2-border-border-focus,替换平台金圈兜底 (#5002)
    • N-02 review round-1 revision (#4991)
    • thinking row gains wall-clock elapsed label; liveness decoupled from reasoning stream
    • N-04 main boot wiring + store hardening (#4993)
    • electron mock superset + prune stale known-failures (#4993)
    • remove silent double-click pin toggle on sidebar session row
    • session-worktree rm 回退去全局 prune——跨侧 admin 记录手术注销 + 属主预检 fail-closed (#4988)
    • N-01 契约文件随包跟踪——修复 CI checkout 缺文件
    • N-05 (#4977) 评审收尾——settings-v2 死开关移除 + 工具描述改指统一面

    Documentation

    • r2 INFO 处置——catalog 注释改按契约 §6 实文引用(门语言归属 r1 评审门,COR-F101/DOC-F101/DGN-F103 同根)+ withFace 注释弱化为存在性观察(DGN-F101);零行为变更 (#5086)
    • r2 INFO 处置——#4511 面稳定注释加纪元限定词(DOC-F101)+ mount.ts 登记 merge 残余 COR-F101(文档级,零行为变更) (#5085)
    • AC-4 证据措辞对齐——fake close-count 而非 OS 进程表(TRC-R2-F001)
    • N-03 review R2 doc close-out — evaluate-folding comment wording + dangling comment merge (#4992)
    • Linux 桌面段补 deb/rpm 首装直链(搭车已上线 desktop-beta)
    • 公开仓 README 补 Linux 桌面(AppImage)安装段——v0.18.0 首航遗漏回写主仓源
    • v0.18.0 发布实录两坑沉淀——build.ts 必须显式 OCTOPUS_VERSION(import 提升求值)+ feed 双平台 dispatch 串行(concurrency 取消排队者)

    Maintenance

    • 归档 bundle 5115-sidebar-grouping-menu(merge-gate close-ref)
    • 归档 run bundle 5106-sidecar-burn-5106.json(review R2 PASS + verify PASS)
    • 归档 epic bundle 5083-skill-tool-mount(DAG 全终态 N-01/N-02 done;契约收官注记;Closes #5083)
    • known-failures 三跑追补——flake 轮盘指纹刷新(3 新 1 刷,TD-1159 家族)
    • 归档 run bundle 4778-auth-fastfail(review-code WARN 收敛 + verify PASS,PR #5102)
    • known-failures 补 TD-1159 幻影归因豁免——handlers/session.test.ts 名下 7 条外部测试名指纹刷新/新增(双胞胎同步)
    • 归档 run bundle 5083-skill-tool-mount-task-n-02(review-code 2 轮 WARN 收敛 + verify task-mode PASS,Closes #5086)
    • 归档 run bundle 5083-skill-tool-mount-task-n-01(review-code 2 轮 WARN 收敛 + verify task-mode PASS,Closes #5085)
    • 归档 Epic run bundle 5073-presence-active-tab(三节点全 done,review-dag 单门 PASS + 3×task verify PASS,#5073)
    • 归档 run bundle 5073-presence-active-tab-task-n-03(review-code 2 轮 PASS + verify task-mode PASS,#5079)
    • bundle 终版同步——round 3 增量评审 + 终 head 5538acd0a (#5078)
    • 修 ci-pseudo-rerun 分页截断测试零余量窗口竞态(CI 两连红本地绿,合并解锁;预存在缺陷非本 diff 引入) (#5078)
    • 归档 run bundle 5073-presence-active-tab-task-n-02(review-code 2 轮 PASS + verify task-mode PASS,#5078)
    • r1 评审修订——user_viewport builtin 注册 + 默认挂载回归守护腿 (TST-F001, #5078)
    • 归档 run bundle 5073-presence-active-tab-task-n-01(review-code 2 轮 PASS + verify task-mode PASS,#5077)
    • 归档 run bundle 5070-dup-render-5070.json(review WARN converged + verify PASS)(Refs #5070)
    • 归档 run bundle 5069-agent-read-viewport(review-code WARN converged 1/2,PR #5071)
    • 归档 epic run bundle 5032-strip-agent-bridge.json(M-01 verify PASS,epic 收官) (#5032)
    • 归档 run bundle stream-dup-render-5053.json(review-code r1/1 PASS + 全量套件 5598 pass,remedy (a) 解锁 close-ref 检查) (#5053)
    • M-01 里程碑集成 e2e——全链(list/pin/move/close 键盘允许/拒绝)+双 session 守卫+no-surface+传输断落补偿+web dev 冒烟 (Refs #5032)
    • 归档 run bundle 5054-read-audit-cause.json(review-code r2/2 PASS + verify PASS,remedy (a) 解锁 close-ref 检查) (#5054)
    • 归档 run bundle 5037-5032-strip-agent-bridge-task-n-04.json(review-code r3/3 WARN 收敛 + task verify PASS,Closes #5037)
    • 归档 run bundle 5055-act-bridge-deadline.json(review r1 WARN→r2 PASS 收敛 + verify PASS,pr 5058)(#5055)
    • review r1 TST-F001——生产缝不设值源码 pin(defaultDeps 永不设 actDeadlineMs,冻结 READ_DEADLINE_MS 默认受护)(#5055)
    • 归档 run bundle 5036-5032-strip-agent-bridge-task-n-03.json(review-code r3/3 PASS + task verify PASS)(#5036)
    • 归档 run bundle 5050-fence-read-bridge.json(review 2 轮收敛 r1 双 PASS + r2 PASS, verify PASS, pr 5056)(#5050)
    • 归档 run bundle 5035-5032-strip-agent-bridge-task-n-02.json(review-code r3/3 PASS + task verify PASS)(#5035)
    • STY-F003/F004/F005 修订——隔离清单回 LF(test-parallel.sh 逐字匹配复活)+ compaction-stream-timeout 排序归位 + 账本三条双前缀纠正(双侧 parity)(#5035)
    • 归档 run bundle 5048-desktop-e2e-ci.json(review 2 轮收敛 r1 WARN 1M+2m→r2 PASS + verify PASS, pr 5049)(#5048)
    • 串扰结构性收尾——prompt/same-ticket-replay/read/compaction-stream-timeout 入 process-isolated(批内失败源清零,#4934 先例姿势)+ 4 条真名豁免(#5046 c54480,双侧 parity)(#5035)
    • known-failures 补 loop-waits 串扰副本豁免(#5046 c54480 同批,双侧 parity)(#5035)
    • known-failures 补 r2 三条输出流错位串扰豁免(根因与 junit 根治方向存证 #5046 c54480,双侧 parity)(#5035)
    • review r1 修订——CI.md windows-amd64 池描述更新(两消费方 + nightly 排队语义 + 信任边界, DOC-F001)+ 单 job 断言强化(TST-F001)+ node ≥20 版本地板 fail-fast(DBT-F001)(#5048)
    • desktop electron e2e 纳入 CI——desktop-e2e.yml(nightly 03:30 CST + dispatch, windows-amd64 宿主池, 90m 预算, 专属并发组不抢占)+ 触发矩阵/标签/预算/并发/不吞红五不变量守护 + AGENTS.md 触发文档同步 (#5048)
    • known-failures 补两条分片归因串扰豁免(write.test.ts 名下重复归因的存量红,#5046 c54454 存证,双侧 parity)(#5035)
    • bundle head 同步至 4bb1771ab(含 #4698 修复,Closes #4994)
    • #4698 compression 阈值断言改环境无关语义
    • known-failures 指纹修正——same-ticket-replay T2 条目名修订后未重算(干净 main 复现归因不变,双侧 parity)(#5035)
    • 归档 run bundle 4987-browser-act-surface-task-N-05.json(review WARN 收敛 r2/2 + verify PASS + TD-1157..1159,Closes #4994)
    • 归档 run bundle 5043-e2e-stale-expect.json(review 2 轮收敛 r1 WARN 2M→r2 PASS + verify PASS, pr 5045)(#5043)
    • review r1 修订——close-all 腿补持久化 present 前置断言(absent 轮询防空过, TST-F001)(#5043)
    • 归档 run bundle 5032-strip-agent-bridge-task-n-01.json(review-code r2/2 PASS + task verify PASS,TD-1154..1156) (#5034)
    • 四处空 browserInstances 期望对齐 #5030 字段缺席契约——e2e 无 CI 静默红修复 (#5043)
    • round-2 机械门豁免补充——#2154 teardown 竞态家族 + 幻影行(#4994 c54384)
    • 归档 run bundle 5040-desktop-esm-dirname.json(review r1 三组全 PASS 单轮收敛 + verify PASS 具名失败集 A/B 全等, pr 5044)(#5040)
    • known-failures 指纹刷新至现行公式 + N-05 机械门豁免条目(双胞胎同步)
    • run bundle 归档——review 2 轮收敛 PASS(r1 WARN 3M→r2 PASS)· verify PASS · pr 5038 · close c7dffff3b (#5033)
    • review round-1 修订——宽限定时器取消不变量钉(跨原 grace 窗重开挂载存活, TST-F001)+ e2e 注释措辞校准(慢机退化为冷重开路径亦须过, TST-F002)+ 套件头注释补全五腿(DOC-F001)(#5033)
    • 归档 run bundle strip-heal-5030.json(review 2 轮收敛全 PASS + verify PASS,Closes #5030)
    • round-1 评审残留——import 顺序回 house 风格(bun:test 先行,STY-F001)+ 编码器断言换 Object.keys 锐化 oracle(absent≠undefined,TST-F001) (#5030)
    • archive run bundle 4987-browser-act-surface-task-n-03.json (review WARN converged r2/2 + verify PASS, Closes #4992)
    • 修正 run bundle 至 schema 形态(meta/index 嵌套 + legacy v1,首版平铺结构未过 Octopus Schemas 门) (#5028)
    • 归档 run bundle strip-a11y-5028.json(review 2 轮收敛 + verify PASS 收官,Closes #5028)
    • 归档 run bundle strip-td-core-5026.json(review 2 轮 PASS 收敛 + verify PASS 收官,Closes #5026)
    • 归档 run bundle strip-followup-5023.json(review 2 轮 WARN 收敛 + verify PASS 收官,Closes #5023)
    • round-1 评审修订——pinned 前置契约补执行级测试 (#5023)
    • N-03 gate waiver for parser-drift third entry (#4992)
    • 归档 run bundle 5008-pin-browser-tab.json(DAG 2/2 done 收官工件——issue 前缀式命名,prune 匹配契约)(Closes #5008)
    • N-02 e2e browser pin 腿——pin 幸存(chip+keep-alive back stack)/前置锚定/重载持久/unpin 恢复 close-all 可清 + 既有两腿零回退(本地 3/3 PASS,OCTOPUS_SIDECAR_ENTRY seam 绕过 #5013 存量缺陷)(#5011)
    • archive bundle for #5009 close-ref (merge-gate presence)
    • N-02 run bundle archive-at-close (#4991)
    • re-register load-jitter waivers with fresh fingerprints (#4993)
    • cover write-tool headless outcomes + reset act-consent face
    • 设置对话框骨架/键帽/节奏统一
    • archive Tier 1 bundle for #4972 (merge-gate archive-presence)
    5 uncategorized commit(s)
    Downloads