Claim links: pay anyone on Starknet, no wallet needed until they claim
The network pivot, day one. LumenEscrow (Cairo) parks value behind a poseidon commitment: the sender funds it through the pool (no public sender), the link carries the secret in its URL fragment (never reaches a server), and the recipient claims into an open note (no public recipient). - contracts: LumenEscrow with deposit/claim/refund, dual hash domains, expiry-gated refunds, per-token solvency accounting, events; 21 new snforge tests incl. a cross-language poseidon vector pinned against starknet.js (50 Cairo tests total) - rails: src/lib/strk20/escrow.ts — action builders, felt-safe secrets, URL-fragment link codec, live entry reads; 8 vitest cases incl. the same pinned vector (166 TS tests total) - app: Pay -> "Pay with a link" with deposit-grade amount tuning by the guard; /claim page walking a wallet-less recipient to a private balance; Links sheet (copy again, on-chain status sync, reclaim after expiry); activity + observer view understand the new legs - deploy.sh now walks both anonymizers; claim links stay hidden until NEXT_PUBLIC_LUMEN_ESCROW_ADDRESS is set Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
S
Shariq Shaukat committed
b1b37dd5159aec51bc5c4a7e5dba3af226cfd50b
Parent: 90da545