Add the Regular dinners settings screen
/settings/regulars lists the household's Regulars with photo, name,
"method · minutes", the favorite heart and a grounding badge ("Finding
recipe…", "Recipe found", "Needs a recipe"). The add field takes a name
or a pasted recipe link. Tapping a Regular opens an edit sheet (rename,
method, minutes, difficulty, remove with confirmation); a Regular that
needs a recipe opens "Fix recipe": pick one of up to three candidates,
paste a link, or type the ingredients and steps in. The list is read
again every 3 seconds while any Regular is still finding its recipe.
The dinners client now parses the full dinner and adds edit, favorite,
ground and recipe-candidate calls; onboarding shares its refusal
tracking through useRefusals.
Maestro task: fa8f88ae-5ade-430e-a069-274aec112f26
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -500,6 +500,19 @@ wires Web Push, "Turn on notifications" asks for nothing. Offline on the saved p
|
||||
settings cannot be read (the service worker never caches `/api/v1/settings`),
|
||||
so the saved pages open as they are.
|
||||
|
||||
Regular dinners (`/settings/regulars`) lists the Regulars from
|
||||
`GET /api/v1/dinners?status=regular`, each with its photo, "method ·
|
||||
minutes", favorite heart and grounding badge ("Finding recipe…" while
|
||||
`pending`, "Recipe found" when `grounded` or `manual`, "Needs a recipe" when
|
||||
`failed`). The add field takes a name or a pasted `https://` recipe link.
|
||||
Tapping a Regular opens an edit sheet (name, method, minutes, difficulty;
|
||||
remove archives it after a confirmation); tapping one that needs a recipe
|
||||
opens "Fix recipe" (pick one of the recipe candidates, paste a link or type
|
||||
the ingredients and steps in). Adds, removals and the heart show at once and
|
||||
are undone if the server refuses them. While any Regular is `pending`, the
|
||||
list is read again every 3 seconds (not while a change is in flight), and
|
||||
polling stops once none is.
|
||||
|
||||
## Boundaries and gotchas
|
||||
|
||||
- **Secrets never reach the client** — API keys, OAuth tokens and the Chat
|
||||
|
||||
Reference in New Issue
Block a user