[codex] Support inherited keyframes and clarify mixer controller naming - #142
Conversation
ad63126 to
ebdf44d
Compare
|
Coordinator queue packet: Status checked this run:
Coordinator classification: |
|
Gate Verdict: needs changes Findings:
Fix Plan:
Checks Run:
|
|
Architecture/release-boundary gate re-run against ebdf44d. Classification: needs-review/follow-up. Confirmed the existing runtime blockers in #142 (comment):
No additional architecture/release-boundary blockers found. PR is non-draft, MERGEABLE/CLEAN, Build/Typecheck/Test are green, and reviewThreads is empty. |
|
Addressed the two architecture-gate findings in
Verification:
No public API/docs or |
|
Gate Verdict: pass Findings: none. Fix Plan:
Checks Run:
|
|
Gate Verdict: pass Findings: none blocking. Implementation notes:
Checks Run:
|
Summary
inherit: true, treating the first point as a live-value anchor instead of an authored reset.BakedAnimationControllertoAnimationController, updates Loom3 internals/tests/docs to stop implying procedural snippets are baked animations, and keeps deprecated aliases for deep-import compatibility.AnimationMixerownership instead of implying a parallel Loom3 animation runtime.Re-evaluation Notes
Latest
origin/mainnow includes the camera helper exports LoomLarge imports from published@lovelace_lol/loom3@1.0.47; this branch was rebased onto currentorigin/mainon May 14, 2026 so linked LoomLarge installs no longer lose those exports.CurvePoint.inheritwas still only a type/documentation hint before this PR, and the mixer path sampled first keyframes as authored absolute values. This PR keeps the existing snippet schema and adds live target readers plus inherited-source metadata so playback resolves the first keyframe against current character state.The controller rename is intentionally a naming/ownership correction, not a behavioral rewrite: Loom3 still uses Three.js
AnimationMixerfor playback. The oldBakedAnimationControllerandBakedAnimationHostnames remain as deprecated aliases to avoid breaking consumers that deep-imported them.Linked Work
Validation
npm run typechecknpm test -- --run src/engines/three/AnimationThree.inheritedKeyframes.test.ts src/engines/three/AnimationThree.playbackState.test.ts src/engines/three/bakedClipPartitioning.test.tsnpm test -- --runnpm run buildgit diff --check