maziggy
b8b5aaa977
feat(api-keys): can_manage_maintenance scope for HA-style automations ( #1832 follow-up)
...
Carve MAINTENANCE_CREATE/UPDATE/DELETE out of the admin denylist so
HA automations can log "cleaned nozzle" / reset a counter via API key
without granting broader printer control. Follows the same shape as
can_manage_library and can_manage_inventory: new column, allowlist
entry, UI checkbox, wiki row, RBAC test coverage.
Distinct backfill: these perms were EXPLICITLY denied for every API
key before this change (no existing integration relies on them), so
existing rows migrate to FALSE — no silent scope widening on upgrade.
New keys default to TRUE, matching the safe-on-by-default pattern.
Bundled SpoolBuddy kiosk key gets False explicitly (kiosk doesn't need it).
2026-07-07 10:58:09 +02:00
..
2026-05-02 08:10:47 +02:00
2026-05-17 10:54:28 +02:00
2026-06-14 10:52:41 +02:00
2026-06-25 15:19:28 +02:00
2026-07-01 09:21:09 +02:00
2026-06-26 12:31:48 +02:00
2026-06-26 16:01:28 +02:00
2026-06-11 14:49:52 +02:00
2026-05-15 15:43:37 +02:00
2026-06-02 10:02:17 +02:00
2026-05-06 14:23:39 +02:00
2026-05-17 15:30:05 +02:00
2026-06-06 10:17:09 +02:00
2026-06-23 11:34:15 +02:00
2026-06-08 09:30:16 +02:00
2026-06-25 09:57:15 +02:00
2026-05-19 13:14:03 +02:00
2026-05-12 16:12:58 +02:00
2026-05-15 12:15:39 +02:00
2026-06-27 09:47:35 +02:00
2026-06-29 08:23:29 +02:00
2026-06-22 12:27:58 +02:00
2026-05-11 13:30:27 +02:00
2026-06-25 14:54:27 +02:00
2026-06-17 11:33:23 +02:00
2026-06-02 14:58:10 +02:00
2026-06-19 08:05:20 +02:00
2026-06-02 10:23:21 +02:00
2026-05-15 08:57:03 +02:00
2026-05-15 08:50:37 +02:00
2026-05-15 08:50:37 +02:00
2026-05-13 13:23:21 +02:00
2026-06-26 13:06:40 +02:00
2026-05-11 13:30:27 +02:00
2026-06-28 11:18:18 +02:00
2026-05-01 08:13:52 +02:00
2026-06-28 13:52:05 +02:00
2026-06-29 10:59:29 +02:00
2026-06-02 13:35:06 +02:00
2026-06-09 13:32:15 +02:00
2026-06-28 11:18:18 +02:00
2026-05-23 12:28:58 +02:00
2026-05-30 13:49:09 +02:00
2026-06-16 12:00:27 +02:00
2026-05-08 14:28:41 +02:00
2026-06-08 10:39:21 +02:00
2026-05-15 13:12:41 +02:00
2026-06-21 11:55:37 +02:00
2026-06-27 13:56:18 +02:00
2026-06-20 15:50:58 +02:00
2026-06-22 10:14:31 +02:00
2026-06-05 09:22:05 +02:00
2026-05-08 11:52:42 +02:00
2026-05-26 10:36:37 +02:00
2026-05-08 11:52:42 +02:00
2026-05-21 09:33:47 +02:00
2026-05-08 11:52:42 +02:00
2026-06-17 11:33:23 +02:00
2026-06-23 11:34:15 +02:00
2026-06-17 11:33:23 +02:00
2026-06-17 11:33:23 +02:00
2026-05-21 09:15:10 +02:00
2026-05-20 11:00:54 +02:00
2026-05-20 11:16:56 +02:00
2026-05-05 14:35:08 +02:00
2026-05-22 16:31:16 +02:00
2026-06-22 14:23:30 +02:00
2026-06-21 10:25:57 +02:00
2026-05-13 13:23:21 +02:00
2026-06-12 13:27:17 +02:00
2026-06-19 11:29:07 +02:00
2026-06-02 12:57:51 +02:00
2026-05-18 09:38:53 +02:00