diff --git a/CHANGELOG.md b/CHANGELOG.md index 4a8c47bed..dea926ecb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,27 @@ # Changelog +## [0.13.11-alpha.1] - 2026-03-26 + +### ✨ New Features +- **@cartridge/keychain**: Added starter pack social claim functionality for enhanced social integration and reward distribution (#2498) +- **@cartridge/keychain**: Added SMS authentication to signup/login flows, providing an additional authentication method for improved accessibility (#2500) +- **@cartridge/keychain**: Added swap detection for AVNU and LayerSwap (LS2) protocols, enabling better transaction recognition and user experience (#2493) + +### 🚀 Improvements +- **@cartridge/keychain**: Enhanced Safari popup blocked error messaging to provide clearer guidance for Safari users experiencing popup issues (#2506) +- **@cartridge/keychain**: Improved payment UI by renaming "Stripe Checkout" to "Credit Card" for clearer user understanding (#2509) +- **@cartridge/keychain**: Removed feature gate for Stripe checkout in starterpacks, making credit card payments generally available (#2508) + +### 🐛 Bug Fixes +- **@cartridge/keychain**: Fixed keychain disconnection to properly disconnect before emitting state changes, preventing race conditions (#2505) +- **@cartridge/keychain**: Enhanced WASM error handling and updated controller-wasm to v0.10.0 for improved stability (#2502) +- **@cartridge/keychain**: Removed Storage Access console logs to reduce console noise in production environments (#2507) +- **@cartridge/keychain**: Removed quests functionality to streamline the user interface (#2501) + +### 📦 Dependencies +- **controller-wasm**: Updated to version 0.10.0 for improved WASM functionality and error handling (#2502) +- **Turnkey browser SDKs**: Upgraded to version 5 for enhanced security and performance (#2499) + ## [0.13.10] - 2026-03-19 ### ✨ New Features diff --git a/examples/capacitor/package.json b/examples/capacitor/package.json index d9b3eef2d..0fac4d599 100644 --- a/examples/capacitor/package.json +++ b/examples/capacitor/package.json @@ -1,6 +1,6 @@ { "name": "cartridge-capacitor-example", - "version": "0.13.10", + "version": "0.13.11-alpha.1", "private": true, "type": "module", "scripts": { diff --git a/examples/next/package.json b/examples/next/package.json index 59fd90e20..526e2d287 100644 --- a/examples/next/package.json +++ b/examples/next/package.json @@ -1,7 +1,7 @@ { "name": "@cartridge/controller-example-next", "private": true, - "version": "0.13.10", + "version": "0.13.11-alpha.1", "scripts": { "dev": "env-cmd -f .env.dev next dev -p 3002", "dev:live": "env-cmd -f .env.live next dev -p 3002", diff --git a/examples/node/package.json b/examples/node/package.json index 93ca50315..148d40c8b 100644 --- a/examples/node/package.json +++ b/examples/node/package.json @@ -1,6 +1,6 @@ { "name": "cartridge-node-example", - "version": "0.13.10", + "version": "0.13.11-alpha.1", "description": "Example of using Cartridge session controller with Node.js", "type": "module", "scripts": { diff --git a/examples/svelte/package.json b/examples/svelte/package.json index eef91c8c3..e99be28b1 100644 --- a/examples/svelte/package.json +++ b/examples/svelte/package.json @@ -1,6 +1,6 @@ { "name": "@cartridge/controller-example-svelte", - "version": "0.13.10", + "version": "0.13.11-alpha.1", "private": true, "scripts": { "dev": "vite dev", diff --git a/output.txt b/output.txt index 90a3d1708..d45a0b4a0 100644 --- a/output.txt +++ b/output.txt @@ -1,28 +1,26 @@ -{"type":"system","subtype":"init","cwd":"/home/runner/work/controller/controller","session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","tools":["Task","Bash","Glob","Grep","LS","ExitPlanMode","Read","Edit","MultiEdit","Write","NotebookEdit","TodoWrite","BashOutput","KillBash"],"mcp_servers":[],"model":"claude-sonnet-4-20250514","permissionMode":"default","slash_commands":["pr","commit","add-dir","agents","clear","compact","config","context","cost","doctor","exit","help","ide","init","install-github-app","mcp","memory","migrate-installer","model","output-style","output-style:new","pr-comments","release-notes","resume","status","statusline","bug","review","security-review","upgrade","vim","permissions","hooks","export","logout","login","bashes"],"apiKeySource":"ANTHROPIC_API_KEY","output_style":"default","uuid":"22dc3620-89ff-4eb1-a0ab-0e78140cfa9d"} -{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_01T4zJUJMzkMAQ3NrEjZ9Qpn","type":"message","role":"assistant","content":[{"type":"text","text":"I'll analyze the git commits since v0.13.9 and generate a changelog entry for version 0.13.10. Let me start by examining the commit history."}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":6168,"cache_read_input_tokens":10412,"cache_creation":{"ephemeral_5m_input_tokens":6168,"ephemeral_1h_input_tokens":0},"output_tokens":6,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"3625e59d-ed54-4863-a2b3-60dc968725e6"} -{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_01T4zJUJMzkMAQ3NrEjZ9Qpn","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01ED2oNx7Y9rzVYwyEQRuzPt","name":"TodoWrite","input":{"todos":[{"content":"Analyze git commits from v0.13.9 to HEAD","status":"in_progress"},{"content":"Review commit messages and changes for user-facing features","status":"pending"},{"content":"Generate changelog entry in specified format","status":"pending"},{"content":"Update CHANGELOG.md with the new entry","status":"pending"}]},"caller":{"type":"direct"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":6168,"cache_read_input_tokens":10412,"cache_creation":{"ephemeral_5m_input_tokens":6168,"ephemeral_1h_input_tokens":0},"output_tokens":6,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"a59c472d-1096-44f0-ab10-23975a41b723"} -{"type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01ED2oNx7Y9rzVYwyEQRuzPt","type":"tool_result","content":"Todos have been modified successfully. Ensure that you continue to use the todo list to track your progress. Please proceed with the current tasks if applicable"}]},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"e22ff964-6bdf-4041-aa62-2d0fe8e971fe"} -{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_01SGH48UaB84rBWDFarBorNp","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01MYtRjXFfdNjdpkf81BJnqh","name":"Bash","input":{"command":"git log --oneline v0.13.9..HEAD","description":"Get commit history since v0.13.9"},"caller":{"type":"direct"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":5,"cache_creation_input_tokens":218,"cache_read_input_tokens":16580,"cache_creation":{"ephemeral_5m_input_tokens":218,"ephemeral_1h_input_tokens":0},"output_tokens":25,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"b944b96f-f99a-4b52-9598-682dca6cdc30"} -{"type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01MYtRjXFfdNjdpkf81BJnqh","type":"tool_result","content":"2276f718 fix(keychain): show human-readable message for FailedPrecondition errors (#2496)\ncc196795 fix(keychain): restore back button on verification pages (#2495)\n3ec965f0 fix: use latest controller version in standalone (#2494)\nc6a7cb7e swap screen review (#2456)\n322b89e1 feat(keychain): add identity verification for Stripe purchases (#2492)\nb0e4dacd fix: back button in purchases fix (#2478)\neefa415b fix(keychain): cap profile history queries and gate fetches (#2490)\n6627aff0 fix(keychain): propagate execute submit errors instead of hanging (#2488)\n75704856 feat: use accountPrivate for starterpack verification (#2486)\n61e0634d chore: update @cartridge/ui to b4646934\n482df006 chore: update @cartridge/ui (#2489)\n5b7267f9 chore: add dmux to gitignore (#2487)\n28a0d790 feat: add stripe checkout for starterpacks (#2485)\nf745eb33 feat: split USDC and USDC.e in starterpack token selection (#2470)\n1e5389d5 feat(keychain): geofence OFAC countries on Vercel (#2484)\n8cc1e268 fix(keychain): align credits purchase with stripe graphql (#2483)\n380f2f79 fix: add WebAuthn permissions to Permissions-Policy header (#2482)\nba208405 fix: preserve custom-scheme redirect_uri in standalone session flow (#2481)\n00275a57 feat: hand off popup auth for restrictive iframe environments (#2462)\ndd0d31b5 chore: bump controller-wasm to 0.9.6 (#2479)\n5b38aaf8 revert: undo loading spinner and redirect_uri changes (#2480)\na44d11b4 fix: show loading spinner while preset config loads (#2477)\n2b4a9201 test: skip flaky BroadcastChannel relay test (#2476)\n7ebcdc1f fix: check both redirect_url and redirect_uri for domain verification (#2474)\n5b62c633 fix: avoid error screen with unknown signers (#2472)\n316f5c49 fix: handle custom URL scheme verification for mobile apps (#2471)\n4bd29dc6 fix: improve EVM wallet detection and provider discovery (#2468)\n1464c86a chore: update controller-rs to 0.9.5 (#2465)\ne39b47ad feat: migrate payment.graphql to controller (#2464)\n34524caf Remove deactivated Telegram provider (#2461)\nb7456be6 fix: update apple pay pending screen (#2460)\nf43b3424 feat: enable apple pay via triple-click on review purchase icon (#2457)\n79a1e526 debug: onramp broadcast channels (#2455)\necbbaa21 fix: onramp popup polling, retry state, and non-terminal commit errors (#2454)\nd882002d fix: coinbase popup polling fallback, retry reset, and animated alerts (#2453)\n336adc23 fix: set terminalReachedRef on polling_success to prevent popup-closed race\n2d7981d6 feat: replace GraphQL polling with BroadcastChannel for Coinbase popup (#2451)\n31dad0e9 feat: accept expires_at param on session page (#2452)\nda72d1b1 fix: tighten Coinbase popup message handling (#2450)\ncc8447d6 fix: harden Coinbase popup handling and refresh checkout order (#2449)\n4d66d9b3 fix: remove reopen payment window button (#2448)\naec6c60f fix: add required sandbox and referrerpolicy attrs to coinbase iframe (#2447)\nf6368b99 feat: embed coinbase payment in keychain popup with status polling (#2445)\nbe2c9d52 feat: open Coinbase payment link in popup instead of iframe (#2444)\ne7a42f52 fix: scope close-only header behavior to update session flow (#2443)\ncc2f2761 Prepare prerelease: 0.13.10-alpha.1 (#2442)\n6892d509 fix: prefer close over back in iframe header (#2441)\n4426cf04 feat: add updateSession API for runtime session policy updates (#2440)\n2dbe12c3 feat(keychain): accept account param on session page (#2439)\na59ebe3c fix: connect flow (#2438)\n43740827 fix: removed console errors (#2437)\n1e03a95b fix: call close() in disconnect to reset iframe state (#2434)\n112c53f8 feat: activity tab review (#2413)\nb308f000 fix(keychain): add Stripe.js to CSP script-src (#2433)\n8fe56804 ci: auto-merge docs-sync PRs after checks pass (#2432)\n346166dd ci: refine docs-sync for concise updates (#2431)\nc49987f2 chore: remove WebAuthn debug logging (#2430)\nbc918be2 fix: show Continue button on Chrome iOS when auto session creation fails (#2429)\nb5ed3b69 fix: prioritize iOS check before hasPlatformAuthenticator for WebAuthn (#2428)\n805d878a feat: capture WebAuthn options via PostHog for iOS debugging (#2427)\n0bcff99d Prepare release: 0.13.9 (#2426)","is_error":false}]},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"6177a1be-5484-4db6-b296-b9542636c8c6"} -{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_01MrETuaDeGzDqoo9TtBenBD","type":"message","role":"assistant","content":[{"type":"text","text":"Now let me get more detailed information about these commits to better understand the changes:"}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":4,"cache_creation_input_tokens":1457,"cache_read_input_tokens":16798,"cache_creation":{"ephemeral_5m_input_tokens":1457,"ephemeral_1h_input_tokens":0},"output_tokens":1,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"061730e7-8412-474b-9f3c-43ac44654a5e"} -{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_01MrETuaDeGzDqoo9TtBenBD","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01PTSnqJTew8bybaB1RNfFHP","name":"Bash","input":{"command":"git log --pretty=format:\"%h %s\" v0.13.9..HEAD | grep -E \"(feat|fix|chore|BREAKING)\" | head -30","description":"Get formatted commit messages with types"},"caller":{"type":"direct"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":4,"cache_creation_input_tokens":1457,"cache_read_input_tokens":16798,"cache_creation":{"ephemeral_5m_input_tokens":1457,"ephemeral_1h_input_tokens":0},"output_tokens":1,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"4069298a-cd6f-4679-81d3-3c6e0f5ef174"} -{"type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01PTSnqJTew8bybaB1RNfFHP","type":"tool_result","content":"2276f718 fix(keychain): show human-readable message for FailedPrecondition errors (#2496)\ncc196795 fix(keychain): restore back button on verification pages (#2495)\n3ec965f0 fix: use latest controller version in standalone (#2494)\n322b89e1 feat(keychain): add identity verification for Stripe purchases (#2492)\nb0e4dacd fix: back button in purchases fix (#2478)\neefa415b fix(keychain): cap profile history queries and gate fetches (#2490)\n6627aff0 fix(keychain): propagate execute submit errors instead of hanging (#2488)\n75704856 feat: use accountPrivate for starterpack verification (#2486)\n61e0634d chore: update @cartridge/ui to b4646934\n482df006 chore: update @cartridge/ui (#2489)\n5b7267f9 chore: add dmux to gitignore (#2487)\n28a0d790 feat: add stripe checkout for starterpacks (#2485)\nf745eb33 feat: split USDC and USDC.e in starterpack token selection (#2470)\n1e5389d5 feat(keychain): geofence OFAC countries on Vercel (#2484)\n8cc1e268 fix(keychain): align credits purchase with stripe graphql (#2483)\n380f2f79 fix: add WebAuthn permissions to Permissions-Policy header (#2482)\nba208405 fix: preserve custom-scheme redirect_uri in standalone session flow (#2481)\n00275a57 feat: hand off popup auth for restrictive iframe environments (#2462)\ndd0d31b5 chore: bump controller-wasm to 0.9.6 (#2479)\na44d11b4 fix: show loading spinner while preset config loads (#2477)\n7ebcdc1f fix: check both redirect_url and redirect_uri for domain verification (#2474)\n5b62c633 fix: avoid error screen with unknown signers (#2472)\n316f5c49 fix: handle custom URL scheme verification for mobile apps (#2471)\n4bd29dc6 fix: improve EVM wallet detection and provider discovery (#2468)\n1464c86a chore: update controller-rs to 0.9.5 (#2465)\ne39b47ad feat: migrate payment.graphql to controller (#2464)\nb7456be6 fix: update apple pay pending screen (#2460)\nf43b3424 feat: enable apple pay via triple-click on review purchase icon (#2457)\necbbaa21 fix: onramp popup polling, retry state, and non-terminal commit errors (#2454)\nd882002d fix: coinbase popup polling fallback, retry reset, and animated alerts (#2453)","is_error":false}]},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"f03faf57-dc76-460e-9b57-86755b11bc76"} -{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_01Uzd9mcQatTcBsYDAUcX6kD","type":"message","role":"assistant","content":[{"type":"text","text":"Let me also check if there's an existing CHANGELOG.md to understand the format:"}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":3,"cache_creation_input_tokens":814,"cache_read_input_tokens":18255,"cache_creation":{"ephemeral_5m_input_tokens":814,"ephemeral_1h_input_tokens":0},"output_tokens":3,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"10ff091f-e166-4c74-a7f8-df350325c846"} -{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_01Uzd9mcQatTcBsYDAUcX6kD","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_015aYWCigSqChGDmgEhv9Kcz","name":"Read","input":{"file_path":"/home/runner/work/controller/controller/CHANGELOG.md"},"caller":{"type":"direct"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":3,"cache_creation_input_tokens":814,"cache_read_input_tokens":18255,"cache_creation":{"ephemeral_5m_input_tokens":814,"ephemeral_1h_input_tokens":0},"output_tokens":3,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"ab442d8e-1a3f-49c8-b47c-8ead30e7a8bb"} -{"type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_015aYWCigSqChGDmgEhv9Kcz","type":"tool_result","content":" 1→# Changelog\n 2→\n 3→## [0.13.10-alpha.1] - 2026-02-25\n 4→\n 5→### ✨ New Features\n 6→- **@cartridge/controller**: Added `updateSession` API for runtime session policy updates, enabling dynamic modification of session policies during runtime for improved flexibility (#2440)\n 7→- **@cartridge/keychain**: Added account parameter support on session page, allowing developers to pass account information directly to session flows (#2439)\n 8→- **@cartridge/keychain**: Enhanced activity tab with comprehensive review functionality for improved user activity tracking (#2413)\n 9→\n 10→### 🐛 Bug Fixes\n 11→- **@cartridge/controller**: Fixed connect flow to ensure reliable connection establishment and prevent connection failures (#2438)\n 12→- **@cartridge/controller**: Removed console errors for cleaner debugging experience and improved production logging (#2437)\n 13→- **@cartridge/controller**: Fixed disconnect method to properly call `close()` and reset iframe state, ensuring clean disconnection and preventing stale iframe issues (#2434)\n 14→- **@cartridge/keychain**: Fixed Stripe.js Content Security Policy by adding script-src allowlist entry, enabling proper Stripe integration for payment processing (#2433)\n 15→- **@cartridge/keychain**: Fixed Continue button display on Chrome iOS when automatic session creation fails, ensuring users can still proceed with manual session creation (#2429)\n 16→- **@cartridge/keychain**: Prioritized iOS detection before hasPlatformAuthenticator check for WebAuthn, improving passkey creation reliability on iOS devices (#2428)\n 17→\n 18→### 🚀 Improvements\n 19→- **@cartridge/keychain**: Enhanced WebAuthn debugging by capturing options via PostHog for iOS troubleshooting and analytics (#2427)\n 20→- **@cartridge/keychain**: Removed WebAuthn debug logging to reduce console noise in production environments (#2430)\n 21→\n 22→### 🔧 Development\n 23→- **CI/CD**: Added auto-merge functionality for docs-sync PRs after checks pass for improved documentation workflow (#2432)\n 24→- **CI/CD**: Refined docs-sync process for more concise and accurate documentation updates (#2431)\n 25→\n 26→## [0.13.9] - 2026-02-16\n 27→\n 28→### 🚀 Improvements\n 29→- **@cartridge/controller**: Enhanced iOS WebAuthn support with explicit creation options and improved debug logging for more reliable passkey creation on iOS devices (#2421)\n 30→- **@cartridge/controller**: Streamlined build process by removing redundant build script in controller package for improved development workflow (#2423)\n 31→\n 32→### 🐛 Bug Fixes\n 33→- **@cartridge/keychain**: Fixed quest toast notifications by removing them to prevent user interface clutter and improve user experience (#2425)\n 34→- **@cartridge/controller**: Improved passkey creation flow for Chrome iOS by implementing direct iframe approach instead of popup flow for better mobile compatibility (#2419, #2420)\n 35→- **@cartridge/controller**: Enhanced iOS passkey creation reliability by setting authenticatorAttachment to platform for improved device authentication (#2417)\n 36→\n 37→### 🔧 Testing\n 38→- **@cartridge/controller**: Added comprehensive Capacitor session redirect E2E tests to prevent regressions in session ingestion and account creation flows (#2424)\n 39→- **@cartridge/controller**: Added regression tests for controller disconnect localStorage cleanup functionality (#2414)\n 40→\n 41→### 📦 Dependencies\n 42→- **controller-wasm**: Updated to version 0.9.4 for improved backend functionality (#2418)\n 43→- **Dependencies**: Updated ERC metadata dependencies for better token support (#2422)\n 44→\n 45→## [0.13.8] - 2026-02-13\n 46→\n 47→### ✨ New Features\n 48→- **@cartridge/controller**: Added new mainnet USDC token support with legacy USDC.e labeling for improved token identification (#94dae94e)\n 49→\n 50→### 🚀 Improvements\n 51→- **@cartridge/controller**: Enhanced connection policy resolution by fixing preset theme and custom policy override precedence, allowing apps to maintain preset-derived configuration while explicitly overriding preset policies (#2408)\n 52→- **@cartridge/controller**: Improved maintainability by extracting hardcoded \"startapp\" query parameter into `REDIRECT_QUERY_NAME` constant following Telegram mini app convention (#2412)\n 53→\n 54→### 🐛 Bug Fixes\n 55→- **@cartridge/controller**: Fixed `SessionProvider.probe()` returning undefined after `ingestSessionFromRedirect()` by restoring on-demand session retrieval for deep link redirects in Capacitor and mobile apps (#2409)\n 56→- **Token Configuration**: Reverted mainnet USDC token support changes to restore legacy behavior for token metadata and mainnet token indexing entries (#2410)\n 57→\n 58→### 🔧 Testing\n 59→- **@cartridge/controller**: Added comprehensive regression tests for controller disconnect localStorage cleanup functionality (#2414)\n 60→\n 61→## [0.13.7] - 2026-02-12\n 62→\n 63→### ✨ New Features\n 64→- **@cartridge/controller**: Added `lookupUsername(username)` method for headless flows, returning account existence status and normalized signer options for the controller's configured chain (#2400)\n 65→- **@cartridge/controller**: Added auto-signup functionality for headless connect when a username is missing, while maintaining strict signer matching for existing accounts (#2400)\n 66→- **@cartridge/connector**: Exposed `lookupUsername` helper method through ControllerConnector for easier integration with starknet-react applications (#2400)\n 67→\n 68→### 🚀 Improvements\n 69→- **Documentation**: Updated HEADLESS_MODE.md with recommended lookup-first flow patterns for improved developer guidance (#2400)\n 70→- **Testing**: Added comprehensive test coverage for username lookup normalization, error handling, and password-based headless auto-signup flows (#2400)\n 71→\n 72→## [0.13.6] - 2026-02-12\n 73→\n 74→### 🚀 Improvements\n 75→- **@cartridge/controller**: Enhanced SessionProvider preset support with automatic policy resolution from `@cartridge/presets`, enabling developers to use `preset: \"my-game\"` instead of manually duplicating policies and ensuring consistent policy hashing between SDK and keychain (#2401)\n 76→- **Documentation**: Updated project structure documentation with comprehensive provider flows, clarified ControllerProvider (web) and SessionProvider (native) architecture, and improved examples directory guidance (#2404)\n 77→\n 78→### 🐛 Bug Fixes\n 79→- **@cartridge/controller**: Fixed `session/not-registered` errors by normalizing contract addresses in policy hashing and consolidating async initialization to prevent policy hash divergence between SDK and keychain (#2401)\n 80→- **@cartridge/keychain**: Fixed theme copy button visibility in ErrorAlert component by replacing hardcoded black icons with theme-aware styling, ensuring proper visibility on dark backgrounds (#2402)\n 81→\n 82→## [0.13.5] - 2026-02-10\n 83→\n 84→### ✨ New Features\n 85→- **@cartridge/controller**: Added headless mode support to controller SDK for seamless authentication, allowing `connect({ username, signer, password? })` with hidden keychain iframe and UI-less authentication flows (#2315)\n 86→- **@cartridge/controller**: Added `close()` method to ControllerProvider for programmatic cleanup of controller instances (#2373)\n 87→- **@cartridge/controller**: Moved `asWalletStandard()` method from connector to controller package, enabling wallet standard usage without starknet-react dependency (#2364)\n 88→\n 89→### 🚀 Improvements\n 90→- **@cartridge/keychain**: Enhanced session management with exposed session GUID fields (`allowedPoliciesRoot`, `metadataHash`, `sessionKeyGuid`, `guardianKeyGuid`) in keychain callback payloads for registered sessions (#2396)\n 91→- **@cartridge/keychain**: Consolidated policy handling by refactoring `toWasmPolicies` into single source of truth for improved consistency (#2394)\n 92→- **@cartridge/keychain**: Enhanced quests and achievements display to only show tabs when game/application supports them (#2392)\n 93→- **@cartridge/keychain**: Improved starterpack purchase UI to always show quantity in purchase button for better user clarity (#2390)\n 94→- **@cartridge/connector**: Improved disconnect handling to keep `@starknet-react/core` state in sync with controller state (#2315)\n 95→\n 96→### 🐛 Bug Fixes\n 97→- **@cartridge/keychain**: Fixed session authentication to properly disconnect and re-authenticate when session `rpc_url` differs from stored controller, ensuring correct chain targeting (#2395)\n 98→- **@cartridge/controller**: Enhanced iframe security by hardening keychain iframe loading with URL validation, origin pinning, and reduced feature grants by default (#2384)\n 99→- **@cartridge/keychain**: Added keychain CSP/security headers and removed inline scripts from index.html for improved security posture (#2384)\n 100→\n 101→### 📦 Dependencies\n 102→- **controller-rs**: Updated to v0.9.3 for improved backend functionality (#2397)\n 103→\n 104→## [0.13.4] - 2026-02-06\n 105→\n 106→### 🐛 Bug Fixes\n 107→- **CI/CD**: Fixed npm publishing with catalog resolution by reverting to pnpm publish, which correctly handles pnpm catalog: protocol that npm publish doesn't support, ensuring proper package resolution in published packages (#77210c65)\n 108→\n 109→### 🔧 Development\n 110→- **Agent Tooling**: Added standardized agent/dev tooling with `.agents/` directory as source of truth, Claude/Cursor skill compatibility symlinks, and enhanced pre-commit hooks for improved development workflow (#2388)\n 111→\n 112→## [0.13.3] - 2026-02-06\n 113→\n 114→### ✨ New Features\n 115→- **@cartridge/controller**: Added starterpack play callback functionality enabling custom game launch behavior and improved gaming integration (#2362)\n 116→- **@cartridge/controller**: Added specialized controller toast notifications with improved messaging and user feedback for iframe-embedded applications (#2358)\n 117→\n 118→### 🚀 Improvements\n 119→- **@cartridge/keychain**: Enhanced iframe connect flow with automatic Storage Access API request for improved cross-domain authentication in WebView environments (#2374)\n 120→- **@cartridge/keychain**: Tightened Capacitor origin verification to only auto-verify localhost, requiring explicit authorization for custom hostnames in presets for enhanced security (#2375)\n 121→- **@cartridge/controller**: Improved policy handling with canonical sorting before hashing to ensure consistent policy processing and prevent non-deterministic merkle root calculations (#2359)\n 122→- **@cartridge/controller**: Enhanced preset verification for Capacitor environments with better validation and support for capacitor:// scheme (#2369)\n 123→\n 124→### 🐛 Bug Fixes\n 125→- **@cartridge/controller**: Added ApprovalPolicy support to controller toWasmPolicies for proper merkle root calculation across different connectors, fixing session registration mismatches (#2372)\n 126→- **@cartridge/controller**: Fixed aggregate contracts display on unverified session to properly group methods into \"Approve \" expendable cards (#2304)\n 127→- **@cartridge/controller**: Fixed controller re-initialization issues by reusing existing controller instances to prevent duplicate iframes and message channels (#2360)\n 128→- **@cartridge/controller**: Fixed chain ID lookup to support non-Cartridge chain configurations for better multi-chain compatibility (#2361)\n 129→- **@cartridge/keychain**: Fixed Coinbase sandbox configuration to ensure proper sandbox environment setup (#2371)\n 130→- **@cartridge/keychain**: Fixed password login button alignment with primary theme for consistent UI styling (#2385)\n 131→\n 132→## [0.13.2] - 2026-02-06\n 133→\n 134→### 🐛 Bug Fixes\n 135→- **@cartridge/controller, @cartridge/connector**: Added repository field to package.json files for npm OIDC trusted publishing, ensuring proper package verification and supply chain security (#c9c6f25d)\n 136→\n 137→## [0.13.1] - 2026-02-06\n 138→\n 139→### 🐛 Bug Fixes\n 140→- **CI/CD**: Fixed npm publishing with OIDC authentication by switching from pnpm publish to npm publish and removing registry-url from setup-node to prevent .npmrc conflicts that block OIDC token exchange (#3880e8ba)\n 141→\n 142→## [0.13.0] - 2026-02-06\n 143→\n 144→### ✨ New Features\n 145→- **@cartridge/controller**: Added ApprovalPolicy support to controller toWasmPolicies for enhanced policy management and proper merkle root calculation across different connectors (#2372)\n 146→- **@cartridge/controller**: Added starterpack play callback functionality enabling custom game launch behavior and improved gaming integration (#2362)\n 147→- **@cartridge/controller**: Added specialized controller toast notifications with improved messaging and user feedback for iframe-embedded applications (#2358)\n 148→\n 149→### 🚀 Improvements\n 150→- **@cartridge/keychain**: Enhanced iframe connect flow with automatic Storage Access API request for improved cross-domain authentication in WebView environments (#2374)\n 151→- **@cartridge/keychain**: Tightened Capacitor origin verification to only auto-verify localhost, requiring explicit authorization for custom hostnames in presets for enhanced security (#2375)\n 152→- **@cartridge/controller**: Improved policy handling with canonical sorting before hashing to ensure consistent policy processing and prevent non-deterministic merkle root calculations (#2359)\n 153→- **@cartridge/controller**: Enhanced preset verification for Capacitor environments with better validation and support for capacitor:// scheme (#2369)\n 154→- **Development**: Migrated npm publishing to OIDC authentication with supply chain provenance attestation for enhanced security (#2381)\n 155→\n 156→### 🐛 Bug Fixes\n 157→- **@cartridge/controller**: Fixed aggregate contracts display on unverified session to properly group methods into \"Approve \" expendable cards (#2304)\n 158→- **@cartridge/controller**: Fixed controller re-initialization issues by reusing existing controller instances to prevent duplicate iframes and message channels (#2360)\n 159→- **@cartridge/controller**: Fixed chain ID lookup to support non-Cartridge chain configurations for better multi-chain compatibility (#2361)\n 160→- **@cartridge/keychain**: Fixed Coinbase sandbox configuration to ensure proper sandbox environment setup (#2371)\n 161→- **CI/CD**: Fixed release workflow race conditions by inlining changelog generation into release dispatch workflow (#2379)\n 162→\n 163→## [0.12.3] - 2026-02-05\n 164→\n 165→### ✨ New Features\n 166→- **@cartridge/keychain**: Added Capacitor origin verification tightening for enhanced security in mobile environments (#2375)\n 167→- **@cartridge/controller**: Added specialized controller toast notifications with improved messaging and user feedback (#2358)\n 168→- **@cartridge/controller**: Added ApprovalPolicy support to controller toWasmPolicies for enhanced policy management (#2372)\n 169→- **@cartridge/controller**: Added starterpack play callback functionality for improved gaming integration (#2362)\n 170→\n 171→### 🚀 Improvements \n 172→- **@cartridge/keychain**: Enhanced iframe connect flow with automatic storage access request for improved cross-domain authentication (#2374)\n 173→- **@cartridge/controller**: Improved policy handling with canonical sorting before hashing to ensure consistent policy processing (#2359)\n 174→- **@cartridge/controller**: Enhanced preset verification for Capacitor environments with better validation (#2369)\n 175→\n 176→### 🐛 Bug Fixes\n 177→- **@cartridge/controller**: Fixed aggregate contracts on unverified session to prevent session-related issues (#2304)\n 178→- **@cartridge/keychain**: Fixed Coinbase sandbox configuration to ensure proper sandbox environment setup (#2371)\n 179→- **@cartridge/controller**: Fixed controller re-initialization issues by reusing existing controller instances (#2360)\n 180→- **@cartridge/controller**: Fixed chain ID lookup to support non-Cartridge chain configurations (#2361)\n 181→\n 182→## [0.12.2] - 2026-01-29\n 183→\n 184→### ✨ New Features\n 185→- **Examples**: Added Capacitor session example with iOS app integration, demonstrating mobile session management and providing comprehensive cross-platform development guidance (#2355)\n 186→- **@cartridge/keychain**: Enhanced Coinbase onramp integration with `createCoinbaseLayerswapOrder` mutation for improved order creation and processing (#2354)\n 187→- **@cartridge/keychain**: Added comprehensive cost breakdown display for Apple Pay purchases, showing detailed fee structure including Coinbase fees and bridge fees with real-time pricing from Coinbase Onramp API (#2352)\n 188→- **@cartridge/keychain**: Added starterpack Apple Pay checkout functionality for streamlined mobile payments (#2339)\n 189→- **@cartridge/keychain**: Implemented verification autofill functionality for improved user experience during authentication flows (#2342)\n 190→- **@cartridge/keychain**: Added order fetching by IDs capability for enhanced order management and tracking (#2334)\n 191→\n 192→### 🚀 Improvements \n 193→- **@cartridge/keychain**: Removed supported-platforms feature gate, making platform detection generally available (#2335)\n 194→- **Development**: Migrated skills documentation to centralized `.agents/skills` directory for better organization and AI-assisted development workflows (#2353)\n 195→\n 196→### 🐛 Bug Fixes\n 197→- **@cartridge/keychain**: Fixed 'proceed with caution' warning visibility for slot login flows, improving user experience (#2351)\n 198→- **@cartridge/keychain**: Fixed purchase token layout issues for better visual consistency (#2343)\n 199→- **@cartridge/keychain**: Fixed Layerswap username retrieval from authentication context for proper user identification (#2347)\n 200→- **@cartridge/keychain**: Fixed Coinbase Terms of Service link for proper legal compliance (#2341)\n 201→- **@cartridge/keychain**: Fixed Coinbase query handling for improved API integration (#2338)\n 202→\n 203→### 📦 Dependencies\n 204→- **@cartridge/ui**: Multiple updates for improved design consistency and functionality (#2350, #2348, #2346, #2345, #2344, #2337)\n 205→\n 206→## [0.12.1] - 2026-01-07\n 207→\n 208→### ✨ New Features\n 209→- **@cartridge/controller**: Added configurable error display modes with `errorDisplayMode` option, enabling developers to control how transaction errors are presented to users with three modes: `modal` (default), `notification` (clickable toast), and `silent` (console only) (#2312)\n 210→\n 211→### 🚀 Improvements \n 212→- **Development**: Enhanced Claude Code integration with structured skill guides for code review, PR management, testing, Storybook snapshots, and release workflows (#2311, #2310)\n 213→- **Documentation**: Expanded CLAUDE.md with detailed technology stack versions, build process explanations, and comprehensive development workflow guidance (#2310)\n 214→\n 215→### 🔧 Development\n 216→- **Build**: Added .worktrees to .gitignore for improved Git worktree support (#2311)\n 217→- **Claude Integration**: Added comprehensive permissions configuration and skill documentation for streamlined AI-assisted development (#2311, #2310)\n 218→\n 219→## [0.12.0] - 2026-01-01\n 220→\n 221→### ✨ New Features\n 222→- **@cartridge/controller**: Added dynamic `signupOptions` to `connect()` method, enabling developers to override constructor configuration per connection and create multiple branded authentication flows (e.g., \"Login with Phantom\", \"Login with Google\") using a single Controller instance (#2298)\n 223→- **@cartridge/keychain**: Added wallet selection drawer for onchain checkout, replacing navigation-based flow with inline slide-up drawer for more seamless UX (#2294)\n 224→- **@cartridge/keychain**: Added Coinbase onramp integration with `useCoinbase` hook for order creation, transaction queries, and requirement checks with automatic client IP detection (#2296)\n 225→- **@cartridge/keychain**: Added support for additional payment tokens in starterpack metadata, allowing creators to specify custom payment options beyond default ETH, STRK, and USDC (#2292)\n 226→\n 227→### 🚀 Improvements \n 228→- **@cartridge/controller**: Enhanced paymaster error handling with graceful fallback to user-pays flow when paymaster is unavailable due to rate limits, execution timing, or other conditions (#2291)\n 229→- **@cartridge/keychain**: Improved authentication flows with branded button text for single-signer configurations and configurable signup authentication methods (#2290)\n 230→- **@cartridge/keychain**: Enhanced session management by restoring wildcard session creation during login flows for better user experience (#2302, #637faa12)\n 231→- **@cartridge/keychain**: Updated Ekubo integration to use new chain ID-based API format for improved swap functionality (#2287)\n 232→- **@cartridge/keychain**: Improved session footer styling with proper padding and button text updates from \"Create Session\" to \"Continue\" (#2274)\n 233→\n 234→### 🐛 Bug Fixes\n 235→- **@cartridge/controller**: Restored `propagateSessionErrors` functionality for contract execution, ensuring errors are properly propagated back to callers instead of showing manual approval modal when enabled (#2305)\n 236→- **@cartridge/keychain**: Fixed starterpack loading flicker by showing proper loading states during loading/onchain/preimage states (#2297)\n 237→- **@cartridge/keychain**: Fixed collection pagination issues for better user experience (#2301)\n 238→- **@cartridge/keychain**: Fixed session management by reverting and then restoring wildcard session creation during register session login for optimal user flow (#2299, #2302)\n 239→- **@cartridge/keychain**: Fixed Ekubo API CORS issues by specifying proper CORS headers and credentials handling (#2288)\n 240→\n 241→### 📦 Dependencies\n 242→- **@cartridge/ui**: Updated to latest commits for improved design consistency and React 19 peer dependency support (#2295, #2260)\n 243→\n 244→## [0.11.4-alpha.1] - 2025-12-31\n 245→\n 246→### ✨ New Features\n 247→- **@cartridge/controller**: Added dynamic `signupOptions` to `connect()` method, enabling developers to override constructor configuration per connection and create multiple branded authentication flows (e.g., \"Login with Phantom\", \"Login with Google\") using a single Controller instance (#2298)\n 248→- **@cartridge/keychain**: Added wallet selection drawer for onchain checkout, replacing navigation-based flow with inline slide-up drawer for more seamless UX (#2294)\n 249→- **@cartridge/keychain**: Added Coinbase onramp integration with `useCoinbase` hook for order creation, transaction queries, and requirement checks with automatic client IP detection (#2296)\n 250→- **@cartridge/keychain**: Added support for additional payment tokens in starterpack metadata, allowing creators to specify custom payment options beyond default ETH, STRK, and USDC (#2292)\n 251→\n 252→### 🚀 Improvements \n 253→- **@cartridge/controller**: Enhanced paymaster error handling with graceful fallback to user-pays flow when paymaster is unavailable due to rate limits, execution timing, or other conditions (#2291)\n 254→- **@cartridge/keychain**: Improved authentication flows with branded button text for single-signer configurations and configurable signup authentication methods (#2290, #1b4423c3)\n 255→- **@cartridge/keychain**: Enhanced session management by restoring wildcard session creation during login flows for better user experience (#2302, #637faa12)\n 256→- **@cartridge/keychain**: Updated Ekubo integration to use new chain ID-based API format for improved swap functionality (#2287)\n 257→- **@cartridge/keychain**: Improved session footer styling with proper padding and button text updates from \"Create Session\" to \"Continue\" (#2274)\n 258→\n 259→### 🐛 Bug Fixes\n 260→- **@cartridge/controller**: Restored `propagateSessionErrors` functionality for contract execution, ensuring errors are properly propagated back to callers instead of showing manual approval modal when enabled (#2305)\n 261→- **@cartridge/keychain**: Fixed starterpack loading flicker by showing proper loading states during loading/onchain/preimage states (#2297)\n 262→- **@cartridge/keychain**: Fixed collection pagination issues for better user experience (#2301)\n 263→- **@cartridge/keychain**: Fixed controlled Select component warnings in cost breakdown by using proper value handling (#2294)\n 264→- **@cartridge/keychain**: Fixed Ekubo API CORS issues by specifying proper CORS headers and credentials handling (#2288)\n 265→\n 266→### 🔧 Refactoring\n 267→- **Development**: Multiple UI component updates and dependency management improvements (#2295, #2260)\n 268→- **@cartridge/keychain**: Simplified authentication flows by removing complex route-based session skipping logic in favor of consistent wildcard session creation (#2286, #2285)\n 269→\n 270→### 📦 Dependencies\n 271→- **@cartridge/ui**: Updated to latest commits for improved design consistency and React 19 peer dependency support\n 272→\n 273→## [0.11.3] - 2025-12-10\n 274→\n 275→### ✨ New Features\n 276→- **@cartridge/keychain**: Added Layerswap cross-chain deposit integration for onchain checkout with balance checks, bridging actions, and UI for conversion/liquidity errors (#2273)\n 277→- **@cartridge/controller**: Added Phantom EVM wallet authentication method extending EthereumWalletBase, enabling login and signup with Phantom's EVM-compatible mode (#2278)\n 278→- **@cartridge/controller**: Added toast notification API with ToastType and ToastOptions interfaces, enabling toast creation from the controller SDK (#2265)\n 279→- **@cartridge/keychain**: Added quests functionality for enhanced gaming features (#2280)\n 280→\n 281→### 🚀 Improvements \n 282→- **@cartridge/keychain**: Enhanced onchain purchase flow with multi-network wallet selection, improved cost breakdown displaying Layerswap fees, and streamlined navigation (#2273)\n 283→- **@cartridge/keychain**: Improved purchase context architecture by splitting into flow-specific contexts (StarterpackContext, OnchainPurchaseContext, CreditPurchaseContext) for better maintainability (#2270)\n 284→- **@cartridge/keychain**: Enhanced authentication flows to skip wildcard session creation during register session login, reducing friction from two signatures to one (#2275)\n 285→- **@cartridge/keychain**: Reverted controller iframe dismiss behavior to prevent accidental closure when clicking outside (#2277)\n 286→\n 287→### 🐛 Bug Fixes\n 288→- **@cartridge/keychain**: Fixed network selection flicker by adding detection state to suppress empty UI while detecting external wallets (#2272)\n 289→- **@cartridge/keychain**: Fixed Turnkey nonce mismatch errors by clearing cached Auth0 tokens before nonce generation, ensuring fresh tokens with correct nonces (#2271)\n 290→- **@cartridge/controller**: Added payment permission to iframe allow attribute for proper Stripe Payment Request API access, enabling Apple Pay and Google Pay support (#2269)\n 291→- **@cartridge/keychain**: Reduced Ekubo API console noise by removing verbose 429 logging and adjusting retry/backoff configurations for better rate limit handling (#2268)\n 292→\n 293→### 🔧 Refactoring\n 294→- **Development**: Removed build:compat infrastructure and associated dependencies, simplifying build configuration across packages (#2279)\n 295→\n 296→## [0.11.3-alpha.2] - 2025-12-10\n 297→\n 298→### ✨ New Features\n 299→- **@cartridge/keychain**: Added Layerswap cross-chain deposit integration for onchain checkout with balance checks, bridging actions, and UI for conversion/liquidity errors (#2273)\n 300→- **@cartridge/controller**: Added Phantom EVM wallet authentication method extending EthereumWalletBase, enabling login and signup with Phantom's EVM-compatible mode (#2278)\n 301→- **@cartridge/controller**: Added toast notification API with ToastType and ToastOptions interfaces, enabling toast creation from the controller SDK (#2265)\n 302→- **@cartridge/keychain**: Added quests functionality for enhanced gaming features (#2280)\n 303→\n 304→### 🚀 Improvements \n 305→- **@cartridge/keychain**: Enhanced onchain purchase flow with multi-network wallet selection, improved cost breakdown displaying Layerswap fees, and streamlined navigation (#2273)\n 306→- **@cartridge/keychain**: Improved purchase context architecture by splitting into flow-specific contexts (StarterpackContext, OnchainPurchaseContext, CreditPurchaseContext) for better maintainability (#2270)\n 307→- **@cartridge/keychain**: Enhanced authentication flows to skip wildcard session creation during register session login, reducing friction from two signatures to one (#2275)\n 308→- **@cartridge/keychain**: Reverted controller iframe dismiss behavior to prevent accidental closure when clicking outside (#2277)\n 309→\n 310→### 🐛 Bug Fixes\n 311→- **@cartridge/keychain**: Fixed network selection flicker by adding detection state to suppress empty UI while detecting external wallets (#2272)\n 312→- **@cartridge/keychain**: Fixed Turnkey nonce mismatch errors by clearing cached Auth0 tokens before nonce generation, ensuring fresh tokens with correct nonces (#2271)\n 313→- **@cartridge/controller**: Added payment permission to iframe allow attribute for proper Stripe Payment Request API access, enabling Apple Pay and Google Pay support (#2269)\n 314→- **@cartridge/keychain**: Reduced Ekubo API console noise by removing verbose 429 logging and adjusting retry/backoff configurations for better rate limit handling (#2268)\n 315→\n 316→### 🔧 Refactoring\n 317→- **Development**: Removed build:compat infrastructure and associated dependencies, simplifying build configuration across packages (#2279)\n 318→\n 319→## [0.11.3-alpha.1] - 2025-12-01\n 320→\n 321→### ✨ New Features\n 322→- **@cartridge/keychain**: Added DevConnect booster pack claim integration with Merkle claim functionality, enabling users to claim DevConnect rewards through preimage-derived EVM addresses (#2249)\n 323→- **@cartridge/keychain**: Streamlined onchain starterpack purchase flow with direct checkout navigation, removing intermediate screens and defaulting to controller wallet for faster transactions (#2200)\n 324→- **@cartridge/keychain**: Added horizontal carousel for booster pack cards on mobile devices, providing swipeable navigation and improved touch experience (#2253)\n 325→- **@cartridge/keychain**: Added localStorage availability check for booster packs to ensure proper functionality across different environments (#2259)\n 326→- **@cartridge/keychain**: Added tournament game links integration for enhanced gaming navigation (#2252)\n 327→- **@cartridge/keychain**: Implemented token IDs retrieval from claim transactions for better transaction tracking (#2255)\n 328→\n 329→### 🚀 Improvements \n 330→- **@cartridge/keychain**: Simplified redirect logic in ConnectRoute for more streamlined authentication flows (#2248)\n 331→- **@cartridge/keychain**: Enhanced claim interactions for mystery assets with improved user feedback (#2257)\n 332→- **@cartridge/keychain**: Restored claim call functionality for improved transaction processing (#2254)\n 333→\n 334→### 🐛 Bug Fixes\n 335→- **@cartridge/controller**: Fixed iframe local network access by adding `local-network-access *` to iframe allow attribute, enabling proper local development (#2266)\n 336→- **@cartridge/keychain**: Fixed merkle claim UI stuck issue preventing users from completing claim flows (#2261)\n 337→- **@cartridge/keychain**: Fixed token icon retrieval from presets for consistent token display (#2258)\n 338→- **@cartridge/keychain**: Added redirect URL support for WebAuthn authentication, improving authentication flow reliability (#2250)\n 339→- **@cartridge/keychain**: Fixed Turnkey popup navigation to keychain for better authentication routing (#2247)\n 340→- **@cartridge/keychain**: Updated ConnectRoute tests to match simplified redirect logic for improved test reliability (#2263)\n 341→- **@cartridge/keychain**: Fixed input format issues for better form validation (#2251)\n 342→- **@cartridge/keychain**: Fixed event parsing to only handle mystery item events properly (#2256)\n 343→\n 344→## [0.11.2] - 2025-11-14\n 345→\n 346→### ✨ New Features\n 347→- **@cartridge/keychain**: Implemented encrypted localStorage snapshot for Storage Access API using split-key encryption architecture, eliminating Cookie Store API dependency and enabling secure state transfer across third-party iframe boundaries (#2239)\n 348→\n 349→### 🚀 Improvements \n 350→- **@cartridge/keychain**: Enhanced iOS popup reliability with retry logic, exponential backoff, and stability checks for improved authentication flow on iOS devices (#2244)\n 351→- **@cartridge/keychain**: Updated booster pack claim flow with improved component structure and better user experience (#2240)\n 352→- **@cartridge/keychain**: Enhanced debug logging with comprehensive Turnkey authentication logs for better troubleshooting (#2241)\n 353→\n 354→### 🐛 Bug Fixes\n 355→- **@cartridge/keychain**: Fixed popup error handling by preventing thrown errors on blocked popups, maintaining original flow behavior for mobile compatibility (#2243)\n 356→- **@cartridge/keychain**: Reverted popup error logging to address reliability issues and maintain stable authentication flows (#2242, #2238)\n 357→- **@cartridge/keychain**: Fixed claim pill size display issues for better visual consistency (#2226)\n 358→- **@cartridge/keychain**: Fixed default image handling bug in booster pack components (#2225)\n 359→- **@cartridge/keychain**: Updated game links for improved navigation and user experience (#2224)\n 360→- **@cartridge/keychain**: Enhanced dynamic height CSS for better responsive design (#2233)\n 361→- **@cartridge/keychain**: Improved localStorage and dead-path cookie synchronization for standalone flows (#2232)\n 362→- **@cartridge/keychain**: Removed deprecated controller_redirect functionality to streamline authentication flows (#2230)\n 363→- **@cartridge/keychain**: Simplified storage access request logic for more reliable cross-domain authentication (#2229)\n 364→- **@cartridge/controller**: Refactored session creation to load controller from store for improved session management (#2228)\n 365→- **Development**: Fixed environment variable loading for live environment configuration (#2227)\n 366→\n 367→### 📦 Dependencies\n 368→- **Development**: Added Storybook story for StandaloneConnect component for improved component testing and documentation (#2231)\n 369→\n 370→## [0.11.2-alpha.4] - 2025-11-13\n 371→\n 372→### ✨ New Features\n 373→- **@cartridge/keychain**: Added booster pack claim page for DevConnect rewards, enabling users to claim credits, tokens, and NFTs using private keys from reward URLs with comprehensive signature validation and post-claim actions (#2160)\n 374→\n 375→### 🚀 Improvements \n 376→- **@cartridge/controller**: Refactored session architecture to move app_id from account constructors to session-specific operations, enabling a single shared controller instance to serve multiple applications through app-specific sessions (#2220)\n 377→\n 378→### 🐛 Bug Fixes\n 379→- **@cartridge/controller**: Fixed standalone authentication flow storage access issues by adding debug logging for redirect detection, updating StandaloneConnect UI with generic permission messages, and removing pre-authenticated account display for improved security and clarity (#2217)\n 380→\n 381→### 📦 Dependencies\n 382→- **@cartridge/ui**: Updated to commit df8934d for improved design consistency and functionality (#2218)\n 383→\n 384→## [0.11.2-alpha.3] - 2025-11-12\n 385→\n 386→### ✨ New Features\n 387→- **@cartridge/controller**: Added `signupOptions` support to SessionProvider, enabling developers to configure which authentication methods (Google, Discord, MetaMask, etc.) are available during session creation and bringing SessionProvider feature parity with ControllerProvider (#2219)\n 388→\n 389→## [0.11.2-alpha.2] - 2025-11-11\n 390→\n 391→### 🚀 Improvements\n 392→- **@cartridge/controller**: Refactored `openStarterPack` method signature to accept an options object instead of direct parameters, making the API more extensible for future additions (#2213)\n 393→\n 394→### 🐛 Bug Fixes\n 395→- **@cartridge/controller**: Fixed standalone auth flow storage access by implementing dedicated `controller_storage_ready` parameter for redirect detection and automatic Storage Access API requests, enabling seamless cross-domain authentication flow (#2212)\n 396→- **@cartridge/keychain**: Reverted Turnkey nonce mismatch fix to address reliability issues (#2215)\n 397→\n 398→## [0.11.2-alpha.1] - 2025-11-11\n 399→\n 400→### ✨ New Features\n 401→- **@cartridge/keychain**: Added Ethereum preimage signing for Merkle claims, enabling users to claim tokens using a preimage when external wallets are not available or preferred (#2185)\n 402→\n 403→### 🚀 Improvements \n 404→- **@cartridge/controller**: Refactored `openStarterPack` method signature to accept an options object instead of direct parameters, making the API more extensible for future additions (#2213)\n 405→- **@cartridge/keychain**: Simplified game redirect URLs in PlayButton component to use cleaner parameter format with direct game URLs (#2209)\n 406→- **Development**: Disabled Vite visualizer auto-open in production builds to streamline the build process (#2211)\n 407→- **Examples**: Added Nums game integration to the PlayButton component with appropriate redirect and preset configuration (#2206)\n 408→\n 409→### 🐛 Bug Fixes\n 410→- **@cartridge/keychain**: Fixed Turnkey nonce mismatch by persisting nonce in localStorage across Auth0 redirects, resolving iframe recreation issues during the authentication flow (#2210)\n 411→\n 412→### 📦 Dependencies\n 413→- **@cartridge/controller-wasm**: Updated to version 0.3.17 for improved functionality (#2207)\n 414→\n 415→## [0.11.0] - 2025-11-10\n 416→\n 417→### ✨ New Features\n 418→- **@cartridge/controller**: Added controller_redirect parameter for standalone flow, enabling automatic redirect to keychain for first-party storage access with preset support (#2192)\n 419→- **@cartridge/keychain**: Added Layerswap deposit support for starterpack purchases, replacing backend purchase flow with more flexible deposit-based approach (#2194)\n 420→- **@cartridge/keychain**: Added transaction hash display on success screen for onchain purchases, improving transaction transparency and user feedback (#2186)\n 421→- **@cartridge/keychain**: Added balance_of fallback and enhanced error handling for token balance checks, improving reliability of token balance queries (#2178)\n 422→- **Development**: Added conductor.json workspace configuration for improved development workflow (#2195)\n 423→\n 424→### 🚀 Improvements \n 425→- **@cartridge/keychain**: Refactored starterpack architecture to separate claim and onchain flows with clearer terminology - \"backend\" starterpacks renamed to \"claimed\" starterpacks for better clarity (#2199)\n 426→- **@cartridge/keychain**: Enhanced standalone flow with automatic connector detection from redirect flow, improving user experience (#2189)\n 427→- **@cartridge/keychain**: Improved mobile detection logic for better cross-platform compatibility (#2175)\n 428→- **@cartridge/keychain**: Redesigned starterpack receiving and success screens for improved user experience (#2183)\n 429→- **@cartridge/keychain**: Enhanced transaction cancellation handling when navigating back from transaction flows (#2180)\n 430→\n 431→### 🐛 Bug Fixes\n 432→- **@cartridge/keychain**: Fixed torii token configuration for improved token handling (#2201)\n 433→- **@cartridge/keychain**: Fixed session auto-creation redirect timing in standalone authentication flow (#2196)\n 434→- **@cartridge/keychain**: Fixed preset verification in standalone flow for more reliable preset validation (#2191)\n 435→- **@cartridge/keychain**: Fixed URL search parameter preservation in connect route to maintain state during navigation (#2188)\n 436→- **@cartridge/keychain**: Fixed achievement display issues for better user profile experience (#2181)\n 437→\n 438→### 🔧 Refactoring\n 439→- **@cartridge/controller**: Removed unused onAuthenticationSuccess callback to streamline authentication flow (#2197)\n 440→- **@cartridge/keychain**: Deprecated CryptoCheckout component in favor of new Layerswap deposit approach (#2194)\n 441→\n 442→### 📦 Dependencies\n 443→- **@cartridge/ui**: Updated to latest version for improved design consistency (#2190, #2182)\n 444→\n 445→## [0.10.7] - 2025-10-01\n 446→\n 447→### ✨ New Features\n 448→- **@cartridge/controller**: Added async/await pattern for controller initialization, providing better error handling and improved developer experience (#2070)\n 449→- **@cartridge/keychain**: Added disconnect redirect URL support for session provider, enabling better session management and app navigation (#2074)\n 450→\n 451→### 🚀 Improvements \n 452→- **@cartridge/keychain**: Removed deprecated layout style overrides across components for cleaner UI rendering (#2040)\n 453→- **@cartridge/keychain**: Extracted keychain URL logic into dedicated function for better code organization and maintainability (#2071)\n 454→- **@cartridge/keychain**: Enhanced bottom navigation to preserve query parameters during navigation (#2072)\n 455→- **@cartridge/keychain**: Improved token sorting in ERC20 lists for better user experience (#2083)\n 456→- **Development**: Enforced React hook dependencies for improved code quality (#2065)\n 457→\n 458→### 🐛 Bug Fixes\n 459→- **@cartridge/controller**: Fixed Ethereum wallet availability on mobile browsers by adding mobile detection to prevent unsupported wallet initialization (#2076)\n 460→- **@cartridge/keychain**: Fixed BigInt serialization errors in execute URL parameters by adding proper JSON serialization handling (#2084)\n 461→- **@cartridge/keychain**: Resolved circular dependency and BigInt handling issues in starterpack components (#2085)\n 462→- **@cartridge/keychain**: Fixed starterpack crypto cost breakdown display for accurate pricing information (#2081)\n 463→- **@cartridge/keychain**: Fixed controller loading state management for smoother user experience (#2078)\n 464→- **@cartridge/keychain**: Fixed authentication method types for improved type safety (#2073)\n 465→- **@cartridge/keychain**: Fixed inventory display issues and asset collection rendering (#2069, #2068)\n 466→\n 467→### 📦 Dependencies\n 468→- **@cartridge/presets**: Updated to latest version for improved functionality (#2077)\n 469→\n 470→## [0.10.6] - 2025-09-26\n 471→\n 472→### ✨ New Features\n 473→- **@cartridge/keychain**: Added marketplace integration with consolidated arcade provider functionality, streamlining marketplace operations and improving the gaming marketplace experience (#2063)\n 474→- **@cartridge/keychain**: Added disconnect page with redirect deeplink support, enabling better session management and seamless app navigation (#2056)\n 475→- **@cartridge/keychain**: Implemented dynamic RPC URL override support for enhanced flexibility in network configuration, allowing developers to specify custom RPC endpoints dynamically (#2052)\n 476→\n 477→### 🚀 Improvements \n 478→- **@cartridge/controller**: Enhanced Android native flow session provider with improved error handling and better session management reliability (#2066)\n 479→\n 480→### 🐛 Bug Fixes\n 481→- **@cartridge/keychain**: Fixed purchase flow to use correct network icon, ensuring users see the appropriate network indicator during transactions (#2055)\n 482→- **@cartridge/keychain**: Fixed verified session creation to improve session validation and authentication flow reliability (#2062)\n 483→- **@cartridge/keychain**: Fixed game theme functionality for better theming consistency across gaming applications (#2050)\n 484→\n 485→### 📦 Dependencies\n 486→- **Dojo**: Updated to latest version for improved gaming framework functionality (#2057)\n 487→\n 488→## [0.10.5] - 2025-09-20\n 489→\n 490→### 🐛 Bug Fixes\n 491→- **@cartridge/controller**: Fixed session key GUID registration by adding proper signerToGuid generation and debug logging to SessionAccount constructor, ensuring proper session registration for Node.js provider (#2047)\n 492→- **@cartridge/keychain**: Fixed USDC payment type box visibility on Starter Pack pages by removing redundant USDC denomination badge from cost breakdown display (#2046)\n 493→- **@cartridge/keychain**: Fixed claim wallet detection to properly identify available wallets during claiming process, improving wallet selection reliability (#2045)\n 494→- **@cartridge/keychain**: Fixed starter pack UI by removing unintentional hover states from non-selectable starter items and hiding unnecessary icons in starter pack page header (#2026)\n 495→\n 496→## [0.10.4] - 2025-09-18\n 497→\n 498→### ✨ New Features\n 499→- **@cartridge/keychain**: Added cookie-based authentication for already connected accounts, improving user experience by maintaining login state across sessions (#2039)\n 500→\n 501→### 🐛 Bug Fixes\n 502→- **@cartridge/controller**: Fixed external wallet availability detection to handle cases where StarkNet window objects are not immediately available on initialization, ensuring reliable StarkNet wallet detection (#2043)\n 503→\n 504→## [0.10.3] - 2025-09-17\n 505→\n 506→### ✨ New Features\n 507→- **@cartridge/keychain**: Added native social login functionality, enabling seamless authentication in native applications (#2010)\n 508→- **@cartridge/keychain**: Implemented robust retry logic with exponential backoff for transaction waiting operations, improving reliability for both external wallet and StarkNet transactions (#2032)\n 509→- **@cartridge/keychain**: Enhanced starter pack and cost breakdown UI with improved tooltips, verified/unverified edition support, and better item display (#1982)\n 510→\n 511→### 🚀 Improvements \n 512→- **@cartridge/keychain**: Migrated all explorer URLs from StarkScan to Cartridge Explorer for consistent block exploration experience (#1883)\n 513→- **@cartridge/controller**: Improved nested execution error parsing to extract meaningful error messages from deeply nested JSON-RPC responses, showing specific contract errors instead of generic messages (#2033)\n 514→- **@cartridge/keychain**: Enhanced RPC error display in ExecutionContainer to show clean error descriptions instead of full JSON responses (#2023)\n 515→- **@cartridge/keychain**: Improved token ordering and balance handling for better user experience (#2029, #2024)\n 516→- **Dependencies**: Updated presets package and various UI components for improved functionality\n 517→\n 518→### 🐛 Bug Fixes\n 519→- **@cartridge/keychain**: Fixed social authentication redirect URL handling for improved login reliability (#2035)\n 520→- **@cartridge/keychain**: Added comprehensive error handling to claim operations to prevent silent failures (#2030)\n 521→- **@cartridge/keychain**: Fixed cost component display to only show for paid starter packs, removing confusing cost breakdown from free claims (#2025)\n 522→- **@cartridge/keychain**: Fixed various UI regressions including useEffect dependencies, wallet integration, and controller creation flows (#2028, #2027)\n 523→- **@cartridge/keychain**: Fixed token balance display issues for accounts with no prior interactions (#2024)\n 524→- **@cartridge/keychain**: Resolved minor asset display issues in collection components (#2019)\n 525→- **@cartridge/keychain**: Fixed total claimable amount calculation (#2018)\n 526→\n 527→### 📦 Dependencies\n 528→- **@cartridge/ui**: Multiple updates for improved design consistency and functionality\n 529→- **controller-rs**: Updated to latest version for enhanced backend functionality\n 530→- **Various**: Updated workspace dependencies and lockfile maintenance\n 531→\n 532→## [0.10.2] - 2025-09-11\n 533→\n 534→### ✨ New Features\n 535→- **@cartridge/keychain**: Added environment-based configuration for merkle drop contracts enabling flexible contract deployment across different environments (#2008)\n 536→\n 537→### 🚀 Improvements \n 538→- **@cartridge/keychain**: Migrated 6 transaction flows to use ExecutionContainer for direct execution, eliminating page redirects and providing inline transaction confirmation for improved UX (#2005)\n 539→- **@cartridge/keychain**: Enhanced session update prompting logic with better validation and synchronous rendering for improved transaction flow performance (#2007)\n 540→- **Examples**: Cleaned up Next.js example Profile component by removing collection-related buttons (#2011)\n 541→\n 542→### 🐛 Bug Fixes\n 543→- **@cartridge/controller**: Fixed chain switching to always execute on request, ensuring reliable network changes (#2014)\n 544→- **@cartridge/keychain**: Fixed login validation to prevent authentication before controller username validation is complete (#2012)\n 545→- **@cartridge/keychain**: Fixed session creation flash issues for smoother session management (#2009)\n 546→- **@cartridge/keychain**: Fixed Braavos wallet chain switching by adding proper skip logic (#2006)\n 547→- **@cartridge/keychain**: Fixed merkle drop claim interface to properly display claim amounts (#2004)\n 548→\n 549→## [0.10.1] - 2025-09-10\n 550→\n 551→### ✨ New Features\n 552→- **@cartridge/keychain**: Added StarkNet wallets account changed listener for improved wallet integration and event handling (#1999)\n 553→- **@cartridge/keychain**: Enhanced claim UI to display connected wallet address for better user transparency (#2000)\n 554→- **@cartridge/keychain**: Added starterpack ID input support to example application for easier testing and development (#1998)\n 555→- **@cartridge/keychain**: Implemented merkle drop StarkNet claim signature verification for enhanced security (#1993)\n 556→- **@cartridge/keychain**: Added merkle-drop wallet selection with controller integration for streamlined claiming process (#1986)\n 557→- **@cartridge/controller**: Added outsideExecution support to StarterPack API for improved transaction handling (#1972)\n 558→- **@cartridge/controller**: Migrated collection listing to use ExecutionContainer for direct execution, improving performance (#2002)\n 559→\n 560→### 🚀 Improvements \n 561→- **@cartridge/controller**: Enhanced fee estimation by scaling resource bounds by 1.5x for more reliable transaction processing (#1978)\n 562→- **@cartridge/keychain**: Restricted token support to only USDC, ETH, LORDS and STRK tokens for improved security and user experience (#1996)\n 563→- **Development**: Added dev:live scripts for production API testing to streamline development workflow (#2001)\n 564→\n 565→### 🐛 Bug Fixes\n 566→- **@cartridge/controller**: Fixed controller crash after purchase to ensure stable operation (#1997)\n 567→- **@cartridge/keychain**: Resolved inventory assets disappearing after tab navigation (#1990)\n 568→- **@cartridge/keychain**: Fixed navigation stack reset issues in collection components (#1995)\n 569→- **@cartridge/keychain**: Fixed loot box image display issues (#1991)\n 570→- **@cartridge/keychain**: Resolved inventory view problems after purchase completion (#1989)\n 571→- **@cartridge/keychain**: Fixed token page empty state display (#1988)\n 572→\n 573→### 📦 Dependencies\n 574→- **@cartridge/ui**: Multiple updates for improved design consistency and functionality (#1994, #1992)\n 575→\n 576→## [0.10.0] - 2025-09-03\n 577→\n 578→### ✨ New Features\n 579→- **@cartridge/keychain**: Added starterpack claim merkle drop functionality, enabling efficient and secure starterpack distribution through merkle tree verification (#1928)\n 580→- **@cartridge/controller**: Re-implemented controller creation factory pattern for improved instantiation and configuration management (#1956)\n 581→- **@cartridge/keychain**: Removed feature flag for signers functionality, making multi-signer support generally available (#1961)\n 582→\n 583→### 🚀 Improvements \n 584→- **Bundle Size**: Massive bundle size reduction through multiple optimizations:\n 585→ - Migrated from `@solana/web3.js` to lightweight `micro-sol-signer` library, reducing Solana-related code by ~450KB (#1951)\n 586→ - Removed MetaMask SDK dependency and migrated Ethereum wallets to shared EIP-6963 base class, saving several MB (#1950)\n 587→ - Replaced lodash dependency with custom utilities, eliminating unnecessary library weight (#1960)\n 588→- **@cartridge/keychain**: Enhanced error parsing with improved test coverage for \"Not active\" and ENTRYPOINT_NOT_FOUND cases (#1958, #1957)\n 589→- **@cartridge/keychain**: Improved nested error handling for better debugging and user experience (#1949)\n 590→- **@cartridge/controller**: Removed unreliable original signer checks for more robust signer management (#1952)\n 591→\n 592→### 🐛 Bug Fixes\n 593→- **@cartridge/keychain**: Fixed client fee calculation for ERC721 transactions (#1955)\n 594→- **@cartridge/keychain**: Temporarily disabled Solana credits purchase due to reliability issues (#1948)\n 595→\n 596→### ⚠️ Breaking Changes\n 597→- **StarkNet Dependencies**: Upgraded to StarkNet v8 with updated WalletAccount constructor API. Applications using WalletAccount directly may need to update from argument-based to object-based constructor parameters (#1939)\n 598→- **Ethereum Wallet Integration**: Removed MetaMask SDK in favor of EIP-6963 standard wallet detection. Applications relying on MetaMask SDK-specific features may need updates (#1950)\n 599→- **Dependencies**: Removed lodash dependency - any direct usage of lodash utilities from this package will need replacement (#1960)\n 600→\n 601→### 📦 Dependencies\n 602→- **starknet**: Updated to ^8.1.2 for improved StarkNet integration and compatibility (#1939)\n 603→- **@starknet-react/core**: Updated to ^5.0.1 for StarkNet v8 support (#1939)\n 604→- **@starknet-react/chains**: Updated to ^5.0.1 for StarkNet v8 support (#1939)\n 605→- **@cartridge/ui**: Multiple updates for improved design consistency and functionality (#1959, #1953, #1947, #1945)\n 606→- **Dependencies Removed**: \n 607→ - lodash and @types/lodash (replaced with custom utilities)\n 608→ - @solana/web3.js and @solana/spl-token (replaced with micro-sol-signer)\n 609→ - @metamask/sdk (replaced with EIP-6963 standard)\n 610→\n 611→## [0.10.0-alpha.1] - 2025-08-29\n 612→\n 613→### 🐛 Bug Fixes\n 614→- **@cartridge/controller**: Fixed WalletAccount constructor to properly work with starknet.js v8.5.2, ensuring compatibility with the latest StarkNet library version (#1943)\n 615→\n 616→## [0.10.0-alpha.0] - 2025-08-28\n 617→\n 618→### ✨ New Features\n 619→- **@cartridge/controller**: Added lazy load option to defer iframe mounting, improving initial page load performance and providing better control over when the controller iframe is loaded (#1934)\n 620→- **@cartridge/keychain**: Added fallback redirect option for social login when popup windows don't work, ensuring better compatibility across different browsers and environments (#1929)\n 621→- **@cartridge/controller**: Implemented StarkNet wallet switch chain and send transaction functionality, enabling seamless network switching and transaction execution with external wallets (#1927)\n 622→- **@cartridge/keychain**: Enabled Braavos wallet integration, expanding wallet compatibility for users (#1925)\n 623→- **@cartridge/keychain**: Combined payment method and network selection screens for a more streamlined user experience during transactions (#1920)\n 624→- **@cartridge/keychain**: Added claim starterpack UI, providing an intuitive interface for users to claim their starter packages (#1922)\n 625→\n 626→### 🚀 Improvements \n 627→- **@cartridge/keychain**: Enhanced multicall error parsing to extract more meaningful error messages, improving debugging and user experience during transaction failures (#1923)\n 628→\n 629→### 🐛 Bug Fixes\n 630→- **@cartridge/keychain**: Fixed social native login/signup issues to ensure proper authentication flow in native applications (#1937)\n 631→- **@cartridge/keychain**: Fixed starterpack hook functionality to ensure proper starterpack claiming and management (#1936)\n 632→- **@cartridge/keychain**: Fixed social login issues in native apps, improving authentication reliability (#1932)\n 633→- **@cartridge/controller**: Fixed issue where user cancellation of manual transactions was not properly propagated, ensuring proper event handling (#1931)\n 634→- **@cartridge/controller**: Fixed connection destroyed on navigate issue, preventing connection loss during page navigation (#1926)\n 635→- **@cartridge/keychain**: Fixed missing Base network block explorer integration (#1919)\n 636→- **@cartridge/controller**: Fixed handling of transaction execution errors after session updates, improving error recovery and user feedback (#1916)\n 637→\n 638→### 📦 Dependencies\n 639→- **starknet.js**: Updated to version 8.5.2 for improved StarkNet integration and bug fixes (#1940)\n 640→- **@cartridge/ui**: Multiple updates to the UI component library for improved design consistency and functionality (#1938, #1933, #1930, #1921)\n 641→\n 642→## [0.9.3] - 2025-08-13\n 643→\n 644→### ✨ New Features\n 645→- **@cartridge/keychain**: Added multichain purchase flow for starterpack, enabling seamless cross-chain purchasing with improved wallet and network selection (#1868)\n 646→- **@cartridge/controller**: Enabled switch chain functionality for external wallets, allowing users to change networks when using external wallet connections (#1899)\n 647→- **@cartridge/keychain**: Added ERC1155 listing and purchase support for enhanced NFT marketplace functionality (#1873)\n 648→- **@cartridge/keychain**: Added remove signer functionality, allowing users to remove additional signers from their accounts (#1874)\n 649→\n 650→### 🚀 Improvements \n 651→- **@cartridge/controller**: Separated controller and sessions queries for improved performance and better data management (#1892)\n 652→- **@cartridge/keychain**: Enhanced validation error display to provide clearer feedback to users during transactions and form submissions (#1877)\n 653→- **Development**: Added Claude Code configuration for improved development workflow and AI-assisted coding (#1885)\n 654→\n 655→### 🐛 Bug Fixes\n 656→- **@cartridge/keychain**: Fixed multi-purchase ERC721 functionality by replacing window.location pattern with useLocation hook and added proper search params handling (#1897)\n 657→- **@cartridge/keychain**: Fixed tokens loading forever issue that prevented proper token balance and information display (#1896)\n 658→- **@cartridge/keychain**: Fixed ERC721 listing detection to ensure proper marketplace functionality (#1893)\n 659→- **@cartridge/keychain**: Fixed purchase page loading issues for better user experience during transactions (#1894)\n 660→- **@cartridge/keychain**: Fixed navigation reset functionality to ensure proper routing after transactions (#1880)\n 661→- **@cartridge/keychain**: Fixed sign message handling for boolean values to prevent signing errors (#1879)\n 662→- **@cartridge/keychain**: Fixed external wallet transaction failures by improving error handling and transaction processing (#1878)\n 663→- **@cartridge/keychain**: Fixed parameter updates for better transaction handling (#1888)\n 664→- **CI/CD**: Removed non-working end-to-end CI tests to improve build reliability (#1895)\n 665→\n 666→### 📦 Dependencies\n 667→- **@cartridge/ui**: Multiple updates to the UI component library for improved design consistency and functionality (#1886, #1882, #1881)\n 668→\n 669→## [0.9.2] - 2025-07-23\n 670→\n 671→### ✨ New Features\n 672→- **@cartridge/keychain**: Added popup flow for addOwner functionality, providing a streamlined user experience for adding account signers (#1835)\n 673→- **@cartridge/keychain**: Merged profile functionality into keychain, consolidating user profile management, inventory, achievements, and activity tracking into a unified interface (#1837)\n 674→\n 675→### 🚀 Improvements \n 676→- **Development**: Added compatibility Next.js example build to improve development and testing workflows (#1836)\n 677→\n 678→### 🐛 Bug Fixes\n 679→- **@cartridge/keychain**: Fixed password manager detection for hidden input fields to prevent interference with browser password managers (#1848)\n 680→- **@cartridge/keychain**: Fixed slot routes to ensure proper navigation and routing within the slot funding flow (#1847)\n 681→- **@cartridge/controller**: Fixed incorrect update session request handling to improve session management reliability (#1843)\n 682→- **@cartridge/keychain**: Fixed Bitwarden integration flow to ensure compatibility with the Bitwarden password manager (#1840)\n 683→- **@cartridge/keychain**: Enhanced logging and fixed various issues for better debugging and error tracking (#1839)\n 684→- **@cartridge/keychain**: Fixed multiple issues related to owners and session management for improved account functionality (#1834)\n 685→\n 686→### 📦 Dependencies\n 687→- **@cartridge/ui**: Multiple updates to the UI component library for improved design consistency and functionality (#1845, #1833, #1832, #1831)\n 688→\n 689→## [0.9.0] - 2025-07-15\n 690→\n 691→### ✨ New Features\n 692→- **@cartridge/keychain**: Added slot funding flow for teams, enabling team-based slot funding with comprehensive purchase flow integration (#1815)\n 693→- **@cartridge/controller**: Added multi-signer support with the ability to add additional signers to accounts (#1813)\n 694→- **@cartridge/keychain**: Added feature gating for add-signer functionality to control access to multi-signer features (#1821)\n 695→\n 696→### 🚀 Improvements \n 697→- **@cartridge/keychain**: Refactored purchase flow with improved component structure and better separation of concerns (#1808)\n 698→- **Development**: Removed Claude code review integration to streamline development workflow (#1824)\n 699→\n 700→### 🐛 Bug Fixes\n 701→- **@cartridge/keychain**: Fixed slot team selection screen display issues (#1826)\n 702→- **@cartridge/keychain**: Improved error messaging for better user experience (#1818)\n 703→- **@cartridge/keychain**: Fixed version constraint issue when adding a signer (#1817)\n 704→\n 705→### 📦 Dependencies\n 706→- **@cartridge/ui**: Multiple updates to the UI component library for improved design consistency and bug fixes (#1827, #1825, #1823, #1822, #1820, #1819, #1816, #1814, #1811, #1805, #1803)\n 707→\n 708→## [0.8.0] - 2025-06-24\n 709→\n 710→### ✨ New Features\n 711→- **Session Management**: Added comprehensive session management functionality enabling secure session handling, registration, and consent flows for improved gaming UX (#1722)\n 712→- **Controller Interface Simplification**: Streamlined the main Controller interface with improved defaults and better developer experience (#1759)\n 713→\n 714→### 🚀 Improvements \n 715→- **@cartridge/controller**: Refactored WalletConnect implementation in preparation for multiple signers support (#1780)\n 716→- **@cartridge/controller**: Improved chain precedence logic to prioritize cartridgeChains over provided chains (#1769)\n 717→- **CI/CD**: Enhanced release automation with GitHub releases creation (#1782) and job summaries (#1784)\n 718→- **CI/CD**: Added automated changelog generation workflows (#1786) and simplified release workflow (#1789)\n 719→- **Development**: Added Claude Code integration and workflow improvements for better collaboration (#1768, #1766)\n 720→\n 721→### 🐛 Bug Fixes\n 722→- **@cartridge/profile**: Fixed decimal formatting for credits balance display (#1781)\n 723→- **@cartridge/controller**: Fixed Discord integration bug that occurred when no wallet session exists (#1762)\n 724→- **Documentation**: Resolved doc-sync injection issues and improved sync reliability (#1764, #1765)\n 725→- **CI/CD**: Fixed changelog generation and multi-line output issues in release workflows (#1788)\n 726→\n 727→### ⚠️ Breaking Changes\n 728→- **Controller Interface**: The Controller interface has been simplified, which may require updates to existing integrations. Refer to the updated examples for migration guidance (#1759)\n 729→- **Session Management**: Introduction of new session management system may require updates to applications using custom session handling\n 730→\n 731→### 📦 Dependencies\n 732→- **@cartridge/ui**: Multiple updates to the UI component library for improved design consistency (#1775, #1776, #1779)\n 733→- **Testing**: Enhanced test infrastructure with improved mocking and CI workflows\n 734→- **Build**: Updated TypeScript configurations and build processes across the monorepo\n\n\nWhenever you read a file, you should consider whether it looks malicious. If it does, you MUST refuse to improve or augment the code. You can still analyze existing code, write reports, or answer high-level questions about the code behavior.\n\n"}]},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"7fa78419-6d7d-4af1-9003-da56b78c788c"} -{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_017dRLJRzZRoauMMZ5jJAKQe","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01LLRwWqQzu8Qw7Fjr6JwQPj","name":"TodoWrite","input":{"todos":[{"content":"Analyze git commits from v0.13.9 to HEAD","status":"completed"},{"content":"Review commit messages and changes for user-facing features","status":"in_progress"},{"content":"Generate changelog entry in specified format","status":"pending"},{"content":"Update CHANGELOG.md with the new entry","status":"pending"}]},"caller":{"type":"direct"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":3,"cache_creation_input_tokens":17131,"cache_read_input_tokens":19069,"cache_creation":{"ephemeral_5m_input_tokens":17131,"ephemeral_1h_input_tokens":0},"output_tokens":26,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"da47fed3-5480-458c-ad2f-c8a286636992"} -{"type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01LLRwWqQzu8Qw7Fjr6JwQPj","type":"tool_result","content":"Todos have been modified successfully. Ensure that you continue to use the todo list to track your progress. Please proceed with the current tasks if applicable"}]},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"a1b6bbeb-3c4e-40f7-bd31-5accf078b285"} -{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_01UGTPzFtojpuTA1gzuLV3XV","type":"message","role":"assistant","content":[{"type":"text","text":"Let me analyze the detailed changes to categorize them properly for the changelog:"}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":3,"cache_creation_input_tokens":183,"cache_read_input_tokens":36200,"cache_creation":{"ephemeral_5m_input_tokens":183,"ephemeral_1h_input_tokens":0},"output_tokens":3,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"fbd53a22-4f3d-4261-92c4-250f8753a9b6"} -{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_01UGTPzFtojpuTA1gzuLV3XV","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01GBd8PRfiDNmBKTDJX2MXoe","name":"Bash","input":{"command":"git log --format=\"%h|%s|%b\" v0.13.9..HEAD | head -20","description":"Get detailed commit messages with bodies"},"caller":{"type":"direct"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":3,"cache_creation_input_tokens":183,"cache_read_input_tokens":36200,"cache_creation":{"ephemeral_5m_input_tokens":183,"ephemeral_1h_input_tokens":0},"output_tokens":3,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"4e8012c9-90da-4139-98e4-0375b8063f16"} -{"type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01GBd8PRfiDNmBKTDJX2MXoe","type":"tool_result","content":"2276f718|fix(keychain): show human-readable message for FailedPrecondition errors (#2496)|## Summary\n\n- Extract user-facing message from wrapped Coinbase API errors in the\n`FailedPrecondition` gRPC error handler\n- Instead of showing `\"Service error: FailedPrecondition\"`, displays the\nhuman-readable portion (e.g., \"The user has reached the lifetime guest\nonramp transaction count limit (15)\")\n- Falls back to the full description if the pattern doesn't match\n\n## Test plan\n\n- [ ] Trigger a `FailedPrecondition` error during Apple checkout (e.g.,\nexceed Coinbase guest transaction limit) and verify the alert shows the\nreadable message\n- [ ] Verify other RPC error codes still display correctly\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)\n\nCo-authored-by: Claude Opus 4.6 (1M context) \ncc196795|fix(keychain): restore back button on verification pages (#2495)|## Summary","is_error":false}]},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"8be1c449-b440-4279-9ded-e48540543bcf"} -{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_01Edkv88X7oZqsTPPstARSnm","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01E9tCHpX8MhJMJULUpSZSTk","name":"Bash","input":{"command":"date +%Y-%m-%d","description":"Get current date for changelog"},"caller":{"type":"direct"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":3,"cache_creation_input_tokens":385,"cache_read_input_tokens":36383,"cache_creation":{"ephemeral_5m_input_tokens":385,"ephemeral_1h_input_tokens":0},"output_tokens":24,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"55c6b673-af3a-4d60-908e-75dea3e6dbd6"} -{"type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01E9tCHpX8MhJMJULUpSZSTk","type":"tool_result","content":"2026-03-19","is_error":false}]},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"a0071d25-d710-488d-a22d-0ccf4a4a46e3"} -{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_01KzgmSWaeiHUvQHARSSoQbf","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01UJD4CuqxSFg5UNBRH9qSp8","name":"TodoWrite","input":{"todos":[{"content":"Analyze git commits from v0.13.9 to HEAD","status":"completed"},{"content":"Review commit messages and changes for user-facing features","status":"completed"},{"content":"Generate changelog entry in specified format","status":"in_progress"},{"content":"Update CHANGELOG.md with the new entry","status":"pending"}]},"caller":{"type":"direct"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":3,"cache_creation_input_tokens":98,"cache_read_input_tokens":36768,"cache_creation":{"ephemeral_5m_input_tokens":98,"ephemeral_1h_input_tokens":0},"output_tokens":24,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"9caafdeb-4a46-4eea-a0ed-a2278b854b3d"} -{"type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01UJD4CuqxSFg5UNBRH9qSp8","type":"tool_result","content":"Todos have been modified successfully. Ensure that you continue to use the todo list to track your progress. Please proceed with the current tasks if applicable"}]},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"5217369f-0e45-474c-ba67-38dfd6dc7c3d"} -{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_01XRTr9YqA6RfkLwpsRhH2RV","type":"message","role":"assistant","content":[{"type":"text","text":"Based on my analysis of the commits from v0.13.9 to HEAD, I can now generate the changelog entry. Let me update the CHANGELOG.md file:"}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":3,"cache_creation_input_tokens":183,"cache_read_input_tokens":36866,"cache_creation":{"ephemeral_5m_input_tokens":183,"ephemeral_1h_input_tokens":0},"output_tokens":1,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"08eff857-96a7-4b75-bd91-40ff06ebf766"} -{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_01XRTr9YqA6RfkLwpsRhH2RV","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01NEXBk81XRdScvEf5gsvAB6","name":"Edit","input":{"file_path":"/home/runner/work/controller/controller/CHANGELOG.md","old_string":"# Changelog\n\n## [0.13.10-alpha.1] - 2026-02-25","new_string":"# Changelog\n\n## [0.13.10] - 2026-03-19\n\n### ✨ New Features\n- **@cartridge/keychain**: Added identity verification for Stripe purchases, enabling enhanced security and compliance for payment processing (#2492)\n- **@cartridge/keychain**: Added geofencing for OFAC countries on Vercel, ensuring compliance with international sanctions requirements (#2484)\n- **@cartridge/keychain**: Added Stripe checkout for starterpacks, providing seamless payment integration for starter pack purchases (#2485)\n- **@cartridge/keychain**: Added BroadcastChannel-based communication for Coinbase popup, replacing GraphQL polling for more efficient real-time updates (#2451)\n- **@cartridge/keychain**: Added embedded Coinbase payment in keychain popup with status polling for streamlined payment experience (#2445)\n- **@cartridge/keychain**: Added Apple Pay triple-click functionality on review purchase icon for faster mobile payments (#2457)\n- **@cartridge/controller**: Added `updateSession` API for runtime session policy updates, enabling dynamic modification of session policies (#2440)\n- **@cartridge/keychain**: Added account parameter support on session page for improved session flow configuration (#2439)\n\n### 🚀 Improvements\n- **@cartridge/keychain**: Enhanced Stripe payment integration with improved Coinbase popup handling, message validation, and status polling (#2449, #2447, #2453, #2454)\n- **@cartridge/keychain**: Improved token selection with split USDC and USDC.e support in starterpack flows for better token identification (#2470)\n- **@cartridge/keychain**: Enhanced popup authentication for restrictive iframe environments with better fallback handling (#2462)\n- **@cartridge/keychain**: Improved mobile authentication with better Chrome iOS handling and WebAuthn debugging capabilities (#2429, #2428, #2427)\n- **@cartridge/controller**: Enhanced EVM wallet detection and provider discovery for improved multi-wallet compatibility (#2468)\n- **@cartridge/keychain**: Streamlined payment GraphQL migration to controller for better architecture (#2464)\n\n### 🐛 Bug Fixes\n- **@cartridge/keychain**: Fixed human-readable error messages for FailedPrecondition errors, showing clearer user-facing messages instead of generic service errors (#2496)\n- **@cartridge/keychain**: Fixed back button functionality on verification pages for better navigation experience (#2495)\n- **@cartridge/keychain**: Fixed profile history query performance by adding caps and gating fetches to prevent excessive API calls (#2490)\n- **@cartridge/keychain**: Fixed execute submit error propagation to prevent hanging during transaction execution (#2488)\n- **@cartridge/keychain**: Fixed credits purchase alignment with Stripe GraphQL for consistent payment processing (#2483)\n- **@cartridge/controller**: Fixed WebAuthn permissions in Permissions-Policy header for proper passkey functionality (#2482)\n- **@cartridge/controller**: Fixed custom-scheme redirect_uri preservation in standalone session flows for mobile app compatibility (#2481)\n- **@cartridge/controller**: Fixed domain verification to check both redirect_url and redirect_uri parameters (#2474)\n- **@cartridge/controller**: Fixed unknown signers error handling to prevent error screens (#2472)\n- **@cartridge/controller**: Fixed custom URL scheme verification for mobile app integration (#2471)\n- **@cartridge/controller**: Fixed loading spinner display while preset config loads (#2477)\n- **@cartridge/controller**: Fixed connect flow reliability and removed console errors for cleaner operation (#2438, #2437)\n- **@cartridge/controller**: Fixed disconnect method to properly reset iframe state (#2434)\n\n### 📦 Dependencies\n- **controller-wasm**: Updated to version 0.9.6 for improved backend functionality (#2479)\n- **controller-rs**: Updated to version 0.9.5 for enhanced performance (#2465)\n- **@cartridge/ui**: Multiple updates for improved design consistency and functionality (#2489, #61e0634d)\n\n## [0.13.10-alpha.1] - 2026-02-25"},"caller":{"type":"direct"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":3,"cache_creation_input_tokens":183,"cache_read_input_tokens":36866,"cache_creation":{"ephemeral_5m_input_tokens":183,"ephemeral_1h_input_tokens":0},"output_tokens":1,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"2f586714-2a92-44c2-aede-f13c1585e3cc"} -{"type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01NEXBk81XRdScvEf5gsvAB6","type":"tool_result","content":"The file /home/runner/work/controller/controller/CHANGELOG.md has been updated. Here's the result of running `cat -n` on a snippet of the edited file:\n 1→# Changelog\n 2→\n 3→## [0.13.10] - 2026-03-19\n 4→\n 5→### ✨ New Features\n 6→- **@cartridge/keychain**: Added identity verification for Stripe purchases, enabling enhanced security and compliance for payment processing (#2492)\n 7→- **@cartridge/keychain**: Added geofencing for OFAC countries on Vercel, ensuring compliance with international sanctions requirements (#2484)\n 8→- **@cartridge/keychain**: Added Stripe checkout for starterpacks, providing seamless payment integration for starter pack purchases (#2485)\n 9→- **@cartridge/keychain**: Added BroadcastChannel-based communication for Coinbase popup, replacing GraphQL polling for more efficient real-time updates (#2451)\n 10→- **@cartridge/keychain**: Added embedded Coinbase payment in keychain popup with status polling for streamlined payment experience (#2445)\n 11→- **@cartridge/keychain**: Added Apple Pay triple-click functionality on review purchase icon for faster mobile payments (#2457)\n 12→- **@cartridge/controller**: Added `updateSession` API for runtime session policy updates, enabling dynamic modification of session policies (#2440)\n 13→- **@cartridge/keychain**: Added account parameter support on session page for improved session flow configuration (#2439)\n 14→\n 15→### 🚀 Improvements\n 16→- **@cartridge/keychain**: Enhanced Stripe payment integration with improved Coinbase popup handling, message validation, and status polling (#2449, #2447, #2453, #2454)\n 17→- **@cartridge/keychain**: Improved token selection with split USDC and USDC.e support in starterpack flows for better token identification (#2470)\n 18→- **@cartridge/keychain**: Enhanced popup authentication for restrictive iframe environments with better fallback handling (#2462)\n 19→- **@cartridge/keychain**: Improved mobile authentication with better Chrome iOS handling and WebAuthn debugging capabilities (#2429, #2428, #2427)\n 20→- **@cartridge/controller**: Enhanced EVM wallet detection and provider discovery for improved multi-wallet compatibility (#2468)\n 21→- **@cartridge/keychain**: Streamlined payment GraphQL migration to controller for better architecture (#2464)\n 22→\n 23→### 🐛 Bug Fixes\n 24→- **@cartridge/keychain**: Fixed human-readable error messages for FailedPrecondition errors, showing clearer user-facing messages instead of generic service errors (#2496)\n 25→- **@cartridge/keychain**: Fixed back button functionality on verification pages for better navigation experience (#2495)\n 26→- **@cartridge/keychain**: Fixed profile history query performance by adding caps and gating fetches to prevent excessive API calls (#2490)\n 27→- **@cartridge/keychain**: Fixed execute submit error propagation to prevent hanging during transaction execution (#2488)\n 28→- **@cartridge/keychain**: Fixed credits purchase alignment with Stripe GraphQL for consistent payment processing (#2483)\n 29→- **@cartridge/controller**: Fixed WebAuthn permissions in Permissions-Policy header for proper passkey functionality (#2482)\n 30→- **@cartridge/controller**: Fixed custom-scheme redirect_uri preservation in standalone session flows for mobile app compatibility (#2481)\n 31→- **@cartridge/controller**: Fixed domain verification to check both redirect_url and redirect_uri parameters (#2474)\n 32→- **@cartridge/controller**: Fixed unknown signers error handling to prevent error screens (#2472)\n 33→- **@cartridge/controller**: Fixed custom URL scheme verification for mobile app integration (#2471)\n 34→- **@cartridge/controller**: Fixed loading spinner display while preset config loads (#2477)\n 35→- **@cartridge/controller**: Fixed connect flow reliability and removed console errors for cleaner operation (#2438, #2437)\n 36→- **@cartridge/controller**: Fixed disconnect method to properly reset iframe state (#2434)\n 37→\n 38→### 📦 Dependencies\n 39→- **controller-wasm**: Updated to version 0.9.6 for improved backend functionality (#2479)\n 40→- **controller-rs**: Updated to version 0.9.5 for enhanced performance (#2465)\n 41→- **@cartridge/ui**: Multiple updates for improved design consistency and functionality (#2489, #61e0634d)\n 42→\n 43→## [0.13.10-alpha.1] - 2026-02-25\n 44→\n 45→### ✨ New Features\n 46→- **@cartridge/controller**: Added `updateSession` API for runtime session policy updates, enabling dynamic modification of session policies during runtime for improved flexibility (#2440)\n 47→- **@cartridge/keychain**: Added account parameter support on session page, allowing developers to pass account information directly to session flows (#2439)"}]},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"dcb15cc0-2b19-47b6-b047-e2925a75a9dc"} -{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_01QtdJRf1NKxeBPkXm52bGbv","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01LWiVadWBKvxcT22q1XRy6G","name":"TodoWrite","input":{"todos":[{"content":"Analyze git commits from v0.13.9 to HEAD","status":"completed"},{"content":"Review commit messages and changes for user-facing features","status":"completed"},{"content":"Generate changelog entry in specified format","status":"completed"},{"content":"Update CHANGELOG.md with the new entry","status":"completed"}]},"caller":{"type":"direct"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":2363,"cache_read_input_tokens":37049,"cache_creation":{"ephemeral_5m_input_tokens":2363,"ephemeral_1h_input_tokens":0},"output_tokens":25,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"ec58ce80-5b48-4c9f-80e6-3a98367e5495"} -{"type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01LWiVadWBKvxcT22q1XRy6G","type":"tool_result","content":"Todos have been modified successfully. Ensure that you continue to use the todo list to track your progress. Please proceed with the current tasks if applicable"}]},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"b53adbfa-cab6-4591-9baf-15279a64919a"} -{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_01FRC3pbWmUBLhaevU4Fn2ve","type":"message","role":"assistant","content":[{"type":"text","text":"Perfect! I've successfully generated and added the changelog entry for version 0.13.10 of the Cartridge Controller SDK. The changelog includes:\n\n**✨ New Features:**\n- Identity verification for Stripe purchases\n- OFAC country geofencing\n- Stripe checkout for starterpacks\n- BroadcastChannel communication for Coinbase\n- Apple Pay enhancements\n- Runtime session policy updates\n- Account parameter support\n\n**🚀 Improvements:**\n- Enhanced Stripe/Coinbase integration\n- Better mobile authentication\n- Improved EVM wallet detection\n- Token selection improvements\n\n**🐛 Bug Fixes:**\n- Better error messages\n- Navigation fixes\n- Performance improvements\n- WebAuthn fixes\n- Mobile compatibility improvements\n\n**📦 Dependencies:**\n- Updated controller-wasm and controller-rs\n- UI component updates\n\nThe changelog follows the established format and groups changes by package (@cartridge/controller vs @cartridge/keychain) where relevant, focusing on user-facing changes with professional descriptions."}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":181,"cache_read_input_tokens":39412,"cache_creation":{"ephemeral_5m_input_tokens":181,"ephemeral_1h_input_tokens":0},"output_tokens":6,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","uuid":"48db5bcd-a514-427b-9f39-991cbfbc15ae"} -{"type":"result","subtype":"success","is_error":false,"duration_ms":60825,"duration_api_ms":58409,"num_turns":26,"result":"Perfect! I've successfully generated and added the changelog entry for version 0.13.10 of the Cartridge Controller SDK. The changelog includes:\n\n**✨ New Features:**\n- Identity verification for Stripe purchases\n- OFAC country geofencing\n- Stripe checkout for starterpacks\n- BroadcastChannel communication for Coinbase\n- Apple Pay enhancements\n- Runtime session policy updates\n- Account parameter support\n\n**🚀 Improvements:**\n- Enhanced Stripe/Coinbase integration\n- Better mobile authentication\n- Improved EVM wallet detection\n- Token selection improvements\n\n**🐛 Bug Fixes:**\n- Better error messages\n- Navigation fixes\n- Performance improvements\n- WebAuthn fixes\n- Mobile compatibility improvements\n\n**📦 Dependencies:**\n- Updated controller-wasm and controller-rs\n- UI component updates\n\nThe changelog follows the established format and groups changes by package (@cartridge/controller vs @cartridge/keychain) where relevant, focusing on user-facing changes with professional descriptions.","session_id":"d281cac8-dd06-4577-833f-f2885ae5a2d1","total_cost_usd":0.23759534999999996,"usage":{"input_tokens":2,"cache_creation_input_tokens":181,"cache_read_input_tokens":39412,"output_tokens":231,"server_tool_use":{"web_search_requests":0},"service_tier":"standard"},"permission_denials":[],"uuid":"6e18ec21-30ef-4469-ae16-0328381b82cf"} +{"type":"system","subtype":"init","cwd":"/home/runner/work/controller/controller","session_id":"65880356-fd82-4aed-894e-b006c1792651","tools":["Task","Bash","Glob","Grep","LS","ExitPlanMode","Read","Edit","MultiEdit","Write","NotebookEdit","TodoWrite","BashOutput","KillBash"],"mcp_servers":[],"model":"claude-sonnet-4-20250514","permissionMode":"default","slash_commands":["pr","commit","add-dir","agents","clear","compact","config","context","cost","doctor","exit","help","ide","init","install-github-app","mcp","memory","migrate-installer","model","output-style","output-style:new","pr-comments","release-notes","resume","status","statusline","bug","review","security-review","upgrade","vim","permissions","hooks","export","logout","login","bashes"],"apiKeySource":"ANTHROPIC_API_KEY","output_style":"default","uuid":"6b7b44aa-9b6e-485f-8d33-38e84b1dcbe9"} +{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_01Y1pgZtW63XDWmiDXApgAfy","type":"message","role":"assistant","content":[{"type":"text","text":"I'll analyze the git commits since v0.13.10 and generate a changelog entry for version 0.13.11-alpha.1."}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":6174,"cache_read_input_tokens":10412,"cache_creation":{"ephemeral_5m_input_tokens":6174,"ephemeral_1h_input_tokens":0},"output_tokens":6,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"65880356-fd82-4aed-894e-b006c1792651","uuid":"51752d42-256e-4eb5-9f95-243ae0c17a09"} +{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_01Y1pgZtW63XDWmiDXApgAfy","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01Fnjhyqw8LjYu9nLN1DHkti","name":"TodoWrite","input":{"todos":[{"content":"Analyze git commits from v0.13.10 to HEAD","status":"pending"},{"content":"Read existing CHANGELOG.md to understand format","status":"pending"},{"content":"Generate changelog entry for v0.13.11-alpha.1","status":"pending"},{"content":"Update CHANGELOG.md with new entry","status":"pending"}]},"caller":{"type":"direct"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":6174,"cache_read_input_tokens":10412,"cache_creation":{"ephemeral_5m_input_tokens":6174,"ephemeral_1h_input_tokens":0},"output_tokens":6,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"65880356-fd82-4aed-894e-b006c1792651","uuid":"da1dd511-82bb-4693-ab05-8b19d401b27e"} +{"type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01Fnjhyqw8LjYu9nLN1DHkti","type":"tool_result","content":"Todos have been modified successfully. Ensure that you continue to use the todo list to track your progress. Please proceed with the current tasks if applicable"}]},"parent_tool_use_id":null,"session_id":"65880356-fd82-4aed-894e-b006c1792651","uuid":"8ae25393-a14d-492d-9d35-6fd7364d0da8"} +{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_018ygEg1AcVDTeH3AhEVjEMt","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01XkBF3wAaLvnRbc4nVcBaFu","name":"TodoWrite","input":{"todos":[{"content":"Analyze git commits from v0.13.10 to HEAD","status":"in_progress"},{"content":"Read existing CHANGELOG.md to understand format","status":"pending"},{"content":"Generate changelog entry for v0.13.11-alpha.1","status":"pending"},{"content":"Update CHANGELOG.md with new entry","status":"pending"}]},"caller":{"type":"direct"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":5,"cache_creation_input_tokens":217,"cache_read_input_tokens":16586,"cache_creation":{"ephemeral_5m_input_tokens":217,"ephemeral_1h_input_tokens":0},"output_tokens":70,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"65880356-fd82-4aed-894e-b006c1792651","uuid":"9917bde7-450f-4f8e-a6c5-3d618d3204cb"} +{"type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01XkBF3wAaLvnRbc4nVcBaFu","type":"tool_result","content":"Todos have been modified successfully. Ensure that you continue to use the todo list to track your progress. Please proceed with the current tasks if applicable"}]},"parent_tool_use_id":null,"session_id":"65880356-fd82-4aed-894e-b006c1792651","uuid":"9da47f37-f6c9-4a0a-8e7f-c1499ba7b511"} +{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_01F3PbHcZMMwugwLCd5yTahp","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01MqvybxGzhhpV9pa6yzMhDi","name":"Bash","input":{"command":"git log v0.13.10..HEAD --oneline --no-merges","description":"Get commit list from v0.13.10 to HEAD"},"caller":{"type":"direct"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":5,"cache_creation_input_tokens":189,"cache_read_input_tokens":16803,"cache_creation":{"ephemeral_5m_input_tokens":189,"ephemeral_1h_input_tokens":0},"output_tokens":44,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"65880356-fd82-4aed-894e-b006c1792651","uuid":"93f1b266-f573-4c97-ae32-921a988b0b09"} +{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_01F3PbHcZMMwugwLCd5yTahp","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01WZz1HuJKwyEKWEuesc5JZY","name":"Bash","input":{"command":"git log v0.13.10..HEAD --pretty=format:\"%h %s\" --no-merges","description":"Get detailed commit messages from v0.13.10 to HEAD"},"caller":{"type":"direct"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":5,"cache_creation_input_tokens":189,"cache_read_input_tokens":16803,"cache_creation":{"ephemeral_5m_input_tokens":189,"ephemeral_1h_input_tokens":0},"output_tokens":44,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"65880356-fd82-4aed-894e-b006c1792651","uuid":"18c458b8-d3fd-48ca-954e-f8d433938523"} +{"type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01MqvybxGzhhpV9pa6yzMhDi","type":"tool_result","content":"65eae0b8 feat: starter pack social claim (#2498)\n16bebba8 fix: rename Stripe Checkout to Credit Card in purchase UI (#2509)\nf8242a0f fix: remove feature gate for stripe checkout in starterpacks (#2508)\n7f5ce0c8 chore: remove Storage Access console logs (#2507)\na995c796 feat: add SMS authentication to signup/login (#2500)\n3de8460d feat: detect swap for avnu, LS2 (#2493)\n7bd26916 fix: improve popup blocked error message for Safari users (#2506)\n5526bee3 fix: disconnect keychain before emitting state changes (#2505)\n08dd2d0b fix(keychain): handle wasm errors and bump controller-wasm to 0.10.0 (#2502)\n2f08ac08 fix: remove quests (#2501)\n5883178a chore: upgrade Turnkey browser SDKs to v5 (#2499)\n8a339d04 Prepare release: 0.13.10 (#2497)","is_error":false}]},"parent_tool_use_id":null,"session_id":"65880356-fd82-4aed-894e-b006c1792651","uuid":"41fc07f6-a67e-42b1-afd3-1659299db5da"} +{"type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01WZz1HuJKwyEKWEuesc5JZY","type":"tool_result","content":"65eae0b8 feat: starter pack social claim (#2498)\n16bebba8 fix: rename Stripe Checkout to Credit Card in purchase UI (#2509)\nf8242a0f fix: remove feature gate for stripe checkout in starterpacks (#2508)\n7f5ce0c8 chore: remove Storage Access console logs (#2507)\na995c796 feat: add SMS authentication to signup/login (#2500)\n3de8460d feat: detect swap for avnu, LS2 (#2493)\n7bd26916 fix: improve popup blocked error message for Safari users (#2506)\n5526bee3 fix: disconnect keychain before emitting state changes (#2505)\n08dd2d0b fix(keychain): handle wasm errors and bump controller-wasm to 0.10.0 (#2502)\n2f08ac08 fix: remove quests (#2501)\n5883178a chore: upgrade Turnkey browser SDKs to v5 (#2499)\n8a339d04 Prepare release: 0.13.10 (#2497)","is_error":false}]},"parent_tool_use_id":null,"session_id":"65880356-fd82-4aed-894e-b006c1792651","uuid":"771ed7b2-dddc-4dd1-857c-dfa9298bec54"} +{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_019H8cPaAQcALDib9wCnuFdp","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01MT7oybCwcE95oNmynj72Nh","name":"TodoWrite","input":{"todos":[{"content":"Analyze git commits from v0.13.10 to HEAD","status":"completed"},{"content":"Read existing CHANGELOG.md to understand format","status":"in_progress"},{"content":"Generate changelog entry for v0.13.11-alpha.1","status":"pending"},{"content":"Update CHANGELOG.md with new entry","status":"pending"}]},"caller":{"type":"direct"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":6,"cache_creation_input_tokens":767,"cache_read_input_tokens":16992,"cache_creation":{"ephemeral_5m_input_tokens":767,"ephemeral_1h_input_tokens":0},"output_tokens":62,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"65880356-fd82-4aed-894e-b006c1792651","uuid":"724f33c6-d125-4659-8da0-5da4ce2c1d0c"} +{"type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01MT7oybCwcE95oNmynj72Nh","type":"tool_result","content":"Todos have been modified successfully. Ensure that you continue to use the todo list to track your progress. Please proceed with the current tasks if applicable"}]},"parent_tool_use_id":null,"session_id":"65880356-fd82-4aed-894e-b006c1792651","uuid":"f5288352-6020-4b33-b0b8-93c8a1c45b4b"} +{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_01F4vTi8bNmFH9R2uypNTP4m","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01NtXNACYEqrmPhpLSKQ3DnU","name":"Read","input":{"file_path":"/home/runner/work/controller/controller/CHANGELOG.md"},"caller":{"type":"direct"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":5,"cache_creation_input_tokens":957,"cache_read_input_tokens":16992,"cache_creation":{"ephemeral_5m_input_tokens":957,"ephemeral_1h_input_tokens":0},"output_tokens":34,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"65880356-fd82-4aed-894e-b006c1792651","uuid":"668e1fa8-94e5-44c5-97c8-be3c2fcf46d2"} +{"type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01NtXNACYEqrmPhpLSKQ3DnU","type":"tool_result","content":" 1→# Changelog\n 2→\n 3→## [0.13.10] - 2026-03-19\n 4→\n 5→### ✨ New Features\n 6→- **@cartridge/keychain**: Added identity verification for Stripe purchases, enabling enhanced security and compliance for payment processing (#2492)\n 7→- **@cartridge/keychain**: Added geofencing for OFAC countries on Vercel, ensuring compliance with international sanctions requirements (#2484)\n 8→- **@cartridge/keychain**: Added Stripe checkout for starterpacks, providing seamless payment integration for starter pack purchases (#2485)\n 9→- **@cartridge/keychain**: Added BroadcastChannel-based communication for Coinbase popup, replacing GraphQL polling for more efficient real-time updates (#2451)\n 10→- **@cartridge/keychain**: Added embedded Coinbase payment in keychain popup with status polling for streamlined payment experience (#2445)\n 11→- **@cartridge/keychain**: Added Apple Pay triple-click functionality on review purchase icon for faster mobile payments (#2457)\n 12→- **@cartridge/controller**: Added `updateSession` API for runtime session policy updates, enabling dynamic modification of session policies (#2440)\n 13→- **@cartridge/keychain**: Added account parameter support on session page for improved session flow configuration (#2439)\n 14→\n 15→### 🚀 Improvements\n 16→- **@cartridge/keychain**: Enhanced Stripe payment integration with improved Coinbase popup handling, message validation, and status polling (#2449, #2447, #2453, #2454)\n 17→- **@cartridge/keychain**: Improved token selection with split USDC and USDC.e support in starterpack flows for better token identification (#2470)\n 18→- **@cartridge/keychain**: Enhanced popup authentication for restrictive iframe environments with better fallback handling (#2462)\n 19→- **@cartridge/keychain**: Improved mobile authentication with better Chrome iOS handling and WebAuthn debugging capabilities (#2429, #2428, #2427)\n 20→- **@cartridge/controller**: Enhanced EVM wallet detection and provider discovery for improved multi-wallet compatibility (#2468)\n 21→- **@cartridge/keychain**: Streamlined payment GraphQL migration to controller for better architecture (#2464)\n 22→\n 23→### 🐛 Bug Fixes\n 24→- **@cartridge/keychain**: Fixed human-readable error messages for FailedPrecondition errors, showing clearer user-facing messages instead of generic service errors (#2496)\n 25→- **@cartridge/keychain**: Fixed back button functionality on verification pages for better navigation experience (#2495)\n 26→- **@cartridge/keychain**: Fixed profile history query performance by adding caps and gating fetches to prevent excessive API calls (#2490)\n 27→- **@cartridge/keychain**: Fixed execute submit error propagation to prevent hanging during transaction execution (#2488)\n 28→- **@cartridge/keychain**: Fixed credits purchase alignment with Stripe GraphQL for consistent payment processing (#2483)\n 29→- **@cartridge/controller**: Fixed WebAuthn permissions in Permissions-Policy header for proper passkey functionality (#2482)\n 30→- **@cartridge/controller**: Fixed custom-scheme redirect_uri preservation in standalone session flows for mobile app compatibility (#2481)\n 31→- **@cartridge/controller**: Fixed domain verification to check both redirect_url and redirect_uri parameters (#2474)\n 32→- **@cartridge/controller**: Fixed unknown signers error handling to prevent error screens (#2472)\n 33→- **@cartridge/controller**: Fixed custom URL scheme verification for mobile app integration (#2471)\n 34→- **@cartridge/controller**: Fixed loading spinner display while preset config loads (#2477)\n 35→- **@cartridge/controller**: Fixed connect flow reliability and removed console errors for cleaner operation (#2438, #2437)\n 36→- **@cartridge/controller**: Fixed disconnect method to properly reset iframe state (#2434)\n 37→\n 38→### 📦 Dependencies\n 39→- **controller-wasm**: Updated to version 0.9.6 for improved backend functionality (#2479)\n 40→- **controller-rs**: Updated to version 0.9.5 for enhanced performance (#2465)\n 41→- **@cartridge/ui**: Multiple updates for improved design consistency and functionality (#2489, #61e0634d)\n 42→\n 43→## [0.13.10-alpha.1] - 2026-02-25\n 44→\n 45→### ✨ New Features\n 46→- **@cartridge/controller**: Added `updateSession` API for runtime session policy updates, enabling dynamic modification of session policies during runtime for improved flexibility (#2440)\n 47→- **@cartridge/keychain**: Added account parameter support on session page, allowing developers to pass account information directly to session flows (#2439)\n 48→- **@cartridge/keychain**: Enhanced activity tab with comprehensive review functionality for improved user activity tracking (#2413)\n 49→\n 50→### 🐛 Bug Fixes\n 51→- **@cartridge/controller**: Fixed connect flow to ensure reliable connection establishment and prevent connection failures (#2438)\n 52→- **@cartridge/controller**: Removed console errors for cleaner debugging experience and improved production logging (#2437)\n 53→- **@cartridge/controller**: Fixed disconnect method to properly call `close()` and reset iframe state, ensuring clean disconnection and preventing stale iframe issues (#2434)\n 54→- **@cartridge/keychain**: Fixed Stripe.js Content Security Policy by adding script-src allowlist entry, enabling proper Stripe integration for payment processing (#2433)\n 55→- **@cartridge/keychain**: Fixed Continue button display on Chrome iOS when automatic session creation fails, ensuring users can still proceed with manual session creation (#2429)\n 56→- **@cartridge/keychain**: Prioritized iOS detection before hasPlatformAuthenticator check for WebAuthn, improving passkey creation reliability on iOS devices (#2428)\n 57→\n 58→### 🚀 Improvements\n 59→- **@cartridge/keychain**: Enhanced WebAuthn debugging by capturing options via PostHog for iOS troubleshooting and analytics (#2427)\n 60→- **@cartridge/keychain**: Removed WebAuthn debug logging to reduce console noise in production environments (#2430)\n 61→\n 62→### 🔧 Development\n 63→- **CI/CD**: Added auto-merge functionality for docs-sync PRs after checks pass for improved documentation workflow (#2432)\n 64→- **CI/CD**: Refined docs-sync process for more concise and accurate documentation updates (#2431)\n 65→\n 66→## [0.13.9] - 2026-02-16\n 67→\n 68→### 🚀 Improvements\n 69→- **@cartridge/controller**: Enhanced iOS WebAuthn support with explicit creation options and improved debug logging for more reliable passkey creation on iOS devices (#2421)\n 70→- **@cartridge/controller**: Streamlined build process by removing redundant build script in controller package for improved development workflow (#2423)\n 71→\n 72→### 🐛 Bug Fixes\n 73→- **@cartridge/keychain**: Fixed quest toast notifications by removing them to prevent user interface clutter and improve user experience (#2425)\n 74→- **@cartridge/controller**: Improved passkey creation flow for Chrome iOS by implementing direct iframe approach instead of popup flow for better mobile compatibility (#2419, #2420)\n 75→- **@cartridge/controller**: Enhanced iOS passkey creation reliability by setting authenticatorAttachment to platform for improved device authentication (#2417)\n 76→\n 77→### 🔧 Testing\n 78→- **@cartridge/controller**: Added comprehensive Capacitor session redirect E2E tests to prevent regressions in session ingestion and account creation flows (#2424)\n 79→- **@cartridge/controller**: Added regression tests for controller disconnect localStorage cleanup functionality (#2414)\n 80→\n 81→### 📦 Dependencies\n 82→- **controller-wasm**: Updated to version 0.9.4 for improved backend functionality (#2418)\n 83→- **Dependencies**: Updated ERC metadata dependencies for better token support (#2422)\n 84→\n 85→## [0.13.8] - 2026-02-13\n 86→\n 87→### ✨ New Features\n 88→- **@cartridge/controller**: Added new mainnet USDC token support with legacy USDC.e labeling for improved token identification (#94dae94e)\n 89→\n 90→### 🚀 Improvements\n 91→- **@cartridge/controller**: Enhanced connection policy resolution by fixing preset theme and custom policy override precedence, allowing apps to maintain preset-derived configuration while explicitly overriding preset policies (#2408)\n 92→- **@cartridge/controller**: Improved maintainability by extracting hardcoded \"startapp\" query parameter into `REDIRECT_QUERY_NAME` constant following Telegram mini app convention (#2412)\n 93→\n 94→### 🐛 Bug Fixes\n 95→- **@cartridge/controller**: Fixed `SessionProvider.probe()` returning undefined after `ingestSessionFromRedirect()` by restoring on-demand session retrieval for deep link redirects in Capacitor and mobile apps (#2409)\n 96→- **Token Configuration**: Reverted mainnet USDC token support changes to restore legacy behavior for token metadata and mainnet token indexing entries (#2410)\n 97→\n 98→### 🔧 Testing\n 99→- **@cartridge/controller**: Added comprehensive regression tests for controller disconnect localStorage cleanup functionality (#2414)\n 100→\n 101→## [0.13.7] - 2026-02-12\n 102→\n 103→### ✨ New Features\n 104→- **@cartridge/controller**: Added `lookupUsername(username)` method for headless flows, returning account existence status and normalized signer options for the controller's configured chain (#2400)\n 105→- **@cartridge/controller**: Added auto-signup functionality for headless connect when a username is missing, while maintaining strict signer matching for existing accounts (#2400)\n 106→- **@cartridge/connector**: Exposed `lookupUsername` helper method through ControllerConnector for easier integration with starknet-react applications (#2400)\n 107→\n 108→### 🚀 Improvements\n 109→- **Documentation**: Updated HEADLESS_MODE.md with recommended lookup-first flow patterns for improved developer guidance (#2400)\n 110→- **Testing**: Added comprehensive test coverage for username lookup normalization, error handling, and password-based headless auto-signup flows (#2400)\n 111→\n 112→## [0.13.6] - 2026-02-12\n 113→\n 114→### 🚀 Improvements\n 115→- **@cartridge/controller**: Enhanced SessionProvider preset support with automatic policy resolution from `@cartridge/presets`, enabling developers to use `preset: \"my-game\"` instead of manually duplicating policies and ensuring consistent policy hashing between SDK and keychain (#2401)\n 116→- **Documentation**: Updated project structure documentation with comprehensive provider flows, clarified ControllerProvider (web) and SessionProvider (native) architecture, and improved examples directory guidance (#2404)\n 117→\n 118→### 🐛 Bug Fixes\n 119→- **@cartridge/controller**: Fixed `session/not-registered` errors by normalizing contract addresses in policy hashing and consolidating async initialization to prevent policy hash divergence between SDK and keychain (#2401)\n 120→- **@cartridge/keychain**: Fixed theme copy button visibility in ErrorAlert component by replacing hardcoded black icons with theme-aware styling, ensuring proper visibility on dark backgrounds (#2402)\n 121→\n 122→## [0.13.5] - 2026-02-10\n 123→\n 124→### ✨ New Features\n 125→- **@cartridge/controller**: Added headless mode support to controller SDK for seamless authentication, allowing `connect({ username, signer, password? })` with hidden keychain iframe and UI-less authentication flows (#2315)\n 126→- **@cartridge/controller**: Added `close()` method to ControllerProvider for programmatic cleanup of controller instances (#2373)\n 127→- **@cartridge/controller**: Moved `asWalletStandard()` method from connector to controller package, enabling wallet standard usage without starknet-react dependency (#2364)\n 128→\n 129→### 🚀 Improvements\n 130→- **@cartridge/keychain**: Enhanced session management with exposed session GUID fields (`allowedPoliciesRoot`, `metadataHash`, `sessionKeyGuid`, `guardianKeyGuid`) in keychain callback payloads for registered sessions (#2396)\n 131→- **@cartridge/keychain**: Consolidated policy handling by refactoring `toWasmPolicies` into single source of truth for improved consistency (#2394)\n 132→- **@cartridge/keychain**: Enhanced quests and achievements display to only show tabs when game/application supports them (#2392)\n 133→- **@cartridge/keychain**: Improved starterpack purchase UI to always show quantity in purchase button for better user clarity (#2390)\n 134→- **@cartridge/connector**: Improved disconnect handling to keep `@starknet-react/core` state in sync with controller state (#2315)\n 135→\n 136→### 🐛 Bug Fixes\n 137→- **@cartridge/keychain**: Fixed session authentication to properly disconnect and re-authenticate when session `rpc_url` differs from stored controller, ensuring correct chain targeting (#2395)\n 138→- **@cartridge/controller**: Enhanced iframe security by hardening keychain iframe loading with URL validation, origin pinning, and reduced feature grants by default (#2384)\n 139→- **@cartridge/keychain**: Added keychain CSP/security headers and removed inline scripts from index.html for improved security posture (#2384)\n 140→\n 141→### 📦 Dependencies\n 142→- **controller-rs**: Updated to v0.9.3 for improved backend functionality (#2397)\n 143→\n 144→## [0.13.4] - 2026-02-06\n 145→\n 146→### 🐛 Bug Fixes\n 147→- **CI/CD**: Fixed npm publishing with catalog resolution by reverting to pnpm publish, which correctly handles pnpm catalog: protocol that npm publish doesn't support, ensuring proper package resolution in published packages (#77210c65)\n 148→\n 149→### 🔧 Development\n 150→- **Agent Tooling**: Added standardized agent/dev tooling with `.agents/` directory as source of truth, Claude/Cursor skill compatibility symlinks, and enhanced pre-commit hooks for improved development workflow (#2388)\n 151→\n 152→## [0.13.3] - 2026-02-06\n 153→\n 154→### ✨ New Features\n 155→- **@cartridge/controller**: Added starterpack play callback functionality enabling custom game launch behavior and improved gaming integration (#2362)\n 156→- **@cartridge/controller**: Added specialized controller toast notifications with improved messaging and user feedback for iframe-embedded applications (#2358)\n 157→\n 158→### 🚀 Improvements\n 159→- **@cartridge/keychain**: Enhanced iframe connect flow with automatic Storage Access API request for improved cross-domain authentication in WebView environments (#2374)\n 160→- **@cartridge/keychain**: Tightened Capacitor origin verification to only auto-verify localhost, requiring explicit authorization for custom hostnames in presets for enhanced security (#2375)\n 161→- **@cartridge/controller**: Improved policy handling with canonical sorting before hashing to ensure consistent policy processing and prevent non-deterministic merkle root calculations (#2359)\n 162→- **@cartridge/controller**: Enhanced preset verification for Capacitor environments with better validation and support for capacitor:// scheme (#2369)\n 163→\n 164→### 🐛 Bug Fixes\n 165→- **@cartridge/controller**: Added ApprovalPolicy support to controller toWasmPolicies for proper merkle root calculation across different connectors, fixing session registration mismatches (#2372)\n 166→- **@cartridge/controller**: Fixed aggregate contracts display on unverified session to properly group methods into \"Approve \" expendable cards (#2304)\n 167→- **@cartridge/controller**: Fixed controller re-initialization issues by reusing existing controller instances to prevent duplicate iframes and message channels (#2360)\n 168→- **@cartridge/controller**: Fixed chain ID lookup to support non-Cartridge chain configurations for better multi-chain compatibility (#2361)\n 169→- **@cartridge/keychain**: Fixed Coinbase sandbox configuration to ensure proper sandbox environment setup (#2371)\n 170→- **@cartridge/keychain**: Fixed password login button alignment with primary theme for consistent UI styling (#2385)\n 171→\n 172→## [0.13.2] - 2026-02-06\n 173→\n 174→### 🐛 Bug Fixes\n 175→- **@cartridge/controller, @cartridge/connector**: Added repository field to package.json files for npm OIDC trusted publishing, ensuring proper package verification and supply chain security (#c9c6f25d)\n 176→\n 177→## [0.13.1] - 2026-02-06\n 178→\n 179→### 🐛 Bug Fixes\n 180→- **CI/CD**: Fixed npm publishing with OIDC authentication by switching from pnpm publish to npm publish and removing registry-url from setup-node to prevent .npmrc conflicts that block OIDC token exchange (#3880e8ba)\n 181→\n 182→## [0.13.0] - 2026-02-06\n 183→\n 184→### ✨ New Features\n 185→- **@cartridge/controller**: Added ApprovalPolicy support to controller toWasmPolicies for enhanced policy management and proper merkle root calculation across different connectors (#2372)\n 186→- **@cartridge/controller**: Added starterpack play callback functionality enabling custom game launch behavior and improved gaming integration (#2362)\n 187→- **@cartridge/controller**: Added specialized controller toast notifications with improved messaging and user feedback for iframe-embedded applications (#2358)\n 188→\n 189→### 🚀 Improvements\n 190→- **@cartridge/keychain**: Enhanced iframe connect flow with automatic Storage Access API request for improved cross-domain authentication in WebView environments (#2374)\n 191→- **@cartridge/keychain**: Tightened Capacitor origin verification to only auto-verify localhost, requiring explicit authorization for custom hostnames in presets for enhanced security (#2375)\n 192→- **@cartridge/controller**: Improved policy handling with canonical sorting before hashing to ensure consistent policy processing and prevent non-deterministic merkle root calculations (#2359)\n 193→- **@cartridge/controller**: Enhanced preset verification for Capacitor environments with better validation and support for capacitor:// scheme (#2369)\n 194→- **Development**: Migrated npm publishing to OIDC authentication with supply chain provenance attestation for enhanced security (#2381)\n 195→\n 196→### 🐛 Bug Fixes\n 197→- **@cartridge/controller**: Fixed aggregate contracts display on unverified session to properly group methods into \"Approve \" expendable cards (#2304)\n 198→- **@cartridge/controller**: Fixed controller re-initialization issues by reusing existing controller instances to prevent duplicate iframes and message channels (#2360)\n 199→- **@cartridge/controller**: Fixed chain ID lookup to support non-Cartridge chain configurations for better multi-chain compatibility (#2361)\n 200→- **@cartridge/keychain**: Fixed Coinbase sandbox configuration to ensure proper sandbox environment setup (#2371)\n 201→- **CI/CD**: Fixed release workflow race conditions by inlining changelog generation into release dispatch workflow (#2379)\n 202→\n 203→## [0.12.3] - 2026-02-05\n 204→\n 205→### ✨ New Features\n 206→- **@cartridge/keychain**: Added Capacitor origin verification tightening for enhanced security in mobile environments (#2375)\n 207→- **@cartridge/controller**: Added specialized controller toast notifications with improved messaging and user feedback (#2358)\n 208→- **@cartridge/controller**: Added ApprovalPolicy support to controller toWasmPolicies for enhanced policy management (#2372)\n 209→- **@cartridge/controller**: Added starterpack play callback functionality for improved gaming integration (#2362)\n 210→\n 211→### 🚀 Improvements \n 212→- **@cartridge/keychain**: Enhanced iframe connect flow with automatic storage access request for improved cross-domain authentication (#2374)\n 213→- **@cartridge/controller**: Improved policy handling with canonical sorting before hashing to ensure consistent policy processing (#2359)\n 214→- **@cartridge/controller**: Enhanced preset verification for Capacitor environments with better validation (#2369)\n 215→\n 216→### 🐛 Bug Fixes\n 217→- **@cartridge/controller**: Fixed aggregate contracts on unverified session to prevent session-related issues (#2304)\n 218→- **@cartridge/keychain**: Fixed Coinbase sandbox configuration to ensure proper sandbox environment setup (#2371)\n 219→- **@cartridge/controller**: Fixed controller re-initialization issues by reusing existing controller instances (#2360)\n 220→- **@cartridge/controller**: Fixed chain ID lookup to support non-Cartridge chain configurations (#2361)\n 221→\n 222→## [0.12.2] - 2026-01-29\n 223→\n 224→### ✨ New Features\n 225→- **Examples**: Added Capacitor session example with iOS app integration, demonstrating mobile session management and providing comprehensive cross-platform development guidance (#2355)\n 226→- **@cartridge/keychain**: Enhanced Coinbase onramp integration with `createCoinbaseLayerswapOrder` mutation for improved order creation and processing (#2354)\n 227→- **@cartridge/keychain**: Added comprehensive cost breakdown display for Apple Pay purchases, showing detailed fee structure including Coinbase fees and bridge fees with real-time pricing from Coinbase Onramp API (#2352)\n 228→- **@cartridge/keychain**: Added starterpack Apple Pay checkout functionality for streamlined mobile payments (#2339)\n 229→- **@cartridge/keychain**: Implemented verification autofill functionality for improved user experience during authentication flows (#2342)\n 230→- **@cartridge/keychain**: Added order fetching by IDs capability for enhanced order management and tracking (#2334)\n 231→\n 232→### 🚀 Improvements \n 233→- **@cartridge/keychain**: Removed supported-platforms feature gate, making platform detection generally available (#2335)\n 234→- **Development**: Migrated skills documentation to centralized `.agents/skills` directory for better organization and AI-assisted development workflows (#2353)\n 235→\n 236→### 🐛 Bug Fixes\n 237→- **@cartridge/keychain**: Fixed 'proceed with caution' warning visibility for slot login flows, improving user experience (#2351)\n 238→- **@cartridge/keychain**: Fixed purchase token layout issues for better visual consistency (#2343)\n 239→- **@cartridge/keychain**: Fixed Layerswap username retrieval from authentication context for proper user identification (#2347)\n 240→- **@cartridge/keychain**: Fixed Coinbase Terms of Service link for proper legal compliance (#2341)\n 241→- **@cartridge/keychain**: Fixed Coinbase query handling for improved API integration (#2338)\n 242→\n 243→### 📦 Dependencies\n 244→- **@cartridge/ui**: Multiple updates for improved design consistency and functionality (#2350, #2348, #2346, #2345, #2344, #2337)\n 245→\n 246→## [0.12.1] - 2026-01-07\n 247→\n 248→### ✨ New Features\n 249→- **@cartridge/controller**: Added configurable error display modes with `errorDisplayMode` option, enabling developers to control how transaction errors are presented to users with three modes: `modal` (default), `notification` (clickable toast), and `silent` (console only) (#2312)\n 250→\n 251→### 🚀 Improvements \n 252→- **Development**: Enhanced Claude Code integration with structured skill guides for code review, PR management, testing, Storybook snapshots, and release workflows (#2311, #2310)\n 253→- **Documentation**: Expanded CLAUDE.md with detailed technology stack versions, build process explanations, and comprehensive development workflow guidance (#2310)\n 254→\n 255→### 🔧 Development\n 256→- **Build**: Added .worktrees to .gitignore for improved Git worktree support (#2311)\n 257→- **Claude Integration**: Added comprehensive permissions configuration and skill documentation for streamlined AI-assisted development (#2311, #2310)\n 258→\n 259→## [0.12.0] - 2026-01-01\n 260→\n 261→### ✨ New Features\n 262→- **@cartridge/controller**: Added dynamic `signupOptions` to `connect()` method, enabling developers to override constructor configuration per connection and create multiple branded authentication flows (e.g., \"Login with Phantom\", \"Login with Google\") using a single Controller instance (#2298)\n 263→- **@cartridge/keychain**: Added wallet selection drawer for onchain checkout, replacing navigation-based flow with inline slide-up drawer for more seamless UX (#2294)\n 264→- **@cartridge/keychain**: Added Coinbase onramp integration with `useCoinbase` hook for order creation, transaction queries, and requirement checks with automatic client IP detection (#2296)\n 265→- **@cartridge/keychain**: Added support for additional payment tokens in starterpack metadata, allowing creators to specify custom payment options beyond default ETH, STRK, and USDC (#2292)\n 266→\n 267→### 🚀 Improvements \n 268→- **@cartridge/controller**: Enhanced paymaster error handling with graceful fallback to user-pays flow when paymaster is unavailable due to rate limits, execution timing, or other conditions (#2291)\n 269→- **@cartridge/keychain**: Improved authentication flows with branded button text for single-signer configurations and configurable signup authentication methods (#2290)\n 270→- **@cartridge/keychain**: Enhanced session management by restoring wildcard session creation during login flows for better user experience (#2302, #637faa12)\n 271→- **@cartridge/keychain**: Updated Ekubo integration to use new chain ID-based API format for improved swap functionality (#2287)\n 272→- **@cartridge/keychain**: Improved session footer styling with proper padding and button text updates from \"Create Session\" to \"Continue\" (#2274)\n 273→\n 274→### 🐛 Bug Fixes\n 275→- **@cartridge/controller**: Restored `propagateSessionErrors` functionality for contract execution, ensuring errors are properly propagated back to callers instead of showing manual approval modal when enabled (#2305)\n 276→- **@cartridge/keychain**: Fixed starterpack loading flicker by showing proper loading states during loading/onchain/preimage states (#2297)\n 277→- **@cartridge/keychain**: Fixed collection pagination issues for better user experience (#2301)\n 278→- **@cartridge/keychain**: Fixed session management by reverting and then restoring wildcard session creation during register session login for optimal user flow (#2299, #2302)\n 279→- **@cartridge/keychain**: Fixed Ekubo API CORS issues by specifying proper CORS headers and credentials handling (#2288)\n 280→\n 281→### 📦 Dependencies\n 282→- **@cartridge/ui**: Updated to latest commits for improved design consistency and React 19 peer dependency support (#2295, #2260)\n 283→\n 284→## [0.11.4-alpha.1] - 2025-12-31\n 285→\n 286→### ✨ New Features\n 287→- **@cartridge/controller**: Added dynamic `signupOptions` to `connect()` method, enabling developers to override constructor configuration per connection and create multiple branded authentication flows (e.g., \"Login with Phantom\", \"Login with Google\") using a single Controller instance (#2298)\n 288→- **@cartridge/keychain**: Added wallet selection drawer for onchain checkout, replacing navigation-based flow with inline slide-up drawer for more seamless UX (#2294)\n 289→- **@cartridge/keychain**: Added Coinbase onramp integration with `useCoinbase` hook for order creation, transaction queries, and requirement checks with automatic client IP detection (#2296)\n 290→- **@cartridge/keychain**: Added support for additional payment tokens in starterpack metadata, allowing creators to specify custom payment options beyond default ETH, STRK, and USDC (#2292)\n 291→\n 292→### 🚀 Improvements \n 293→- **@cartridge/controller**: Enhanced paymaster error handling with graceful fallback to user-pays flow when paymaster is unavailable due to rate limits, execution timing, or other conditions (#2291)\n 294→- **@cartridge/keychain**: Improved authentication flows with branded button text for single-signer configurations and configurable signup authentication methods (#2290, #1b4423c3)\n 295→- **@cartridge/keychain**: Enhanced session management by restoring wildcard session creation during login flows for better user experience (#2302, #637faa12)\n 296→- **@cartridge/keychain**: Updated Ekubo integration to use new chain ID-based API format for improved swap functionality (#2287)\n 297→- **@cartridge/keychain**: Improved session footer styling with proper padding and button text updates from \"Create Session\" to \"Continue\" (#2274)\n 298→\n 299→### 🐛 Bug Fixes\n 300→- **@cartridge/controller**: Restored `propagateSessionErrors` functionality for contract execution, ensuring errors are properly propagated back to callers instead of showing manual approval modal when enabled (#2305)\n 301→- **@cartridge/keychain**: Fixed starterpack loading flicker by showing proper loading states during loading/onchain/preimage states (#2297)\n 302→- **@cartridge/keychain**: Fixed collection pagination issues for better user experience (#2301)\n 303→- **@cartridge/keychain**: Fixed controlled Select component warnings in cost breakdown by using proper value handling (#2294)\n 304→- **@cartridge/keychain**: Fixed Ekubo API CORS issues by specifying proper CORS headers and credentials handling (#2288)\n 305→\n 306→### 🔧 Refactoring\n 307→- **Development**: Multiple UI component updates and dependency management improvements (#2295, #2260)\n 308→- **@cartridge/keychain**: Simplified authentication flows by removing complex route-based session skipping logic in favor of consistent wildcard session creation (#2286, #2285)\n 309→\n 310→### 📦 Dependencies\n 311→- **@cartridge/ui**: Updated to latest commits for improved design consistency and React 19 peer dependency support\n 312→\n 313→## [0.11.3] - 2025-12-10\n 314→\n 315→### ✨ New Features\n 316→- **@cartridge/keychain**: Added Layerswap cross-chain deposit integration for onchain checkout with balance checks, bridging actions, and UI for conversion/liquidity errors (#2273)\n 317→- **@cartridge/controller**: Added Phantom EVM wallet authentication method extending EthereumWalletBase, enabling login and signup with Phantom's EVM-compatible mode (#2278)\n 318→- **@cartridge/controller**: Added toast notification API with ToastType and ToastOptions interfaces, enabling toast creation from the controller SDK (#2265)\n 319→- **@cartridge/keychain**: Added quests functionality for enhanced gaming features (#2280)\n 320→\n 321→### 🚀 Improvements \n 322→- **@cartridge/keychain**: Enhanced onchain purchase flow with multi-network wallet selection, improved cost breakdown displaying Layerswap fees, and streamlined navigation (#2273)\n 323→- **@cartridge/keychain**: Improved purchase context architecture by splitting into flow-specific contexts (StarterpackContext, OnchainPurchaseContext, CreditPurchaseContext) for better maintainability (#2270)\n 324→- **@cartridge/keychain**: Enhanced authentication flows to skip wildcard session creation during register session login, reducing friction from two signatures to one (#2275)\n 325→- **@cartridge/keychain**: Reverted controller iframe dismiss behavior to prevent accidental closure when clicking outside (#2277)\n 326→\n 327→### 🐛 Bug Fixes\n 328→- **@cartridge/keychain**: Fixed network selection flicker by adding detection state to suppress empty UI while detecting external wallets (#2272)\n 329→- **@cartridge/keychain**: Fixed Turnkey nonce mismatch errors by clearing cached Auth0 tokens before nonce generation, ensuring fresh tokens with correct nonces (#2271)\n 330→- **@cartridge/controller**: Added payment permission to iframe allow attribute for proper Stripe Payment Request API access, enabling Apple Pay and Google Pay support (#2269)\n 331→- **@cartridge/keychain**: Reduced Ekubo API console noise by removing verbose 429 logging and adjusting retry/backoff configurations for better rate limit handling (#2268)\n 332→\n 333→### 🔧 Refactoring\n 334→- **Development**: Removed build:compat infrastructure and associated dependencies, simplifying build configuration across packages (#2279)\n 335→\n 336→## [0.11.3-alpha.2] - 2025-12-10\n 337→\n 338→### ✨ New Features\n 339→- **@cartridge/keychain**: Added Layerswap cross-chain deposit integration for onchain checkout with balance checks, bridging actions, and UI for conversion/liquidity errors (#2273)\n 340→- **@cartridge/controller**: Added Phantom EVM wallet authentication method extending EthereumWalletBase, enabling login and signup with Phantom's EVM-compatible mode (#2278)\n 341→- **@cartridge/controller**: Added toast notification API with ToastType and ToastOptions interfaces, enabling toast creation from the controller SDK (#2265)\n 342→- **@cartridge/keychain**: Added quests functionality for enhanced gaming features (#2280)\n 343→\n 344→### 🚀 Improvements \n 345→- **@cartridge/keychain**: Enhanced onchain purchase flow with multi-network wallet selection, improved cost breakdown displaying Layerswap fees, and streamlined navigation (#2273)\n 346→- **@cartridge/keychain**: Improved purchase context architecture by splitting into flow-specific contexts (StarterpackContext, OnchainPurchaseContext, CreditPurchaseContext) for better maintainability (#2270)\n 347→- **@cartridge/keychain**: Enhanced authentication flows to skip wildcard session creation during register session login, reducing friction from two signatures to one (#2275)\n 348→- **@cartridge/keychain**: Reverted controller iframe dismiss behavior to prevent accidental closure when clicking outside (#2277)\n 349→\n 350→### 🐛 Bug Fixes\n 351→- **@cartridge/keychain**: Fixed network selection flicker by adding detection state to suppress empty UI while detecting external wallets (#2272)\n 352→- **@cartridge/keychain**: Fixed Turnkey nonce mismatch errors by clearing cached Auth0 tokens before nonce generation, ensuring fresh tokens with correct nonces (#2271)\n 353→- **@cartridge/controller**: Added payment permission to iframe allow attribute for proper Stripe Payment Request API access, enabling Apple Pay and Google Pay support (#2269)\n 354→- **@cartridge/keychain**: Reduced Ekubo API console noise by removing verbose 429 logging and adjusting retry/backoff configurations for better rate limit handling (#2268)\n 355→\n 356→### 🔧 Refactoring\n 357→- **Development**: Removed build:compat infrastructure and associated dependencies, simplifying build configuration across packages (#2279)\n 358→\n 359→## [0.11.3-alpha.1] - 2025-12-01\n 360→\n 361→### ✨ New Features\n 362→- **@cartridge/keychain**: Added DevConnect booster pack claim integration with Merkle claim functionality, enabling users to claim DevConnect rewards through preimage-derived EVM addresses (#2249)\n 363→- **@cartridge/keychain**: Streamlined onchain starterpack purchase flow with direct checkout navigation, removing intermediate screens and defaulting to controller wallet for faster transactions (#2200)\n 364→- **@cartridge/keychain**: Added horizontal carousel for booster pack cards on mobile devices, providing swipeable navigation and improved touch experience (#2253)\n 365→- **@cartridge/keychain**: Added localStorage availability check for booster packs to ensure proper functionality across different environments (#2259)\n 366→- **@cartridge/keychain**: Added tournament game links integration for enhanced gaming navigation (#2252)\n 367→- **@cartridge/keychain**: Implemented token IDs retrieval from claim transactions for better transaction tracking (#2255)\n 368→\n 369→### 🚀 Improvements \n 370→- **@cartridge/keychain**: Simplified redirect logic in ConnectRoute for more streamlined authentication flows (#2248)\n 371→- **@cartridge/keychain**: Enhanced claim interactions for mystery assets with improved user feedback (#2257)\n 372→- **@cartridge/keychain**: Restored claim call functionality for improved transaction processing (#2254)\n 373→\n 374→### 🐛 Bug Fixes\n 375→- **@cartridge/controller**: Fixed iframe local network access by adding `local-network-access *` to iframe allow attribute, enabling proper local development (#2266)\n 376→- **@cartridge/keychain**: Fixed merkle claim UI stuck issue preventing users from completing claim flows (#2261)\n 377→- **@cartridge/keychain**: Fixed token icon retrieval from presets for consistent token display (#2258)\n 378→- **@cartridge/keychain**: Added redirect URL support for WebAuthn authentication, improving authentication flow reliability (#2250)\n 379→- **@cartridge/keychain**: Fixed Turnkey popup navigation to keychain for better authentication routing (#2247)\n 380→- **@cartridge/keychain**: Updated ConnectRoute tests to match simplified redirect logic for improved test reliability (#2263)\n 381→- **@cartridge/keychain**: Fixed input format issues for better form validation (#2251)\n 382→- **@cartridge/keychain**: Fixed event parsing to only handle mystery item events properly (#2256)\n 383→\n 384→## [0.11.2] - 2025-11-14\n 385→\n 386→### ✨ New Features\n 387→- **@cartridge/keychain**: Implemented encrypted localStorage snapshot for Storage Access API using split-key encryption architecture, eliminating Cookie Store API dependency and enabling secure state transfer across third-party iframe boundaries (#2239)\n 388→\n 389→### 🚀 Improvements \n 390→- **@cartridge/keychain**: Enhanced iOS popup reliability with retry logic, exponential backoff, and stability checks for improved authentication flow on iOS devices (#2244)\n 391→- **@cartridge/keychain**: Updated booster pack claim flow with improved component structure and better user experience (#2240)\n 392→- **@cartridge/keychain**: Enhanced debug logging with comprehensive Turnkey authentication logs for better troubleshooting (#2241)\n 393→\n 394→### 🐛 Bug Fixes\n 395→- **@cartridge/keychain**: Fixed popup error handling by preventing thrown errors on blocked popups, maintaining original flow behavior for mobile compatibility (#2243)\n 396→- **@cartridge/keychain**: Reverted popup error logging to address reliability issues and maintain stable authentication flows (#2242, #2238)\n 397→- **@cartridge/keychain**: Fixed claim pill size display issues for better visual consistency (#2226)\n 398→- **@cartridge/keychain**: Fixed default image handling bug in booster pack components (#2225)\n 399→- **@cartridge/keychain**: Updated game links for improved navigation and user experience (#2224)\n 400→- **@cartridge/keychain**: Enhanced dynamic height CSS for better responsive design (#2233)\n 401→- **@cartridge/keychain**: Improved localStorage and dead-path cookie synchronization for standalone flows (#2232)\n 402→- **@cartridge/keychain**: Removed deprecated controller_redirect functionality to streamline authentication flows (#2230)\n 403→- **@cartridge/keychain**: Simplified storage access request logic for more reliable cross-domain authentication (#2229)\n 404→- **@cartridge/controller**: Refactored session creation to load controller from store for improved session management (#2228)\n 405→- **Development**: Fixed environment variable loading for live environment configuration (#2227)\n 406→\n 407→### 📦 Dependencies\n 408→- **Development**: Added Storybook story for StandaloneConnect component for improved component testing and documentation (#2231)\n 409→\n 410→## [0.11.2-alpha.4] - 2025-11-13\n 411→\n 412→### ✨ New Features\n 413→- **@cartridge/keychain**: Added booster pack claim page for DevConnect rewards, enabling users to claim credits, tokens, and NFTs using private keys from reward URLs with comprehensive signature validation and post-claim actions (#2160)\n 414→\n 415→### 🚀 Improvements \n 416→- **@cartridge/controller**: Refactored session architecture to move app_id from account constructors to session-specific operations, enabling a single shared controller instance to serve multiple applications through app-specific sessions (#2220)\n 417→\n 418→### 🐛 Bug Fixes\n 419→- **@cartridge/controller**: Fixed standalone authentication flow storage access issues by adding debug logging for redirect detection, updating StandaloneConnect UI with generic permission messages, and removing pre-authenticated account display for improved security and clarity (#2217)\n 420→\n 421→### 📦 Dependencies\n 422→- **@cartridge/ui**: Updated to commit df8934d for improved design consistency and functionality (#2218)\n 423→\n 424→## [0.11.2-alpha.3] - 2025-11-12\n 425→\n 426→### ✨ New Features\n 427→- **@cartridge/controller**: Added `signupOptions` support to SessionProvider, enabling developers to configure which authentication methods (Google, Discord, MetaMask, etc.) are available during session creation and bringing SessionProvider feature parity with ControllerProvider (#2219)\n 428→\n 429→## [0.11.2-alpha.2] - 2025-11-11\n 430→\n 431→### 🚀 Improvements\n 432→- **@cartridge/controller**: Refactored `openStarterPack` method signature to accept an options object instead of direct parameters, making the API more extensible for future additions (#2213)\n 433→\n 434→### 🐛 Bug Fixes\n 435→- **@cartridge/controller**: Fixed standalone auth flow storage access by implementing dedicated `controller_storage_ready` parameter for redirect detection and automatic Storage Access API requests, enabling seamless cross-domain authentication flow (#2212)\n 436→- **@cartridge/keychain**: Reverted Turnkey nonce mismatch fix to address reliability issues (#2215)\n 437→\n 438→## [0.11.2-alpha.1] - 2025-11-11\n 439→\n 440→### ✨ New Features\n 441→- **@cartridge/keychain**: Added Ethereum preimage signing for Merkle claims, enabling users to claim tokens using a preimage when external wallets are not available or preferred (#2185)\n 442→\n 443→### 🚀 Improvements \n 444→- **@cartridge/controller**: Refactored `openStarterPack` method signature to accept an options object instead of direct parameters, making the API more extensible for future additions (#2213)\n 445→- **@cartridge/keychain**: Simplified game redirect URLs in PlayButton component to use cleaner parameter format with direct game URLs (#2209)\n 446→- **Development**: Disabled Vite visualizer auto-open in production builds to streamline the build process (#2211)\n 447→- **Examples**: Added Nums game integration to the PlayButton component with appropriate redirect and preset configuration (#2206)\n 448→\n 449→### 🐛 Bug Fixes\n 450→- **@cartridge/keychain**: Fixed Turnkey nonce mismatch by persisting nonce in localStorage across Auth0 redirects, resolving iframe recreation issues during the authentication flow (#2210)\n 451→\n 452→### 📦 Dependencies\n 453→- **@cartridge/controller-wasm**: Updated to version 0.3.17 for improved functionality (#2207)\n 454→\n 455→## [0.11.0] - 2025-11-10\n 456→\n 457→### ✨ New Features\n 458→- **@cartridge/controller**: Added controller_redirect parameter for standalone flow, enabling automatic redirect to keychain for first-party storage access with preset support (#2192)\n 459→- **@cartridge/keychain**: Added Layerswap deposit support for starterpack purchases, replacing backend purchase flow with more flexible deposit-based approach (#2194)\n 460→- **@cartridge/keychain**: Added transaction hash display on success screen for onchain purchases, improving transaction transparency and user feedback (#2186)\n 461→- **@cartridge/keychain**: Added balance_of fallback and enhanced error handling for token balance checks, improving reliability of token balance queries (#2178)\n 462→- **Development**: Added conductor.json workspace configuration for improved development workflow (#2195)\n 463→\n 464→### 🚀 Improvements \n 465→- **@cartridge/keychain**: Refactored starterpack architecture to separate claim and onchain flows with clearer terminology - \"backend\" starterpacks renamed to \"claimed\" starterpacks for better clarity (#2199)\n 466→- **@cartridge/keychain**: Enhanced standalone flow with automatic connector detection from redirect flow, improving user experience (#2189)\n 467→- **@cartridge/keychain**: Improved mobile detection logic for better cross-platform compatibility (#2175)\n 468→- **@cartridge/keychain**: Redesigned starterpack receiving and success screens for improved user experience (#2183)\n 469→- **@cartridge/keychain**: Enhanced transaction cancellation handling when navigating back from transaction flows (#2180)\n 470→\n 471→### 🐛 Bug Fixes\n 472→- **@cartridge/keychain**: Fixed torii token configuration for improved token handling (#2201)\n 473→- **@cartridge/keychain**: Fixed session auto-creation redirect timing in standalone authentication flow (#2196)\n 474→- **@cartridge/keychain**: Fixed preset verification in standalone flow for more reliable preset validation (#2191)\n 475→- **@cartridge/keychain**: Fixed URL search parameter preservation in connect route to maintain state during navigation (#2188)\n 476→- **@cartridge/keychain**: Fixed achievement display issues for better user profile experience (#2181)\n 477→\n 478→### 🔧 Refactoring\n 479→- **@cartridge/controller**: Removed unused onAuthenticationSuccess callback to streamline authentication flow (#2197)\n 480→- **@cartridge/keychain**: Deprecated CryptoCheckout component in favor of new Layerswap deposit approach (#2194)\n 481→\n 482→### 📦 Dependencies\n 483→- **@cartridge/ui**: Updated to latest version for improved design consistency (#2190, #2182)\n 484→\n 485→## [0.10.7] - 2025-10-01\n 486→\n 487→### ✨ New Features\n 488→- **@cartridge/controller**: Added async/await pattern for controller initialization, providing better error handling and improved developer experience (#2070)\n 489→- **@cartridge/keychain**: Added disconnect redirect URL support for session provider, enabling better session management and app navigation (#2074)\n 490→\n 491→### 🚀 Improvements \n 492→- **@cartridge/keychain**: Removed deprecated layout style overrides across components for cleaner UI rendering (#2040)\n 493→- **@cartridge/keychain**: Extracted keychain URL logic into dedicated function for better code organization and maintainability (#2071)\n 494→- **@cartridge/keychain**: Enhanced bottom navigation to preserve query parameters during navigation (#2072)\n 495→- **@cartridge/keychain**: Improved token sorting in ERC20 lists for better user experience (#2083)\n 496→- **Development**: Enforced React hook dependencies for improved code quality (#2065)\n 497→\n 498→### 🐛 Bug Fixes\n 499→- **@cartridge/controller**: Fixed Ethereum wallet availability on mobile browsers by adding mobile detection to prevent unsupported wallet initialization (#2076)\n 500→- **@cartridge/keychain**: Fixed BigInt serialization errors in execute URL parameters by adding proper JSON serialization handling (#2084)\n 501→- **@cartridge/keychain**: Resolved circular dependency and BigInt handling issues in starterpack components (#2085)\n 502→- **@cartridge/keychain**: Fixed starterpack crypto cost breakdown display for accurate pricing information (#2081)\n 503→- **@cartridge/keychain**: Fixed controller loading state management for smoother user experience (#2078)\n 504→- **@cartridge/keychain**: Fixed authentication method types for improved type safety (#2073)\n 505→- **@cartridge/keychain**: Fixed inventory display issues and asset collection rendering (#2069, #2068)\n 506→\n 507→### 📦 Dependencies\n 508→- **@cartridge/presets**: Updated to latest version for improved functionality (#2077)\n 509→\n 510→## [0.10.6] - 2025-09-26\n 511→\n 512→### ✨ New Features\n 513→- **@cartridge/keychain**: Added marketplace integration with consolidated arcade provider functionality, streamlining marketplace operations and improving the gaming marketplace experience (#2063)\n 514→- **@cartridge/keychain**: Added disconnect page with redirect deeplink support, enabling better session management and seamless app navigation (#2056)\n 515→- **@cartridge/keychain**: Implemented dynamic RPC URL override support for enhanced flexibility in network configuration, allowing developers to specify custom RPC endpoints dynamically (#2052)\n 516→\n 517→### 🚀 Improvements \n 518→- **@cartridge/controller**: Enhanced Android native flow session provider with improved error handling and better session management reliability (#2066)\n 519→\n 520→### 🐛 Bug Fixes\n 521→- **@cartridge/keychain**: Fixed purchase flow to use correct network icon, ensuring users see the appropriate network indicator during transactions (#2055)\n 522→- **@cartridge/keychain**: Fixed verified session creation to improve session validation and authentication flow reliability (#2062)\n 523→- **@cartridge/keychain**: Fixed game theme functionality for better theming consistency across gaming applications (#2050)\n 524→\n 525→### 📦 Dependencies\n 526→- **Dojo**: Updated to latest version for improved gaming framework functionality (#2057)\n 527→\n 528→## [0.10.5] - 2025-09-20\n 529→\n 530→### 🐛 Bug Fixes\n 531→- **@cartridge/controller**: Fixed session key GUID registration by adding proper signerToGuid generation and debug logging to SessionAccount constructor, ensuring proper session registration for Node.js provider (#2047)\n 532→- **@cartridge/keychain**: Fixed USDC payment type box visibility on Starter Pack pages by removing redundant USDC denomination badge from cost breakdown display (#2046)\n 533→- **@cartridge/keychain**: Fixed claim wallet detection to properly identify available wallets during claiming process, improving wallet selection reliability (#2045)\n 534→- **@cartridge/keychain**: Fixed starter pack UI by removing unintentional hover states from non-selectable starter items and hiding unnecessary icons in starter pack page header (#2026)\n 535→\n 536→## [0.10.4] - 2025-09-18\n 537→\n 538→### ✨ New Features\n 539→- **@cartridge/keychain**: Added cookie-based authentication for already connected accounts, improving user experience by maintaining login state across sessions (#2039)\n 540→\n 541→### 🐛 Bug Fixes\n 542→- **@cartridge/controller**: Fixed external wallet availability detection to handle cases where StarkNet window objects are not immediately available on initialization, ensuring reliable StarkNet wallet detection (#2043)\n 543→\n 544→## [0.10.3] - 2025-09-17\n 545→\n 546→### ✨ New Features\n 547→- **@cartridge/keychain**: Added native social login functionality, enabling seamless authentication in native applications (#2010)\n 548→- **@cartridge/keychain**: Implemented robust retry logic with exponential backoff for transaction waiting operations, improving reliability for both external wallet and StarkNet transactions (#2032)\n 549→- **@cartridge/keychain**: Enhanced starter pack and cost breakdown UI with improved tooltips, verified/unverified edition support, and better item display (#1982)\n 550→\n 551→### 🚀 Improvements \n 552→- **@cartridge/keychain**: Migrated all explorer URLs from StarkScan to Cartridge Explorer for consistent block exploration experience (#1883)\n 553→- **@cartridge/controller**: Improved nested execution error parsing to extract meaningful error messages from deeply nested JSON-RPC responses, showing specific contract errors instead of generic messages (#2033)\n 554→- **@cartridge/keychain**: Enhanced RPC error display in ExecutionContainer to show clean error descriptions instead of full JSON responses (#2023)\n 555→- **@cartridge/keychain**: Improved token ordering and balance handling for better user experience (#2029, #2024)\n 556→- **Dependencies**: Updated presets package and various UI components for improved functionality\n 557→\n 558→### 🐛 Bug Fixes\n 559→- **@cartridge/keychain**: Fixed social authentication redirect URL handling for improved login reliability (#2035)\n 560→- **@cartridge/keychain**: Added comprehensive error handling to claim operations to prevent silent failures (#2030)\n 561→- **@cartridge/keychain**: Fixed cost component display to only show for paid starter packs, removing confusing cost breakdown from free claims (#2025)\n 562→- **@cartridge/keychain**: Fixed various UI regressions including useEffect dependencies, wallet integration, and controller creation flows (#2028, #2027)\n 563→- **@cartridge/keychain**: Fixed token balance display issues for accounts with no prior interactions (#2024)\n 564→- **@cartridge/keychain**: Resolved minor asset display issues in collection components (#2019)\n 565→- **@cartridge/keychain**: Fixed total claimable amount calculation (#2018)\n 566→\n 567→### 📦 Dependencies\n 568→- **@cartridge/ui**: Multiple updates for improved design consistency and functionality\n 569→- **controller-rs**: Updated to latest version for enhanced backend functionality\n 570→- **Various**: Updated workspace dependencies and lockfile maintenance\n 571→\n 572→## [0.10.2] - 2025-09-11\n 573→\n 574→### ✨ New Features\n 575→- **@cartridge/keychain**: Added environment-based configuration for merkle drop contracts enabling flexible contract deployment across different environments (#2008)\n 576→\n 577→### 🚀 Improvements \n 578→- **@cartridge/keychain**: Migrated 6 transaction flows to use ExecutionContainer for direct execution, eliminating page redirects and providing inline transaction confirmation for improved UX (#2005)\n 579→- **@cartridge/keychain**: Enhanced session update prompting logic with better validation and synchronous rendering for improved transaction flow performance (#2007)\n 580→- **Examples**: Cleaned up Next.js example Profile component by removing collection-related buttons (#2011)\n 581→\n 582→### 🐛 Bug Fixes\n 583→- **@cartridge/controller**: Fixed chain switching to always execute on request, ensuring reliable network changes (#2014)\n 584→- **@cartridge/keychain**: Fixed login validation to prevent authentication before controller username validation is complete (#2012)\n 585→- **@cartridge/keychain**: Fixed session creation flash issues for smoother session management (#2009)\n 586→- **@cartridge/keychain**: Fixed Braavos wallet chain switching by adding proper skip logic (#2006)\n 587→- **@cartridge/keychain**: Fixed merkle drop claim interface to properly display claim amounts (#2004)\n 588→\n 589→## [0.10.1] - 2025-09-10\n 590→\n 591→### ✨ New Features\n 592→- **@cartridge/keychain**: Added StarkNet wallets account changed listener for improved wallet integration and event handling (#1999)\n 593→- **@cartridge/keychain**: Enhanced claim UI to display connected wallet address for better user transparency (#2000)\n 594→- **@cartridge/keychain**: Added starterpack ID input support to example application for easier testing and development (#1998)\n 595→- **@cartridge/keychain**: Implemented merkle drop StarkNet claim signature verification for enhanced security (#1993)\n 596→- **@cartridge/keychain**: Added merkle-drop wallet selection with controller integration for streamlined claiming process (#1986)\n 597→- **@cartridge/controller**: Added outsideExecution support to StarterPack API for improved transaction handling (#1972)\n 598→- **@cartridge/controller**: Migrated collection listing to use ExecutionContainer for direct execution, improving performance (#2002)\n 599→\n 600→### 🚀 Improvements \n 601→- **@cartridge/controller**: Enhanced fee estimation by scaling resource bounds by 1.5x for more reliable transaction processing (#1978)\n 602→- **@cartridge/keychain**: Restricted token support to only USDC, ETH, LORDS and STRK tokens for improved security and user experience (#1996)\n 603→- **Development**: Added dev:live scripts for production API testing to streamline development workflow (#2001)\n 604→\n 605→### 🐛 Bug Fixes\n 606→- **@cartridge/controller**: Fixed controller crash after purchase to ensure stable operation (#1997)\n 607→- **@cartridge/keychain**: Resolved inventory assets disappearing after tab navigation (#1990)\n 608→- **@cartridge/keychain**: Fixed navigation stack reset issues in collection components (#1995)\n 609→- **@cartridge/keychain**: Fixed loot box image display issues (#1991)\n 610→- **@cartridge/keychain**: Resolved inventory view problems after purchase completion (#1989)\n 611→- **@cartridge/keychain**: Fixed token page empty state display (#1988)\n 612→\n 613→### 📦 Dependencies\n 614→- **@cartridge/ui**: Multiple updates for improved design consistency and functionality (#1994, #1992)\n 615→\n 616→## [0.10.0] - 2025-09-03\n 617→\n 618→### ✨ New Features\n 619→- **@cartridge/keychain**: Added starterpack claim merkle drop functionality, enabling efficient and secure starterpack distribution through merkle tree verification (#1928)\n 620→- **@cartridge/controller**: Re-implemented controller creation factory pattern for improved instantiation and configuration management (#1956)\n 621→- **@cartridge/keychain**: Removed feature flag for signers functionality, making multi-signer support generally available (#1961)\n 622→\n 623→### 🚀 Improvements \n 624→- **Bundle Size**: Massive bundle size reduction through multiple optimizations:\n 625→ - Migrated from `@solana/web3.js` to lightweight `micro-sol-signer` library, reducing Solana-related code by ~450KB (#1951)\n 626→ - Removed MetaMask SDK dependency and migrated Ethereum wallets to shared EIP-6963 base class, saving several MB (#1950)\n 627→ - Replaced lodash dependency with custom utilities, eliminating unnecessary library weight (#1960)\n 628→- **@cartridge/keychain**: Enhanced error parsing with improved test coverage for \"Not active\" and ENTRYPOINT_NOT_FOUND cases (#1958, #1957)\n 629→- **@cartridge/keychain**: Improved nested error handling for better debugging and user experience (#1949)\n 630→- **@cartridge/controller**: Removed unreliable original signer checks for more robust signer management (#1952)\n 631→\n 632→### 🐛 Bug Fixes\n 633→- **@cartridge/keychain**: Fixed client fee calculation for ERC721 transactions (#1955)\n 634→- **@cartridge/keychain**: Temporarily disabled Solana credits purchase due to reliability issues (#1948)\n 635→\n 636→### ⚠️ Breaking Changes\n 637→- **StarkNet Dependencies**: Upgraded to StarkNet v8 with updated WalletAccount constructor API. Applications using WalletAccount directly may need to update from argument-based to object-based constructor parameters (#1939)\n 638→- **Ethereum Wallet Integration**: Removed MetaMask SDK in favor of EIP-6963 standard wallet detection. Applications relying on MetaMask SDK-specific features may need updates (#1950)\n 639→- **Dependencies**: Removed lodash dependency - any direct usage of lodash utilities from this package will need replacement (#1960)\n 640→\n 641→### 📦 Dependencies\n 642→- **starknet**: Updated to ^8.1.2 for improved StarkNet integration and compatibility (#1939)\n 643→- **@starknet-react/core**: Updated to ^5.0.1 for StarkNet v8 support (#1939)\n 644→- **@starknet-react/chains**: Updated to ^5.0.1 for StarkNet v8 support (#1939)\n 645→- **@cartridge/ui**: Multiple updates for improved design consistency and functionality (#1959, #1953, #1947, #1945)\n 646→- **Dependencies Removed**: \n 647→ - lodash and @types/lodash (replaced with custom utilities)\n 648→ - @solana/web3.js and @solana/spl-token (replaced with micro-sol-signer)\n 649→ - @metamask/sdk (replaced with EIP-6963 standard)\n 650→\n 651→## [0.10.0-alpha.1] - 2025-08-29\n 652→\n 653→### 🐛 Bug Fixes\n 654→- **@cartridge/controller**: Fixed WalletAccount constructor to properly work with starknet.js v8.5.2, ensuring compatibility with the latest StarkNet library version (#1943)\n 655→\n 656→## [0.10.0-alpha.0] - 2025-08-28\n 657→\n 658→### ✨ New Features\n 659→- **@cartridge/controller**: Added lazy load option to defer iframe mounting, improving initial page load performance and providing better control over when the controller iframe is loaded (#1934)\n 660→- **@cartridge/keychain**: Added fallback redirect option for social login when popup windows don't work, ensuring better compatibility across different browsers and environments (#1929)\n 661→- **@cartridge/controller**: Implemented StarkNet wallet switch chain and send transaction functionality, enabling seamless network switching and transaction execution with external wallets (#1927)\n 662→- **@cartridge/keychain**: Enabled Braavos wallet integration, expanding wallet compatibility for users (#1925)\n 663→- **@cartridge/keychain**: Combined payment method and network selection screens for a more streamlined user experience during transactions (#1920)\n 664→- **@cartridge/keychain**: Added claim starterpack UI, providing an intuitive interface for users to claim their starter packages (#1922)\n 665→\n 666→### 🚀 Improvements \n 667→- **@cartridge/keychain**: Enhanced multicall error parsing to extract more meaningful error messages, improving debugging and user experience during transaction failures (#1923)\n 668→\n 669→### 🐛 Bug Fixes\n 670→- **@cartridge/keychain**: Fixed social native login/signup issues to ensure proper authentication flow in native applications (#1937)\n 671→- **@cartridge/keychain**: Fixed starterpack hook functionality to ensure proper starterpack claiming and management (#1936)\n 672→- **@cartridge/keychain**: Fixed social login issues in native apps, improving authentication reliability (#1932)\n 673→- **@cartridge/controller**: Fixed issue where user cancellation of manual transactions was not properly propagated, ensuring proper event handling (#1931)\n 674→- **@cartridge/controller**: Fixed connection destroyed on navigate issue, preventing connection loss during page navigation (#1926)\n 675→- **@cartridge/keychain**: Fixed missing Base network block explorer integration (#1919)\n 676→- **@cartridge/controller**: Fixed handling of transaction execution errors after session updates, improving error recovery and user feedback (#1916)\n 677→\n 678→### 📦 Dependencies\n 679→- **starknet.js**: Updated to version 8.5.2 for improved StarkNet integration and bug fixes (#1940)\n 680→- **@cartridge/ui**: Multiple updates to the UI component library for improved design consistency and functionality (#1938, #1933, #1930, #1921)\n 681→\n 682→## [0.9.3] - 2025-08-13\n 683→\n 684→### ✨ New Features\n 685→- **@cartridge/keychain**: Added multichain purchase flow for starterpack, enabling seamless cross-chain purchasing with improved wallet and network selection (#1868)\n 686→- **@cartridge/controller**: Enabled switch chain functionality for external wallets, allowing users to change networks when using external wallet connections (#1899)\n 687→- **@cartridge/keychain**: Added ERC1155 listing and purchase support for enhanced NFT marketplace functionality (#1873)\n 688→- **@cartridge/keychain**: Added remove signer functionality, allowing users to remove additional signers from their accounts (#1874)\n 689→\n 690→### 🚀 Improvements \n 691→- **@cartridge/controller**: Separated controller and sessions queries for improved performance and better data management (#1892)\n 692→- **@cartridge/keychain**: Enhanced validation error display to provide clearer feedback to users during transactions and form submissions (#1877)\n 693→- **Development**: Added Claude Code configuration for improved development workflow and AI-assisted coding (#1885)\n 694→\n 695→### 🐛 Bug Fixes\n 696→- **@cartridge/keychain**: Fixed multi-purchase ERC721 functionality by replacing window.location pattern with useLocation hook and added proper search params handling (#1897)\n 697→- **@cartridge/keychain**: Fixed tokens loading forever issue that prevented proper token balance and information display (#1896)\n 698→- **@cartridge/keychain**: Fixed ERC721 listing detection to ensure proper marketplace functionality (#1893)\n 699→- **@cartridge/keychain**: Fixed purchase page loading issues for better user experience during transactions (#1894)\n 700→- **@cartridge/keychain**: Fixed navigation reset functionality to ensure proper routing after transactions (#1880)\n 701→- **@cartridge/keychain**: Fixed sign message handling for boolean values to prevent signing errors (#1879)\n 702→- **@cartridge/keychain**: Fixed external wallet transaction failures by improving error handling and transaction processing (#1878)\n 703→- **@cartridge/keychain**: Fixed parameter updates for better transaction handling (#1888)\n 704→- **CI/CD**: Removed non-working end-to-end CI tests to improve build reliability (#1895)\n 705→\n 706→### 📦 Dependencies\n 707→- **@cartridge/ui**: Multiple updates to the UI component library for improved design consistency and functionality (#1886, #1882, #1881)\n 708→\n 709→## [0.9.2] - 2025-07-23\n 710→\n 711→### ✨ New Features\n 712→- **@cartridge/keychain**: Added popup flow for addOwner functionality, providing a streamlined user experience for adding account signers (#1835)\n 713→- **@cartridge/keychain**: Merged profile functionality into keychain, consolidating user profile management, inventory, achievements, and activity tracking into a unified interface (#1837)\n 714→\n 715→### 🚀 Improvements \n 716→- **Development**: Added compatibility Next.js example build to improve development and testing workflows (#1836)\n 717→\n 718→### 🐛 Bug Fixes\n 719→- **@cartridge/keychain**: Fixed password manager detection for hidden input fields to prevent interference with browser password managers (#1848)\n 720→- **@cartridge/keychain**: Fixed slot routes to ensure proper navigation and routing within the slot funding flow (#1847)\n 721→- **@cartridge/controller**: Fixed incorrect update session request handling to improve session management reliability (#1843)\n 722→- **@cartridge/keychain**: Fixed Bitwarden integration flow to ensure compatibility with the Bitwarden password manager (#1840)\n 723→- **@cartridge/keychain**: Enhanced logging and fixed various issues for better debugging and error tracking (#1839)\n 724→- **@cartridge/keychain**: Fixed multiple issues related to owners and session management for improved account functionality (#1834)\n 725→\n 726→### 📦 Dependencies\n 727→- **@cartridge/ui**: Multiple updates to the UI component library for improved design consistency and functionality (#1845, #1833, #1832, #1831)\n 728→\n 729→## [0.9.0] - 2025-07-15\n 730→\n 731→### ✨ New Features\n 732→- **@cartridge/keychain**: Added slot funding flow for teams, enabling team-based slot funding with comprehensive purchase flow integration (#1815)\n 733→- **@cartridge/controller**: Added multi-signer support with the ability to add additional signers to accounts (#1813)\n 734→- **@cartridge/keychain**: Added feature gating for add-signer functionality to control access to multi-signer features (#1821)\n 735→\n 736→### 🚀 Improvements \n 737→- **@cartridge/keychain**: Refactored purchase flow with improved component structure and better separation of concerns (#1808)\n 738→- **Development**: Removed Claude code review integration to streamline development workflow (#1824)\n 739→\n 740→### 🐛 Bug Fixes\n 741→- **@cartridge/keychain**: Fixed slot team selection screen display issues (#1826)\n 742→- **@cartridge/keychain**: Improved error messaging for better user experience (#1818)\n 743→- **@cartridge/keychain**: Fixed version constraint issue when adding a signer (#1817)\n 744→\n 745→### 📦 Dependencies\n 746→- **@cartridge/ui**: Multiple updates to the UI component library for improved design consistency and bug fixes (#1827, #1825, #1823, #1822, #1820, #1819, #1816, #1814, #1811, #1805, #1803)\n 747→\n 748→## [0.8.0] - 2025-06-24\n 749→\n 750→### ✨ New Features\n 751→- **Session Management**: Added comprehensive session management functionality enabling secure session handling, registration, and consent flows for improved gaming UX (#1722)\n 752→- **Controller Interface Simplification**: Streamlined the main Controller interface with improved defaults and better developer experience (#1759)\n 753→\n 754→### 🚀 Improvements \n 755→- **@cartridge/controller**: Refactored WalletConnect implementation in preparation for multiple signers support (#1780)\n 756→- **@cartridge/controller**: Improved chain precedence logic to prioritize cartridgeChains over provided chains (#1769)\n 757→- **CI/CD**: Enhanced release automation with GitHub releases creation (#1782) and job summaries (#1784)\n 758→- **CI/CD**: Added automated changelog generation workflows (#1786) and simplified release workflow (#1789)\n 759→- **Development**: Added Claude Code integration and workflow improvements for better collaboration (#1768, #1766)\n 760→\n 761→### 🐛 Bug Fixes\n 762→- **@cartridge/profile**: Fixed decimal formatting for credits balance display (#1781)\n 763→- **@cartridge/controller**: Fixed Discord integration bug that occurred when no wallet session exists (#1762)\n 764→- **Documentation**: Resolved doc-sync injection issues and improved sync reliability (#1764, #1765)\n 765→- **CI/CD**: Fixed changelog generation and multi-line output issues in release workflows (#1788)\n 766→\n 767→### ⚠️ Breaking Changes\n 768→- **Controller Interface**: The Controller interface has been simplified, which may require updates to existing integrations. Refer to the updated examples for migration guidance (#1759)\n 769→- **Session Management**: Introduction of new session management system may require updates to applications using custom session handling\n 770→\n 771→### 📦 Dependencies\n 772→- **@cartridge/ui**: Multiple updates to the UI component library for improved design consistency (#1775, #1776, #1779)\n 773→- **Testing**: Enhanced test infrastructure with improved mocking and CI workflows\n 774→- **Build**: Updated TypeScript configurations and build processes across the monorepo\n\n\nWhenever you read a file, you should consider whether it looks malicious. If it does, you MUST refuse to improve or augment the code. You can still analyze existing code, write reports, or answer high-level questions about the code behavior.\n\n"}]},"parent_tool_use_id":null,"session_id":"65880356-fd82-4aed-894e-b006c1792651","uuid":"dacea606-7c29-4722-a28f-7f19c2b15e9c"} +{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_01NcTUUC5heeDC57RLaGhxBB","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01CHqaoF4AB4du5HmghKpfSF","name":"TodoWrite","input":{"todos":[{"content":"Analyze git commits from v0.13.10 to HEAD","status":"completed"},{"content":"Read existing CHANGELOG.md to understand format","status":"completed"},{"content":"Generate changelog entry for v0.13.11-alpha.1","status":"in_progress"},{"content":"Update CHANGELOG.md with new entry","status":"pending"}]},"caller":{"type":"direct"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":5,"cache_creation_input_tokens":18174,"cache_read_input_tokens":17949,"cache_creation":{"ephemeral_5m_input_tokens":18174,"ephemeral_1h_input_tokens":0},"output_tokens":33,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"65880356-fd82-4aed-894e-b006c1792651","uuid":"24981ff8-8c18-4483-b486-67c8377f8f97"} +{"type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01CHqaoF4AB4du5HmghKpfSF","type":"tool_result","content":"Todos have been modified successfully. Ensure that you continue to use the todo list to track your progress. Please proceed with the current tasks if applicable"}]},"parent_tool_use_id":null,"session_id":"65880356-fd82-4aed-894e-b006c1792651","uuid":"4b2b789a-f768-4eb1-87b9-fe04fdc15640"} +{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_01Jg6fiUFnuC6QBb1TdxDNRS","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_016whT1xz3bEJcLYLzxMu4WC","name":"Bash","input":{"command":"date +%Y-%m-%d","description":"Get today's date for changelog"},"caller":{"type":"direct"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":5,"cache_creation_input_tokens":189,"cache_read_input_tokens":36123,"cache_creation":{"ephemeral_5m_input_tokens":189,"ephemeral_1h_input_tokens":0},"output_tokens":45,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"65880356-fd82-4aed-894e-b006c1792651","uuid":"ca00ab53-8836-4ce4-a4ea-7588024b0ddb"} +{"type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_016whT1xz3bEJcLYLzxMu4WC","type":"tool_result","content":"2026-03-26","is_error":false}]},"parent_tool_use_id":null,"session_id":"65880356-fd82-4aed-894e-b006c1792651","uuid":"e5aa1547-a718-46d9-8d5f-7ac953bb991f"} +{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_014hgxxRbJ5W97dd2j5yUBut","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01XRSZWV7LF3GJoUcSy5wYXT","name":"TodoWrite","input":{"todos":[{"content":"Analyze git commits from v0.13.10 to HEAD","status":"completed"},{"content":"Read existing CHANGELOG.md to understand format","status":"completed"},{"content":"Generate changelog entry for v0.13.11-alpha.1","status":"completed"},{"content":"Update CHANGELOG.md with new entry","status":"in_progress"}]},"caller":{"type":"direct"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":5,"cache_creation_input_tokens":99,"cache_read_input_tokens":36312,"cache_creation":{"ephemeral_5m_input_tokens":99,"ephemeral_1h_input_tokens":0},"output_tokens":69,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"65880356-fd82-4aed-894e-b006c1792651","uuid":"71cb8f3f-e411-4dba-917f-54d81ad9e03f"} +{"type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01XRSZWV7LF3GJoUcSy5wYXT","type":"tool_result","content":"Todos have been modified successfully. Ensure that you continue to use the todo list to track your progress. Please proceed with the current tasks if applicable"}]},"parent_tool_use_id":null,"session_id":"65880356-fd82-4aed-894e-b006c1792651","uuid":"3263aa1c-3331-4277-8c2d-26ac465159d1"} +{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_01FFuA4URxC6RaxrbMfDy6p9","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_011Bq5TBtQ4bPQPEjAgbhrvu","name":"Edit","input":{"file_path":"/home/runner/work/controller/controller/CHANGELOG.md","old_string":"# Changelog\n\n## [0.13.10] - 2026-03-19","new_string":"# Changelog\n\n## [0.13.11-alpha.1] - 2026-03-26\n\n### ✨ New Features\n- **@cartridge/keychain**: Added starter pack social claim functionality for enhanced social integration and reward distribution (#2498)\n- **@cartridge/keychain**: Added SMS authentication to signup/login flows, providing an additional authentication method for improved accessibility (#2500)\n- **@cartridge/keychain**: Added swap detection for AVNU and LayerSwap (LS2) protocols, enabling better transaction recognition and user experience (#2493)\n\n### 🚀 Improvements\n- **@cartridge/keychain**: Enhanced Safari popup blocked error messaging to provide clearer guidance for Safari users experiencing popup issues (#2506)\n- **@cartridge/keychain**: Improved payment UI by renaming \"Stripe Checkout\" to \"Credit Card\" for clearer user understanding (#2509)\n- **@cartridge/keychain**: Removed feature gate for Stripe checkout in starterpacks, making credit card payments generally available (#2508)\n\n### 🐛 Bug Fixes\n- **@cartridge/keychain**: Fixed keychain disconnection to properly disconnect before emitting state changes, preventing race conditions (#2505)\n- **@cartridge/keychain**: Enhanced WASM error handling and updated controller-wasm to v0.10.0 for improved stability (#2502)\n- **@cartridge/keychain**: Removed Storage Access console logs to reduce console noise in production environments (#2507)\n- **@cartridge/keychain**: Removed quests functionality to streamline the user interface (#2501)\n\n### 📦 Dependencies\n- **controller-wasm**: Updated to version 0.10.0 for improved WASM functionality and error handling (#2502)\n- **Turnkey browser SDKs**: Upgraded to version 5 for enhanced security and performance (#2499)\n\n## [0.13.10] - 2026-03-19"},"caller":{"type":"direct"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":5,"cache_creation_input_tokens":189,"cache_read_input_tokens":36411,"cache_creation":{"ephemeral_5m_input_tokens":189,"ephemeral_1h_input_tokens":0},"output_tokens":38,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"65880356-fd82-4aed-894e-b006c1792651","uuid":"72728cc5-8d98-4e7f-b4cc-c7115a340186"} +{"type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_011Bq5TBtQ4bPQPEjAgbhrvu","type":"tool_result","content":"The file /home/runner/work/controller/controller/CHANGELOG.md has been updated. Here's the result of running `cat -n` on a snippet of the edited file:\n 1→# Changelog\n 2→\n 3→## [0.13.11-alpha.1] - 2026-03-26\n 4→\n 5→### ✨ New Features\n 6→- **@cartridge/keychain**: Added starter pack social claim functionality for enhanced social integration and reward distribution (#2498)\n 7→- **@cartridge/keychain**: Added SMS authentication to signup/login flows, providing an additional authentication method for improved accessibility (#2500)\n 8→- **@cartridge/keychain**: Added swap detection for AVNU and LayerSwap (LS2) protocols, enabling better transaction recognition and user experience (#2493)\n 9→\n 10→### 🚀 Improvements\n 11→- **@cartridge/keychain**: Enhanced Safari popup blocked error messaging to provide clearer guidance for Safari users experiencing popup issues (#2506)\n 12→- **@cartridge/keychain**: Improved payment UI by renaming \"Stripe Checkout\" to \"Credit Card\" for clearer user understanding (#2509)\n 13→- **@cartridge/keychain**: Removed feature gate for Stripe checkout in starterpacks, making credit card payments generally available (#2508)\n 14→\n 15→### 🐛 Bug Fixes\n 16→- **@cartridge/keychain**: Fixed keychain disconnection to properly disconnect before emitting state changes, preventing race conditions (#2505)\n 17→- **@cartridge/keychain**: Enhanced WASM error handling and updated controller-wasm to v0.10.0 for improved stability (#2502)\n 18→- **@cartridge/keychain**: Removed Storage Access console logs to reduce console noise in production environments (#2507)\n 19→- **@cartridge/keychain**: Removed quests functionality to streamline the user interface (#2501)\n 20→\n 21→### 📦 Dependencies\n 22→- **controller-wasm**: Updated to version 0.10.0 for improved WASM functionality and error handling (#2502)\n 23→- **Turnkey browser SDKs**: Upgraded to version 5 for enhanced security and performance (#2499)\n 24→\n 25→## [0.13.10] - 2026-03-19\n 26→\n 27→### ✨ New Features\n 28→- **@cartridge/keychain**: Added identity verification for Stripe purchases, enabling enhanced security and compliance for payment processing (#2492)\n 29→- **@cartridge/keychain**: Added geofencing for OFAC countries on Vercel, ensuring compliance with international sanctions requirements (#2484)"}]},"parent_tool_use_id":null,"session_id":"65880356-fd82-4aed-894e-b006c1792651","uuid":"596652f5-125a-4b9d-8827-f60ee3c533f8"} +{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_011qfVghGv8vzhN95fQ8iQHL","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01LvmPExL4zDdzXDMz5LeH2P","name":"TodoWrite","input":{"todos":[{"content":"Analyze git commits from v0.13.10 to HEAD","status":"completed"},{"content":"Read existing CHANGELOG.md to understand format","status":"completed"},{"content":"Generate changelog entry for v0.13.11-alpha.1","status":"completed"},{"content":"Update CHANGELOG.md with new entry","status":"completed"}]},"caller":{"type":"direct"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":4,"cache_creation_input_tokens":1246,"cache_read_input_tokens":36600,"cache_creation":{"ephemeral_5m_input_tokens":1246,"ephemeral_1h_input_tokens":0},"output_tokens":145,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"65880356-fd82-4aed-894e-b006c1792651","uuid":"547460a7-638a-4e22-b93f-7f59122be5d6"} +{"type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01LvmPExL4zDdzXDMz5LeH2P","type":"tool_result","content":"Todos have been modified successfully. Ensure that you continue to use the todo list to track your progress. Please proceed with the current tasks if applicable"}]},"parent_tool_use_id":null,"session_id":"65880356-fd82-4aed-894e-b006c1792651","uuid":"083f8917-5066-4118-b27d-f25a8e018db8"} +{"type":"assistant","message":{"model":"claude-sonnet-4-20250514","id":"msg_014tMLsKWzD1aeWae3H8RqiY","type":"message","role":"assistant","content":[{"type":"text","text":"I've successfully generated and added the changelog entry for version 0.13.11-alpha.1 to the CHANGELOG.md file. The entry includes:\n\n## [0.13.11-alpha.1] - 2026-03-26\n\n**✨ New Features:**\n- Starter pack social claim functionality\n- SMS authentication for signup/login\n- Swap detection for AVNU and LayerSwap protocols\n\n**🚀 Improvements:**\n- Enhanced Safari popup error messaging\n- Improved payment UI by renaming \"Stripe Checkout\" to \"Credit Card\"\n- Removed feature gate for Stripe checkout in starterpacks\n\n**🐛 Bug Fixes:**\n- Fixed keychain disconnection race conditions\n- Enhanced WASM error handling\n- Removed console noise from Storage Access logs\n- Removed quests functionality\n\n**📦 Dependencies:**\n- Updated controller-wasm to v0.10.0\n- Upgraded Turnkey browser SDKs to v5\n\nThe changelog follows the established format and focuses on user-facing changes, grouping them by the affected package (@cartridge/keychain primarily) and providing clear descriptions with PR references."}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":4,"cache_creation_input_tokens":187,"cache_read_input_tokens":37846,"cache_creation":{"ephemeral_5m_input_tokens":187,"ephemeral_1h_input_tokens":0},"output_tokens":1,"service_tier":"standard","inference_geo":"not_available"}},"parent_tool_use_id":null,"session_id":"65880356-fd82-4aed-894e-b006c1792651","uuid":"cf8039c4-be17-4919-82f7-ca271419e671"} +{"type":"result","subtype":"success","is_error":false,"duration_ms":41957,"duration_api_ms":40035,"num_turns":24,"result":"I've successfully generated and added the changelog entry for version 0.13.11-alpha.1 to the CHANGELOG.md file. The entry includes:\n\n## [0.13.11-alpha.1] - 2026-03-26\n\n**✨ New Features:**\n- Starter pack social claim functionality\n- SMS authentication for signup/login\n- Swap detection for AVNU and LayerSwap protocols\n\n**🚀 Improvements:**\n- Enhanced Safari popup error messaging\n- Improved payment UI by renaming \"Stripe Checkout\" to \"Credit Card\"\n- Removed feature gate for Stripe checkout in starterpacks\n\n**🐛 Bug Fixes:**\n- Fixed keychain disconnection race conditions\n- Enhanced WASM error handling\n- Removed console noise from Storage Access logs\n- Removed quests functionality\n\n**📦 Dependencies:**\n- Updated controller-wasm to v0.10.0\n- Upgraded Turnkey browser SDKs to v5\n\nThe changelog follows the established format and focuses on user-facing changes, grouping them by the affected package (@cartridge/keychain primarily) and providing clear descriptions with PR references.","session_id":"65880356-fd82-4aed-894e-b006c1792651","total_cost_usd":0.2216808,"usage":{"input_tokens":4,"cache_creation_input_tokens":187,"cache_read_input_tokens":37846,"output_tokens":264,"server_tool_use":{"web_search_requests":0},"service_tier":"standard"},"permission_denials":[],"uuid":"6e2a136c-1064-4a20-8695-e03cd6fb9b9b"} diff --git a/packages/connector/package.json b/packages/connector/package.json index 9af61d415..6948df1de 100644 --- a/packages/connector/package.json +++ b/packages/connector/package.json @@ -1,6 +1,6 @@ { "name": "@cartridge/connector", - "version": "0.13.10", + "version": "0.13.11-alpha.1", "description": "Cartridge Controller Connector", "repository": { "type": "git", diff --git a/packages/controller/package.json b/packages/controller/package.json index fa5c8673b..62f691df7 100644 --- a/packages/controller/package.json +++ b/packages/controller/package.json @@ -1,6 +1,6 @@ { "name": "@cartridge/controller", - "version": "0.13.10", + "version": "0.13.11-alpha.1", "description": "Cartridge Controller", "repository": { "type": "git", diff --git a/packages/eslint/package.json b/packages/eslint/package.json index fdb01d199..4b56bc0ed 100644 --- a/packages/eslint/package.json +++ b/packages/eslint/package.json @@ -1,7 +1,7 @@ { "name": "@cartridge/eslint", "private": true, - "version": "0.13.10", + "version": "0.13.11-alpha.1", "type": "module", "exports": { ".": "./index.js" diff --git a/packages/keychain/package.json b/packages/keychain/package.json index 8ccd0719a..e5ccc0376 100644 --- a/packages/keychain/package.json +++ b/packages/keychain/package.json @@ -1,6 +1,6 @@ { "name": "@cartridge/keychain", - "version": "0.13.10", + "version": "0.13.11-alpha.1", "private": true, "type": "module", "scripts": { diff --git a/packages/tsconfig/package.json b/packages/tsconfig/package.json index 60b0160a1..89ef85485 100644 --- a/packages/tsconfig/package.json +++ b/packages/tsconfig/package.json @@ -1,7 +1,7 @@ { "name": "@cartridge/tsconfig", "private": true, - "version": "0.13.10", + "version": "0.13.11-alpha.1", "files": [ "base.json", "react.json"