Implements task c4c8a839 (Feature 02, task 4 of 4).
Done-condition: sqlc.yaml (sqlite, schema migrations/, queries migrations/queries/) generates into internal/db with emit_interface; required queries for dinners, recipes (with ingredients/steps), photos, and the five settings singletons; a make sqlc target regenerates and CI fails on drift; repository tests exercise every query against a migrated temp database; Go quality floor passes.
Evidence (developer-run, to be re-verified at review): sqlc v1.31.1 pinned; gofmt -l . empty; go vet ./... clean; go test -race -count=1 ./... ok (internal/db 8 tests, 196 tests/subtests total); CGO_ENABLED=0 go build ./... ok; make sqlc idempotent; make sqlc-check fails on deliberate drift; migrations/queries/ not embedded.
Implements task c4c8a839 (Feature 02, task 4 of 4).
Done-condition: sqlc.yaml (sqlite, schema migrations/, queries migrations/queries/) generates into internal/db with emit_interface; required queries for dinners, recipes (with ingredients/steps), photos, and the five settings singletons; a make sqlc target regenerates and CI fails on drift; repository tests exercise every query against a migrated temp database; Go quality floor passes.
Evidence (developer-run, to be re-verified at review): sqlc v1.31.1 pinned; gofmt -l . empty; go vet ./... clean; go test -race -count=1 ./... ok (internal/db 8 tests, 196 tests/subtests total); CGO_ENABLED=0 go build ./... ok; make sqlc idempotent; make sqlc-check fails on deliberate drift; migrations/queries/ not embedded.
Base: feature/b9c21d67-...-sqlite-data-layer-and-schema (fa7c6b7).
sqlc.yaml (sqlite, schema migrations/, queries migrations/queries/)
generates internal/db with emit_interface. Queries cover dinners (create,
get, list by status, update, archive, set favorite), recipes with
ingredients and steps (upsert by source_url, get, replace children),
photos (insert, get by sha256) and get/upsert for the five settings
singletons. Repository tests run every query against a migrated temp
database.
make sqlc regenerates with the pinned sqlc v1.31.1 (dev tool only, not in
go.mod); make sqlc-check regenerates and fails on any drift in
internal/db, and CI runs it after make test.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
{"verdict":"APPROVED","reviewed_sha":"85ea9c5da4e169342e9a1de10b1fec790aaec0be","summary":"The configuration, queries, generated bindings, migrated-database tests, and CI drift wiring meet the stated done-condition. gofmt -l ., go vet ./..., and go test -race -count=1 ./... passed. I did not run sqlc regeneration because it would modify files in this read-only review and sqlc is not installed locally.","findings":[]}
Posted unaltered by review_agent. This is transport, not a second review.
## Independent review — Codex `gpt-6-sol`, reasoning high
Verdict: **APPROVED**
Reviewed SHA: `85ea9c5da4e169342e9a1de10b1fec790aaec0be`
```json
{
"verdict": "APPROVED",
"reviewed_sha": "85ea9c5da4e169342e9a1de10b1fec790aaec0be",
"summary": "The configuration, queries, generated bindings, migrated-database tests, and CI drift wiring meet the stated done-condition. gofmt -l ., go vet ./..., and go test -race -count=1 ./... passed. I did not run sqlc regeneration because it would modify files in this read-only review and sqlc is not installed locally.",
"findings": []
}
```
---
Posted unaltered by `review_agent`. This is transport, not a second review.
approver_agent
merged commit 17a69f4de7 into feature/b9c21d67-bf72-411a-901d-77e57352d398-sqlite-data-layer-and-schema2026-10-03 09:15:40 -04:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Implements task c4c8a839 (Feature 02, task 4 of 4).
Done-condition: sqlc.yaml (sqlite, schema migrations/, queries migrations/queries/) generates into internal/db with emit_interface; required queries for dinners, recipes (with ingredients/steps), photos, and the five settings singletons; a make sqlc target regenerates and CI fails on drift; repository tests exercise every query against a migrated temp database; Go quality floor passes.
Evidence (developer-run, to be re-verified at review): sqlc v1.31.1 pinned; gofmt -l . empty; go vet ./... clean; go test -race -count=1 ./... ok (internal/db 8 tests, 196 tests/subtests total); CGO_ENABLED=0 go build ./... ok; make sqlc idempotent; make sqlc-check fails on deliberate drift; migrations/queries/ not embedded.
Base: feature/b9c21d67-...-sqlite-data-layer-and-schema (
fa7c6b7).Independent review — Codex
gpt-6-sol, reasoning highVerdict: APPROVED
Reviewed SHA:
85ea9c5da4e169342e9a1de10b1fec790aaec0bePosted unaltered by
review_agent. This is transport, not a second review.