diff --git a/CLAUDE.md b/CLAUDE.md index 43bb4609..0b233d76 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -136,6 +136,9 @@ 20) **Never delete or overwrite historical data** - Do not delete products/snapshots or overwrite historical records. Always append snapshots for changes (price/stock/qty), and mark missing_from_feed instead of removing records. Historical data must remain intact for analytics. +21) **Deployment via CI/CD only** + - Test locally, commit clean changes, and let CI/CD build and deploy to Kubernetes at code.cannabrands.app. Do NOT manually build/push images or tweak prod pods. Deploy backend first, smoke-test APIs, then frontend; roll back via CI/CD if needed. + 18) **Per-location cName and platform_dispensary_id resolution** - For each dispensary, menu_url and cName must be valid for that exact location; no hardcoded defaults and no sharing platform_dispensary_id across locations. - Derive cName from menu_url per store: `/embedded-menu/` or `/dispensary/`. diff --git a/backend/src/dutchie-az/services/menu-detection.ts b/backend/src/dutchie-az/services/menu-detection.ts index d7bf01dd..703b4789 100644 --- a/backend/src/dutchie-az/services/menu-detection.ts +++ b/backend/src/dutchie-az/services/menu-detection.ts @@ -148,6 +148,7 @@ export interface WebsiteCrawlResult { provider: MenuProvider; foundLinks: string[]; crawledPages: string[]; + platformDispensaryId?: string | null; error?: string; } @@ -293,6 +294,30 @@ export async function crawlWebsiteForMenuLinks(websiteUrl: string): Promise