Important
Decision Surface Problem: Users need to create custom tiers, rename them, reorder them, delete them, and add directory rules beyond the defaults.
Approach: Add tier CRUD operations to the Permissions tab: "Create tier" button, inline rename, drag-to-reorder, delete (with confirmation), and "Add rule" for new directory glob patterns.
Scope: Tier lifecycle management + directory rule CRUD. Requires the Permissions tab (slice #7 ).
Acceptance Criteria Key Decisions # Decision Rationale 1 Models from deleted tiers go to Unassigned (not deleted) Never silently lose model assignments — safe default 2 Path input with workspace autocomplete Helps users pick real directories without typing full globs from memory 3 Inline rename (not a modal) Faster, matches modern settings UX
Testing Decisions Test create tier → appears in UI + config Test rename tier → label updates in UI + config Test delete tier → models moved to Unassigned, tier removed from config Test Unassigned cannot be renamed/deleted (buttons disabled) Test add directory rule → new row appears with ask defaults Test remove directory rule → row removed from config Test invalid glob pattern → input shows error, rule not saved Test reorder persists to config Extends Provider permissions: UI — Permissions tab with tier cards #170 test surface Constraints & Invariants Tier ID is generated at creation time (slug of the label) and never changes — rename only changes label, not ID Deletion confirmation must name the models that will be reassigned Source Part of #163
Blocked by #170
Important
Decision Surface
Problem: Users need to create custom tiers, rename them, reorder them, delete them, and add directory rules beyond the defaults.
Approach: Add tier CRUD operations to the Permissions tab: "Create tier" button, inline rename, drag-to-reorder, delete (with confirmation), and "Add rule" for new directory glob patterns.
Scope: Tier lifecycle management + directory rule CRUD. Requires the Permissions tab (slice #7).
Acceptance Criteria
Key Decisions
Testing Decisions
Constraints & Invariants
Source
Part of #163
Blocked by #170