Skip to content

[Bug] Farcaster auto-connect fails in Warpcast miniapp #768

@realproject7

Description

@realproject7

Problem

Inside Warpcast, the Farcaster wallet does not auto-connect. Users see the "connect wallet" button and the RainbowKit modal (which doesn't list Farcaster). The wallet modal should never appear inside Warpcast — auto-connect should handle it.

Root Causes

1. Duplicate connector instances

lib/wagmi.ts line 50 creates a bare farcasterMiniApp() AND line 25 creates another inside connectorsForWallets. Two instances with the same type causes connector ID conflicts.

Fix: Remove the bare connector on line 50. Keep only the one inside walletConnectors:

// REMOVE this line:
const connectors = [farcasterMiniApp(), ...walletConnectors];
// REPLACE with:
const connectors = walletConnectors;

2. Auto-connect silently fails when isAuthorized() returns false

ConnectWallet.tsx lines 39-42 check isAuthorized() before calling connect(). Inside Warpcast, the Farcaster client manages auth — we should attempt connect() regardless.

Fix: In the auto-connect useEffect, call connect() directly when inside miniapp:

// Inside the inMiniApp useEffect:
const farcasterConnector = connectors.find((c) => c.type === "farcasterMiniApp");
if (!farcasterConnector) return;
connect({ connector: farcasterConnector });
// Remove the isAuthorized() gate

3. Outdated Farcaster packages

  • @farcaster/miniapp-wagmi-connector is at 1.1.1, latest is 2.0.0 (released 2026-04-01)
  • @farcaster/miniapp-sdk is at 0.2.3 — check for matching update

Fix: Update both packages to latest:

npm install @farcaster/miniapp-wagmi-connector@latest @farcaster/miniapp-sdk@latest

Note: v2.0.0 may have breaking API changes — check changelog/README and update imports if needed.

Acceptance Criteria

  • Only one farcasterMiniApp() instance in wagmi config
  • Auto-connect works inside Warpcast without showing wallet modal
  • Farcaster packages updated to latest
  • Test: open miniapp in Warpcast → wallet auto-connects → no modal shown
  • Test: open on web → RainbowKit modal shows standard wallets (MetaMask, etc.)
  • Bump patch version

Branch

task/768-farcaster-autoconnect

Metadata

Metadata

Assignees

No one assigned

    Labels

    agent/T3Assigned to T3 builder agentbugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions