Skip to content

v0.6.0 Release Notes

Release Date: 2026-08-17

VisionStudio v0.6.0 is the first tagged release since v0.5.0, consolidating every initiative that landed on main in the interim. Under the convention adopted this cycle — an initiative closes once its work is committed and pushed with release notes prepared, and the git tag is a separate, batched formality — several initiative batches accumulated as prepared-but-untagged release notes (v0.6.0 through v0.11.0). This release folds all of them into one tag.

It closes: the spec workflow catalog becoming a genuine single source of truth (INIT-VISIONSTUDIO-005), authentic AWS Working Backwards flows plus the dashboard's first web mutation (INIT-VISIONSTUDIO-009), the repository/RMI lifecycle CLI (INIT-VISIONSTUDIO-010), the release-tracking system used to prepare it (INIT-VISIONSTUDIO-006), registry org/person/visibility modeling (INIT-VISIONSTUDIO-007), VisionStudio Cloud groundwork (INIT-VISIONSTUDIO-002), the full Portfolio WIP Management suite (INIT-VISIONSTUDIO-011, seven phases), and the spec-judge layered-rubric wiring from the cross-repo Spec Hardening initiative (INIT-SPECWORKFLOWSPEC-001).

Highlights

  • Spec workflow single source of truth — specification-workflow-spec's catalog (~25 profiles) is now the only workflow definition source; VisionStudio's divergent local catalog was retired, a workflow can be switched after creation, and the Initiative page adapts to whichever workflow is assigned
  • Authentic AWS Working Backwards — aws-one-way-door/aws-two-way-door profiles reordered to be PR-first per actual Amazon practice and infused with the 16 Leadership Principles, alongside the dashboard's first web mutation (New Initiative creation, POST /api/initiatives)
  • Registry & RMI lifecycle CLI — repository records can be updated, archived with supersession, removed, and health-checked (registry doctor); RMIs can be bulk-reassigned across repositories as one auditable operation
  • Release tracking system — a Release entity with initiative/RMI/repository edges, a full release CLI (plan/record/list/show/attach/detach/delete/backfill-match), a changelog gate, an unshipped-initiatives queue, and CHANGELOG.json/git-tag/GitHub-Releases ingest — the very system used to prepare this release
  • Registry org/person/visibility modeling — Organization and Person entities, GitHub-derived repository visibility, and a publicrail export safety rail gating what any public roadmap view can ever show
  • Portfolio WIP Management — initiative sweep (initiative-first) and release candidates (repo-first) find work whose RMI completion has outrun its recorded status, verified against real per-repo git state; a dashboard By Status board; cancelled-scope-aware progress bars; RMI.Origin provenance; and attached-release visibility on initiatives
  • Spec judge sees layered rubrics — spec judge now resolves evaluation rubrics live from the specification-workflow-spec catalog, so the layered class/blocking/evaluation taxonomy is visible to the judge flow (the dead JudgeRubric DB table was retired)
  • Reversible initiative lifecycle — an initiative can reopen to any earlier pipeline status as scope evolves, with later-stage lifecycle timestamps cleared so history stays truthful
  • VisionStudio Cloud groundwork (dogfood-only) — local tenant-assignment config and a whole-database sync command over godolt

Spec Workflow Single Source of Truth (INIT-VISIONSTUDIO-005)

Two workflow catalogs used to disagree: the upstream specification-workflow-spec module (rich, ~25 profiles, used by synthesis/eval) and VisionStudio's own hardcoded seed.go (4 simplified profiles, used by CRUD/CLI/API). Same IDs meant different required-doc sets depending on which path you hit.

  • specification-workflow-spec is now the only source: SyncFromCatalog upserts the DB index, remaps retired IDs (pbhq-standard → pbhq-lite), and deletes unreferenced rows (44efa2d)
  • initiative update --workflow <id> switches an initiative's workflow after creation, keeping the synthesis/eval selection record in step (ab6fd15)
  • The Initiative page derives its spec set, progress denominator, tab order, and diagram from the assigned workflow instead of a hardcoded PBHQ-Lite rendering; files outside the workflow are badged Extra (a960f8d)
  • workflowId and file roles (required/optional/extra) now flow through the execution and spec-file API responses; /api/specs exposes workflow detail (sequence/phases); GET /api/workflows/{id}/specs/{type} serves the embedded template and rubric for in-app viewing (e359671)
  • A silent YAML parse bug (workflow: vs execution: key) that dropped pbhq-lite's execution ordering, and a dropped synthesis-guidance fallback, were fixed upstream

