giles
49a4780efe
Restore menu_items fallback for nav, update shared submodule
...
Build and Deploy / build-and-deploy (push) Successful in 59s
Keep get_navigation_tree() as fallback when nav-tree fragment fetch
fails. Update shared submodule with fixed app slug URLs in nav.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-24 11:57:49 +00:00
giles
d1a6690cc3
Fetch nav-tree fragment from blog, drop local menu_items query
...
Build and Deploy / build-and-deploy (push) Successful in 1m2s
Navigation is now rendered by blog as an HTML fragment. This app
fetches it with its own app_name and path for correct highlighting.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-24 11:39:39 +00:00
giles
93f830ff13
Commit transaction before fetching cart-mini fragment
...
Build and Deploy / build-and-deploy (push) Successful in 54s
The cart-mini fragment is fetched via HTTP from the cart app, which
uses its own DB connection. Without committing first, the cart app
sees stale data (no new item). Commit the transaction, start a new
one so after_request can still commit cleanly.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-24 10:55:40 +00:00
giles
06e700820e
Replace shared _added.html with market-owned version using cart-mini fragment
...
Build and Deploy / build-and-deploy (push) Successful in 53s
The shared _added.html imported _types/cart/_cart.html which only
exists in the cart app. Market now has its own _added.html that:
- Fetches cart-mini fragment for the OOB mini cart update
- Uses market's own _types/product/_cart.html macros
- Drops cart summary/show_cart (not visible on product pages)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-24 10:49:09 +00:00
giles
d92d4840ed
Rename product blueprint URL param slug → product_slug
...
Build and Deploy / build-and-deploy (push) Successful in 57s
The app-level url_value_preprocessor pops "slug" and "page_slug"
into g.post_slug, with page_slug overwriting the product slug.
Renaming the blueprint param to product_slug eliminates the
collision entirely. Views now use g.product_slug (set by blueprint
preprocessor) and have clean signatures with no **_kw hacks.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-24 10:26:20 +00:00
giles
291c829c7f
Let resolve_product run fully for POST, just skip redirects
...
Build and Deploy / build-and-deploy (push) Successful in 1m0s
Instead of skipping resolve_product entirely for POST (leaving
g.item_data unset and breaking templates), run the full resolution
but suppress canonical-slug redirects. This sets g.item_data for
the context processor so d.slug and other template vars work.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-24 10:22:04 +00:00
giles
e0b640f15b
Pass product data to cart _added.html template
...
Build and Deploy / build-and-deploy (push) Has been cancelled
resolve_product skips for POST so g.item_data (and thus d) is not
set. Pass d={slug} directly in the render_template call.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-24 10:21:16 +00:00
giles
25228881aa
Fix product slug: extract from URL path instead of g.post_slug
...
Build and Deploy / build-and-deploy (push) Successful in 53s
App-level preprocessor pops slug then page_slug into g.post_slug,
overwriting the product slug with the page slug ("market"). Extract
the product slug directly from the request path after "/product/".
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-24 10:12:00 +00:00
giles
97bc694ff0
Skip resolve_product redirects for POST requests (cart, like)
...
Build and Deploy / build-and-deploy (push) Successful in 2m4s
resolve_product's canonical slug redirect causes a 302 loop on POST
/cart/ because it redirects to the GET product detail page. POST
endpoints only need g.product_slug to look up the product — skip
the full resolution/redirect logic.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-24 10:06:05 +00:00
giles
d014203776
Fix url_for endpoint name in product slug redirect
...
Build and Deploy / build-and-deploy (push) Successful in 56s
Use fully qualified "market.browse.product.product_detail" instead
of "product.product_detail" which doesn't exist in the URL map.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-24 10:02:04 +00:00
giles
f53d2841e9
Fix product slug resolution: fall back to g.post_slug
...
Build and Deploy / build-and-deploy (push) Successful in 55s
App-level url_value_preprocessor pops slug into g.post_slug before
the blueprint preprocessor runs, leaving values empty. Fall back to
g.post_slug so resolve_product and cart route get the slug.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-24 09:57:42 +00:00
giles
3c9ff1210a
Fix cart route missing slug param (popped by app-level preprocessor)
...
Build and Deploy / build-and-deploy (push) Successful in 57s
App-level url_value_preprocessor pops slug from values, so the
product blueprint's cart() never receives it. Use g.product_slug
(set by resolve_product before_request) instead.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-24 09:51:50 +00:00
giles
4a37f281d4
Update shared submodule (fragment auth skip for internal paths)
...
Build and Deploy / build-and-deploy (push) Successful in 1m3s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-24 09:11:56 +00:00
giles
e49668b301
Add fragment blueprint + sync shared: micro-frontend infrastructure
...
Build and Deploy / build-and-deploy (push) Successful in 2m19s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-24 08:27:47 +00:00
giles
005c04e5f9
Sync shared: instant logout detection
...
Build and Deploy / build-and-deploy (push) Successful in 1m6s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-24 01:30:35 +00:00
giles
e479730f3f
Sync shared submodule: external delivery handler
...
Build and Deploy / build-and-deploy (push) Successful in 1m18s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-24 00:41:17 +00:00
giles
0954dc0505
Sync shared: add artdag_url() helper
...
Build and Deploy / build-and-deploy (push) Successful in 1m11s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 23:26:48 +00:00
giles
84f13153a6
Sync shared: per-domain delivery
Build and Deploy / build-and-deploy (push) Successful in 1m1s
2026-02-23 21:54:16 +00:00
giles
09ca461df6
Update shared: backfill only current posts
...
Build and Deploy / build-and-deploy (push) Successful in 1m20s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 21:36:50 +00:00
giles
0e2f0b818e
Update shared: rewrite object URLs for per-app AP delivery
...
Build and Deploy / build-and-deploy (push) Successful in 1m1s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 21:06:06 +00:00
giles
c147900072
Update shared: fix activity ID domain mismatch in AP delivery
...
Build and Deploy / build-and-deploy (push) Successful in 1m3s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 20:38:13 +00:00
giles
fc8bbc927b
Update shared submodule: exempt AP paths from auth redirect
...
Build and Deploy / build-and-deploy (push) Successful in 1m7s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 20:29:08 +00:00
giles
8f44f99232
Update shared submodule: AP delivery fixes + sentinel
...
Build and Deploy / build-and-deploy (push) Successful in 4m56s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 19:31:30 +00:00
giles
05d7ccd422
Update shared submodule: per-app AP actors
...
Build and Deploy / build-and-deploy (push) Successful in 1m7s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 19:16:23 +00:00
giles
74fc2f4fb9
Update shared submodule (blog.home → blog.index template)
Build and Deploy / build-and-deploy (push) Successful in 1m2s
2026-02-23 16:55:31 +00:00
giles
f0743a5949
Retrigger CI (Docker Hub image now cached)
Build and Deploy / build-and-deploy (push) Successful in 59s
2026-02-23 16:45:45 +00:00
giles
b91abd1a34
Update shared submodule (at-least-once + delivery log)
Build and Deploy / build-and-deploy (push) Failing after 1s
2026-02-23 16:21:12 +00:00
giles
6e1a7cfc5b
Update shared submodule (NOTIFY/LISTEN event processor)
Build and Deploy / build-and-deploy (push) Successful in 1m14s
2026-02-23 16:05:17 +00:00
giles
973d639f0b
Update shared submodule (add device_id migration)
Build and Deploy / build-and-deploy (push) Successful in 1m4s
2026-02-23 15:26:50 +00:00
giles
2fd05faccb
Update shared: blog_did = account_did, one device identity
...
Build and Deploy / build-and-deploy (push) Successful in 56s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 15:12:26 +00:00
giles
1919258dcd
Update shared: device-id SSO with account_did + Redis login signal
...
Build and Deploy / build-and-deploy (push) Successful in 1m2s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 15:01:50 +00:00
giles
b027bf5bdf
Sync shared submodule
...
Build and Deploy / build-and-deploy (push) Successful in 1m5s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 13:41:31 +00:00
giles
9eab90a3ae
Update shared: add aiohttp dependency
...
Build and Deploy / build-and-deploy (push) Successful in 1m2s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 13:05:48 +00:00
giles
691cb9c2ab
Update shared: device cookie auth state detection
...
Build and Deploy / build-and-deploy (push) Successful in 1m11s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 12:57:15 +00:00
giles
6fa2b73072
Update shared: grant-based session revocation
...
Build and Deploy / build-and-deploy (push) Successful in 1m5s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 12:30:21 +00:00
giles
0fd1e5be99
Iframe-based SSO logout (tolerates dead apps)
...
Build and Deploy / build-and-deploy (push) Successful in 1m9s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 12:21:43 +00:00
giles
2205e23e56
Update shared: remove sso_hint, add sso-clear logout chain
...
Build and Deploy / build-and-deploy (push) Successful in 1m10s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 12:17:37 +00:00
giles
d4aa3ea4d2
Update shared: SSO revocation clears local session on logout
...
Build and Deploy / build-and-deploy (push) Has been cancelled
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 12:16:03 +00:00
giles
2ea879db44
Update shared submodule: account is now OAuth server
...
Build and Deploy / build-and-deploy (push) Successful in 1m6s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 12:01:33 +00:00
giles
9d8e21001b
Add /auth/clear to reset stale cookies
...
Build and Deploy / build-and-deploy (push) Successful in 1m23s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 11:45:26 +00:00
giles
26bc7c885a
Logout through federation sso-logout
...
Build and Deploy / build-and-deploy (push) Successful in 1m0s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 11:32:09 +00:00
giles
bddc3cb122
Silent SSO via sso_hint cookie
...
Build and Deploy / build-and-deploy (push) Successful in 1m3s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 11:24:53 +00:00
giles
72a30b90f6
Fix logout redirect to blog home
...
Build and Deploy / build-and-deploy (push) Successful in 58s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 11:15:30 +00:00
giles
7261645d1e
Fix logout to use local /auth/logout/
...
Build and Deploy / build-and-deploy (push) Successful in 58s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 11:07:42 +00:00
giles
edaa028b67
Sign-in → account, clear old shared cookie
...
Build and Deploy / build-and-deploy (push) Successful in 1m5s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 10:57:09 +00:00
giles
4be16b92cd
Trigger rebuild: per-app cookies + OAuth SSO
...
Build and Deploy / build-and-deploy (push) Successful in 59s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 10:45:18 +00:00
giles
fd1575ed04
Fix OAuth authorize URL prefix
...
Build and Deploy / build-and-deploy (push) Successful in 59s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 10:25:57 +00:00
giles
5e26b5ec63
Update shared submodule: OAuth SSO + account app support
...
Build and Deploy / build-and-deploy (push) Successful in 1m25s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 09:59:07 +00:00
giles
715db8e493
Update shared submodule (fix root top-bar account link)
...
Build and Deploy / build-and-deploy (push) Successful in 1m13s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 09:07:51 +00:00
giles
9b4a63ff1e
Update shared submodule (account URLs → federation)
...
Build and Deploy / build-and-deploy (push) Successful in 1m1s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 09:01:16 +00:00