From 7ce8ba7b42313e6bd2a3eb7a7600b511a871c9f4 Mon Sep 17 00:00:00 2001 From: Kevin Adams Date: Mon, 31 Aug 2026 21:21:05 -0400 Subject: [PATCH] docs: release housekeeping for v4.0.0 -- CHANGELOG, ROADMAP CHANGELOG's [Unreleased] section becomes a dated [4.0.0] entry; ROADMAP's "Upcoming" section moves to "Released", matching the pattern every prior version got. Co-Authored-By: Claude Sonnet 5 --- CHANGELOG.md | 10 +++++----- ROADMAP.md | 24 ++++++++++++++++++++---- 2 files changed, 25 insertions(+), 9 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9762688..72bd865 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,12 +8,11 @@ See each [GitHub Release](https://github.com/TheGrandWazoo/truenas-proxmox/relea --- -## [Unreleased] — v4.0.0 (Rivendell), in development on the `next` branch +## [4.0.0] — 2026-08-31 — Rivendell -Not yet released — tracked here as work lands, per this project's rule to keep -docs current rather than batching everything into the eventual release notes. See [ADR-012](.claude/cos/adrs/ADR-012-websocket-transport-v4.md) (Accepted) -for the full design and live-verification history. +and [ADR-013](.claude/cos/adrs/ADR-013-branching-strategy.md) for the full +design and live-verification history. ### Added - WebSocket JSON-RPC 2.0 transport for TrueNAS SCALE 25.04+ (`_api_ws`, @@ -22,7 +21,8 @@ for the full design and live-verification history. continue to use the existing REST v2.0 transport, unmodified (#243) - New dependency: `libanyevent-websocket-client-perl` (pulls in `libanyevent-perl`), added to `packaging/DEBIAN/control.j2` and CI's lint - job — only affects the `next`/v4 line, not v3.x + job — only affects the v4 line (`v4`/`rivendell` apt dist), v3.x is + unaffected (archived at `release/3.x` per ADR-013) ### Verified (live, against real TrueNAS hosts) - Every read (query) call the plugin makes, across three TrueNAS SCALE diff --git a/ROADMAP.md b/ROADMAP.md index 849efd6..e90cabe 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -164,14 +164,30 @@ Introduces the `truenas-proxmox-multipath` optional add-on package. Active-activ --- -## Upcoming — v4.0.0 (WebSocket API, SCALE 25.x) +## Released — v4.0.0 (Rivendell, WebSocket API) -**Target:** After PoC testing on SCALE 25.04+ -**Why major version:** WebSocket JSON-RPC 2.0 is a new transport — genuine architectural change. +**Released:** 2026-08-31 +**Branch:** `main` (promoted from `next` at cutover — `release/3.x` archives the v3.x line, per ADR-013's first-ever major-version cutover) +**GitHub Release:** https://github.com/TheGrandWazoo/freenas-proxmox/releases/tag/v4.0.0 +**Why major version:** WebSocket JSON-RPC 2.0 is a new transport — genuine architectural change (ADR-009). + +WebSocket JSON-RPC 2.0 transport for TrueNAS SCALE 25.04+, auto-detected per host alongside the existing REST v2.0 transport (TrueNAS CORE, SCALE < 25.04) — `storage.cfg` unchanged either way. Full design and live-verification history: [ADR-012](.claude/cos/adrs/ADR-012-websocket-transport-v4.md) (Accepted). + +### Confirmed tested + +| Component | Versions | +|-----------|---------| +| Proxmox VE | 9.2.3 | +| TrueNAS CORE | 13.x (REST transport regression-checked, real production host) | +| TrueNAS SCALE | 25.10.3.1, 25.10.6, 25.04.2.6 (WebSocket transport) | + +### What shipped | # | Title | |---|-------| -| [#243](https://github.com/TheGrandWazoo/freenas-proxmox/issues/243) | WebSocket JSON-RPC 2.0 API support (TrueNAS SCALE 25.04+) | +| [#243](https://github.com/TheGrandWazoo/freenas-proxmox/issues/243) | WebSocket JSON-RPC 2.0 transport, auto-detected per host | + +Also verified as part of this release: a full `alloc_image`/`free_image`/snapshot cycle over the new transport (zero orphans), a REST-path regression check against real TrueNAS CORE, and `truenas-proxmox-multipath` working over WebSocket with zero code changes. See [CHANGELOG.md](CHANGELOG.md#400--2026-08-31--rivendell) for the full list, including two real bugs caught and fixed during live testing before ever shipping. ### Ideas under consideration (not committed)