Files
claw/docs/superpowers/plans/2026-04-18-g3-paginated-enrichment-plan.md

459 lines
10 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.
# G3 Paginated Enrichment Plan
> **Status:** Draft
> **Date:** 2026-04-18
> **Author:** Codex
> **Upstream Spec:** [2026-04-18-g3-paginated-enrichment-design.md](D:/data/ideaSpace/rust/sgClaw/claw-new/docs/superpowers/specs/2026-04-18-g3-paginated-enrichment-design.md)
## Plan Intent
本计划用于把 `G3` 分页补数家族设计拆解为可执行任务,目标是把当前 `paginated_enrichment` 从“宽泛的复杂 workflow 标签”推进到“具备证据层、最小合同、canonical baseline 和 fail-closed 判定”的正式主线 archetype。
本计划严格限定在 `G3 / P0-3` 落地,不扩展到:
1. `G6/G7/G8`
2. 全量 `95598` 家族并发整改
3. 登录恢复或宿主 transport 重构
4. 102 个场景大规模铺开
## Success Baseline
本计划完成后的最低成功口径固定为:
1. `95598工单明细表` 不再只是“复杂工单类”模糊样本
2. 生成链能够显式恢复:
- `main request`
- `pagination plan`
- `enrichment requests`
- `export plan`
3. `localhost:*`、宿主注入和 BrowserAction 不再被误判为业务主链
4. `G3` 具备最小可编译合同和独立 gate
5. 证据不足时结果稳定 `fail-closed`
6. `95598、12398、流程超期风险工单明细` 能作为第一扩展样板进入复用验证
## Scope Guardrails
执行过程中保持以下边界不变:
1. 不把 `G3` 回退为普通分页表识别
2. 不把宿主桥接能力提前混入 `G3` 合同
3. 不为了先生成 skill 而放松 gate
4. 不并发展开 `G6/G7/G8`
5. 不在本计划中做真实内网人工验证
## Target Samples
本计划整改与回归只围绕以下两个样板:
1. `95598工单明细表`
2. `95598、12398、流程超期风险工单明细`
其中角色固定为:
1. `95598工单明细表`
- 作用:`P0-3` 主样板
- 目标:冻结 `G3 canonical`
2. `95598、12398、流程超期风险工单明细`
- 作用:第一扩展样板
- 目标:验证 `G3` 合同与证据层是否可复用
## Workstreams
本计划拆为五条工作流:
1. `WS1` G3 边界冻结与样板建档
2. `WS2` G3 证据层建模
3. `WS3` G3 Scene IR / compiler gate / readiness 建设
4. `WS4` G3 P0 canonical 与失败 taxonomy 冻结
5. `WS5` G3 真实样本回归与报告
## Phase Overview
本计划按五个阶段推进:
1. Phase 0冻结 `G3` 边界与样板
2. Phase 1建立 `G3` 证据层
3. Phase 2建立 `G3` 最小合同与 gate
4. Phase 3冻结 `P0-3 canonical`
5. Phase 4回归真实样本并输出首轮报告
执行顺序固定为:
`Phase 0 -> Phase 1 -> Phase 2 -> Phase 3 -> Phase 4`
## Phase 0冻结 G3 边界与样板
### Objective
先把 `G3` 的问题边界、主样板和扩展样板固定下来,避免开发过程中把工单类、宿主桥接类和导出分析类重新混在一起。
### WS1G3 边界冻结与样板建档
#### Task 1
冻结 `G3` 正式定义:
1. 不是普通分页表
2. 不是宿主桥接型
3. 而是“主查询链 + 分页链 + 补数链 + 导出链”并存的复杂 workflow 报表
#### Task 2
冻结 `95598工单明细表` 为唯一 `P0-3` 主样板。
#### Task 3
冻结 `95598、12398、流程超期风险工单明细` 为第一扩展样板。
#### Task 4
固化 `G3` 进入条件:
1. 存在主查询链候选
2. 存在分页控制证据
3. 存在补数或关联详情链
4. 最终结果依赖分页拉全、补齐、导出或汇总
#### Task 5
固化 `G3` 排除条件:
1. 单请求即可完成的普通报表
2. 仅靠 BrowserAction 推进、无稳定业务主链
3. 以本地落库分析或文档产物为主体
4. `localhost:*` 或宿主依赖明显压过业务证据
### Deliverables
1. `G3` family definition
2. `G3` 样板清单
3. `G3` 进入条件与排除条件
4. `G3` 与其它家族边界说明
### Exit Criteria
1. `95598工单明细表` 不再作为模糊工单样本讨论
2. `G3` 不再与宿主桥接型、文档产物型场景混淆
## Phase 1建立 G3 证据层
### Objective
把源码直接压成 `Scene IR` 的路径升级为:先形成 `G3` 可裁决证据,再归约成 `Scene IR`
### WS2G3 证据层建模
#### Task 6
定义 `main_request_candidate`,承载:
1. 主查询 endpoint
2. 查询参数模板
3. 时间范围或主过滤条件
#### Task 7
定义 `pagination_candidate`,承载:
1. 页码字段
2. pageSize 字段
3. 翻页终止条件
4. 滚动窗口或区间推进规则
#### Task 8
定义 `enrichment_request_candidate`,承载:
1. 详情补查
2. 二次接口
3. 关联补数
#### Task 9
定义 `join_key_candidate`,承载:
1. 工单号
2. 流程号
3. 用户号
4. 设备号
5. 其它主补链关联键
#### Task 10
定义 `export_candidate`,承载:
1. 导出接口
2. 导出参数
3. 导出前置动作
4. 产物类型
#### Task 11
定义 `workflow_step_candidate`,承载:
1. 主查
2. 翻页
3. 补查
4. 聚合
5. 导出
之间的顺序关系。
#### Task 12
定义 `dedupe_or_merge_rule_candidate`,承载:
1. 去重规则
2. 主从并回规则
3. 跨页累积规则
#### Task 13
定义 `host_bridge_candidate``localhost_dependency_candidate`,确保宿主链只作为独立证据保留。
#### Task 14
建立证据归并与冲突裁决规则,明确:
1. 哪些属于业务主链
2. 哪些属于宿主桥接
3. 哪些属于结果导出链
### Deliverables
1. `G3` evidence schema
2. `G3` evidence type dictionary
3. 证据归并规则
4. `95598工单明细表` 第一版证据样例
### Exit Criteria
1. 主链、分页链、补链、导出链、宿主链能够分槽呈现
2. `localhost:*` 不再混入业务主链
## Phase 2建立 G3 最小合同与 Gate
### Objective
`G3` 的判定标准从“看起来像分页补数场景”升级为“最小业务合同是否成立”。
### WS3G3 Scene IR / compiler gate / readiness 建设
#### Task 15
定义 `G3` 最小合同,至少包括:
1. `main_request`
2. `pagination_plan`
3. `enrichment_requests[]`
4. `join_keys[]`
5. `export_plan`
6. `merge_or_dedupe_rules`
#### Task 16
`Scene IR` 中承载 `G3` 专属结构,不再退化成普通 `paginated_enrichment` 空壳字段。
#### Task 17
增加 `G3` gate至少包括
1. `g3_main_request_resolved`
2. `g3_pagination_contract_complete`
3. `g3_enrichment_contract_complete`
4. `g3_join_key_resolved`
5. `g3_export_path_identified`
6. `g3_runtime_scope_compatible`
#### Task 18
定义 blocker / readiness 判定口径,要求能区分:
1. 业务证据不足
2. 分页合同不闭合
3. 补数合同不闭合
4. 导出链依赖宿主
5. 运行时依赖未满足
#### Task 19
落地 `fail-closed` 规则:
1. 主请求链缺失,阻断
2. 分页链存在但终止条件不明,阻断
3. 补数链存在但 join key 不明,阻断
4. 只有导出动作没有业务主链,阻断
5. 宿主桥接证据明显多于业务证据,阻断
#### Task 20
补充测试,证明未闭合 `G3` 样本不能伪装成 runnable skill。
### Deliverables
1. `G3` minimal contract table
2. `G3` gate table
3. `G3` blocker / readiness table
4. `G3` Scene IR example
### Exit Criteria
1. `G3` 已拥有独立 gate
2. 未闭合结果会准确阻断
3. `compiler` 不再吞入未闭合 `G3 IR`
## Phase 3冻结 P0-3 Canonical
### Objective
`95598工单明细表` 做成 `G3` 的第一版标准答案、关键证据基线和失败 taxonomy 基线。
### WS4G3 P0 canonical 与失败 taxonomy 冻结
#### Task 21
冻结 `95598工单明细表` 的 canonical `Scene IR`
#### Task 22
冻结关键证据清单,至少包括:
1. 主请求链
2. 分页链
3. 补数链
4. join key
5. 导出链
6. 宿主依赖
#### Task 23
冻结验收检查表,至少检查:
1. 主链是否恢复
2. 分页链是否恢复
3. 补链是否恢复
4. join key 是否恢复
5. 导出链是否恢复
6. 宿主链是否被隔离
7. readiness 是否与真实闭合程度一致
#### Task 24
冻结失败 taxonomy至少包括
1. `main_chain_missing`
2. `pagination_incomplete`
3. `enrichment_incomplete`
4. `join_key_missing`
5. `export_only_without_business_chain`
6. `host_bridge_pollution`
7. `runtime_dependency_unresolved`
#### Task 25
建立“生成结果 vs canonical”对齐方式。
### Deliverables
1. `G3` P0 canonical `Scene IR`
2. `G3` P0 evidence baseline
3. `G3` acceptance checklist
4. `G3` failure taxonomy table
### Exit Criteria
1. `95598工单明细表` 成为 `G3` 第一版统一校准源
2. 后续 `G3` 回归都可以对照固定 taxonomy
## Phase 4真实样本回归与首轮报告
### Objective
先用 `P0` 主样板建立闭环,再用一个扩展样板验证 `G3` 合同是否具备复用性。
### WS5G3 真实样本回归与报告
#### Task 26
重新生成 `95598工单明细表`
#### Task 27
按统一口径检查:
1. archetype
2. bootstrap
3. main request
4. pagination plan
5. enrichment requests
6. join keys
7. export plan
8. localhost / host bridge separation
9. readiness / blocker
#### Task 28
输出 `G3 P0 validation report`,结论只允许以下三种:
1. `通过`
2. `Fail-closed 且理由准确`
3. `误判,需要整改`
#### Task 29
重新生成 `95598、12398、流程超期风险工单明细`
#### Task 30
对比其与 `P0` 样板之间:
1. 哪些合同可复用
2. 哪些 blocker 是家族共性
3. 哪些是扩展样板特有复杂度
#### Task 31
输出 `G3 first-round family expansion report`
### Deliverables
1. `G3` P0 样板生成结果
2. `G3` P0 验证报告
3. `G3` 扩展样板生成结果
4. `G3` 首轮家族扩展报告
### Acceptance Criteria
1. `95598工单明细表` 至少达到“结构恢复完整”或“Fail-closed 理由准确”
2. 扩展样板不会再被粗暴压成普通分页表
3. `G3` 失败结果具备可解释性
4. `G3` 至少形成第一版家族复用口径
## File-Level Targets
本计划执行时,至少会触达以下资产类型:
1. `docs/superpowers/specs/`
2. `docs/superpowers/plans/`
3. `docs/superpowers/reports/`
4. `src/generated_scene/` 下与证据层、合同层、readiness 相关实现
5. `tests/fixtures/generated_scene/`
6. `tests/`
## Completion Criteria
本计划完成的标志是:
1. `G3` 已拥有正式边界定义
2. `G3` 已拥有最小证据层与最小合同
3. `G3` 已拥有独立 gate 与 fail-closed 口径
4. `95598工单明细表` 已成为 `P0-3 canonical`
5. `G3` 首轮真实样本回归已经给出正式结论
## Next Step
本计划完成后,后续顺序固定为:
1.`G3``P0` 与首轮扩展样板稳定,再决定是否补第二个 `G1-E` 样板
2. 然后再决定是否进入 `G6` 的独立设计与计划