Symptom

Phase 3 local-first onboarding (bullet-journal walkthrough) required node creation without a server. The FlowStep.CreateNode and FlowStep.OpenEditor steps existed as unimplemented stubs; LocalSwarmHost and its storage + delivery path were missing.

Root cause

No LocalSwarmHost existed — the design assumed all node writes went to a Ktor server. Local-only node types (Project, Journal) had no persistence or delivery path for offline clients. The FlowEngine also lacked ReturnToChooser to loop the user back to the flow menu after completing a walkthrough.

Fix

Prevention