devdrop / v1 foundation

Control plane for developer workspaces

devdrop.johari-dev.com
machines2windows and wsl treated separately
data planegitsource bytes stay in remotes
local truthsqlitewatcher queue and idempotency ledger
commandsleasedat-least-once execution semantics

Provider Readiness

ClerkVITE_CLERK_PUBLISHABLE_KEY
missing env
Convexclient url loaded
configured
R2devdrop-dev, devdrop-artifacts
planned

Early Test Machines

wsl-devlinux / wsl
/home/aadi/L-Projects/devdrop_syncready for init
windows-devwindows
D:\Aadi\W-Projects\devdrop_syncseparate machine identity

Command Surface

devdrop initgenerate .devdrop policy and workspace files
devdrop pullmaterialize a workspace skeleton on another machine
devdrop daemon statusreport local daemon and provider health

Contract Primitives

Machineidentity, roles, heartbeat, revocation
Workspacecanonical root, membership, policy version
Commandleased operation with idempotency key
WipSnapshotcontent-addressed dirty state bundle
Policypath decisions for sync, rebuild, secret, lazy blob
No raw recursive sync.The daemon publishes debounced state to Convex, while Git and R2 move content only through explicit policy decisions.