blocker fix phases added
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
# Phase 06 — Catalog/pricing has no admin page
|
||||
|
||||
**Blocker:** blockers.md § "Catalog / pricing."
|
||||
**Depends on:** nothing. Pure client work — the server side is already done.
|
||||
|
||||
---
|
||||
|
||||
**Root cause — confirmed as two separate, correctly-separated things, not one bug.** The 5 MVP service
|
||||
categories are seeded everywhere via migration `HasData` (`CatalogConfig/CatalogSeed.cs:1-19`) — categories
|
||||
are fine in every environment. Pricing **options** (the EAV dimensions) are deliberately **not** seeded via
|
||||
migration — the seed file's own comment says option groups/values are "admin-authored data... never a
|
||||
migration." The only place they get created today is `DemoWorldSeeder.cs:74-101`, which only runs in
|
||||
Development (`Program.cs:135-159` gates both seeders to `IsDevelopment()`). Production genuinely has zero
|
||||
option groups for any category.
|
||||
|
||||
**The admin API to manage this already exists and is fully permission-gated:**
|
||||
`AdminCatalogController.cs:25-61` — `CreateCategory`, `UpdateCategory`, `SetCategoryActive`,
|
||||
`CreateOptionGroup`, `UpdateOptionGroup`, `CreateOptionValue`, `UpdateOptionValue`. The gap is **entirely
|
||||
client-side** — there is no `admin/catalog` route anywhere in the client tree, and zero references to any of
|
||||
those endpoints in `client/src`.
|
||||
|
||||
**Fix:** build the admin catalog page (categories + option-group/value CRUD) under
|
||||
`client/src/app/[locale]/(private-routes)/admin/catalog/`, calling the already-built server endpoints. This
|
||||
is genuinely pure client work now — running `DemoWorldSeeder` in production is explicitly the *wrong* fix
|
||||
(it bundles fake demo nurses/customers/reviews alongside the option data, which is demo content, not real
|
||||
launch content).
|
||||
Reference in New Issue
Block a user