Prompt file imported from akspa0/parp-tools (
.codex/prompts/wow-viewer-m2-runtime/02-section-classification-and-material-routing.md). Copyright stays with the author.
Implement or plan the M2 runtime slice that turns active skin-profile state into a real section/material ownership seam in wow-viewer.
Read First
gillijimproject_refactor/memory-bank/activeContext.mdgillijimproject_refactor/memory-bank/progress.mdwow-viewer/docs/architecture/m2-native-client-research-2026-03-31.mdgillijimproject_refactor/plans/wow_viewer_m2_runtime_plan_2026-03-31.mdgillijimproject_refactor/src/MdxViewer/Rendering/WarcraftNetM2Adapter.csgillijimproject_refactor/src/MdxViewer/Rendering/ModelRenderer.cswow-viewer/README.mdAGENTS.md
Goal
Create a wow-viewer-owned active section contract that preserves the native structural seams instead of flattening everything into generic geosets or loose material layers.
Current Concrete Problem
- a first pass of structured section/pass/material routing is already landed in
wow-viewer, so this is no longer the default next slice - native
.skininitialization copies/remaps section records into active runtime state - unresolved native section flags such as
0x20and propagated0x40still matter even though their final semantics are not closed - the current compatibility path still tends to blend together section ownership, material routing, and renderer behavior too early
Non-Negotiable Constraints
- Do not erase unresolved native flags just because their names are not closed yet.
- Do not collapse every section/batch into one generic renderable geoset model.
- Keep raw/native terminology distinct from local aliases or guesses.
- Do not claim final shader/effect parity from section-contract work alone.
- Keep this slice narrower than full animation or scene-submission ownership.
- Do not use this prompt as the default next chat when the real remaining work is animated runtime application or consumer cutover.
What The Work Must Produce
- the exact active-section and material-routing contracts to add in wow-viewer
- the exact files that should own section remap, flag preservation, and material/effect recipe metadata
- the real-asset proof that the section contract is not synthetic
- the explicit unresolved items that must stay labeled research
- the follow-on hook for slice 03 animation/lighting/effect state
Deliverables
Return all items:
- the exact section/material seam to implement
- why it is the correct second slice
- exact files to change
- exact validation to run
- what should stay out of scope
- which continuity files must be updated afterward
First Output
Start with:
- the active section/material boundary you are assuming now
- the single first section-routing seam you would land
- the narrowest proof that would make that seam real
- what you are explicitly not claiming yet
