docs(sdd): add delta specs for the functional redesign

This commit is contained in:
2026-07-28 18:06:46 +02:00
parent f58cf8739f
commit 433373ad7f
9 changed files with 729 additions and 0 deletions
@@ -0,0 +1,75 @@
# Favorites Organization Specification
## Purpose
Chip-filtered flat list replacing stacked per-group panels, drag-to-reorder,
the sort action, and group management surfaced from Favoritos. Traceable to
WU4.
## Requirements
### Requirement: Chip-Filtered Flat List
Favoritos MUST render horizontally-scrollable group filter chips (e.g.
"Todas · N", one per favorite group) and a single flat list of favorite
stations filtered by the active chip, replacing the current stacked
per-group panel layout.
#### Scenario: Selecting a group chip filters the list
- GIVEN 2 or more favorite groups exist, each with members
- WHEN the user selects a specific group's chip
- THEN the flat list shows only that group's member stations
#### Scenario: "Todas" chip shows every favorite
- GIVEN the user has favorites across multiple groups
- WHEN the "Todas" chip is active
- THEN the flat list shows every favorite station regardless of group
### Requirement: Drag-to-Reorder Within the Active Filter
The user MUST be able to reorder favorite stations within the currently
active filter via a drag handle. The new order MUST persist across app
restarts.
#### Scenario: Reordering persists
- GIVEN a filtered list of 3+ favorites
- WHEN the user drags the 3rd item to the 1st position
- THEN the list reflects the new order immediately
- AND reopening the app shows the same order
### Requirement: Sort Action Using Existing Criteria
Favoritos MUST expose a sort action (`swap_vert`) using the existing
`OrdenEmisoras` criteria (name, quality). It MUST NOT introduce a sort
criterion with no backing implementation.
#### Scenario: Sort by name reorders alphabetically
- GIVEN the active filter shows 3+ favorites in a non-alphabetical order
- WHEN the user triggers sort-by-name
- THEN the list re-renders in alphabetical order
### Requirement: Group Management Reachable from Favoritos
Creating and managing favorite groups MUST be reachable directly from the
Favoritos screen, in addition to its existing entry point in Settings.
#### Scenario: Creating a group from Favoritos
- GIVEN the user is on the Favoritos screen
- WHEN they tap the create-group action
- THEN the group-creation flow opens and a newly created group appears as a new filter chip
### Requirement: Custom-Station CTA Preserved
The dashed "Añadir emisora personalizada" call-to-action MUST remain
reachable from Favoritos.
#### Scenario: Custom station CTA opens the add flow
- GIVEN the user is on Favoritos, any filter active
- WHEN they tap "Añadir emisora personalizada"
- THEN the custom-station add flow opens