Technical Documentation

Excalidraw Rollback Plan

Excalidraw Rollback Plan

If a critical defect is discovered post-launch, roll back in this order:

  1. Feature flag off. Set whiteboard.enabled to false in the entitlement plan matrix (Pro and Pro Plus). New users see the UpgradeWall; existing users see a read-only banner and cannot open the editor.
  2. Route disable. Redirect /board/$id and /whiteboards to /settings/plan with a status message. Ship as a hotfix.
  3. Package pin. Revert @excalidraw/excalidraw to the previous known-good version in package.json; run typecheck; ship.
  4. Package removal. If the defect is in the package itself and unfixable short-term, remove the dependency and mark Whiteboard Mode "temporarily unavailable" on the pricing page. The diagrams table retains all data — users lose the editor, not their scenes.
  5. Data recovery. Existing public.diagrams rows with kind = 'excalidraw' remain intact regardless of package state. Users can still export via Rafa "propose export" once the package is restored.

Data safety guarantees

  • No schema change is required to disable Whiteboard Mode.
  • No user data is deleted by rollback.
  • All checkpoints in diagram_versions remain restorable.

Communication

  • In-app banner and blog post explaining the temporary rollback.
  • Support macros pre-written; ticket category whiteboard.outage.