Skip to content

feat(journeys): cross-app hops — exits-app / enters-at (B9)#33

Merged
officialCodeWork merged 1 commit into
developmentfrom
build/phase-3/step-b9-cross-app
Jul 14, 2026
Merged

feat(journeys): cross-app hops — exits-app / enters-at (B9)#33
officialCodeWork merged 1 commit into
developmentfrom
build/phase-3/step-b9-cross-app

Conversation

@officialCodeWork

Copy link
Copy Markdown
Owner

B9 — cross-app hops (gap-closing)

The catalog files B9 (OAuth / payment gateways / email links) under Phase 3, but it never became a step and wasn't built. Now it is.

  • New ExternalNode + exits-app / enters-at edge kinds.
  • exits-app: navigate / window.open / window.location.assign|replace, and <a href> / <Link to>, to an absolute/protocol-relative URL or a mailto:/tel:/sms: scheme → an edge to an external destination (deduped by host). OAuth redirects, payment gateways, and email links all leave the app.
  • enters-at: deep-link / OAuth-callback route paths (/auth/…, /callback, oauth, sso, …) → an edge from an inbound external node.
  • journeys() renders an app-exit as a terminal exit step (CLI glyph ⏏):
    ▸ /login  • onClick()  ⏏ accounts.google.com
    

Eval / tests

Schema regenerated (external node kind + two edge kinds). New externals golden check + fixture b9-cross-app-hops (Google OAuth via window.location.assign, Stripe via window.open, a mailto: link, an /auth/callback entry point).

Verification

41 core + 3 vision + 105 parser tests pass; pnpm eval green; schema drift gate green.

🤖 Generated with Claude Code

Close the B9 gap (cross-app hops were catalogued under Phase 3 but never built):

- New ExternalNode + `exits-app` / `enters-at` edge kinds.
- exits-app: navigate / window.open / window.location.assign|replace, and
  `<a href>` / `<Link to>`, to an absolute/protocol-relative URL or a
  mailto:/tel:/sms: scheme → an edge to an external destination (deduped by
  host). OAuth redirects, payment gateways, and email links all leave the app.
- enters-at: deep-link / OAuth-callback route paths (/auth/…, /callback, oauth,
  sso, …) → an edge from an inbound external node.
- journeys() renders app-exits as a terminal `exit` step; CLI glyph ⏏.

Schema regenerated (external node kind + two edge kinds). New `externals` eval
check + fixture b9-cross-app-hops (Google OAuth, Stripe window.open, mailto,
/auth/callback). 41 core + 3 vision + 105 parser tests pass; eval green.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@officialCodeWork
officialCodeWork merged commit 0b97b22 into development Jul 14, 2026
1 check passed
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.

2 participants