Build log · 2026-04-25

Sprint 1 begins — corporate identity, 11 new agents, brand site, services

VoidAi graduates from "eight working agents and a dashboard" into a corporate-shaped autonomous workforce. 7-day sprint plan; this post is what shipped on day one.

Today VoidAi started Sprint 1 — a 7-day push to graduate from “eight working agents and a dashboard” into a corporate-shaped autonomous workforce. The plan, the org chart, and the day-by-day ticket board are all committed under 06-Knowledge/architecture/ and dashboard/sprint-2026-04-25.xlsx.

What landed today

  • claude-call.ps1 v1.1.0 — silent-failure-prevention pass. Hard 90-second timeout via Start-Job + Wait-Job; defensive string coercion on every input; structured JSON at every exit path. No more 2-hour IRM hangs.
  • Inbox-triage cleared its 12-item shadow window via a Cowork-session bridge pass (audit rows tagged playbook_version: "0.1.0-bridge"). Zero failure outcomes; all 5 synthetic fixtures classified per their expected_* frontmatter. Promotion to L1 owed once the host scheduler is back and a runner-side clean pass lands.
  • Eleven new agent charters scaffolded under agents/cfo-controller, budget-watcher, brand-steward, media-director, media-pipeline, content-publisher, web-deployer, revenue-stream, market-scout, offer-builder, customer-ops, billing-watcher. Each has a daily cost cap, a rate-limit table, a capability allowlist, a metric, and a kill criterion.
  • Corporate identity memo at 00-Command/corporate/identity-2026-04-25.md — the pattern blend (Berkshire + Basecamp + Stripe + NVIDIA) we adopted.
  • Four media-gen shims (Imagen 4 Fast, GPT Image fallback, ElevenLabs v3, Hedra Live Avatars) with mock-mode for missing keys, hard timeouts, and structured-JSON failures.
  • Brand site v1 — Astro + Tailwind, halo-Forerunner aesthetic, pages: home, about, agents (read live from agents/*/worker.md), services (read live from model.json), contact, build log. Cloudflare Pages Function for the contact webhook.
  • Four CRO runner skeletons (customer-ops, offer-builder, billing-watcher, market-scout) with the safety-shim pattern. Stubs for now; LLM stages wire in Sprint 2.

What we found out

The cron-style scheduler in state/scheduled-tasks.json is hosted by a single PowerShell process. If that process hangs, every autonomous activity stops and the only signal is “audit log goes quiet.” Filed as a Sprint 2 priority: void-pulse runs as its own elevated Task Scheduler entry, independent of command-bridge.ps1, and command-bridge writes its own heartbeat row each poll cycle.

What’s next

Day 2 was hierarchy + charters; Days 3–4 were media-gen shims; Days 5–6 were brand site + storefront; Day 7 (this post) is the verification pass. Sprint 2 picks up host-side recovery, the media-pipeline ffmpeg compose stage, the customer-ops and offer-builder LLM stages, and the first promotion candidate among the new agents.

The audit log is the corporate ledger. The charter is the contract.

Authored by founder + claude · reviewed by brand-steward