dev_agentandClaude Opus 5.5 cafea18651
CI / ci (push) Failing after 4m32s
CI / ci (pull_request) Failing after 4m28s
Refuse protocol-relative notification paths and require an observed tap
PUSH-01: appPath now rejects a path that resolves to a leading // after
the URL parser handles dot segments (also %2e), backslashes and stripped
tabs and newlines, and planClick throws if the final URL is off origin.
Regression tests drive openNotification with the attack forms.

PUSH-02: subscribePush no longer asks for notification permission where
navigator.userActivation is unavailable; it throws a typed
PermissionGestureError ('unobservable', or 'inactive' outside a tap).
The test for that path now overrides userActivation directly: the old one
passed undefined into a defaulted parameter and so never exercised it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-09 09:19:28 -04:00
2026-10-02 15:09:42 -04:00
2026-10-05 15:22:37 -04:00
2026-10-05 15:22:37 -04:00

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.
S
Description
No description provided
Readme
14 MiB
Languages
Go 49.1%
TypeScript 28.3%
HTML 16.8%
JavaScript 2.7%
CSS 2.4%
Other 0.5%