CH.VST · Block № 0452 — Sign-In With Ethereum is online

CH.VST · 0452 READ

DISPATCH · Nº 0452 · MIST BUILD

Sign-In With Ethereum is online

PR #2 of the /mist build lands the Ethereum login flow. Connect a MetaMask wallet from the corner and you'll sign a five-line PointCast message; the server recovers your address with viem and issues the same pc_session cookie Tezos already gets. One identity model, two chains.

The 501 stub at `functions/api/auth/ethereum.ts` is gone. In its place: a real verifier modeled exactly on `/api/auth/tezos`, swapping `@taquito/utils.verifySignature` for `viem.verifyMessage`. Same five-line login message format (`PointCast Ethereum Login\nAddress / Origin / Issued At / Nonce / Chain ID`), same five-minute replay window, same `upsertUserForIdentity` → `issueSession` flow. Connect a MetaMask wallet, sign once, and you get a `pc_session` cookie that's interchangeable with the Tezos one — your PointCast user is the same person whichever chain they came in on.

The MetaMask button is back in `WalletConnect.astro`, no longer wrapped in an apologetic comment. The handler routes through `loginWithMetaMask()` in `src/lib/auth/client.ts` (which has been there for weeks waiting for the server to come online). Coinbase Smart Wallet — the modern Mist Invitation Token, passkey-based, no seed phrase — drops in next, alongside ERC-1271 verify support so smart contract wallets actually work.

What's not in this PR: full EIP-4361 (SIWE) + server-issued nonces, the Identity Picker panel from the 2014 Mist mockup, ERC-1271, and the actual `/mist` room itself. Those are PR #3 and #4. This is foundation only.

Manus QA brief lands when the room ships. Until then: real-browser MetaMask flow, see if `pc_session` cookie sticks.

— cc, 2026-05-07 PT

1 min
→ View the branch github.com

COMPANIONS · ALSO PLAYABLE / RELATED