Files
claw/docs/superpowers/reports/2026-04-20-generated-scene-resolver-request-mapping-hardening-report.md

55 lines
2.2 KiB
Markdown

# Generated Scene Resolver Request Mapping Hardening Report
- Date: `2026-04-20`
- Route: `resolver_request_mapping_hardening`
- Status: `completed`
## Bounded Slice
This route implemented the first reusable request-mapping slice in the highest-signal parameterized bucket:
1. `multi_mode_request` scenes with explicit `org` / `period` params
2. request templates that expose request-field tokens such as `orgno`, `fdate`, `weekSfdate`, `weekEfdate`
3. generated scenes that previously had no explicit request-mapping metadata
## Implemented Delta
1. Added explicit request-field mapping metadata to generated-scene IR through `ModeIr.requestFieldMappings`.
2. Emitted route-local mapping metadata into generated `scene.toml` via `[[request_mappings]]`.
3. Updated generated `multi_mode_request` scripts to:
- normalize `period_payload`
- apply explicit request mappings
- stop blindly merging all raw resolver args into request bodies
4. Kept this route bounded to the first reusable slice instead of attempting 102-scene closure.
## Mapping Examples
| Source field | Target field | Mode |
| --- | --- | --- |
| `org_code` | `orgno` | `month` |
| `period_payload.fdate` | `fdate` | `month` |
| `period_payload.weekSfdate` | `weekSfdate` | `week` |
| `period_payload.weekEfdate` | `weekEfdate` | `week` |
## Verification
Passed:
1. `cargo test --test scene_generator_test generator_derives_reusable_request_field_mappings_for_real_g2_fixture -- --nocapture`
2. `cargo test --test scene_generator_test generator_writes_multi_mode_package_with_generation_report -- --nocapture`
3. `cargo test --test scene_generator_modes_test -- --nocapture`
4. `cargo test --test scene_generator_test generator_writes_multi_mode_package_from_deterministic_analysis -- --nocapture`
5. `cargo test --test scene_generator_test generator_blocks_incomplete_multi_mode_contract -- --nocapture`
## Residuals
1. This route did not touch `runtime_url_classification`, `embedded_dictionary_extraction`, `parameter_default_semantics`, or `alias_generation`.
2. Non-`multi_mode_request` request builders were not normalized in this slice.
3. No full rematerialization or validation refresh was run yet.
## Next Route
Per the fixed route sequence, the next route is:
- `runtime_url_classification_hardening`