Repository navigation
chore(release): 2.6.0 - #311
Merged
Merged
Conversation
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.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Cuts 2.6.0. Ten entries, six of them
BREAKING, closing defects that reach back to 2.0.0.Why a minor
ADR-0061 D1, landed today: only a
Changed — BREAKINGforces one, and four of the six are. ADR-0028'smigration-guide obligation is met — all three guides exist and are reachable from the index (#310,
which also added the row
audiosocket-wire-format-migration.mdnever got).What ships
externalMediareturned a channel id that found no streamConnectAsyncleftAriClientreportingConnectingfor the life of the instanceMicrosoft.ML.OnnxRuntime1.28.0 → 1.30.0The OnnxRuntime bump gets an entry because it is a
PackageReferencewithoutPrivateAssetsinVerbara.Sdk.VoiceAi.TurnDetection: a consumer resolves it transitively and the turn detector runsits inference on it. The bundled
smart-turn-v3.2-cpumodel and every published accuracy figure areunchanged — the runtime moved, not the model. The only precedent for recording a bump
(
Microsoft.SourceLink.GitHub, 2.5.1) was a security advisory, so this entry states the reach ratherthan the reason.
Four files, not two
The previous cut (#264) touched
CHANGELOG.mdandDirectory.Build.props. This one also movesREADME.md's headline version and its claim-registry row, becauseStatusBlockCoherenceTests.TheHeadlineVersion_ShouldMatchTheVersionThePackagesShipWithnow binds theheadline to
<PackageVersion>— a guard written precisely because that headline had rotted threereleases behind.
Not in this release, knowingly
The reconnect reload that strands a call after an AMI reconnect: measured today, seven months old
(
git blameputsChannels.Clear()at 2026-03-01, before 2.0.0), present in every 2.x including the2.4.0 that downstream pins. Cutting now makes nothing worse for anyone.
Its fix is the open change
a-reconnect-reload-is-a-diff-not-a-wipe. The owner ruled its entryFixed — BREAKING, which under ADR-0061 does not force a minor, so it ships as a patch when itsown functional measurement says it is ready — rather than holding ten finished fixes behind a change
whose task 3.3 says a real-Asterisk measurement can still narrow its spec.
The tag
Not pushed by this pull request. After it merges,
release-hygiene.ymlreports thestaged-but-untagged version on the next push to
main— that is ADR-0055's design, not a failure.The tag is a separate, explicit step, and the ApiCompat baseline move plus the deletion of the 14
CompatibilitySuppressionsentries follow it.Verification
Tests/Verbara.Sdk.OpenTelemetry.Tests— 31 passed (headline version, ADR count, catalog, claims)Tests/Verbara.Sdk.Governance.Tests— 129 passedopenspec validate --all --strict— 17 passed, 0 failed🤖 Generated with Claude Code