Authentic AWS Working Backwards (INIT-VISIONSTUDIO-009)

The AWS door workflows were reworked to match how Amazon actually runs Working Backwards, not a simplified approximation:

  • Renamed by the real selection criterion — decision reversibility — not product/feature scale: aws-product → aws-one-way-door, aws-feature → aws-two-way-door (workflow sync remaps existing initiatives)
  • Reordered to be PR-first: the human-authored Press Release is the founding artifact in both flows; MRD/OpportunitySpec demoted to optional post-FAQ deepening
  • Infused with the full 16 Amazon Leadership Principles — methodology metadata, template guidance, and LP-grounded rubric categories
  • The dashboard's first web mutation: a New Initiative button and modal (catalog workflow dropdown, per-workflow required-docs preview, type-driven defaults) landing on the new initiative's Definition tab (a960f8d, wiring fix 92483e3)

Registry & RMI Lifecycle CLI (INIT-VISIONSTUDIO-010)

A registered repository could be added, but never fixed, retired, or audited — and reassigning RMIs after a repo merge or rename meant a hand-rolled loop. This release closes that gap:

visionstudio registry update <repo-id> [--path --org --branch --name]
visionstudio registry archive <repo-id> [--reason --superseded-by <new-id> --reassign-rmis]
visionstudio registry remove <repo-id> [--force]
visionstudio registry doctor
visionstudio rmi bulk-update --repo <old-id> --set-repo <new-id> [--initiative I] [--dry-run]
  • registry doctor walks every non-archived repository and flags a missing directory, a non-git working tree, or a drifted git remote (867c503)
  • registry archive --superseded-by --reassign-rmis performs the RMI repointing and the archive status change as one auditable operation — reassignment runs first, so a failure leaves a safely re-runnable partial state (4b0baa1)
  • registry add now warns (non-blocking) on path/remote conflicts with an existing entry (b3352ee)
  • --repo accepts a bare name or org/name, resolved with a did-you-mean hint on no/ambiguous match (1dfc943)
  • --format json on rmi/initiative/registry list/get, and --repo/--status/--program filters on initiative list (601fa99, 5277b11)

Release Tracking System (INIT-VISIONSTUDIO-006)

The system used to prepare this very release:

  • A Release Ent entity with edges to Initiative, RoadmapItem, and Repository (c5740f1)
  • release CLI: plan/record/list/show/attach/detach/delete, a changelog gate that checks/scaffolds CHANGELOG.json entries at record time, release unshipped, and release backfill-match for reviewing AI-assisted matches between historical commits/tags and initiatives (c03e25d)
  • CHANGELOG.json/git-tag ingest with a trailer-coverage report, and GitHub Releases API ingest to close the gap between local tags and real GitHub Release history (55fb2c9, 5d3242d)
  • Initiatives can reopen to any earlier pipeline status as scope evolves, with later-stage timestamps cleared so an unshipped-queue view stays correct after a reopen (fb9ef2c, test coverage 14d84f1)

Registry Org/Person/Visibility (INIT-VISIONSTUDIO-007)

  • Organization and Person entities, with idempotent org backfill and registry org/registry person CLI commands (a6b3cc1)
  • GitHub-derived Repository.visibility (public/private/unknown); GitHub INTERNAL maps to private, lookup failures leave the stored value untouched (de22d65)
  • publicrail — the single implementation of the export predicate for every external projection: a repo filter that only passes explicit public, an initiative filter requiring both the public flag and not-hidden (1454863)
  • Registry query slices scoped by organization, private-focus, and practitioner assignment (e0142a9)

Portfolio WIP Management (INIT-VISIONSTUDIO-011)

