From 45b748eb6ddff65d911f28aa24c82f78c28446b5 Mon Sep 17 00:00:00 2001 From: giles Date: Sat, 14 Feb 2026 19:47:45 +0000 Subject: [PATCH] README: replace vague cross-app section with actual code dependencies List specific model imports, glue services, internal APIs, and domain events that blog code actually references. Co-Authored-By: Claude Opus 4.6 --- README.md | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 522faa1..f721cc1 100644 --- a/README.md +++ b/README.md @@ -43,11 +43,23 @@ shared/ # Submodule → git.rose-ash.com/coop/shared.git glue/ # Submodule → git.rose-ash.com/coop/glue.git ``` -## Cross-App Integration +## Dependencies -- **Login adoption:** When a user logs in via magic link, `auth/routes.py` emits a `user.logged_in` domain event. The glue layer's `login_handlers.py` picks it up and adopts anonymous cart items + calendar entries. -- **Cart widget:** Context processor fetches cart summary via `internal_api.get("cart", "/internal/cart/summary")`. -- **Internal API:** `/internal/coop/` endpoints serve blog data to other apps. +**Cross-app model imports:** +- `events.models.calendars.Calendar` — post routes and Ghost sync use calendars attached to pages +- `market.models.market_place.MarketPlace` — post admin manages marketplaces on pages +- `cart.models.page_config.PageConfig` — post admin manages per-page SumUp config + +**Glue services:** +- `glue.services.navigation.get_navigation_tree` — context processor builds site nav +- `glue.services.relationships.attach_child / detach_child` — post admin attaches/detaches calendars and marketplaces to pages + +**Internal APIs:** +- Calls `GET /internal/cart/summary` — context processor for cart widget +- Exposes `/internal/coop/*` — serves blog data to other apps + +**Domain events:** +- `auth/routes.py` emits `user.logged_in` via `shared.events.emit_event` ## Running