The tests still waited on real time: the 20 ms and 50 ms pauses behind the "nothing more is sent" checks, Testing Library's waits (a real setInterval and a real end-of-wait setTimeout), and React Query's notices on a real setTimeout of 0. Under load, whether the ordered-replay check saw a PATCH sent too soon depended on when a real timer fired. The tests now wait with until, which lets the page take turns of the event loop (setImmediate inside act) until a check passes, and settle, which lets it take a fixed number of turns before a "nothing more happens" check. No time passes in either, real or fake. React Query's notices go out a turn later on setImmediate, and advance moves the fake clock synchronously. The Testing Library wait wrapper override is gone. The replay assertions are unchanged. Task 880e924e-c248-472f-8e92-1baec5b4cc9f. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
MealQuest
MealQuest is a mobile-first Progressive Web App for weekly dinner planning for one household. The household lists the dinners it makes regularly, an AI assistant suggests new dinners to try (swipe "Try it" or "Pass"), and the app builds a weekly plan, pushes it to Google Calendar, and generates a shopping list grouped by dinner, kept as a browsable weekly history. It ships as a single Go service with the React PWA embedded in the binary.
Status: this repository is the Feature 01 scaffold (Go service with
/health, embedded PWA skeleton, Makefile, Dockerfile, CI). The planned application is described in docs/ARCHITECTURE.md.
Running it locally
The developer setup (prerequisites, Authentik and Google clients, the
MEALQUEST_* environment, make dev and the optional SearXNG sidecar) is
runbook information and lives in CTXD: project mealquest, file
RUNBOOKS.MD, section "Local development". Configuration is read only from
the environment, and the service refuses to start, naming every missing or
invalid variable.
Common commands
| Command | What it does |
|---|---|
make dev |
Go server plus Vite dev server. |
make test |
gofmt check, go vet, go test -race, web typecheck and tests. |
make build |
Build the PWA, embed it, build the static binary bin/mealquest. |
make docker |
Build the container image from the root Dockerfile. |
Where to read next
- AGENTS.md — house rules, approved dependencies, the quality floor every change must pass, repository layout, conventions.
- docs/ARCHITECTURE.md — architecture of record.
- design/MealQuest Requirements.md — product requirements.
- design/MealQuest UI Designs/design_handoff_mealquest/README.md — UI handoff.