Skip to content

fix: route Composio user identity for Gmail hydration - #7

Merged
irresi merged 1 commit into
mainfrom
fix/composio-entity-routing
Jul 30, 2026
Merged

fix: route Composio user identity for Gmail hydration#7
irresi merged 1 commit into
mainfrom
fix/composio-entity-routing

Conversation

@irresi

@irresi irresi commented Jul 30, 2026

Copy link
Copy Markdown
Owner

Summary

  • persist Composio's signed webhook user_id alongside the connected-account route
  • pass both userId and connectedAccountId to Gmail tool execution, matching the live Composio API contract
  • upgrade empty legacy inboxes and fail closed when queued legacy rows cannot be safely hydrated
  • document bounded live-canary evidence and qualified GBrain compatibility

Why

The first read-only live canary returned Composio error 1811: tool execution requires the user/entity identity together with the connected account. The original synthetic client accepted connected account alone and therefore missed this production contract.

Verification

  • bun run check — Biome, TypeScript, 47 tests, production build
  • bun audit — no vulnerabilities
  • gitleaks git --staged --redact --no-banner — no leaks
  • operator-approved live canary: query 3 IDs, hydrate 1, metadata-only write 1, GBrain read-back and search both verified
  • live canary used GBrain 0.42.67; 0.42.56 is known incompatible with the source-scoped post-write verification path

Deployment state

No long-running worker, trigger, public webhook, or Gmail body retention was enabled. The canary-created career-email source contains one metadata-only Gmail page.

@irresi
irresi enabled auto-merge (squash) July 30, 2026 15:40
@irresi
irresi merged commit 004bc99 into main Jul 30, 2026
2 checks passed
@irresi
irresi deleted the fix/composio-entity-routing branch July 30, 2026 15:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant