# M16-GAP-00218 Status status: done task: armature.bone_primitive_add operator LOCAL_EXACT slice updated: 2026-08-22 America/New_York scope: - The minimal fixture contains one empty armature object and a fixed 3D cursor at `(1.5, -2.0, 0.75)`. - Desktop runs `ARMATURE_OT_bone_primitive_add(name, length=2.5, align='UP', space='OBJECT', use_deform=false)` with `poll=true` and `FINISHED`, creating the named bone at the cursor and preserving its head/tail through save/reopen. - The existing Main reader exposes the same armature bone name and coordinates; no new reader field, data-block, editor, or browser behavior was added. evidence: - The generator, desktop checker, npm comparator, direct comparator, and task-context checks passed. Repeated checker runs recognize the persisted bone and remain idempotent. - WASM/Main observes the same cursor-created bone, preserves it across save/reopen, and rejects malformed Blend input without Main mutation. - Chromium-only policy was preserved; no Firefox/WebKit run was made. nextTask: `M16-GAP-00219`