b7a737ddaa
Meal validation improvements
2025-11-02 17:45:12 +11:00
ca735865fc
db.create() initializes all v2 tables, including users and households, and tenant tables already include household_id columns and indices by default. No separate migration script is required for fresh databases used by tests.
2025-11-02 00:19:45 +11:00
29ebbe7a37
Added missing methods and return types
2025-11-01 23:36:46 +11:00
5c70a9faf0
Parsing
2025-11-01 23:05:16 +11:00
e751b828fe
Add tests for scoped DELETE current ingredient and recipes parse-from-url
2025-11-01 22:47:48 +11:00
964072391e
persons removed
2025-11-01 22:35:10 +11:00
7b82cca5e3
Seed Users from legacy Persons for tests; remove Person fallback in meals; fix migration memberships; add indices; remove cookie helpers; spec updated
2025-11-01 21:37:35 +11:00
d41c09d1a3
Remove cookie auth helpers, clean Person-based recipe function; add indices and test seeding helper; spec updated
2025-11-01 21:28:50 +11:00
52b4973175
test(auth, routing): add logout semantics and route-surface lockdown tests; update spec
2025-11-01 19:23:26 +11:00
32a7e6226f
feat(shopping): dedupe ingredient requests per household and make household_id static in DDL
2025-11-01 19:07:44 +11:00
978c970fb6
feat(shopping): add household-scoped ingredient request endpoint + tests and spec
2025-11-01 18:50:40 +11:00
76eeaba51c
Shopping requests parity
2025-11-01 18:34:40 +11:00
c4e1293557
test_request_ingredient_scoped
2025-11-01 18:16:38 +11:00
e370ed50dc
request ingredient
2025-11-01 18:07:13 +11:00
65d655851d
feat: MemberRef adoption for recipes.createdBy and shopping.purchasedBy; add TDD; update spec; keep suite green
2025-11-01 17:53:07 +11:00
b324e1101c
feat(recipes): include createdBy (MemberRef) and createdById in v2 responses; map from User; update tests and spec
2025-11-01 17:50:33 +11:00
584732e497
Cutover cleanup: inline meals/shopping v2 routers, neutralize legacy auth_v2
2025-11-01 17:24:15 +11:00
8fd780ee17
feat(meals): replace Person with MemberRef (displayName) in v2 Meal DTOs; add Argon2 password hashing
2025-11-01 16:58:34 +11:00
87e3dba6f8
feat(v2): green checks, OpenAPI export, and spec updates for household-scoped API
2025-11-01 16:40:01 +11:00
50f908f204
Ported v1 behavioral coverage to v2 counterparts across meals, recipes, shopping, and consumed flows.
2025-11-01 16:35:39 +11:00
aa18a1502d
Remove v1 API surface, skip legacy tests; finalize v2-only routing and docs
2025-11-01 16:18:46 +11:00
b75fee41c6
feat(v2): add household-scoped delete for recipes; tests and OpenAPI updated
2025-11-01 16:01:29 +11:00
ce75603582
feat(v2): complete household scoping and meals write flows; refresh OpenAPI
2025-11-01 15:51:23 +11:00
807f3efaaa
feat(shopping-v2): add scoped meal request/unrequest; tests green; openapi updated
2025-11-01 15:40:45 +11:00
59c08ecb84
format
2025-11-01 15:34:01 +11:00
f4ad388e36
Tests and lint pass
2025-11-01 15:33:36 +11:00
ec3199fb0c
feat(meals-v2): add household-scoped “mark consumed” endpoint with timezone validation and request cleanup; tests and spec updated; regenerate OpenAPI
2025-11-01 15:21:01 +11:00
3c69355a5c
feat(v2): add household-scoped shopping purchase endpoint with tests
2025-11-01 14:49:30 +11:00
8bc4f12770
feat(v2): add household-scoped GET /shopping/{listId} with tests
2025-11-01 14:42:56 +11:00
bb480d696b
feat(v2): expand household scoping — meals get-by-id and shopping current, with tests; spec updated
2025-11-01 14:30:45 +11:00
6105d5dadf
feat(v2): household-scoped shopping current and meals upcoming, with tests; spec updated
2025-11-01 14:26:23 +11:00
e67790c72d
feat(v2): JWT auth, Invitations API, and meals household scoping with tests
2025-11-01 14:21:34 +11:00
e69299628a
feat(auth, invitations): JWT access + refresh cookie, invitations API with tests
2025-11-01 14:17:42 +11:00
b5e41dc023
feat(auth v2): implement JWT access + refresh cookie; update deps and tests
2025-11-01 14:14:58 +11:00
538538d909
New tests tests/test_openapi_security.py verify presence of bearerAuth and 403s.
2025-11-01 14:01:48 +11:00
4470289b61
Recipes scoping
2025-11-01 13:58:46 +11:00
584488b9c7
v2 register/login endpoints exist with bearer scaffold
2025-11-01 13:51:08 +11:00
f1dac94396
Minimal v2 endpoints scaffolded alongside v1 cookie auth
2025-11-01 13:43:26 +11:00
7b6f4e2a3b
Squashed commit of the following:
...
commit 21a17b771743b23ee41d11a90ed8fdc3433468ce
Author: jableader <jacobdunk@gmail.com>
Date: Mon Oct 20 00:12:02 2025 +1100
Completed tooling improvements, fixed remaining errors
commit 7db48e222e3aa1065c326197c33ba6439720f65a
Author: jableader <jacobdunk@gmail.com>
Date: Sun Oct 19 22:05:37 2025 +1100
autoformat
commit 5705ce24b64c2aa6f0b9426730a479165fa97e2a
Author: jableader <jacobdunk@gmail.com>
Date: Sun Oct 19 22:05:29 2025 +1100
tooling changes
commit f0a6b2fd147bb86b484927afd57b9ba0ac07bf47
Author: jableader <jacobdunk@gmail.com>
Date: Sun Oct 19 21:25:49 2025 +1100
Plan
2025-10-20 00:12:16 +11:00
5be4e89c4e
Squashed commit of the following:
...
commit fcd005b8624023547f28b7b28e59e6099bcfc7d4
Author: jableader <jacobdunk@gmail.com>
Date: Sun Oct 19 20:24:07 2025 +1100
Openapi tightening
commit f93bd8f641d561052c7bd075bae321b4ff3b676d
Author: jableader <jacobdunk@gmail.com>
Date: Sun Oct 19 19:03:52 2025 +1100
Removed refactor strategy doc
commit 0c5a61092f522be0c47cbbe86917c8a7e4e2d339
Author: jableader <jacobdunk@gmail.com>
Date: Sun Oct 19 17:48:33 2025 +1100
mypy & ruff checks
commit 23d66d6b18984127e17c73c3063f6120385935e9
Author: jableader <jacobdunk@gmail.com>
Date: Sun Oct 19 16:49:35 2025 +1100
Final removal of db.py files
commit f454aed1ca9783cc558cc203f29a7fe31b62a975
Author: jableader <jacobdunk@gmail.com>
Date: Sun Oct 19 15:42:31 2025 +1100
Finalise restructure, remove db.py files
commit 7187f6dd89489521538791c6bdebb426514beb99
Author: jableader <jacobdunk@gmail.com>
Date: Sun Oct 19 15:34:54 2025 +1100
commit 6fea227ae20d32b8eb1e7a4885006a620fcc7bb1
Author: jableader <jacobdunk@gmail.com>
Date: Sun Oct 19 15:32:53 2025 +1100
commit 27415e7e02d89195ad514cb017a9dbbf84d7a5e4
Author: jableader <jacobdunk@gmail.com>
Date: Sun Oct 19 15:31:10 2025 +1100
commit b773428033d855f9ad82005602e049c1a2e3c585
Author: jableader <jacobdunk@gmail.com>
Date: Sun Oct 19 15:28:58 2025 +1100
commit 116592c95278d995f4c516e87f2cea43cf5b7735
Author: jableader <jacobdunk@gmail.com>
Date: Sun Oct 19 15:25:21 2025 +1100
commit 03ec565faea088971968ee2f9bb83e2de16b21f3
Author: jableader <jacobdunk@gmail.com>
Date: Sun Oct 19 15:21:29 2025 +1100
Plan
2025-10-19 20:24:23 +11:00
865c02b195
Fixed loc header
2025-10-19 15:06:51 +11:00
45ff778112
Move inline API request/response models out of main.py into feature modules, Add enums/constants for participant roles
2025-10-19 13:51:27 +11:00
4c3f370ddc
Squashed commit of the following:
...
commit 4189d9f824f681b480f797b109e963762eb22e9c
Author: jableader <jacobdunk@gmail.com>
Date: Sat Oct 18 16:41:57 2025 +1100
Openapi complete
commit bebf8c30cba0b85a889198fe44879614065a0c34
Author: jableader <jacobdunk@gmail.com>
Date: Sat Oct 18 16:35:39 2025 +1100
Removed unversioned api
commit dd9cc2eae75d66fceebe14c918c3ed8498376ee6
Author: jableader <jacobdunk@gmail.com>
Date: Sat Oct 18 16:07:03 2025 +1100
Spec updates
commit b993c4530688f79ea983278283f984e9d8e83860
Author: jableader <jacobdunk@gmail.com>
Date: Sat Oct 18 16:01:50 2025 +1100
docs(spec): update doof-back-spec with v1 RFC7807 422, reusable Problem* responses, and shopping/current aliasing; tests passing; openapi.json refreshed
commit 30bac7e57367b14ce924667a7955845de949d779
Author: jableader <jacobdunk@gmail.com>
Date: Sat Oct 18 16:00:13 2025 +1100
openapi polish
commit eb7f7f224f7085fa5b3fadc7716db0ebb7f47eb0
Author: jableader <jacobdunk@gmail.com>
Date: Sat Oct 18 15:54:52 2025 +1100
OpenAPI reusable responses: Added components.responses for `Problem400`, `Problem404`, and `Problem422`; v1 routes reference these consistently.
- Units enum: Exposed advisory enum in schema for `Ingredient.unit` using existing units list (no runtime enforcement).
commit 037037e17d684a89b264f2406377970a0de7ec99
Author: jableader <jacobdunk@gmail.com>
Date: Sat Oct 18 15:43:01 2025 +1100
Add `total` counts to v1 page responses for recipes/persons; push persons name filter into SQL for v1 when `q` is provided.
commit 07e7735076aae8cbd04bb10f9aa324c1a3d80ae4
Author: jableader <jacobdunk@gmail.com>
Date: Sat Oct 18 15:40:17 2025 +1100
Add parameter descriptions for `cursor`, `limit`, and `q` on v1 list endpoints; include example `Page` envelopes in 200 responses.
commit e5bf9396b0fe870501d1b4712cba2555dd2ef9b1
Author: jableader <jacobdunk@gmail.com>
Date: Sat Oct 18 15:36:27 2025 +1100
DB pagination
commit 782315cd2a0c18cc50e4deaf28e7ec6e4b58c6e2
Author: jableader <jacobdunk@gmail.com>
Date: Sat Oct 18 15:29:38 2025 +1100
camelcase tests
commit b207c33e2844c00fc9e531fb9cf8c07a3f5cd543
Author: jableader <jacobdunk@gmail.com>
Date: Sat Oct 18 15:24:57 2025 +1100
OpenAPI enrichment, Error responses
commit dc84681ab743008e5cd8bec7f3ccb0d05b557518
Author: jableader <jacobdunk@gmail.com>
Date: Sat Oct 18 15:16:39 2025 +1100
v1 tests: Added basic tests to assert `Page` envelopes and RFC7807 responses for v1 endpoints without affecting legacy tests.
commit 1524b7a98ffe04af11c2731c8125ac9348751cff
Author: jableader <jacobdunk@gmail.com>
Date: Sat Oct 18 15:14:51 2025 +1100
Pagination
commit 92e91d7acf15c09b14bc76f7b16a7a47e65129ec
Author: jableader <jacobdunk@gmail.com>
Date: Sat Oct 18 15:03:50 2025 +1100
Use middleware for naming case changes
commit c68f964f9b8e3d8f8ef020661e747e0990459c81
Author: jableader <jacobdunk@gmail.com>
Date: Sat Oct 18 15:00:09 2025 +1100
Openapi gen
2025-10-18 16:44:36 +11:00
18f784665f
Added ruff, black and mypy
2025-10-18 14:26:42 +11:00
255ebd4613
Squashed commit of the following:
...
commit 1c707260a4059cbdebb3e2720d3899b8773a1c37
Author: jableader <jacobdunk@gmail.com>
Date: Wed Jul 30 22:03:48 2025 +1000
Sync tests
commit 5a71077121921a2cea9f3be9c1d1f7770691520a
Author: jableader <jacobdunk@gmail.com>
Date: Wed Jul 30 21:57:00 2025 +1000
minor refactorings
commit 0bafec1b40bf5cf6f1554f6e5ec6e8f4e043d1cc
Author: jableader <jacobdunk@gmail.com>
Date: Wed Jul 30 21:39:52 2025 +1000
Remove ids from shopping list
commit c1ee30d1b591b241dfa152d8a0fa9af1f6aaaed1
Author: jableader <jacobdunk@gmail.com>
Date: Wed Jul 30 21:04:48 2025 +1000
Added more cases to shopping tests
commit ad3d598bdb574b1aeaabc354bb825ee428aaaa41
Author: jableader <jacobdunk@gmail.com>
Date: Wed Jul 30 20:26:36 2025 +1000
Added 404 response when list not found
commit 336538dc47e12736f7f57d2c80252a700dc1e83b
Author: jableader <jacobdunk@gmail.com>
Date: Wed Jul 30 20:15:52 2025 +1000
Tests for main
commit 238c0f89b2671348091a162ee519e5f1bf2cd66c
Author: jableader <jacobdunk@gmail.com>
Date: Wed Jul 30 20:07:12 2025 +1000
Meals tests
commit b92f2432ee13f5384b6f1a9b8efe76bec9dbd920
Author: jableader <jacobdunk@gmail.com>
Date: Wed Jul 30 19:57:45 2025 +1000
Shopping tests
commit b3c7ae20e6207cf0f9f04bdec5cb6145b04638d9
Author: jableader <jacobdunk@gmail.com>
Date: Wed Jul 30 19:40:19 2025 +1000
product tests passing
2025-07-30 22:05:29 +10:00
2a66ff39be
Vibe coded some tests -_-
2025-07-30 18:55:51 +10:00
809de13ed8
Use iso format date stamps
2024-10-14 16:59:05 +11:00
979499602f
Add support for coles, and tests
2024-09-29 15:04:10 +10:00
e2a59536b1
Squashed commit of the following:
...
commit a63d4740d5594fb603ba13fbf1515e8b7081d370
Author: jableader <jacobdunk@gmail.com>
Date: Sat Sep 28 12:41:37 2024 +1000
Impl
2024-09-28 14:54:54 +10:00
407d649d99
Consumed meal fixes
2024-05-27 21:55:47 +10:00