The commands list was stored as a shallow copy, meaning the individual command dicts were shared references with the CommandBuilder widget. When the dialog closed, these shared objects could be affected. Fix: Use copy.deepcopy() when storing commands in add_macro() and update_macro() to ensure the macro manager has its own independent copy of all command data. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
11 KiB
11 KiB