Build Log
Dobby Takes Orders
August 31, 2026
Canvas-2 got a real Google OAuth connection, a real Dobby-driven command center, and an Owner Loop that stopped punting on its own false-positive safety checks.
Timeline
What shipped
Real Google OAuth connection for canvas-2 — read-only Gmail + Calendar, connect/disconnected/expired/error UI states, token storage + refresh-on-read
Dobby-driven command center — real character art, state-based reaction lines, honest pre-Actor build-progress panel, one shared stage-derivation module so Dobby and the build panel can never contradict each other
Fixed a real production bug: OAuth redirect defaulting to localhost in production
Improved Gmail/Calendar API error diagnostics — surfaced the real cause (APIs not yet enabled in Google Cloud) instead of a bare status code
Hardened retry-deferred-deploy.mjs against a benign push race that was mislabeling successful deploys as failed GitHub Actions runs
Exempted single-owner playground apps (canvas-1 through canvas-4) from the Owner Loop's consequential-signal acceptance check, after it false-positived twice in one session
Diagnosed why autonomous canvas-2 Actor runs underperformed a direct interactive session — real evidence, not a hunch
Fixed a real, recurring contract bug: the Owner Loop Charge template's disposition vocabulary never matched what the validator actually checks, silently orphaning terminal results
Added a real file-attachment channel for canvas-2's request box (Vercel Blob), closing the 'no way to hand the Actor a file' wall that blocked the Dobby-image request twice
Added a 'build everything buildable' instruction to the Owner Loop Charge template, quoting Zeb's own real instruction from this session
“We really need to rethink this. All of these should be getting deployed. None of them should be held up.”