1.2 KiB
1.2 KiB
M16-GAP-00186 Status
status: done task: anim.keyframe_insert operator LOCAL_EXACT slice updated: 2026-08-22 America/New_York
scope:
- The minimal fixture contains one selected/active object with a custom
insert_targetproperty and a named active Keying Set. Its Action starts with keys at frames 1 and 5. A foregroundVIEW_3Dcontext invokesANIM_OT_keyframe_insert()(poll=true,FINISHED) at frame 3, inserting the current key while preserving the existing keys.
evidence:
- Desktop evidence records the Action changing from
[1, 5]to[1, 3, 5]; the inserted key is the only selected key ([false, true, false]), the custom property remains at 3.0, and save/reopen is exact. - WASM/Main reads the same Action as one
[\"insert_target\"][0]channel with two keyframes before the operation fixture and three keyframes after it. WASM save/reopen is exact, and malformed Blend input is rejected without Main mutation. - Fixture generation, foreground
VIEW_3Dchecker, npm comparator, direct idempotent comparator, and artifact hashing passed. No production reader or protocol change was required because the existing generic Action/F-Curve reader exposes this custom-property channel.
nextTask: M16-GAP-00187