muse-agent-example/docs/acceptance/2026-08-24-dsh-pi-browser-e2e.md

55 lines
4.0 KiB
Markdown
Raw Permalink 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.

# DSH / PI 浏览器创作闭环验收
日期:2026-08-24
范围:`agent-example/` 当前工作树
## 运行配置
本次 DSH 运行使用 PI 本机 provider catalog 的非敏感元数据:
- provider:`catproxy-openai`
- model:`gpt-5.6-sol`
- protocol:`openai-responses`
- base URL:`https://catproxy.lilifamily.com/v1`
- DSH route:`llm-pi-ai.providers.catproxy-openai`
- 凭据:由 `pi auth print-api-key --provider catproxy-openai` 在当前进程注入 `DEEPSEEK_API_KEY`
密钥没有写入 patch、settings、raw、Git 或本记录。协议、地址和模型目录由 `framework/adapters/dsh/pi_ai.py` 从 PI `models.json` 读取;DSH patch 只保存 `apiKeyEnv` 引用。
## 创作链
隔离作品:`work_id=53`,标题前缀为 `E2E验证·DeepSeek·`。
1. planner 通过 DSH 生成第一章章纲并落运行、事件、raw 与模型回执。
2. writer 通过 DSH 生成正文候选。首轮短正文被篇幅门拒绝;第二轮正文为 4,216 字。
3. judge 通过 DSH 审查硬事件、顺序、语义和章末钩子。首轮指出漏掉一个硬事件;按作者修订授权重新生成后通过。
4. 受控 E2E fixture 将通过三步检查的 DSH 结果按候选合同装配为 `candidate_id=170`,以 `production / passed / semantic=passed` 进入 Shadow,并带 DSH 事件工件、运行回执、质量结果、上下文冻结和 raw 关联。该装配用于验证 Studio 人闸与 Canonical 写入,不替代生产 `produce_next_chapter.py` 编排。
5. 使用 `agent-browser` 打开 `http://127.0.0.1:8767/candidates/170`,以 `e2e-author` 提交采纳及理据。
6. 数据库确认候选为 `accepted`,正式正文块为 revision 1,正文哈希与候选哈希一致,来源归因为 `candidate_id=170`。
7. `agent-browser` 在 `http://127.0.0.1:8765/works/53/ch/1` 读取到正式正文标题、4,216 字和正文内容;运行详情显示 `dsh`、`0.1.1-rc.2`、`catproxy-openai/gpt-5.6-sol` 与 `framework-events`。
## 修复项
- Studio 三个入口改用 `AGENTS.md + .git` 查找独立仓根,修复目录迁移后的业务脚本导入和工件路径。
- DSH runner 显式写入 `agent-default-model`,并支持 PI catalog 到 `llm-pi-ai` 的无密钥路由投影。
- 过滤 PI `thinkingLevelMap` 中表示“不支持”的非 `off` 空档位,避免 DSH 插件树拒绝启动。
- 决策与经验写通道采用 `POST -> 303 -> GET`,刷新不会重复提交写命令。
- 看板浅色模式辅助文字、链接和 chip 编码对比度修正;写通道增加 `main` 地标和键盘可聚焦正文滚动区。
- 修复 AI 味页面缺重验证回执时引用未定义变量的离线回退错误。
## 机械证据
- Skill strict:58 个 Skill,阻断 0,质量发现 0。
- 最终离线清单(显式放行 PostgreSQL):122 项,121 通过,1 项 blocked,0 项失败。唯一 blocked 是未授权的 `diagnose-ai-flavor` 模型/凭据评测入口。
- PostgreSQL 集成:8 项通过,包含冻结、事实增量、投影、候选接受、经验登记、CAS、规则 smoke 和回滚 smoke。
- DSH / framework / Studio 架构测试、import boundary、Markdown 链接和 compileall:通过。
- 变更文件 Pyright:0 errors、0 warnings;旧的完整看板模块仍有未改动的宽松类型和 editable import 诊断,不作为本次变更的通过依据。
- agent-browser axe:总览、正式正文、候选决策三页均为 0 violations、0 incomplete。
- 真实 DSH 最小探针:实际模型 `catproxy-openai/gpt-5.6-sol`,事件序列包含 `agent.started`、`model.completed`、`agent.completed`,生成 `framework-events.jsonl`。
## 边界
本记录证明 DSH + PI 路由、无工具 fresh DSH 任务、Muse 证据落库和 Studio 人闸/正式正文写入的联动可运行。DSH 当前适配器仍拒绝非空 Muse 工具白名单,因此这不是生产 `write-next-chapter` 两阶段只读工具探索链的替代证据;生产默认适配器仍为 Pi。
失败的短正文、评委拒绝和落库约束运行均保留在数据库运行账本中,未被删除或覆盖。