Files
claw/docs/superpowers/reports/2026-04-21-generated-scene-invocation-alias-generation-hardening-report.md

2.0 KiB

Generated Scene Invocation Alias Generation Hardening Report

Date: 2026-04-21

Parent plan:

  • docs/superpowers/plans/2026-04-20-generated-scene-invocation-alias-generation-hardening-plan.md

Scope

This route implemented the first reusable alias-generation slice for generated scene deterministic manifests.

It did not change runtime dispatch scoring, service-console behavior, final materialized skill files, board assets, or full rematerialization output.

Implementation

Changed files:

  • src/generated_scene/generator.rs
  • tests/scene_generator_test.rs

The generator now builds deterministic include_keywords from:

  • the canonical scene name
  • existing page-title keywords
  • punctuation/connector-normalized scene names
  • month/week split aliases for names containing combined 月_周累计 style wording
  • compact line-loss aliases such as 台区线损 and 线损大数据

This turns the sweep-030-scene debugging lesson into a reusable generation rule instead of a hand-edited scene.toml patch.

Anchor Result

For sweep-030-scene, route-local generation now emits aliases matching real operator wording, including:

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

These aliases are generated from the scene name semantics rather than being patched directly into the final materialized skill.

Verification

Passed:

cargo test --test scene_generator_test generator_writes_real_sweep_030_org_dictionary_from_embedded_source -- --nocapture
cargo test --test scene_generator_modes_test -- --nocapture

Known existing warnings were not addressed by this route:

  • callback/openxml/generated_scene dead_code
  • scene_generator_test.rs unreachable_code

Stop Statement

The route stops after the first reusable alias-generation slice.

It does not claim full closure of every alias gap in the 84-scene ledger bucket. The next planned step is rematerialization refresh, followed by validation refresh.