render: extract M2 build queue

This commit is contained in:
2026-07-18 02:23:40 +04:00
parent 3ee9e77422
commit 4a8338f2f0
13 changed files with 882 additions and 68 deletions
+15 -2
View File
@@ -55,7 +55,8 @@ Runtime и Editor используют facade; planner/scheduler тестиру
`M03-RND-M2-ANIMATED-SCENE-FINALIZER-001`,
`M03-RND-M2-ANIMATION-PLAYBACK-001`,
`M03-RND-M2-ANIMATED-INSTANCE-MATERIALIZER-001`,
`M03-RND-M2-STATIC-BATCH-MATERIALIZER-001`
`M03-RND-M2-STATIC-BATCH-MATERIALIZER-001`,
`M03-RND-M2-BUILD-QUEUE-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
@@ -240,6 +241,13 @@ Runtime и Editor используют facade; planner/scheduler тестиру
Post-merge static materializer (`1.327ms`), build planner, Mesh cache, animated
materializer, shutdown, facade, internal-access `30`, checkpoint dry-run `7/7`,
documentation and coordination gates remained green.
M2 build queue passed `cases=13 iterations=100 elapsed_ms=66.247` with invalid
enqueue guards, exact root/group references, insertion-order key snapshots,
FIFO rotation, duplicate replacement, stale-key cleanup, atomic cursor adoption,
detached diagnostics and engine-lifetime/source boundaries. All 52 autonomous
headless regressions and checkpoint dry-run `7/7` passed; the proprietary ADT
probe remained unavailable. Internal-access inventory remains `30`; resource
readiness, permits, materializer dispatch and root destruction remain loader-owned.
M02 terrain-query regression
remained green (13 pre-existing expired M00 claim warnings).
- Fidelity comparison: all 16 historical operation limits and drain sites were
@@ -268,6 +276,9 @@ Runtime и Editor используют facade; planner/scheduler тестиру
origin subtraction and the `0.0001` scale clamp.
M2 build batching retains animated/static limit selection, minimum-one clamp,
remaining-transform cap and the exact offset/group-completion cursor rules.
Pending M2 builds retain keyed latest-job replacement, duplicate/stale FIFO
entries, one-key rotation, strong root/group references and exact group/offset/
serial progression; releasing queue records still never frees scene nodes.
WMO cache-key normalization, positive MODF identity with tile/index fallback
and world position/Euler/unclamped-scale transforms are unchanged across
lightweight render, cached-scene and live-prototype paths.
@@ -382,6 +393,7 @@ Runtime и Editor используют facade; planner/scheduler тестиру
M2 animation playback controller and loader native/imported playback adapters,
M2 animated instance materializer and loader log/Editor-owner adapter,
M2 static batch materializer and loader readiness/cursor/Editor-owner adapter,
typed M2 build job/queue and loader enqueue/drain/progress/cancel/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
@@ -404,7 +416,8 @@ Runtime и Editor используют facade; planner/scheduler тестиру
main-thread work; asset-backed traversal/visual/leak/p95/p99 evidence is pending;
static MultiMesh materialization is also separated but remains synchronous;
headless timing does not measure transform upload GPU cost and spatial-cell
batching still needs culling/performance evidence;
batching still needs culling/performance evidence; typed M2 pending state is
separated, while resource readiness/dispatch and root cleanup remain in loader;
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;