# M16-GAP-00233 Status status: done task: armature.copy_bone_color_to_selected operator LOCAL_EXACT slice updated: 2026-08-22 America/New_York scope: - The minimal fixture contains one armature with three bones. The active source bone uses a custom palette; one selected destination starts with a different theme palette and one unselected destination remains untouched. - Desktop runs `ARMATURE_OT_copy_bone_color_to_selected` in edit mode with `bone_type=EDIT`, `poll=true`, and `FINISHED`, copying palette and custom normal/select/active colors only to selected bones while preserving selection and active bone through save/reopen. - Main now exposes each armature bone's palette index and custom color bytes (`normal`, `select`, `active`, `flag`) alongside its existing selection and transform data. No other data-block, editor, or browser behavior was added. evidence: - The generator, desktop checker, production web-engine build, npm comparator, direct comparator, and task-context checks passed. Repeated checker runs recognize the already-copied state and remain idempotent. - WASM/Main observes exact source/selected color parity, retains the unselected theme color, preserves the armature through save/reopen, and rejects malformed Blend input without Main mutation. - Chromium-only policy was preserved; no Firefox/WebKit run was made. nextTask: `M16-GAP-00234`