You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
window.createPoll reads a 'poll-max-privacy' checkbox and, when set,
generates sk_creator client-side, derives pk = G·sk, persists sk to
localStorage, downloads the JSON backup, and stamps voteSchemaVersion=3
+ pkCreator on the create-poll request body. The toggle element
itself is still B5.9 work; this slice safely no-ops when the element
is absent so the existing v2 flow continues to be the default.
Order of operations is intentional: sk is generated and pk derived
before any network call (a server failure leaves no orphan
pkCreator), and the localStorage save fires before the backup
download (a dismissed download dialog still leaves a recoverable
key in the browser).
UI message after a v3 create explicitly warns the user that losing
both localStorage and the backup file means the poll cannot be
closed — the structural single-creator-key risk surfaced before
they navigate away.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
0 commit comments