feat: add generated scene skill platform hardening

This commit is contained in:
木炎
2026-04-21 23:19:06 +08:00
parent 118fc77935
commit 956f0c2b68
439 changed files with 61974 additions and 3645 deletions

View File

@@ -0,0 +1,331 @@
# G2 家族整改计划
> **Status:** Draft
> **Date:** 2026-04-18
> **Author:** Codex
> **Upstream Spec:** [2026-04-18-g2-remediation-design.md](D:/data/ideaSpace/rust/sgClaw/claw-new/docs/superpowers/specs/2026-04-18-g2-remediation-design.md)
## Plan Intent
本计划用于把 `G2` 家族整改设计拆解为可执行任务,目标是把当前线损多模式报表家族从“信号能抓到但主链重建失败”,推进到“至少第一份样本达到候选验证门槛”。
本计划严格限定在 `G2` 家族整改,不扩展到:
1. `G1`
2. `G3`
3. 更大范围真实场景迁移
4. 登录恢复、宿主协议重构或运行时 transport 改造
## Success Baseline
整改阶段的最低成功口径固定为:
1. `台区线损大数据-月_周累计线损率统计分析` 不再坍缩为 `paginated_enrichment`
2. 至少该样本能生成 `multi_mode_request` 结构
3. `bootstrap` 落到线损主业务承载面
4. `modes` 至少恢复 `month``week`
5. mode-specific `request/response/column/normalize` 合同不再为空
6. readiness 不再在核心合同缺失时给出虚高 `A`
7. 样本结果达到“可进入候选验证”门槛
## Scope Guardrails
执行过程中保持以下边界不变:
1. 不切换到 `G1/G3` 样本执行
2. 不继续补更多同类 `G2` 观察样本
3. 不在本计划中展开内网人工验证
4. 不在本计划中处理统一登录与隐藏域登录恢复
5. 不发散到 scene skill 平台通用重构
## Target Samples
本计划整改与回归只围绕以下三份 `G2` 样本:
1. `台区线损大数据-月_周累计线损率统计分析`
2. `白银线损周报`
3. `线损同期差异报表`
对应产物路径:
1. `examples/real_scene_batch_round1/skills/real-tq-lineloss-report-r1`
2. `examples/real_scene_batch_round1/skills/real-baiyin-lineloss-weekly-r1`
3. `examples/real_scene_batch_round1/skills/real-lineloss-period-diff-r1`
## Workstreams
本计划拆为五条工作流,与上游 `spec` 一一对应:
1. `WS1` G2 archetype 纠偏
2. `WS2` bootstrap 纠偏
3. `WS3` mode contract 重建
4. `WS4` endpoint 去污染
5. `WS5` readiness 收紧
## Phase Overview
本计划按四个阶段推进:
1. Phase 0冻结整改基线
2. Phase 1修正识别与选择
3. Phase 2重建 `G2` 合同
4. Phase 3回归真实样本并产出整改报告
执行顺序固定为:
`Phase 0 -> Phase 1 -> Phase 2 -> Phase 3`
其中 `Phase 1` 先于 `Phase 2`,避免在错误 archetype 和错误 bootstrap 上继续堆模板逻辑。
## Phase 0冻结整改基线
### Objective
把当前 `G2` 家族首轮 blocker、对标口径和验收门槛冻结避免整改过程中边界漂移。
### Tasks
1. 固化三份 `G2` 样本的当前失败画像
2. 固化 `tq-lineloss-report` 作为 `G2` 主锚点参考
3. 固化 `G2` 候选验证门槛
4. 固化整改阶段只围绕 `G2` 的边界
### Deliverables
1. 本计划
2. 已存在的 `G2` blocker 汇总
3. 已存在的第一轮迁移与候选验证报告
### Exit Criteria
1. 后续执行不再追加同类 `G2` 观察样本
2. 不再用“先去内网试试”替代整改闭环
## Phase 1修正识别与选择
### Objective
先把 `G2` 主链判定修正过来,解决 archetype、bootstrap 与 endpoint 污染这三个上游问题。
### WS1G2 Archetype Rectification
#### Task 1
审计当前 `G2` archetype 误判来源,确认:
1. 哪些分页信号在夺权
2. 哪些 mode 信号没有进入主判定
3. 当前 `multi_mode_request``paginated_enrichment` 的优先级冲突点在哪里
#### Task 2
修改 `G2` archetype 判定逻辑,使以下信号在 `G2` 中具备更高权重:
1. `month/week`
2. `mode`
3. `tjzq`
4. 同一场景内多组线损接口
5. 模式切换分支字段
#### Task 3
新增或更新回归测试,证明:
1. 当前 `G2` fixture 不再判成 `paginated_enrichment`
2. `G2` 相关修正不会误伤现有 `G3` fixture
### WS2Bootstrap Rectification
#### Task 4
审计当前 bootstrap 选择逻辑,确认为什么三份样本都稳定落到 `20.77.115.36:31051`
#### Task 5
`G2` 引入更严格的 bootstrap 选择约束:
1. 优先真实线损业务承载页
2. 排除页面壳入口与错误主域
3. 继续排除 `localhost:*`、第三方库 URL、静态资源 URL
#### Task 6
新增或更新测试,证明:
1. `G2` 主样本 bootstrap 不再落到错误入口
2. `localhost:*` 仍只作为宿主依赖证据保留
### WS4Endpoint Purification
#### Task 7
审计当前 endpoint 提取污染来源,明确以下类别如何被误收进业务候选:
1. 第三方依赖库
2. 文档外链
3. 静态资源 URL
4. 其他业务系统遗留接口
#### Task 8
收紧 endpoint 候选过滤与排序规则,使 `G2` 样本中:
1. 线损主业务接口排在前列
2. 外链与依赖库 URL 不再进入主业务候选
3. 其他业务系统 endpoint 不再轻易抢占主链
#### Task 9
补充测试,证明:
1. `G2` 主 endpoint 排序明显改善
2. 噪声 endpoint 不再污染生成主脚本
### Phase 1 Exit Criteria
1. `G2` fixture archetype 判定修正
2. `G2` bootstrap 选择修正
3. `G2` endpoint 候选排序修正
## Phase 2重建 G2 合同
### Objective
在主链判定正确后,恢复 `G2` 必需的 mode-specific 合同与更严格的 readiness。
### WS3Mode Contract Reconstruction
#### Task 10
`G2` 定义最小 mode contract至少包括
1. `modes[]`
2. `defaultMode`
3. `modeSwitchField`
4. per-mode `requestTemplate`
5. per-mode `responsePath`
6. per-mode `columnDefs`
7. per-mode `normalizeRules`
#### Task 11
修改 `Scene IR` 组装或生成逻辑,让 `G2` 样本在证据充分时真正输出 `modes[]`,而不是只保留空壳默认字段。
#### Task 12
修改 `G2` 生成脚本模板或编译路径,避免继续退化成通用:
- `paginate -> secondary_request -> filter`
要求生成结果能体现:
1. `month` 模式
2. `week` 模式
3. 不同模式的请求差异
4. 不同模式的列差异
#### Task 13
新增或更新测试,证明:
1. `台区线损大数据-月_周累计线损率统计分析` 可输出非空 `modes`
2. 至少一个 `G2` fixture 恢复出 mode-specific contract
### WS5Readiness Tightening
#### Task 14
`G2` 新增或收紧 gate至少覆盖
1. `g2_archetype_resolved`
2. `g2_bootstrap_resolved`
3. `g2_modes_present`
4. `g2_request_contract_complete`
5. `g2_response_contract_complete`
#### Task 15
调整 readiness 评级逻辑,保证以下情况不再给出高等级:
1. `modes = []`
2. `requestTemplate = null`
3. `columnDefs = []`
4. archetype 误判
#### Task 16
新增或更新测试,证明:
1. 不闭合 `G2` 样本会被降级或阻断
2. readiness 与候选验证门槛一致
### Phase 2 Exit Criteria
1. 至少 `G2` 主样本拥有可解释的 mode contract
2. readiness 不再虚高
3. `G2` 生成结果在结构上具备进入候选门槛的可能
## Phase 3回归真实样本并产出整改报告
### Objective
在整改完成后,重新生成三份 `G2` 真实样本,并输出第二轮正式结论。
### Tasks
#### Task 17
重新生成以下三份 `G2` 样本:
1. `台区线损大数据-月_周累计线损率统计分析`
2. `白银线损周报`
3. `线损同期差异报表`
#### Task 18
按与第一轮完全一致的口径,对比以下项目:
1. archetype
2. bootstrap
3. modes
4. request contract
5. response / column / normalize contract
6. readiness
#### Task 19
输出整改后的第二轮报告,至少包含:
1. 哪些 blocker 被修掉
2. 哪些 blocker 仍存在
3. 哪些样本进入候选验证名单
4. 哪些样本仍需 fail-closed
### Deliverables
1. 第二轮 `G2` 真实样本生成结果
2. 第二轮 `G2` 整改回归报告
3. 更新后的候选验证名单
### Acceptance Criteria
1. `台区线损大数据-月_周累计线损率统计分析` 至少进入候选验证名单
2. 三份样本不再统一坍缩成 `paginated_enrichment`
3. readiness 与真实业务闭合程度基本一致
## File-Level Targets
本计划执行时,至少会触达以下类型资产:
1. `src/generated_scene/` 下的 analyzer / generator / readiness 相关实现
2. `tests/fixtures/generated_scene/` 下的 `G2` fixture 或 canonical 资产
3. `tests/` 下与 scene generator / canonical / readiness 相关的回归测试
4. `docs/superpowers/reports/` 下的第二轮整改报告
## Completion Criteria
本计划完成的标志是:
1. `G2` 主样本达到候选验证门槛
2. `G2` 家族 blocker 从“稳定复现”转为“部分修复且可解释”
3. 后续是否切换到 `G1/G3`,可以建立在整改后二轮报告上,而不是继续依赖第一轮失败画像