docs(M03): accept M2 runtime mesh finalizer

Work-Package: M03-RND-M2-RUNTIME-MESH-FINALIZER-001
Agent: sindo-main-codex
Tests: post-merge finalizer, classifier, extractor, cache, pipeline, materials, shutdown, facade, internal-access, manifest, documentation and coordination gates pass
Fidelity: preserves refresh version 2 and rebuild/fallback transitions; asset-backed visual parity remains unclaimed
This commit is contained in:
2026-07-17 15:03:48 +04:00
parent 1fafddecb6
commit 1d94eace68
2 changed files with 32 additions and 8 deletions
@@ -78,9 +78,9 @@ Mesh finalizer while retaining raw-file I/O in the loader.
## Status
- State: ready
- State: accepted
- Done: finalizer, loader/test adapters, transition/rebuild verifier and required documentation
- Next: integrator merge and post-merge smoke
- Next: further M2 raw-data I/O/prototype state extraction
- Blocked by:
## Handoff
@@ -98,3 +98,13 @@ Mesh finalizer while retaining raw-file I/O in the loader.
cache/pipeline specs, module registry, `world-renderer.md` and `RENDER.md`.
<!-- OPENWC_HANDOFF:READY:M03-RND-M2-RUNTIME-MESH-FINALIZER-001:ece7724 -->
## Integration
- Merge commit: `1fafdde`
- Post-merge results: finalizer `cases=11 iterations=100
elapsed_ms=54.349`; classifier, extractor, cache, pipeline, materials,
shutdown, facade, internal-access `34`, manifest `7/7`, documentation and
coordination gates passed.
<!-- OPENWC_INTEGRATION:ACCEPTED:M03-RND-M2-RUNTIME-MESH-FINALIZER-001:1fafdde -->
+20 -6
View File
@@ -27,7 +27,7 @@ Runtime и Editor используют facade; planner/scheduler тестиру
## Evidence
- Date: 2026-07-17
- Revision/worktree: master merges `7ece2ab`, `7e35de7`, `80cb084`, `d6e5b53`, `c69abd6`, `606770c`, `630a0c1`, `f36fabb`, `24aef13`, `2342430`, `396be5e`, `f88bf97`, `3f84717`, `d2cb52f`, `f9e5a4f`, `c06aed5`, `a878e7c`, `60603e1`, `b4955d6`, `ada0fd9`, `f470775`, `874fd0f`, `38f831e`, `83b3618`, `3094561`, `fa85985`;
- Revision/worktree: master merges `7ece2ab`, `7e35de7`, `80cb084`, `d6e5b53`, `c69abd6`, `606770c`, `630a0c1`, `f36fabb`, `24aef13`, `2342430`, `396be5e`, `f88bf97`, `3f84717`, `d2cb52f`, `f9e5a4f`, `c06aed5`, `a878e7c`, `60603e1`, `b4955d6`, `ada0fd9`, `f470775`, `874fd0f`, `38f831e`, `83b3618`, `3094561`, `fa85985`, `1fafdde`;
packages `M03-RND-SCHEDULER-001`, `M03-RND-INTERNAL-ACCESS-GATE-001`,
`M03-RND-FACADE-GROUND-QUERY-001`, `M03-RND-FACADE-ENVIRONMENT-001`,
`M03-RND-FACADE-ENTITY-001`, `M03-RND-TERRAIN-CACHE-SERVICE-001`,
@@ -47,7 +47,8 @@ Runtime и Editor используют facade; planner/scheduler тестиру
`M03-RND-M2-RUNTIME-REBUILD-CLASSIFIER-001`,
`M03-RND-M2-MESH-LOAD-PIPELINE-001`,
`M03-RND-M2-MESH-RESOURCE-CACHE-001`,
`M03-RND-M2-MESH-RESOURCE-EXTRACTOR-001`
`M03-RND-M2-MESH-RESOURCE-EXTRACTOR-001`,
`M03-RND-M2-RUNTIME-MESH-FINALIZER-001`
- Commands: dedicated scheduler/planner/facade/focus/coordinate/manifest/shutdown
headless verifiers; Godot cold editor parse; coordination, documentation and diff gates.
- Results: scheduler `cases=6 iterations=20000 elapsed_ms=10.216`; planner
@@ -160,6 +161,14 @@ Runtime и Editor используют facade; planner/scheduler тестиру
(`38.172ms`), cache, pipeline, classifier, materials, shutdown, facade,
internal-access `34`, `7/7` manifest, documentation and coordination gates
remained green.
M2 runtime mesh finalizer passed `cases=11 iterations=100
elapsed_ms=53.719` with current/stale raw-data gating, empty/ordinary marking,
synthetic triangle billboard rebuild, failed-rebuild fallback, version `2`
metadata and classifier-clear contracts. Thirty-seven renderer/coordinate
regressions and checkpoint dry-run `7/7` passed. Post-merge finalizer
(`54.349ms`), classifier, extractor, cache, pipeline, materials, shutdown,
facade, internal-access `34`, `7/7` manifest, documentation and coordination
gates remained green.
M02 terrain-query regression
remained green (13 pre-existing expired M00 claim warnings).
- Fidelity comparison: all 16 historical operation limits and drain sites were
@@ -232,12 +241,16 @@ Runtime и Editor используют facade; planner/scheduler тестиру
path selection, I/O, permits, shared missing state and adoption remain loader-owned.
Prepared static M2 Mesh lookups retain exact Resource identity, same-path
replacement and map-refresh lifetime; the only clear remains final shutdown
after asynchronous drain. Shared missing/prototype/animated caches,
refresh/rebuild and materialization remain loader-owned.
after asynchronous drain. Shared missing/prototype/animated caches and
materialization remain loader-owned.
Direct Mesh Resources, temporary PackedScene instances and prototype/rebuild
subtrees retain the same depth-first first-Mesh rule. PackedScene still
instantiates once and frees its temporary root synchronously before return;
the extractor retains no state or Resource reference.
Runtime material refresh remains version `2`; current Meshes skip raw loading,
empty/ordinary data marks and reuses the original, billboard/UV-rotation data
attempts the same M2Builder rebuild, and failure marks/reuses the original.
Raw FileAccess/ClassDB M2Loader I/O remains loader-owned.
No new build-12340 parity claim is made; asset-backed visual/p95/p99 comparison remains pending.
- Changed files: scene-free scheduler and verifier; streamer budget composition/
permit delegation; scheduler module spec; world renderer/module registry/RENDER notes;
@@ -266,6 +279,7 @@ Runtime и Editor используют facade; planner/scheduler тестиру
M2 mesh load pipeline state and loader request/poll/finalize/metric/clear adapters,
prepared M2 Mesh resource cache state and loader lookup/store/shutdown adapters,
stateless M2 Mesh resource extractor and three loader traversal adapters,
M2 runtime Mesh finalizer and loader raw-data/finalize/clear adapters,
expanded facade/internal-access/coordinate verifiers; work-package claims and this evidence.
- Remaining risks: worker concurrency and stale-result validation remain
streamer-owned; cancellation stops new permits but does not interrupt
@@ -281,8 +295,8 @@ Runtime и Editor используют facade; planner/scheduler тестиру
and boundary traversal p95/p99 remain pending; path grouping is not yet
culling-driven spatial-cell grouping; M2 rebuild classification and static
request/finalize bookkeeping, prepared Mesh cache ownership and first-Mesh
traversal are separated, but ResourceLoader I/O, shared missing state, Mesh
preparation and finalization remain in the loader; raw
traversal plus refresh/rebuild/fallback are separated, but ResourceLoader/raw
M2 I/O, shared missing state and Mesh adoption remain in the loader; raw
WMO ResourceLoader/FileAccess I/O, live fallback and group materialization
remain in the loader;
asset-backed WMO placement/portal/material/leak/p95/p99 evidence remains pending;