Skip to content

Releases: cartridge-gg/controller

Release v0.12.2

29 Jan 17:46
4ea9eba

Choose a tag to compare

[0.12.2] - 2026-01-29

✨ New Features

  • Examples: Added Capacitor session example with iOS app integration, demonstrating mobile session management and providing comprehensive cross-platform development guidance (#2355)
  • @cartridge/keychain: Enhanced Coinbase onramp integration with createCoinbaseLayerswapOrder mutation for improved order creation and processing (#2354)
  • @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)
  • @cartridge/keychain: Added starterpack Apple Pay checkout functionality for streamlined mobile payments (#2339)
  • @cartridge/keychain: Implemented verification autofill functionality for improved user experience during authentication flows (#2342)
  • @cartridge/keychain: Added order fetching by IDs capability for enhanced order management and tracking (#2334)

🚀 Improvements

  • @cartridge/keychain: Removed supported-platforms feature gate, making platform detection generally available (#2335)
  • Development: Migrated skills documentation to centralized .agents/skills directory for better organization and AI-assisted development workflows (#2353)

🐛 Bug Fixes

  • @cartridge/keychain: Fixed 'proceed with caution' warning visibility for slot login flows, improving user experience (#2351)
  • @cartridge/keychain: Fixed purchase token layout issues for better visual consistency (#2343)
  • @cartridge/keychain: Fixed Layerswap username retrieval from authentication context for proper user identification (#2347)
  • @cartridge/keychain: Fixed Coinbase Terms of Service link for proper legal compliance (#2341)
  • @cartridge/keychain: Fixed Coinbase query handling for improved API integration (#2338)

📦 Dependencies

Release v0.12.1

08 Jan 16:35
2fc96e8

Choose a tag to compare

[0.12.1] - 2026-01-07

✨ New Features

  • @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)

🚀 Improvements

  • Development: Enhanced Claude Code integration with structured skill guides for code review, PR management, testing, Storybook snapshots, and release workflows (#2311, #2310)
  • Documentation: Expanded CLAUDE.md with detailed technology stack versions, build process explanations, and comprehensive development workflow guidance (#2310)

🔧 Development

  • Build: Added .worktrees to .gitignore for improved Git worktree support (#2311)
  • Claude Integration: Added comprehensive permissions configuration and skill documentation for streamlined AI-assisted development (#2311, #2310)

Release v0.12.0

01 Jan 20:33
de3494a

Choose a tag to compare

[0.12.0] - 2026-01-01

✨ New Features

  • @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)
  • @cartridge/keychain: Added wallet selection drawer for onchain checkout, replacing navigation-based flow with inline slide-up drawer for more seamless UX (#2294)
  • @cartridge/keychain: Added Coinbase onramp integration with useCoinbase hook for order creation, transaction queries, and requirement checks with automatic client IP detection (#2296)
  • @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)

🚀 Improvements

  • @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)
  • @cartridge/keychain: Improved authentication flows with branded button text for single-signer configurations and configurable signup authentication methods (#2290)
  • @cartridge/keychain: Enhanced session management by restoring wildcard session creation during login flows for better user experience (#2302, #637faa12)
  • @cartridge/keychain: Updated Ekubo integration to use new chain ID-based API format for improved swap functionality (#2287)
  • @cartridge/keychain: Improved session footer styling with proper padding and button text updates from "Create Session" to "Continue" (#2274)

🐛 Bug Fixes

  • @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)
  • @cartridge/keychain: Fixed starterpack loading flicker by showing proper loading states during loading/onchain/preimage states (#2297)
  • @cartridge/keychain: Fixed collection pagination issues for better user experience (#2301)
  • @cartridge/keychain: Fixed session management by reverting and then restoring wildcard session creation during register session login for optimal user flow (#2299, #2302)
  • @cartridge/keychain: Fixed Ekubo API CORS issues by specifying proper CORS headers and credentials handling (#2288)

📦 Dependencies

  • @cartridge/ui: Updated to latest commits for improved design consistency and React 19 peer dependency support (#2295, #2260)

Release v0.11.4-alpha.1

31 Dec 08:09
6da78d6

Choose a tag to compare

Pre-release

[0.11.4-alpha.1] - 2025-12-31

✨ New Features

  • @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)
  • @cartridge/keychain: Added wallet selection drawer for onchain checkout, replacing navigation-based flow with inline slide-up drawer for more seamless UX (#2294)
  • @cartridge/keychain: Added Coinbase onramp integration with useCoinbase hook for order creation, transaction queries, and requirement checks with automatic client IP detection (#2296)
  • @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)

🚀 Improvements

  • @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)
  • @cartridge/keychain: Improved authentication flows with branded button text for single-signer configurations and configurable signup authentication methods (#2290, #1b4423c3)
  • @cartridge/keychain: Enhanced session management by restoring wildcard session creation during login flows for better user experience (#2302, #637faa12)
  • @cartridge/keychain: Updated Ekubo integration to use new chain ID-based API format for improved swap functionality (#2287)
  • @cartridge/keychain: Improved session footer styling with proper padding and button text updates from "Create Session" to "Continue" (#2274)

🐛 Bug Fixes

  • @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)
  • @cartridge/keychain: Fixed starterpack loading flicker by showing proper loading states during loading/onchain/preimage states (#2297)
  • @cartridge/keychain: Fixed collection pagination issues for better user experience (#2301)
  • @cartridge/keychain: Fixed controlled Select component warnings in cost breakdown by using proper value handling (#2294)
  • @cartridge/keychain: Fixed Ekubo API CORS issues by specifying proper CORS headers and credentials handling (#2288)

🔧 Refactoring

  • Development: Multiple UI component updates and dependency management improvements (#2295, #2260)
  • @cartridge/keychain: Simplified authentication flows by removing complex route-based session skipping logic in favor of consistent wildcard session creation (#2286, #2285)

📦 Dependencies

  • @cartridge/ui: Updated to latest commits for improved design consistency and React 19 peer dependency support

Release v0.11.3

10 Dec 18:55
2b802ac

Choose a tag to compare

[0.11.3] - 2025-12-10

✨ New Features

  • @cartridge/keychain: Added Layerswap cross-chain deposit integration for onchain checkout with balance checks, bridging actions, and UI for conversion/liquidity errors (#2273)
  • @cartridge/controller: Added Phantom EVM wallet authentication method extending EthereumWalletBase, enabling login and signup with Phantom's EVM-compatible mode (#2278)
  • @cartridge/controller: Added toast notification API with ToastType and ToastOptions interfaces, enabling toast creation from the controller SDK (#2265)
  • @cartridge/keychain: Added quests functionality for enhanced gaming features (#2280)

🚀 Improvements

  • @cartridge/keychain: Enhanced onchain purchase flow with multi-network wallet selection, improved cost breakdown displaying Layerswap fees, and streamlined navigation (#2273)
  • @cartridge/keychain: Improved purchase context architecture by splitting into flow-specific contexts (StarterpackContext, OnchainPurchaseContext, CreditPurchaseContext) for better maintainability (#2270)
  • @cartridge/keychain: Enhanced authentication flows to skip wildcard session creation during register session login, reducing friction from two signatures to one (#2275)
  • @cartridge/keychain: Reverted controller iframe dismiss behavior to prevent accidental closure when clicking outside (#2277)

🐛 Bug Fixes

  • @cartridge/keychain: Fixed network selection flicker by adding detection state to suppress empty UI while detecting external wallets (#2272)
  • @cartridge/keychain: Fixed Turnkey nonce mismatch errors by clearing cached Auth0 tokens before nonce generation, ensuring fresh tokens with correct nonces (#2271)
  • @cartridge/controller: Added payment permission to iframe allow attribute for proper Stripe Payment Request API access, enabling Apple Pay and Google Pay support (#2269)
  • @cartridge/keychain: Reduced Ekubo API console noise by removing verbose 429 logging and adjusting retry/backoff configurations for better rate limit handling (#2268)

🔧 Refactoring

  • Development: Removed build:compat infrastructure and associated dependencies, simplifying build configuration across packages (#2279)

Release v0.11.3-alpha.1

01 Dec 19:33
2b4008c

Choose a tag to compare

[0.11.3-alpha.1] - 2025-12-01

✨ New Features

  • @cartridge/keychain: Added DevConnect booster pack claim integration with Merkle claim functionality, enabling users to claim DevConnect rewards through preimage-derived EVM addresses (#2249)
  • @cartridge/keychain: Streamlined onchain starterpack purchase flow with direct checkout navigation, removing intermediate screens and defaulting to controller wallet for faster transactions (#2200)
  • @cartridge/keychain: Added horizontal carousel for booster pack cards on mobile devices, providing swipeable navigation and improved touch experience (#2253)
  • @cartridge/keychain: Added localStorage availability check for booster packs to ensure proper functionality across different environments (#2259)
  • @cartridge/keychain: Added tournament game links integration for enhanced gaming navigation (#2252)
  • @cartridge/keychain: Implemented token IDs retrieval from claim transactions for better transaction tracking (#2255)

🚀 Improvements

  • @cartridge/keychain: Simplified redirect logic in ConnectRoute for more streamlined authentication flows (#2248)
  • @cartridge/keychain: Enhanced claim interactions for mystery assets with improved user feedback (#2257)
  • @cartridge/keychain: Restored claim call functionality for improved transaction processing (#2254)

🐛 Bug Fixes

  • @cartridge/controller: Fixed iframe local network access by adding local-network-access * to iframe allow attribute, enabling proper local development (#2266)
  • @cartridge/keychain: Fixed merkle claim UI stuck issue preventing users from completing claim flows (#2261)
  • @cartridge/keychain: Fixed token icon retrieval from presets for consistent token display (#2258)
  • @cartridge/keychain: Added redirect URL support for WebAuthn authentication, improving authentication flow reliability (#2250)
  • @cartridge/keychain: Fixed Turnkey popup navigation to keychain for better authentication routing (#2247)
  • @cartridge/keychain: Updated ConnectRoute tests to match simplified redirect logic for improved test reliability (#2263)
  • @cartridge/keychain: Fixed input format issues for better form validation (#2251)
  • @cartridge/keychain: Fixed event parsing to only handle mystery item events properly (#2256)

Release v0.11.2

14 Nov 21:45
44ebc70

Choose a tag to compare

[0.11.2] - 2025-11-14

✨ New Features

  • @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)

🚀 Improvements

  • @cartridge/keychain: Enhanced iOS popup reliability with retry logic, exponential backoff, and stability checks for improved authentication flow on iOS devices (#2244)
  • @cartridge/keychain: Updated booster pack claim flow with improved component structure and better user experience (#2240)
  • @cartridge/keychain: Enhanced debug logging with comprehensive Turnkey authentication logs for better troubleshooting (#2241)

🐛 Bug Fixes

  • @cartridge/keychain: Fixed popup error handling by preventing thrown errors on blocked popups, maintaining original flow behavior for mobile compatibility (#2243)
  • @cartridge/keychain: Reverted popup error logging to address reliability issues and maintain stable authentication flows (#2242, #2238)
  • @cartridge/keychain: Fixed claim pill size display issues for better visual consistency (#2226)
  • @cartridge/keychain: Fixed default image handling bug in booster pack components (#2225)
  • @cartridge/keychain: Updated game links for improved navigation and user experience (#2224)
  • @cartridge/keychain: Enhanced dynamic height CSS for better responsive design (#2233)
  • @cartridge/keychain: Improved localStorage and dead-path cookie synchronization for standalone flows (#2232)
  • @cartridge/keychain: Removed deprecated controller_redirect functionality to streamline authentication flows (#2230)
  • @cartridge/keychain: Simplified storage access request logic for more reliable cross-domain authentication (#2229)
  • @cartridge/controller: Refactored session creation to load controller from store for improved session management (#2228)
  • Development: Fixed environment variable loading for live environment configuration (#2227)

📦 Dependencies

  • Development: Added Storybook story for StandaloneConnect component for improved component testing and documentation (#2231)

Release v0.11.2-alpha.4

13 Nov 20:44
4bbfb29

Choose a tag to compare

Pre-release

[0.11.2-alpha.4] - 2025-11-13

✨ New Features

  • @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)

🚀 Improvements

  • @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)

🐛 Bug Fixes

  • @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)

📦 Dependencies

  • @cartridge/ui: Updated to commit df8934d for improved design consistency and functionality (#2218)

Release v0.11.2-alpha.3

12 Nov 19:23
b6d91aa

Choose a tag to compare

[0.11.2-alpha.3] - 2025-11-12

✨ New Features

  • @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)

Release v0.11.2-alpha.2

11 Nov 20:19
2e1c328

Choose a tag to compare

Pre-release

[0.11.2-alpha.2] - 2025-11-11

🚀 Improvements

  • @cartridge/controller: Refactored openStarterPack method signature to accept an options object instead of direct parameters, making the API more extensible for future additions (#2213)

🐛 Bug Fixes

  • @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)
  • @cartridge/keychain: Reverted Turnkey nonce mismatch fix to address reliability issues (#2215)