53 lines
2.2 KiB
Markdown
53 lines
2.2 KiB
Markdown
# Generated Scene Embedded Dictionary Extraction Hardening Report
|
|
|
|
## Scope
|
|
|
|
Executed the first reusable slice defined by `2026-04-20-generated-scene-embedded-dictionary-extraction-hardening-plan.md`.
|
|
|
|
Bounded scope:
|
|
|
|
- source-side dictionary evidence extraction for `multi_mode_request`-like scenes
|
|
- anchor validation on `sweep-030-scene`
|
|
- generator-side `org-dictionary.json` emission from extracted evidence
|
|
|
|
Out of scope:
|
|
|
|
- runtime resolver changes
|
|
- materialized skill refresh under `examples/`
|
|
- 102-scene rematerialization
|
|
- validation refresh
|
|
|
|
## Outcome
|
|
|
|
This route now supports source-driven org dictionary extraction from embedded dictionary files such as `city.js`, `dict.js`, `enum.js`, and option-like files.
|
|
|
|
The first reusable slice is closed for the route anchor:
|
|
|
|
- `extract_deterministic_scene_facts(...)` now carries `org_dictionary_entries`
|
|
- `generate_scene_package(...)` writes `references/org-dictionary.json` from source-derived entries when evidence exists
|
|
- real `sweep-030-scene` source evidence produces company-level codes including `62401` and `62408`
|
|
- synthetic fixture coverage remains bounded: when no source dictionary evidence exists, generated `org-dictionary.json` remains `[]`
|
|
|
|
## Files Changed
|
|
|
|
- `src/generated_scene/analyzer.rs`
|
|
- `src/generated_scene/generator.rs`
|
|
- `tests/scene_generator_test.rs`
|
|
|
|
## Verification
|
|
|
|
Passed:
|
|
|
|
```powershell
|
|
cargo test --test scene_generator_test analyzer_extracts_embedded_org_dictionary_from_sweep_030_source -- --nocapture
|
|
cargo test --test scene_generator_test generator_writes_real_sweep_030_org_dictionary_from_embedded_source -- --nocapture
|
|
cargo test --test scene_generator_test generator_writes_multi_mode_package_from_deterministic_analysis -- --nocapture
|
|
```
|
|
|
|
## Route-Local Notes
|
|
|
|
- The source-driven slice is intentionally bounded to extraction and generation.
|
|
- The route does not yet preserve the full original organization tree structure.
|
|
- Alias normalization remains conservative; broader alias-generation is reserved for the dedicated alias route.
|
|
- Existing repository warnings remain unchanged, including `dead_code` warnings in callback-host/openxml code and an existing `unreachable_code` warning in `tests/scene_generator_test.rs`.
|