This release includes breaking changes for platform teams planning a safe upgrade.
✓ No known CVEs patched in this version
Topics
+1 more
ReleasePort's take
Light signalv2.40.0 renames the top‑level "Analysis" menu to "Media", updates related UI elements, and adds drift guards for documentation sync.
Why it matters: The rename changes all top‑level navigation references; update code paths and docs before the June 10 2026 release goes live.
Summary
AI summaryControl‑panel UX overhaul with Media menu rename, chat‑first onboarding, history navigation link, and drift guards preventing stale docs.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Feature | Low |
Adds Governance mode toggle (Advisory / Enforce) on AI Console. Adds Governance mode toggle (Advisory / Enforce) on AI Console. Source: llm_adapter@2026-06-10 Confidence: high |
— |
| Feature | Low |
Adds Recent runs list in AI-ops ledger card showing each run's actor. Adds Recent runs list in AI-ops ledger card showing each run's actor. Source: llm_adapter@2026-06-10 Confidence: high |
— |
| Feature | Low |
Adds Chat‑first onboarding guidance with suggested prompt and Copy‑prompt button. Adds Chat‑first onboarding guidance with suggested prompt and Copy‑prompt button. Source: llm_adapter@2026-06-10 Confidence: high |
— |
| Feature | Low |
Adds History as a first‑class Media menu item deep‑linkable at `#analysis/review/history`. Adds History as a first‑class Media menu item deep‑linkable at `#analysis/review/history`. Source: llm_adapter@2026-06-10 Confidence: high |
— |
| Feature | Low |
Renames top‑level "Analysis" menu to "Media" and changes "Analyze" item to "Inventory". Renames top‑level "Analysis" menu to "Media" and changes "Analyze" item to "Inventory". Source: llm_adapter@2026-06-10 Confidence: high |
— |
| Feature | Low |
Humanizes readiness chips, frame‑sampling labels, and preference pills throughout UI. Humanizes readiness chips, frame‑sampling labels, and preference pills throughout UI. Source: llm_adapter@2026-06-10 Confidence: high |
— |
| Feature | Low |
Rewrites `docs/guides/control-panel.md` and adds drift‑guard test to keep docs in sync with panel UI on every npm publish. Rewrites `docs/guides/control-panel.md` and adds drift‑guard test to keep docs in sync with panel UI on every npm publish. Source: llm_adapter@2026-06-10 Confidence: high |
— |
| Feature | Low |
Removes duplicate Refresh button inside readiness card; project selector shrinks at narrow widths instead of clipping. Removes duplicate Refresh button inside readiness card; project selector shrinks at narrow widths instead of clipping. Source: llm_adapter@2026-06-10 Confidence: low |
— |
| Bugfix | Medium |
Fixes broken README screenshot rendering and badge parsing issues. Fixes broken README screenshot rendering and badge parsing issues. Source: llm_adapter@2026-06-10 Confidence: high |
— |
| Bugfix | Medium |
Improves poll hygiene: pauses timers when tab hidden, backs off on unfocus, returns tiny unchanged response instead of 304. Improves poll hygiene: pauses timers when tab hidden, backs off on unfocus, returns tiny unchanged response instead of 304. Source: llm_adapter@2026-06-10 Confidence: high |
— |
Full changelog
v2.40.0
Control panel UX overhaul and docs refresh, built from a full live audit of every panel view — plus drift guards so neither the panel docs nor the tool surface can silently go stale again.
Added
- Governance mode toggle (Advisory / Enforce) on the AI Console, wired to
set_ai_governance, with corrected card copy (the old text predated v2.39.0 enforce mode). The AI-ops ledger card gains a Recent runs list showing each run's actor (instance:pid). - Chat-first onboarding: empty Overview, Review, and Inventory states show plain-language guidance with a quoted suggested prompt and a Copy-prompt button, replacing zero-walls and "run analyze_clip first".
- History is a first-class Media menu item, deep-linkable at
#analysis/review/history. The full hash deep-link scheme (every panel view, clip/shot/transcript drill-downs) is now documented.
Changed
- Top-level "Analysis" menu renamed "Media" (it collided with the Preferences page of the same name); its "Analyze" item is now "Inventory".
- Vocabulary pass throughout: humanized readiness chips ("Unverified source · 1", "Transcript · 1"), friendly frame-sampling labels ("Flash frame", "After cut", "Mid-shot") with raw reasons as tooltips, no internal codenames, implementation file names, or absolute paths in UI copy, humanized preference pills.
- Removed the duplicate Refresh inside the readiness card; the project selector shrinks at narrow widths instead of clipping offscreen.
Fixed
- The README's linked screenshot rendered broken in the Docs reader: badge parsing claimed every linked-image line, and the panel never served repo images. Badges now require external URLs, linked local images render as figures, and a new path-constrained
/api/doc_asset/route servesdocs/images/. - Poll hygiene: all timers pause while the tab is hidden, panel-state polling backs off when the window is unfocused, and unchanged inventory polls return a tiny
{"unchanged": true}200 instead of an HTTP 304 that Chrome's fetch layer logged as an aborted request every cycle.
Documentation & guards
docs/guides/control-panel.mdfully rewritten for the current IA — Media/Inventory/Review/History, AI Console governance, the project browser, all Setup and Preferences pages — with all screenshots regenerated from the live panel viascripts/regen_panel_screenshots.py.- New drift-guard test keeps the guide in sync with the panel's actual navigation and screenshots, and the npm publish workflow now runs all three static guards (undefined names, action-list drift, panel-docs drift) on every
v*tag — a stale doc fails the publish.
Validation
- Offline unit suite: 1,053 tests, 0 failures, 0 errors. Every panel change verified live (including a governance-mode round trip and headless verification of the Docs-reader image fix at full resolution). No DaVinci Resolve scripting behavior changed.
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
Related context
Beta — feedback welcome: [email protected]