1.3 KiB
1.3 KiB
M16-GAP-00181 Status
status: done task: anim.keyframe_delete operator LOCAL_EXACT slice updated: 2026-08-22 America/New_York
scope:
- The minimal fixture contains one selected object with a custom
delete_targetproperty and an Action keyed at frames 1, 3, and 5. A dedicated active Keying Set targets that property. A real foregroundVIEW_3Dcontext invokesANIM_OT_keyframe_delete(type=WebGapAnimKeyframeDeleteSet)(poll=true,FINISHED) at frame 3, deleting only the current keyframe and preserving the two surrounding keys.
evidence:
- Desktop evidence records the selected/active object and active Keying Set before deletion, then the Action changing from
[1, 3, 5]to[1, 5]; the custom property remains at 3.0. Save/reopen is exact. - WASM/Main reads the same fixture Action as one
[\"delete_target\"][0]channel with three keyframes before the operation fixture and two 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 comparator, idempotent rerun, 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-00182