Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
83 changes: 83 additions & 0 deletions docs/releases/v0.26.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
# v0.26.0

Runner v0.26.0 completes the v0.26.0 milestone. It ships the explicitly selected
`retained-column/1` Base consumer for Agent v0.11 that `v0.26.0-alpha.1` introduced
(#183), moved from the Spec `v0.3.0-rc.2` candidate to the published
[Spec `v0.3.0`](https://github.com/Judgment-Pack/judgment-pack-spec/releases/tag/v0.3.0).
It also carries the CI headroom change from `v0.26.0-alpha.2` (#184), and tests for
#86 and #147. The Spec's maturity remains `draft`. Ordinary Runner input routes are
unchanged and still evaluate under `0.2.0-draft`. This release claims no Extended
Runner support.

## What an operator must do

- **Re-create alpha-era selected work.** Selected releases, runs and exports made by
`v0.26.0-alpha.1` or `v0.26.0-alpha.2` under the rc.2 contract cannot be read or
verified by this release. Re-create them under the final contract. Ordinary
(`0.2.0-draft`) releases, runs and exports are unaffected.
- **Update callers that name the contract.** A caller that selects the rc.2 contract
is refused `capability-unsupported`, whether by header, flag or capability report.
Select `retained-column/1` at Spec `v0.3.0@27cb29bf13e4a2d58d69fe19c7ebfeb762b014fc`.
- The usual care applies before any upgrade: stop Desk and Runner and back up the Jobs
workspace, including SQLite/WAL, as
[State and backups](../../README.md#state-and-backups) describes. The store schema
is unchanged and there is no migration.

## The installed contract

The installed selection moves from `0.3.0-rc.2@bcac15b7` to Spec
`v0.3.0@27cb29bf13e4a2d58d69fe19c7ebfeb762b014fc`. Schema
`sha256:0cb49f238c78391cb163a65474cc9af962df2bb1024a55c5310c2b784b2f0557` and corpus
`sha256:17b16ff7a9b74fe4cc81eb6f6129a6aabdd9834621d9e756aa2d4c1a3f245863` are
byte-identical to rc.2's. The leaf fixtures, release identity and inventory (file
sha256 `c8e489b2cabd0ee0b794a8b6a817f06f901e338348e32ec23c8c83d7c40dfe58`) come from
the verified `v0.3.0` archive. `/v1/health` `conversionContracts` and
`verify-preparation` report the new tuple. A new public vector,
`vectors/retained-column-selection-v0.3.0.json`, sits beside the rc.2 vector, which is
kept as history.

The selected route admits Runtime's Core `0.3.0` Base evaluator. CI's retained
companion Runtime moves to `v0.39.0` (`12793d2d`). The other Runtime, Gateway and
old-Runner pins do not move.

## Dialect document checks (#86)

CI now holds the Runner's dialect reader to the Runtime `v0.39.0` document tools.
Both sides give the same canonical bytes and digest on 47 shared vectors, and both
refuse 5 malformed documents. The Runtime's document tools are pinned to Spec
`b7cc8906`, not `v0.3.0`. This check therefore shows agreement with that revision
and makes no claim about the dialect page at `v0.3.0`. The Runner keeps its own
reader and calls no Runtime tool at run time; see
[the design note](../design/dialect-document-checks.md). There is no production
change.

## Governed dispatch admission (#147)

Acceptance tests cover the remaining cases of #147 against the real Runtime:
- omitted-dependency substitution;
- withdrawal, enqueue and dispatch orderings;
- a lost admission response;
- worker restart and fencing;
- identity revocation;
- restore from before a withdrawal.

There are 6 cases with 21 subtests. The orderings are scripted interleavings. No case
revealed a missing mechanic, so there is no production change. The fence is described
in the names of the agent's ADR-0025, `{resource, owner, epoch}`, in
[the admission gate design](../design/manual-admission-gate.md). An epoch is accepted
only as a canonical decimal string, and a JSON number is refused. The Runner accepts
epochs up to 2^64−1, a superset of ADR-0025's 18-digit bound.

## Not in this release

The genuine `0.3.0` dialect recording set (#174) needs ordinary Core `0.3.0`
admission first, and that is tracked as #188. Both are in v0.28.0.

## Also

`docs/releasing.md` names the two prerelease forms the development kit's policy
defines. `-rc.N` is a candidate of the complete milestone. `-alpha.N` is a scoped
cut for a named consumer that never graduates.

Review: the pre-release review of #187 and of `v0.25.0..` is on #187 (a Claude Opus
review of a Claude Opus build; not a cross-vendor claim).
Loading