|
|
e801c9056d
|
autoformat
|
2025-11-02 18:55:55 +11:00 |
|
|
|
14bdcbb202
|
load recipe ingredients
|
2025-11-02 18:54:04 +11:00 |
|
|
|
ec9fbc071d
|
Disallow empty ingredients
|
2025-11-02 18:14:03 +11:00 |
|
|
|
a8f1050af9
|
No empty ingredients
|
2025-11-02 18:10:27 +11:00 |
|
|
|
8a4616fb13
|
autoformat
|
2025-11-02 17:51:10 +11:00 |
|
|
|
83388b2925
|
Meal request requires user
|
2025-11-02 17:51:02 +11:00 |
|
|
|
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 |
|
|
|
854b924a28
|
feat(api): scope ingredient parse to household and align recipe parse-from-url with RecipeCreate
|
2025-11-01 23:39:14 +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 |
|
|
|
7741df79e9
|
Added the missing ingredient parsing API to reach feature parity, updated the spec, and validated with full checks: build PASS, lint/typecheck PASS, tests PASS.
|
2025-11-01 22:58:44 +11:00 |
|
|
|
e751b828fe
|
Add tests for scoped DELETE current ingredient and recipes parse-from-url
|
2025-11-01 22:47:48 +11:00 |
|
|
|
5618b6800e
|
Shopping/Recipes: add scoped DELETE for ad-hoc ingredient requests and “parse-from-url”
|
2025-11-01 22:41:39 +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 |
|
|
|
0ba9634131
|
Remove legacy cookie auth and Person-based recipe helper; add composite indices; spec updated
|
2025-11-01 21:25:18 +11:00 |
|
|
|
93b9869735
|
Remove legacy cookie auth and Person-based recipe helper; spec updated
|
2025-11-01 21:21:53 +11:00 |
|
|
|
42715c9fa6
|
Consolidate recipes API to canonical router; remove api/recipes_v2.py; spec updated
|
2025-11-01 20:26:17 +11:00 |
|
|
|
8ee5642690
|
Removed v2 recipe file
|
2025-11-01 20:23:03 +11:00 |
|
|
|
bd7a87c3ff
|
feat: refactor user references to MemberRef across meals and recipes; update OpenAPI spec and backend documentation
|
2025-11-01 19:58:33 +11:00 |
|
|
|
52b4973175
|
test(auth, routing): add logout semantics and route-surface lockdown tests; update spec
|
2025-11-01 19:23:26 +11:00 |
|
|
|
9504c9cb34
|
feat(auth, invitations): switch to Argon2-only password hashing; return household on invitation accept; remove legacy cookie-based export; update OpenAPI wording and spec
|
2025-11-01 19:20:08 +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 |
|
|
|
75d098cd7a
|
Unnecessary import
|
2025-11-01 18:47:45 +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 |
|
|
|
06b81f0b2a
|
Spec updates, remove email requirement
|
2025-11-01 17:41:09 +11:00 |
|
|
|
fc1f414bbb
|
Spec updates
|
2025-11-01 17:32:45 +11:00 |
|
|
|
52b47769a6
|
Removed dead v2 files
|
2025-11-01 17:24:55 +11:00 |
|
|
|
584732e497
|
Cutover cleanup: inline meals/shopping v2 routers, neutralize legacy auth_v2
|
2025-11-01 17:24:15 +11:00 |
|
|
|
bd44a6acbe
|
feat(api): finalize v2 cutover, add household members endpoint, consolidate DTOs, and enforce Argon2 hashing
|
2025-11-01 17:14:18 +11:00 |
|
|
|
a973e5ce57
|
Finalized v1→v2 switchover at the router level: removed legacy v1 endpoints from the app surface, delegated canonical imports to v2 implementations, consolidated shopping DTOs/mappers, and updated router tags. Verified with lint, mypy, tests, formatting, and OpenAPI export. Everything is green.
|
2025-11-01 17:11:09 +11:00 |
|
|
|
4e3b3a77dc
|
sneaky file leftover
|
2025-11-01 17:08:21 +11:00 |
|
|
|
d093d1567e
|
feat(meals+auth): remove Person from meals v2 DTOs (MemberRef) and adopt Argon2 hashing
|
2025-11-01 17:00:36 +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 |
|
|
|
1d60a3d925
|
spec update
|
2025-11-01 16:05:06 +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 |
|
|
|
86e0ea3111
|
feat(shopping-v2): add household-scoped meal request/unrequest; tests and OpenAPI updated
|
2025-11-01 15:42:59 +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 |
|