From c3a74471d4098f0c1d12a7feb2184c5d5d777f7d Mon Sep 17 00:00:00 2001 From: "Harol A. Reina H." Date: Thu, 24 Sep 2026 17:08:05 -0500 Subject: [PATCH] chore(release): 2.6.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Ten entries, six of them BREAKING, closing defects that reach back to 2.0.0: the AudioSocket wire format neither server ever spoke (#302), externalMedia returning a channel id that found no stream (#305), a failed first ConnectAsync that left AriClient reporting Connecting for the life of the instance (#291), three accept loops that died silently on a failure they could survive (#291, #298, #300), a caller hanging up mid-playback booked as a synthesis failure (#284), a session save governed by a token nothing could cancel (#286), and an accepted AudioSocket connection nobody closed (#281). A minor, per ADR-0061 D1: four of the six are `Changed — BREAKING`, and only that kind forces one. ADR-0028's migration-guide obligation is met — all three guides exist and are reachable from the guides index (#310). The `Microsoft.ML.OnnxRuntime` bump gets an entry of its own. It is a `PackageReference` without `PrivateAssets` in `Verbara.Sdk.VoiceAi.TurnDetection`, so a consumer resolves it transitively and the turn detector runs on it; the bundled model and every published accuracy figure are unchanged. The only precedent for recording a bump was an advisory that broke the build, so this one states the reach rather than the reason. Four files, not the two the previous cut needed: `StatusBlockCoherenceTests` now binds README.md's headline version to `Directory.Build.props`, so the headline and its claim-registry row move in the same commit. That guard was written because the headline had rotted three releases behind. Not in this release, and knowingly: the reconnect reload that strands a call after an AMI reconnect. It is seven months old, present in every 2.x including the 2.4.0 downstream pins, and its fix is the open change `a-reconnect-reload-is-a-diff-not-a-wipe`. The owner ruled its entry `Fixed — BREAKING`, which under ADR-0061 does not force a minor, so it ships as a patch when its own functional measurement says it is ready rather than holding ten finished fixes behind it. The tag is not pushed by this commit. `release-hygiene.yml` will report the staged-but-untagged version on the next push to main, which is the design in ADR-0055, not a failure. --- CHANGELOG.md | 11 +++++++++++ Directory.Build.props | 2 +- README.md | 2 +- docs/claim-registry.md | 2 +- 4 files changed, 14 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 03a2180d..dea799a6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,17 @@ All notable changes to this project will be documented in this file. ## [Unreleased] +## [2.6.0] - 2026-09-24 + +### Changed — `Microsoft.ML.OnnxRuntime` moved from 1.28.0 to 1.30.0 (#296) + +`Verbara.Sdk.VoiceAi.TurnDetection` references it without `PrivateAssets`, so a consumer resolves the +new version transitively and the turn detector runs its inference on it. The bundled +`smart-turn-v3.2-cpu` model and every published accuracy figure are unchanged — the runtime moved, not +the model. Recorded because a runtime dependency a consumer resolves is not an internal detail; the +only precedent for recording a bump (`Microsoft.SourceLink.GitHub` in 2.5.1) was an advisory, and this +one is a deliberate choice to state the reach rather than the reason. + ### Changed — BREAKING: `ExternalMediaActivity` could not reach an AudioSocket stream by any configuration (#305) `ExternalMediaActivity` accepts an `AudioSocketServer` in its constructor and then polls diff --git a/Directory.Build.props b/Directory.Build.props index 40ed35dc..91361b76 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -35,7 +35,7 @@ MIT README.md verbara;asterisk;ami;agi;ari;voip;pbx;telephony;native-aot;sdk - 2.5.3 + 2.6.0 diff --git a/README.md b/README.md index 07138a74..1f408ecf 100644 --- a/README.md +++ b/README.md @@ -58,7 +58,7 @@ The SDK is ported from [asterisk-java](https://github.com/asterisk-java/asterisk ## Status -**v2.5.3** — 29 NuGet packages, 0 build warnings, 0 trim warnings, ~2,924 unit tests + 154 functional + 65 integration (Testcontainers). +**v2.6.0** — 29 NuGet packages, 0 build warnings, 0 trim warnings, ~2,924 unit tests + 154 functional + 65 integration (Testcontainers). Release history — every version, with what changed and why — is in [`CHANGELOG.md`](CHANGELOG.md). It is not restated here: a second copy in the README is one nobody updates, and this block had drifted three releases behind before anyone noticed. diff --git a/docs/claim-registry.md b/docs/claim-registry.md index 25ad382d..1d1b5b69 100644 --- a/docs/claim-registry.md +++ b/docs/claim-registry.md @@ -50,7 +50,7 @@ is the worked example: its vendor wire captures are EVIDENCE, its counts of *our | 61 | 0 build warnings | ENFORCING | `Directory.Build.props` `TreatWarningsAsErrors` + `Pack Warnings Gate` | OK | | 61 | 0 trim warnings | ENFORCING | AotCanary | PARTIAL — 22/29 | | 61 | ~2,924 unit + 154 functional + 65 integration | COHERENCE | — | WRONG — the suite runs **3,295** (measured 2026-08-29); note nothing in-tree *records* that number until §4.1 commits the record | -| 61 | headline version **v2.5.3** | COHERENCE | `StatusBlockCoherenceTests` — against `Directory.Build.props` `` | **OK** | +| 61 | headline version **v2.6.0** | COHERENCE | `StatusBlockCoherenceTests` — against `Directory.Build.props` `` | **OK** | | ~~65~~ | ONNX model 8.3 MB | — | — | **DELETED** — lived in the release bullets, cut by the 2026-09-20 ruling on `README.md` release history | | ~~67~~ | 94.26% English accuracy, in upstream's voice | — | — | **DELETED** — lived in the release bullets, cut by the 2026-09-20 ruling on `README.md` release history. The figure survives at `:465` (row below) with its citation and hash pin; this was the duplicate. | | ~~67~~ | ~12 ms CPU inference | — | `TurnDetectionBenchmark` | **DELETED** — measured at 26.18–37.30 ms; deferred, see *Deferrals*. Its line was also removed with the release bullets on 2026-09-20. |