Jacob Magar
d76bfb889d
fix: add confirm guard for update_ssh, fix avatar dropped without username/email
...
- info.py: add DESTRUCTIVE_ACTIONS set with update_ssh, add confirm param to
unraid_info signature, add destructive guard before mutation handlers
- settings.py: build user_info dict unconditionally so avatar is included
even when username/email are absent; only attach userInfo when non-empty
Resolves review threads PRRT_kwDOO6Hdxs50FgO0 PRRT_kwDOO6Hdxs50FgPC
2026-03-13 10:33:56 -04:00
Jacob Magar
9aee3a2448
feat: add 28 GraphQL mutations across storage, info, docker, and new settings tool
...
- storage: flash_backup mutation (initiates rclone flash backup, destructive)
- info: update_server and update_ssh mutations
- docker: 11 organizer mutations (create_folder, set_folder_children,
delete_entries, move_to_folder, move_to_position, rename_folder,
create_folder_with_items, update_view_prefs, sync_templates,
reset_template_mappings, refresh_digests); delete_entries and
reset_template_mappings added to DESTRUCTIVE_ACTIONS
- settings: new unraid_settings tool with 9 mutations (update,
update_temperature, update_time, configure_ups, update_api,
connect_sign_in, connect_sign_out, setup_remote_access,
enable_dynamic_remote_access); registered in server.py
- tests: 82 new tests (28 settings, 23 docker organizer, 7 info, 6 storage
+ 18 existing fixes for notification regex and safety audit list)
- bump version 0.3.0 → 0.4.0 (11 tools, ~104 actions)
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com >
2026-03-13 03:03:37 -04:00