Skip to content

v0.4.0 Release Notes

Release Date: 2026-07-26

VisionStudio v0.4.0 adds a plugin architecture to the Electron desktop app — an ExtensionManifest-based system (views, sidebar sections, commands, settings, and API routes as declarative contributions) with a registry distinguishing built-in from marketplace extensions — and migrates the desktop app's own views onto it, plus browsable DevX period reports and a new API Style Spec extension.

Highlights

  • Extension systemExtensionManifest/ExtensionContributions types, an ExtensionRegistry (builtin vs. marketplace, installed-state tracked in localStorage), activation events (onProject, onProject:<key>=<value>), and an ExtensionManagerView for browsing/installing
  • Existing views become extensions — VisionSpec, AIDLC, V2MOM, Analytics, and the unified dashboard are now registered as built-in extensions through the same system a marketplace extension would use, not special-cased
  • Shared UI toolkit — eleven reusable components (DimensionBar, EmptyState, ErrorState, IssueCard, LoadingState, QualityBadge, ScoreBadge, SeverityBadge, StatusBadge, SummaryCard, ViewHeader) backing an AppContext-based refactor of the existing views
  • API Style Spec — a new daemon endpoint plus a full marketplace extension (dashboard, editor, findings, lint results, rules views) for linting API specifications
  • DevX period reports — browse historical weekly/monthly/quarterly dashboards instead of only the latest snapshot, with two new chart types (pie, stacked bar) to render them
  • structured-evaluation v0.11.0 (was v0.10.0)

Features

Extension System

// desktop/renderer/src/types/extension.ts
interface ExtensionManifest {
  id: string
  name: string
  version: string
  scope: 'project' | 'global' | 'both'
  activationEvents?: string[]
  contributes: {
    views?: ViewContribution[]
    sidebarSections?: SidebarSectionContribution[]
    commands?: CommandContribution[]
    settings?: SettingContribution[]
    apiRoutes?: string[]
  }
}

Built-in extensions (visionspec, aidlc, v2mom, analytics, unified-dashboard) register through registerBuiltinExtensions(); a marketplace/extensions.json directory holds distributable ones, starting with API Style Spec.

DevX Period Reports

# Existing dashboard file (v0.3.0) only showed the latest snapshot; period
# reports are generated the same way, one per period:
devfolio devx dashboard --person person:jane --period weekly -o <path>

New daemon endpoints serve the period list and individual reports; the desktop frontend gained a period selector dropdown and PieChart/BarChart renderers (ChartWidget now dispatches by mark geometry instead of assuming a line chart).

API Endpoints

Daemon (2 new endpoints)

Method Endpoint Description
GET /api/devx/periods List available weekly/monthly/quarterly period reports
GET /api/devx/reports/{periodType}/{label} Serve a specific period report
API Style Spec endpoint Lint/validate API style specifications (cmd/daemon/apistylespec.go)

periodType and label are validated against path traversal before being used to build a filesystem path (see Tests).

Tests

  • validPeriodType and validPeriodLabel path-traversal-prevention tests for the new DevX period endpoints

Dependencies

  • github.com/plexusone/structured-evaluation upgraded to v0.11.0 (was v0.10.0)

Documentation

  • Architecture overview updated to reflect the extension system
  • Roadmap updated with extension-system milestones

Breaking Changes

None. This release is backwards compatible with v0.3.0.

What's Next

At the time of this release, the roadmap pointed toward deepening the desktop app's extension marketplace. What actually shipped next was a much larger pivot: a Go CLI + web dashboard (visionstudio) covering roadmap execution (Programs → Initiatives → Phases → RMIs) backed by Dolt, with the Electron desktop app and cmd/daemon continuing on as a legacy, non-actively-developed surface. See v0.5.0.