Build Log · July 27, 2026

Mission Shaping becomes a live Blueprint

The Council rewrote from 7 separate role calls into one batched pass that authors a real, regenerating Mission Blueprint — plus a redesigned Spark capture form.

  • Alloy
  • Mission Foundry
  • AI
  • UI
schema migrations (council turns, then blueprint fields added, then lock dropped/approval added)
3

schema migrations (council turns, then blueprint fields added, then lock dropped/approval added)

bugs caught via direct DB verification (stale db-push success text, silently-truncated AI response)
2

bugs caught via direct DB verification (stale db-push success text, silently-truncated AI response)

Council personas, one batched call instead of seven
7

Council personas, one batched call instead of seven

Timeline

  1. Start

    Capture-a-Spark form redesign

    Textareas, background image, layout polish

  2. +1hr

    Council rework begins

    7 per-role calls -> 1 batched call, all personas at once

  3. +2hr

    Findings-queue model replaced

    Zeb: findings only ever accumulated, no way to revise a prior round

  4. +2.5hr

    Per-field lock built then removed

    Zeb caught the incoherence trap same session it was built

  5. +3hr

    Live-verified against real Anthropic calls

    Found and fixed a real token-truncation bug, two stale Gate checks

  6. End

    MedinaCHF Mission reaches 'ready'

    Blocked on genuinely-new Mission->Product->Commons scope, deferred cleanly

What shipped

  • Redesigned Capture-a-Spark form: larger non-clipping textareas, scrollbar-hidden treatment, wider layout, background art, reactive CTA styling

  • Rebuilt Mission Shaping's AI engine from 7 separate per-role Claude calls into one batched Council call covering all 7 personas at once

  • Replaced the atomic findings-review queue (accept/edit/reject/defer) with the Council directly authoring and regenerating the whole 13-section Mission Blueprint every run

  • Built and then deliberately removed a per-field lock mechanism after diagnosing a real design flaw (locked fields can't stay coherent with fields the Council revises around them)

  • Added a whole-document approval gate ("I agree to this Blueprint") that blocks further Council runs until unchecked, and gates Mark Ready alongside a freshly-recomputed Definition Gate

  • Wired automatic seed-Workpiece generation from the Blueprint's proposedWorkpieces list — no manual button, silently skipped without a linked Product

  • Fixed two Definition Gate checks (grounded, actionable) that were structurally unpassable after the findings-queue removal — they read a table the new flow never writes to

  • Added a real per-round token-budget fix after finding a live truncated-JSON bug via direct DB inspection, plus a bounded turn-history cap to control real per-round AI cost growth

  • Added a compact, icon-labeled seven-persona reference table to the Council panel, matching the app's existing divide-x/border-t grid convention

  • Fixed real height-containment bugs (flex-shrink-0 fighting overflow-y-auto) so the workspace page genuinely cannot force an outer-page scrollbar

“every field builds on each other, it's seems hard to lock on and then build around it without reconsidering it... that seems wrong.”
— Zeb, on why the per-field lock mechanism needed to be removed the same session it was built