83 lines
2.3 KiB
Markdown
83 lines
2.3 KiB
Markdown
# Generated Scene Runtime Semantics Post-Refresh Residual Closure Report
|
|
|
|
Date: 2026-04-21
|
|
|
|
Plan:
|
|
|
|
- `docs/superpowers/plans/2026-04-21-generated-scene-runtime-semantics-post-refresh-residual-closure-plan.md`
|
|
|
|
## Scope
|
|
|
|
This closure handled only the two post-refresh residuals exposed by the 2026-04-21 validation refresh:
|
|
|
|
1. deterministic suffix regression in rematerialized `scene.toml`
|
|
2. invalid TOML generation for `sweep-078-scene`
|
|
|
|
No rematerialization refresh, validation refresh, pseudo-production execution, runtime change, service-console change, or board update was executed.
|
|
|
|
## Changes
|
|
|
|
### Deterministic suffix regression
|
|
|
|
`render_scene_toml` now emits:
|
|
|
|
```toml
|
|
suffix = "。。。"
|
|
```
|
|
|
|
instead of using the scene name as the deterministic suffix.
|
|
|
|
### TOML string escaping
|
|
|
|
`escape_toml` now escapes:
|
|
|
|
1. backslash
|
|
2. double quote
|
|
3. newline
|
|
4. carriage return
|
|
5. tab
|
|
6. remaining control characters
|
|
|
|
This prevents request mapping fields or other generated scalar strings from breaking TOML syntax when source evidence contains comments, embedded line breaks, or malformed text fragments.
|
|
|
|
## Files Changed
|
|
|
|
- `src/generated_scene/generator.rs`
|
|
- `tests/scene_generator_test.rs`
|
|
|
|
## Route-Local Asset
|
|
|
|
- `tests/fixtures/generated_scene/generated_scene_runtime_semantics_post_refresh_residual_closure_followup_2026-04-21.json`
|
|
|
|
## Validation
|
|
|
|
Passed:
|
|
|
|
```powershell
|
|
cargo test --test scene_generator_test generator_writes_real_sweep_030_org_dictionary_from_embedded_source -- --nocapture
|
|
cargo test --test scene_generator_test generator_escapes_request_mapping_fields_for_valid_toml -- --nocapture
|
|
```
|
|
|
|
The first test proves the generated `sweep-030-scene` `scene.toml` now preserves the hardened facts and emits `suffix = "。。。"`.
|
|
|
|
The second test proves the generated `sweep-078-scene` `scene.toml` parses as TOML after escaping.
|
|
|
|
## Residuals Not Closed Here
|
|
|
|
The `6` `local_doc_pipeline` rematerialization residuals were not addressed in this plan:
|
|
|
|
1. `sweep-025-scene`
|
|
2. `sweep-047-scene`
|
|
3. `sweep-050-scene`
|
|
4. `sweep-052-scene`
|
|
5. `sweep-062-scene`
|
|
6. `sweep-087-scene`
|
|
|
|
They require a separate bounded route if they remain in scope.
|
|
|
|
## Next Step
|
|
|
|
Rerun the runtime-semantics rematerialization execution plan, then rerun validation refresh against the newly generated bundle.
|
|
|
|
Do not proceed directly to pseudo-production from the previous 2026-04-21 refreshed bundle.
|