fix patch hosted main #2 / 74
aaronrene · 15 days ago · Jul 8, 2026 · Diff

fix(hosted): strong-consistency calendar OAuth blob hydrate (INF-KN-3c)

Begin and Google callback hit different Netlify Lambdas within seconds. Eventual Blobs hydrate left oauth_pending invisible → state_invalid after consent. Hydrate calendar store (and token blobs) with consistency:strong and merge local pending connectors so warm disk is not wiped by a stale edge read.

sha256:53c6a39c765bea65cf82d9a717f82dc39839f98d6f018e501d9845b0d6562be3 sha
+14 ~7 symbols
sha256:27776bd481bd52de1f1e15d6fbd75113922340221e142b44ae1d65f05a4f08ca snapshot
+14
symbols added
~7
symbols modified
0
dead code introduced
Semantic Changes 21 symbols
~ hub/bridge/calendar-blob-store.mjs .mjs 11 symbols added
+ calendarOAuthBlobKey function function calendarOAuthBlobKey L37–39
+ calendarOAuthDir function function calendarOAuthDir L45–47
+ connectorRecencyMs function function connectorRecencyMs L68–82
+ connectorStatusScore function function connectorStatusScore L55–62
+ hydrateCalendarStoresFromBlob function async_function hydrateCalendarStoresFromBlob L241–285
+ listCalendarConnectorIdsForBlobSync function function listCalendarConnectorIdsForBlobSync L206–230
+ mergeCalendarStoreJson function function mergeCalendarStoreJson L106–198
+ parse function function parse L107–114
+ persistCalendarStoresToBlob function async_function persistCalendarStoresToBlob L293–324
+ pickConnector function function pickConnector L89–96
+ withCalendarBlobSync function async_function withCalendarBlobSync L338–345
+ get method async_method get L41–49
+ makeMockBlobStore function function makeMockBlobStore L34–54
+ set method async_method set L50–52
~ netlify/functions/bridge.mjs .mjs 1 symbol modified

0 comments

No comments yet. Be the first to start the discussion.

To add a comment, use the Muse CLI: muse hub commit comment sha256:53c6a39c765bea65cf82d9a717f82dc39839f98d6f018e501d9845b0d6562be3 --body "your comment"