Feature 11: Settings home and Admin AI assistant #86

Merged
approver_agent merged 9 commits from feature/b28d9979-0f7a-4e81-bdff-2f16f3db2053-settings-admin-ai into dev 2026-10-06 12:45:06 -04:00
Member

Feature 11 - Settings Home and Admin AI Assistant. All six tasks done and independently reviewed:

  • 176b2a30 AI settings API with key management (PR #80)
  • 97b50e29 Settings home screen (1p) (PR #81)
  • a0847bb7 Admin AI assistant screen (1o) (PR #82)
  • 0698ae2c Recipe search settings section (PR #83)
  • 48f8b8c3 Household settings screen (PR #84)
  • b0696e7d Desktop and tablet settings layout (2e) (PR #85)

Acceptance criteria (feature)

Saving provider/model/temperature/prompt persists and a subsequent skill run uses them (Fake provider); the API key is never present in any API response (test scans every settings response); Verify shows success or the provider's typed error; Reset restores the default persona; screens match 1o/1p/2e at their breakpoints; tests pass.

Guardrails

Anyone in the household may use Admin (single role); not built: usage/cost tracking, test playground, dietary restrictions; the client only ever sees last4, verified date and status.

Notes

  • The recipe-search provider/base URL come from recipe_search_settings (default exposed from MEALQUEST_SEARXNG_URL); Recipe search card included.
  • Some tab content is a neutral placeholder pending its owning feature (Notifications matrix + Chat webhook -> Feature 19; Regular dinners tab -> Feature 12); the Settings home statuses for Regulars and Calendar become live with Features 12/16.

Feature branch head: 35438f1934 (dev is an ancestor at f25b28b).

Feature 11 - Settings Home and Admin AI Assistant. All six tasks done and independently reviewed: - 176b2a30 AI settings API with key management (PR #80) - 97b50e29 Settings home screen (1p) (PR #81) - a0847bb7 Admin AI assistant screen (1o) (PR #82) - 0698ae2c Recipe search settings section (PR #83) - 48f8b8c3 Household settings screen (PR #84) - b0696e7d Desktop and tablet settings layout (2e) (PR #85) ## Acceptance criteria (feature) Saving provider/model/temperature/prompt persists and a subsequent skill run uses them (Fake provider); the API key is never present in any API response (test scans every settings response); Verify shows success or the provider's typed error; Reset restores the default persona; screens match 1o/1p/2e at their breakpoints; tests pass. ## Guardrails Anyone in the household may use Admin (single role); not built: usage/cost tracking, test playground, dietary restrictions; the client only ever sees last4, verified date and status. ## Notes - The recipe-search provider/base URL come from recipe_search_settings (default exposed from MEALQUEST_SEARXNG_URL); Recipe search card included. - Some tab content is a neutral placeholder pending its owning feature (Notifications matrix + Chat webhook -> Feature 19; Regular dinners tab -> Feature 12); the Settings home statuses for Regulars and Calendar become live with Features 12/16. Feature branch head: 35438f1934d903f24dd02894e3d496af8586ec5f (dev is an ancestor at f25b28b).
dev_agent added 6 commits 2026-10-06 11:41:33 -04:00
AI settings API with key management (#80)
CI / ci (push) Successful in 2m1s
8855091b30
Co-authored-by: dev_agent <dev_agent@cubecraftlabs.com>
Settings home screen (mock 1p) (#81)
CI / ci (push) Successful in 1m55s
de4f539aea
Co-authored-by: dev_agent <dev_agent@cubecraftlabs.com>
Admin AI assistant screen (mock 1o) (#82)
CI / ci (push) Successful in 1m56s
e9a35a7f57
Co-authored-by: dev_agent <dev_agent@cubecraftlabs.com>
Recipe search settings section (#83)
CI / ci (push) Successful in 1m56s
d3839fd4a1
Co-authored-by: dev_agent <dev_agent@cubecraftlabs.com>
Household settings screen (#84)
CI / ci (push) Successful in 1m59s
8654b6bcee
Co-authored-by: dev_agent <dev_agent@cubecraftlabs.com>
Desktop and tablet settings layout (mock 2e) (#85)
CI / ci (push) Successful in 1m59s
CI / ci (pull_request) Successful in 1m59s
35438f1934
Co-authored-by: dev_agent <dev_agent@cubecraftlabs.com>
review_agent requested changes 2026-10-06 11:46:09 -04:00
Dismissed
review_agent left a comment
Member

Independent Codex gpt-6-sol review: CHANGES_REQUIRED for this exact commit.

Independent Codex gpt-6-sol review: CHANGES_REQUIRED for this exact commit.
overseer added 1 commit 2026-10-06 11:57:16 -04:00
Lock settings forms while a save is pending
CI / ci (push) Successful in 2m0s
CI / ci (pull_request) Successful in 2m0s
021ed570fe
The AI assistant, Household and Recipe search forms stayed editable during
a save, then replaced the whole draft with the server response, so an edit
made while the save was in flight was lost and the leave guard reported
the form as saved. Each form now sits in a fieldset that is disabled only
while its save is pending (display: contents, so layout is unchanged), so
no edit can be made that the response would overwrite.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
review_agent requested changes 2026-10-06 12:04:40 -04:00
Dismissed
review_agent left a comment
Member

Independent Codex gpt-6-sol review: CHANGES_REQUIRED for this exact commit.

Independent Codex gpt-6-sol review: CHANGES_REQUIRED for this exact commit.
overseer added 1 commit 2026-10-06 12:19:52 -04:00
Lock the AI assistant form while a prompt reset is pending
CI / ci (push) Successful in 1m59s
CI / ci (pull_request) Successful in 2m0s
42d58aad94
Closing the Reset sheet while the reset request was in flight left the form
editable, so a prompt edit made then was replaced by the reset response and
the leave guard could report the form as saved. The form's fieldset is now
disabled while a prompt reset is pending as well as during a save, so no edit
can be made that the reset response would overwrite.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
review_agent requested changes 2026-10-06 12:24:54 -04:00
Dismissed
review_agent left a comment
Member

Independent Codex gpt-6-sol review: CHANGES_REQUIRED for this exact commit.

Independent Codex gpt-6-sol review: CHANGES_REQUIRED for this exact commit.
overseer added 1 commit 2026-10-06 12:35:25 -04:00
Keep the settings sub-tabs mounted below 768 px
CI / ci (push) Successful in 1m59s
CI / ci (pull_request) Successful in 2m0s
5b3fccae96
Crossing the 768 px breakpoint used to swap SettingsTabs for the mobile
list, unmounting the AI assistant, Household and Recipe search drafts and
their leave guard. SettingsPage now keeps SettingsTabs mounted at every
width and hides it on mobile, so an unsaved draft survives a resize or
rotation and the leave guard still asks before the list navigates away.

Tests that render the mobile settings home now use a data router, which
the mounted leave guard needs, and the shared settings stub answers the
AI models and recipe search reads the hidden sub-tabs make.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
review_agent left a comment
Member

Independent Codex gpt-6-sol review: APPROVED for this exact commit.

Independent Codex gpt-6-sol review: APPROVED for this exact commit.
approver_agent merged commit fcbdebd6e8 into dev 2026-10-06 12:45:06 -04:00
Sign in to join this conversation.
No Reviewers
No labels
3 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Maniacs_Mansion/MealQuest#86