Skip to content
Ritesh FirodiyaGet in touch

Work / Imposter / Wiki / Surfaces

restored

Surfacecanonicalverified 2026-09-23

SURFACE.MOBILE.ONBOARDING.RESTORED

Summary

The Promise, reached by a reinstall that already holds Pro.

Raw wireframe

  • .context/designs/mobile/onboarding/restored.html

Why it is drawn this way

Selling it to them again is the worst possible first impression. A restored reinstall reaches onboarding holding the entitlement, so promise.tsx swaps all three lines and removes the buy button rather than disabling it. That is why this is its own file and not a locked state: the closed state vocabulary has a word for the gate and no word for its opposite, and the CTA count differs.

The icon plate is bg-sunken, not a success tint. The app renders ShieldCheck in COLOR.ink on the neutral plate. An earlier wireframe drew it green on success-bg, which spends the one hue on a screen that is not about a role — see two-roles.

"Restored from a previous install. Nothing else to do." The footnote is the whole point: there is no action left, and saying so stops someone looking for one.

Related

Sources

  • .context/designs/mobile/onboarding/restored.html
  • src/app/onboarding/promise.tsx — the isPro branch

Every project of mine is written down like this.

Read the résumé