Skip to content

Keychain fails to load when a stored session points to a deleted Slot deployment ("Timeout waiting for keychain") #2675

Open

Description

@LordSquiddy

If a user's stored Controller session references a Slot/Katana deployment that has since been deleted, the keychain iframe crashes during init and never becomes ready. Any app embedding Controller then fails to connect with Timeout waiting for keychain.

Steps to reproduce

  1. In Chrome, play a game on a Slot deployment (in our case eternum-blitz-slot-4).
  2. That deployment is later torn down.
  3. In the same Chrome profile, connect Controller on another app (https://account.realms.world).

Expected

The keychain ignores or clears the stale chain and connects normally (or prompts to re-login).

Actual

Clicking Controller does nothing visible; the app eventually reports Timeout waiting for keychain. Console:

Failed to load resource: 404  api.cartridge.gg/x/eternum-blitz-slot-4/katana/rpc/v0_9
Uncaught (in promise) Error: JSON-RPC error: code=-32000, message="deployment eternum-blitz-slot-4 not found"
    at __wbg_Error_... (vendor-....js)
    at account_wasm_bg-....wasm
    ...
Error: Timeout waiting for keychain

Notes

  • Works in Incognito, and in Brave (storage partitioning). Clearing site data for cartridge.gg fixes it.
  • @cartridge/controller 0.13.9 and 0.13.16, used via asWalletStandard() with lazyload: true.
  • Users can't diagnose this themselves; it just looks like the wallet is broken.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions