Files
Jyotisha/docs/tasks/PROGRESS-window-consult-contract-20260918.md
T
jesse-ux 877128cec4
Independent Staging Quality Gate / validate (push) Successful in 14m31s
Independent Staging Quality Gate / publish (push) Successful in 16m24s
docs: 回填 BUG-954~956/958 修复版本 5b6abc23
2026-09-18 16:38:15 +08:00

48 lines
3.2 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.
# PROGRESS · 申报时段咨询修复(2026-09-18 第四轮)
工作树:`.worktrees/window-consult-contract-20260918`
分支:`codex/window-consult-contract-20260918`
基线:`origin/staging` @ `e5b2ad14`(任务书写 `9cdcf96b`,其后纯文档已快进到改写后的任务书)
合入提交:`5b6abc23`
任务书:`docs/tasks/TASK-window-consult-contract-20260918.md`
## 任务状态
| 任务 | 状态 | 说明 |
| --- | --- | --- |
| BUG-954 窗口指令注入带 marker 的方法块 | 完成 | 选方案 (a) |
| BUG-955 abort 与合同未完成分码 | 完成 | 内部码 `skill_binding_failed`,公开码不变 |
| BUG-956 合同未绿不得丢正文 | 完成 | 零次计算 + 有正文 → 降级交付 |
| BUG-957 服务端预跑 | 未做 | 按任务书等 954 真实环境验证后再单开 |
| BUG-958 应期仍先调工具 | 完成 | 窗口指令补一句 + 源码断言 |
## 954 选型
选 **(a)**。抽出 `jyotishSkillMethodCoreBlock`(方法主体 + marker),本命 Level 2 报告骨架留在 `jyotishSkillMethodBlock` 作为可选后缀。窗口不加骨架。另加一句窗口口径优先于方法块里的报告模板 / 应期表述,避免 SKILL.md 摘录把 Level 2 又带回来。不选 (b):完整方法块再逐条覆盖,会把本命应期口径先写进去再否定,窗口线刚活过来时更脆。
## 断言三栏(既有测试)
| 测试 | 原值 | 新值 | 原因 |
| --- | --- | --- | --- |
| 无工具 + 有正文 | `run.failed`,不发 `answer.delta` | 交付正文 + 降级说明,`run.completed`,回执 `contract-degraded` | BUG-956 |
| 被拒 tool 的回执 status | `["completed", "failed"]` | 多一拍 `runtime-contract-incomplete` | BUG-955 |
| schema 拒收后 `state.steps` | `skill + tool:failed` | 再加 `validation:failed` | BUG-955 |
| 已记录的 tool 失败数 | 全部 failed 步 === 1 | tool failed 仍为 1;另有合同未完成步 | BUG-955 不得把 tool 失败再记一次 |
| 失败回执 durationMs | `[undefined, 20936]` | 多一拍无 duration | BUG-955 |
| 上述 used | 2 | 3 | 同上 |
## 测试
| 项 | 结果 |
| --- | --- |
| `tsc --noEmit` | 0 错 |
| `npm run lint` | 0 error(120 warning,与基线同量级,未顺手修) |
| 定向(workflow-contract / agentic-runtime / observability / voice / birth-time-mode) | 116 pass / 2 fail。2 条是本机 Windows `EPERM` 无法为 live skill 建 symlink(`personal Agent exposes…` / `general agent runtime has no Jyotish skill package…`),与基线缺口同类,不是本单引入 |
| 本单新增 | 遍历 attach `jyotishSkillBinding()` 的 Agent 必须含 marker;窗口 `getInstructions` 后处理器不 abort;tripwire vs 空流回执步骤名不同;无工具+有正文降级;无工具+无正文仍 incomplete;窗口应期仍先调工具 |
Linux 门禁才是验收数字:目标 fail 回到 31,总数 ≥ 3495。窗口 Agent 运行测试在 `skill-binding.test.ts`,依赖 live skill symlink,CI Linux 上应绿。
## 部署后欠
任务书验收:staging 真发一轮申报时段提问,`/api/health` SHA 对得上,回执里有 `run-jyotish-window-consultation` 的 completed 步。本机无登录态、无 Chrome,写在这里不写成通过。