Files
claw/docs/superpowers/specs/2026-04-20-sweep-030-deterministic-keyword-alias-normalization-design.md

3.2 KiB

Sweep-030 Deterministic Keyword / Alias Normalization Design

Intent

Provide a bounded fix so sweep-030-scene can be deterministically matched from the service console input form used in the inner-network environment, without changing sgClaw runtime, callback-host behavior, or resolver logic.

This design only targets the deterministic manifest surface of:

  • examples/scene_skill_102_final_materialization_2026-04-19/skills/sweep-030-scene/scene.toml

Problem

The current sweep-030-scene deterministic manifest only exposes one include_keywords entry:

  • 台区线损大数据-月_周累计线损率统计分析

But the real operator input uses a more natural phrase:

  • 兰州公司 台区线损大数据 月累计线损率统计分析。。。

Current deterministic dispatch requires instruction.contains(keyword). Because the manifest keyword is too narrow and punctuation-sensitive, include_hits = 0, and dispatch returns the unsupported-scene prompt before the skill is selected.

Scope

In Scope

  • Update deterministic keyword / alias coverage for sweep-030-scene
  • Preserve current suffix 。。。
  • Preserve current param declarations (org, period)
  • Publish a route-local verification asset and report

Out Of Scope

  • Any change to src/compat/scene_platform/dispatch.rs
  • Any change to resolver implementation
  • Any change to callback-host, browser runtime, or helper-page lifecycle
  • Any change to bootstrap.target_url
  • Any change to official board or final materialization status
  • Any broader G2 family normalization outside sweep-030-scene

Design

Normalize sweep-030-scene deterministic aliases so the scene can be matched by the natural phrases already used in inner-network testing.

The deterministic alias set should cover at least:

  • 台区线损大数据-月_周累计线损率统计分析
  • 台区线损大数据 月累计线损率统计分析
  • 台区线损大数据 周累计线损率统计分析
  • 台区线损大数据 月累计
  • 台区线损大数据 周累计
  • 台区线损率统计分析

The alias set should remain specific enough not to collide with unrelated G2 scenes.

Expected Result

This fix should let the following type of input clear deterministic dispatch:

  • 兰州公司 台区线损大数据 月累计线损率统计分析 2026-03。。。

This design does not claim to fix helper bootstrap or callback-host startup. It only ensures that sweep-030-scene is selected first, so the next layer can be tested correctly.

Allowed Files

  • examples/scene_skill_102_final_materialization_2026-04-19/skills/sweep-030-scene/scene.toml
  • tests/fixtures/generated_scene/sweep_030_deterministic_keyword_alias_normalization_2026-04-20.json
  • docs/superpowers/reports/2026-04-20-sweep-030-deterministic-keyword-alias-normalization-report.md

Forbidden Files

  • src/compat/scene_platform/dispatch.rs
  • src/browser/callback_host.rs
  • src/service/server.rs
  • src/generated_scene/*
  • resources/rules.json

Stop Rule

Stop after:

  1. sweep-030-scene deterministic aliases are normalized
  2. A route-local verification record is written
  3. A report is published

Do not proceed into helper-page / requesturl debugging within this plan.