- Replace Add Policies picker with a modal table (filters + multi-select + select-all filtered) - Add has-versions filter and external id short display - Group row actions and add bulk remove for backup items - Add/adjust tests for picker and bulk remove
1.3 KiB
1.3 KiB
Plan: Policy Picker UX (015)
Branch: 015-policy-picker-ux
Date: 2026-01-02
Input: spec.md
Goal
Improve the “Add Policies” picker UX by making option labels self-describing (type/platform/external id) to reduce mistakes with duplicate policy names.
Scope
In scope
- Update the “Add Policies” action in the Backup Set items relation manager.
- Present the picker as a modal table (row selection).
- Table shows: display name, policy type (human label if available), platform, short external id.
- Filters: policy type, platform, last synced, ignored, has versions.
- “Select all” selects the current filtered results.
- Add a unit/feature test covering the label formatting.
Out of scope
- Adding filters, select-all, new pages, or additional UI flows.
Approach
- Replace the Select-based picker with a Livewire/Filament table component rendered inside the action modal.
- Add the required filters and columns.
- Implement a bulk action to add selected policies to the backup set.
- Add tests asserting the picker table bulk action works and filters are available.
- Run targeted tests and Pint.
Success Criteria
- Picker options are clearly distinguishable for policies with duplicate names.
- Tests are green.