Skip to content

fix: integration bug quickwins (#12/#16/#17) + stats --json (#5) + desktop sidecar - #58

Merged
mayoalexander merged 3 commits into
mainfrom
fix/integration-bug-quickwins
Aug 27, 2026
Merged

fix: integration bug quickwins (#12/#16/#17) + stats --json (#5) + desktop sidecar#58
mayoalexander merged 3 commits into
mainfrom
fix/integration-bug-quickwins

Conversation

@mayoalexander

Copy link
Copy Markdown

Summary

Test plan

  • bun run typecheck — clean
  • bun test ./src/cli/cmd/integration-oauth-local.test.ts — 18/18 pass
  • E2E (source, prod data): iris stats --json → valid JSON; --json --adminadmin block present; --json --models 3 → 3 models.

Note

Bug #15 (Canva direct Composio v2 call) is intentionally NOT fixed here — routing platform-atlas-brand-kit.ts through executeIntegrationCall("canva", …) requires the fl-api Canva action names (CANVA_LIST_USER_DESIGNS/CANVA_POST_EXPORTS), which are not defined in this repo. Needs backend action mapping first (flagged as blocked).

Verification still needed on merge

After this lands on main, a release build is required for the installed ~/.iris/bin/iris binary to pick it up — the daily iris runs from the bundled binary, not source.

- #12: replace btoa with secure random nonce in WhatsApp OAuth state
- #16: stop swallowing network errors in resolveAccountToIntegrationId
- #17: read COMPOSIO_API_KEY at call-time instead of module load
stats emitted ASCII boxes with no --json option; scripts parsing
`iris stats --json` got non-JSON. Build structured JSON via writeJson,
reusing the existing aggregateSessionStats payload plus admin-derived
metrics.
@mayoalexander
mayoalexander merged commit 758a730 into main Aug 27, 2026
1 of 3 checks passed
@mayoalexander
mayoalexander deleted the fix/integration-bug-quickwins branch August 27, 2026 01:52
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