v0.7.0 Release Notes¶
Release Date: 2026-10-01
VisionStudio v0.7.0 is a focused release that turns the shared library into the
foundation a cloud deployment can run on, while adding roadmap-authoring
quality-of-life to the CLI. The headline is multi-tenancy groundwork: the shared
Ent schema now carries an optional tenant_id and the store can run over managed
Postgres, so the same service layer that backs the local Dolt app can back a
pooled, Row-Level-Security cloud — without changing local behavior.
Highlights¶
- Cloud multi-tenancy groundwork — an optional, inert-for-local
tenant_idmixin on every shared entity, plus a Postgres-backed store (NewPostgres/NewPostgresFromConn) so the same Ent-backedstore.Storeruns over managed Postgres with pool + Row-Level Security for a cloud, and over Dolt/MySQL locally. Local stays a single implicit tenant with no behavior change. - Auto-assigned RMI/initiative IDs —
rmi createandinitiative createallocate the next free ID for a repo/project slug when--idis omitted, and newrmi next-id/initiative next-idcommands print the next ID(s) without creating anything — so you can fill a ROADMAP.md with correct IDs and cross-references beforeroadmap import, instead of guessing numbers and colliding. - RMI keyword search —
rmi list --grep <term>searches RMI IDs and titles (case-insensitive) across every initiative/repository, to find which RMI describes a given change. - Cloud-to-local pull — a
pullcommand fetches and fast-forward-merges a cloud tenant's branch into the local database, complementing the existing push, with fast-forward-only safety on both directions.
Cloud Multi-Tenancy Groundwork¶
The shared library is single-tenant by design, but a hosted deployment needs tenant isolation. This release makes that possible additively, with zero impact on the local app:
- A
TenantMixinadds an optional, indexedtenant_idto every shared Ent entity. It carries no Ent privacy policy: the local app leaves it null and is entirely unaffected, while a cloud populates and isolates on it at the Postgres layer. Isolation lives in Postgres RLS, not in Ent, so the mixin stays inert for local by construction. DoltStoregainedNewPostgresandNewPostgresFromConnso the samestore.Storeimplementation runs over managed Postgres (pool + RLS) as well as Dolt/MySQL. The Dolt-specific commit paths short-circuit when the Dolt handle is absent, so Postgres mode is clean.
This is the local-library half of the cloud work; the cloud's RLS policies and per-request tenant scoping are applied by the consuming deployment on top of the Ent-generated schema.
Auto-assigned RMI & Initiative IDs¶
Picking the next free ID by hand meant checking a list and still colliding, because numbering is per repo-slug across all initiatives, not per initiative. This release makes the tooling do it:
# Omit --id to auto-assign the next free number for the repo/project slug
visionstudio rmi create --repo github.com/org/repo --title "…" --type capability
visionstudio initiative create --slug MYPROJECT --title "…" --workflow pbhq-lite
# Or just see the next free ID(s) without creating anything
visionstudio rmi next-id --repo github.com/org/repo --count 5
visionstudio initiative next-id --slug MYPROJECT
Allocation is max(existing number for that slug) + 1 and never reuses gaps, so
an ID stays stable once assigned even if the item is later deleted. Explicit
--id still works for reproducing existing roadmaps.
Fixed¶
versionreported a hard-codedv0.1.0instead of the real build version.- Cancelled RMIs are now treated as resolved (like completed) when deriving phase/initiative status, so an initiative whose remaining work was all cancelled no longer reads as still in progress.
Changed¶
pkg/irnow imports the renamed upstream module path; it remains an indirect dependency, pulled in transitively.- The store consumes
godoltlifecycle helpers instead of hand-rolled SQL.
Documentation¶
- A new Troubleshooting page covers schema drift, stale binaries, and a database-down state.
- Agent-ready
--helpacross load-bearing commands, and architecture/dashboard docs updated for the two-tier visionspec stack.
What's Next¶
- This release unblocks a cloud deployment to depend on a tagged library version
(removing its local
replacedirective) rather than a local checkout.