Files
open-wc/coordination/claims/M03-RND-M2-ANIMATION-RESOURCE-FINALIZER-001.md
T

3.6 KiB

M03-RND-M2-ANIMATION-RESOURCE-FINALIZER-001

Owner

  • Agent ID: sindo-main-codex
  • Target: M03 Renderer Facade and Safe Extraction
  • Branch: work/sindo-main-codex/m03-m2-animation-resource-finalizer
  • Worktree: C:\Users\sindo\open-wc-worktrees\m03-m2-animation-resource-finalizer

Outcome

Move cached animated M2 ResourceLoader status polling, terminal Resource load, candidate finalization, prototype/static-only adoption and success diagnostics from the loader into a dedicated two-phase finalization service.

Non-goals

  • Change cached animation eligibility, request admission or native-first order.
  • Move material-prototype lookup, permit ownership, playback or materialization.
  • Change ResourceLoader status order, cache formats, profiles or visible output.
  • Generalize static and animated ResourceLoader paths behind callbacks/frameworks.

Paths

  • Exclusive: src/render/m2/m2_animation_resource_finalizer.gd, src/tools/verify_m2_animation_resource_finalizer.gd, docs/modules/m2-animation-resource-finalizer.md, this claim
  • Shared: loader, animation pipeline/scene finalizer/prototype cache/cached observer/world-renderer specs and verifiers, module registry, RENDER.md, M03 Evidence

Contracts and data

  • Pending request snapshots are polled in existing Dictionary insertion order.
  • Empty Resource paths are discarded and marked static-only immediately.
  • Only LOADED/FAILED statuses move into completion-order finalize FIFO.
  • One permit processes one popped terminal record, including skipped/stale records.
  • Existing prototype/static-only state suppresses terminal Resource loading.
  • LOADED Resource is instantiated before material-prototype lookup is requested.
  • Candidate repair/finalize/adoption and exact M2_ANIM_CACHE debug fields remain.
  • Rejected candidates are released by the existing animated scene finalizer.

Dependencies

  • Requires: accepted animation pipeline, scene finalizer, cached/native observers
  • Blocks: remaining loader-owned M2 material-prototype lookup and action execution

Verification

  • Synthetic polling/status/FIFO/skip/load/candidate/repair/adoption/log/source and timing contracts; adjacent M2/renderer gates; full headless suite and checkpoint dry-run.

Documentation deliverables

  • Inline API docs; module API/I/O/ownership; data-flow/state/sequence/dependency diagrams; adjacent renderer docs and M03 Evidence.

Status

  • State: accepted
  • Done: implementation, verification and documentation
  • Next: static M2 Resource terminal polling/finalize extraction
  • Blocked by:

Handoff

  • Commit: e7cd967
  • Results: finalizer 28 cases / 1,000 timing iterations; all 58/58 autonomous headless regressions; facade/internal-access/shutdown/manifest; documentation 45; coordination; checkpoint dry-run 7/7.
  • Remaining risks: private asset animation/visual/leak/p95/p99 evidence is absent; terminal Resource get/instantiation/repair stays synchronous; immediate prepared- candidate completion is a composition precondition; material lookup stays loader-owned.
  • Documentation updated: new finalizer API/I/O/data-flow/state/sequence/dependency/ ownership spec; pipeline, scene finalizer, cached observer, prototype cache, world renderer, module registry, RENDER.md and M03 Evidence.

Integration

  • Merge: 06f6394
  • Post-merge: finalizer, pipeline, scene finalizer, cached observer, prototype cache, snapshot, dispatch, shutdown, facade, internal-access 30, manifest 7/7, documentation 45, coordination and checkpoint dry-run 7/7 passed.