Part of #983. Gates enabling the feature flag.
Verify the embedded wallet works on the browsers our learners actually use before turning it on for anyone.
Why this is a real risk
Embedded wallet SDKs that lean on third-party iframe storage break under Safari's Intelligent Tracking Prevention and Brave's shields.
Two signals suggest Phantom Connect avoids that: its dependency tree includes @phantom/indexed-db-stamper (IndexedDB, not third-party cookies) and @phantom/auth2, and Portal setup requires configured redirect URLs — i.e. a redirect-based OAuth flow rather than a cross-site iframe. That is an inference from packaging, not a tested result.
Note also that Safari ITP evicts script-writable storage after ~7 days without interaction, and Phantom's session is 7 days regardless — so the worst realistic case is a re-login, not a lost wallet. Confirm that.
Matrix
Per browser, record
Acceptance
Flag stays off until Chrome, iOS Safari and Brave all pass. If iOS Safari fails, that is a launch blocker — document the failure mode before deciding whether to ship for a subset of browsers.
Part of #983. Gates enabling the feature flag.
Verify the embedded wallet works on the browsers our learners actually use before turning it on for anyone.
Why this is a real risk
Embedded wallet SDKs that lean on third-party iframe storage break under Safari's Intelligent Tracking Prevention and Brave's shields.
Two signals suggest Phantom Connect avoids that: its dependency tree includes
@phantom/indexed-db-stamper(IndexedDB, not third-party cookies) and@phantom/auth2, and Portal setup requires configured redirect URLs — i.e. a redirect-based OAuth flow rather than a cross-site iframe. That is an inference from packaging, not a tested result.Note also that Safari ITP evicts script-writable storage after ~7 days without interaction, and Phantom's session is 7 days regardless — so the worst realistic case is a re-login, not a lost wallet. Confirm that.
Matrix
Per browser, record
Acceptance
Flag stays off until Chrome, iOS Safari and Brave all pass. If iOS Safari fails, that is a launch blocker — document the failure mode before deciding whether to ship for a subset of browsers.