A seven-phase initiative, each phase built off a concrete gap found using the one before it, to keep the initiative portfolio's work-in-progress honest and visible.

  • initiative sweep — lists non-terminal initiatives (proposed/planned/executing) where every RMI is completed, resolving every distinct repository an initiative's RMIs touch and reporting local git state from cached refs (no network). Report-only; it never transitions or records for you. It found real candidates the moment it ran.
  • Dashboard By Status view — a /status route grouping every visible initiative into pipeline-ordered columns (proposed through cancelled), reusing /api/execution; StatusBadge gained colors for delivery_complete/releasing/released/closed.
  • Cancelled-aware progress bars — cancelledProgress on APIInitiative/APIPhase renders cancelled RMIs as a red segment (not the "not done yet" gray), and the bar turns green once completed + cancelled reach 100%, since nothing is actually still in flight (ad47edd, 11ac490).
  • visionstudio app restart — tracks the UI+API server's own PID (ui.pid) and stops-then-starts it in one command, leaving the database alone (d0e0b5d).
  • RMI.Origin — every RMI records how its scope was identified: spec (default), implementation (found while building another RMI), acceptance_testing (found using the shipped result), or discussion (proposed in conversation). Wired through the schema (additive migration), pkg/rmi, both stores, both API layers, rmi create/update/list, and the rmi_create MCP tool.
  • release candidates --repo <repo-id> — the repo-first counterpart to sweep: which initiatives touching this repo are ready/partial/not_ready/already_attached for release. A repo's RMIs are usually a subset of several initiatives' full scope, so this is a genuinely different question. Report-only.
  • Attached-release visibility — initiative get prints a Releases: section and the Initiative Detail page shows a "Released in:" chip row, surfacing per-repo repo@tag data the Release entity already recorded for multi-repo initiatives but nothing displayed.

Spec Judge Layered Rubrics (INIT-SPECWORKFLOWSPEC-001)

The cross-repo Spec Hardening initiative extended specification-workflow-spec's rubrics with a layered class/blocking/evaluation taxonomy. VisionStudio's spec judge couldn't see it: spec judge show/record read rubrics from the judge_rubrics DB table, which nothing ever populated (CreateJudgeRubric had no callers; workflow sync only upserts the workflow index), and matched the spec type against the raw filename — so every workflow reported "no rubric defined."

  • spec judge now resolves the rubric live from the catalog via the workflow loader (GetRubric), deriving the spec type from the filename (PRD.md → prd) and rendering the RubricSet as YAML so the layered fields are visible (a65cfe9)
  • The dead JudgeRubric Ent entity, table, and Store API were removed; JudgeResult.rubric is now a plain rubric_id field instead of a foreign-key edge to the retired table, fixing a latent dangling-FK on recorded results (0f2990e)
  • visionspec pinned to the tagged v0.17.0 (60f01c1)

Fixed

  • New Initiative creation callback wasn't wired into App, so workflows never reached InitiativesOverview/ProgramView and creation didn't reload or navigate (92483e3)
  • visionstudio db init's server-mode data-dir fallback didn't expand ~, creating a literal ~ folder instead of writing to the home directory (7c03df9)
  • Migrated off the archived specification-workflow-spec module onto the merged visionspec, since upstream superseded pkg/profiles with pkg/workflows and relocated pkg/workflow to pkg/execgraph (b83c1bb)

Documentation

Dashboard guides, README, and CLAUDE.md track the registry/RMI CLI, spec-workflow selection/switching, the AWS door flows, template/rubric viewing, sweep/candidates, the By Status view, and RMI.Origin. PRD/TRD/PLAN/ROADMAP spec sets were added for the closed initiatives. CLAUDE.md gained durable conventions: closing an initiative doesn't require a git tag; scope discovered after the initial spec is tracked as a new origin-tagged RMI (traced to a concrete finding, never speculation); and a two-place registration gotcha for new apitypes structs. An ADR records keeping Program/Initiative/Phase/RMI as native vocabulary.

What's Next

  • This release is the tag — v0.5.0 → v0.6.0 consolidates all the batched work above
  • INIT-VISIONSTUDIO-003 and INIT-VISIONSTUDIO-007, flagged ready by both sweep and release candidates, remain open for separate review
  • Dashboard-side origin badge/filter, if the CLI-level rmi list --origin telemetry proves useful