Skip to content

Judgment Pack Specification v0.3.0

Latest

Choose a tag to compare

@github-actions github-actions released this 29 Oct 07:53
· 3 commits to main since this release
Immutable release. Only release title and notes can be modified.
27cb29b

v0.3.0

0.3.0, tagged v0.3.0, is the first Core release whose specVersion has no -draft suffix.
The released 0.2.0-draft identifier and its tag keep their names. Two GitHub pre-releases came
before it, and both remain immutable with their mappings and notes:

  • v0.3.0-rc.1,
    published 2026-10-25, carried the renamed manifest maturity (status draft in place of the
    retired research-preview) and the re-pin of the Core schemas, manifests, packs, vectors,
    readers and site routes to exact specVersion 0.3.0 (#231).
  • v0.3.0-rc.2,
    published 2026-10-27, added exactly the selected retained-column/1 leaf, accepted at draft
    maturity through RFC 0029 (#274).

The leaf is part of this release. Packs declare specVersion 0.3.0; neither candidate's
distribution identity is a pack version selector.

Candidate period

v0.3.0-rc.1 was published on 2026-10-25 and v0.3.0-rc.2 on 2026-10-27. Adopter feedback on
the candidates and its disposition are recorded on issue #231 before the tag. No adopter feedback
was received, and the maintainer shortened the candidate period: the tag was cut on 2026-10-29,
four days after v0.3.0-rc.1 and two days after v0.3.0-rc.2, instead of the planned one week
after v0.3.0-rc.2. The disposition on issue #231 records that decision.

Included work

  • Core escalation routes from RFC 0025: an exclusive single target or bounded conditional routes,
    with routed handoff provenance and complete retained reasons.
  • The base and extended document ceiling profiles from RFC 0026, including reader negotiation
    and explicit refusal of an unsupported profile.
  • The non-normative rule-overlap check and its closed JPS-RULES-OVERLAP diagnostic.
  • RFC 0020's bulk amendment: contributing-rule output records, disposition summaries, reproducible
    seeded samples, drift comparison, and the closed workflow schema and hand-written fixture that
    verify those records.
  • RFC 0020's later-sibling rule, limited to instances admitted for acquisition so an admission
    failure retains its own finding.
  • Dialect data-quality conversions, reconciliation, typed research-result states, lineage,
    versioned source profiles, resolved settings, and byte-retaining replay contracts.
  • RFC 0022's alignment with the landed composition decisions for subgraph bounds, routed handoff
    provenance, dialect-owned remapping, and cross-installation packaging.
  • The selected retained-column/1 leaf from RFC 0029: its companion
    selected retained columns, its versioned schema and corpus, and the
    two offline readers, at draft maturity.

The selected retained-column leaf

This release is the leaf's normative support distribution. The support tuple is contract
retained-column/1, distribution version 0.3.0, this release's source commit (supplied by the
generated release-identity.json in each bundle), and the schema and corpus digests below. It is
independent of the pack specVersion, and declaring 0.3.0 does not select the leaf. A leaf
support claim is made against a v0.3.0 installation. v0.3.0-rc.2 was the candidate
distribution of the same leaf and remains published; its installations keep their own readers and
0.3.0-rc.2 tuple, and this release's readers name 0.3.0 only.

The schema, the corpus and every other leaf file keep the bytes v0.3.0-rc.2 published, so the
schema and corpus digests are unchanged. Beyond the two readers' installation identity, the final
changed only these texts from v0.3.0-rc.2: the companion's status, support-tuple, inventory and
support-version sentences, the Core and Dialect sentences on the leaf's adoption, and a dated note
in RFC 0029 naming v0.3.0 as the accepted route's final distribution. The final inventory
releases/v0.3.0.retained-column.json records those bytes, and the release builder refuses a final
whose inventory differs from the candidate's anywhere else. The frozen corpus files keep their
v0.3.0-rc.2 labels: they name the candidate distribution whose bytes this release publishes
unchanged. The leaf's support claim is limited to its named scope: it is no general Core, stable
interoperability or general preparation-verifier conformance claim.

Versioning and maturity

Pre-1.0.0 Core releases may be incompatible when their notes record the change and give a
specVersion migration note. Conformance manifest status is now the independent maturity ladder
draft, candidate, and release; 0.3.0 remains draft. The release maturity is reserved for
the 1.0.0 standards claim after the governance acceptance evidence is met and recorded. Production
use does not by itself establish that claim.

The Policy companion remains on its independent policy-v1.0.0-draft.N route until that format's
first release and is not renamed by the Core scheme change. This release leaves it unchanged: the
Core bundles exclude its schemas and corpus, and RFC 0023 stays Accepted at draft maturity with
format 1.0.0 pinned (#211).

RFC 0024 is not part of this release; it remains a Draft.

Migration note

Packs targeting this release declare exact specVersion 0.3.0. Reader and writer compatibility
is not inferred from a shared 0.x prefix: historical readers reject this selector, and 0.3.0
profiles and routed escalations require corresponding reader support. Writers targeting
0.2.0-draft must obey its historical schema, which admits neither profile nor escalation routes.
Multiple-version readers dispatch on the complete selector; they do not apply current rules to old
selectors or rewrite old documents on read.

Carrier admission is tighter: Unicode escapes in the UTF-16 surrogate range must form well-formed
surrogate pairs.
For example, a lone \uD800 title escape accepted by the published 0.2.0-draft carrier and
structural schema is malformed in 0.3.0. A version-only edit cannot repair those bytes. The author
must provide the intended scalar or valid surrogate pair; automatic replacement would lose meaning.

Selector-only migration is sufficient only for documents that already meet the current carrier,
structural and semantic requirements. Revalidate profile/ceiling support and escalation shapes;
otherwise review and edit the content deliberately. No general automatic migration or unchanged
conformance-verdict promise is made. Re-declaration also selects the exact new evaluator semantics
and corpus, not inherited evaluator conformance. The Runtime must vendor the exact resulting
artifacts beside historical releases and retain exact-selector dispatch; it must not overwrite the
existing 0.2.0-draft artifacts.

Preserved historical schema identities

Historical resources come from immutable source tags, not mutable pre-repin main:
v0.1.0-draft is commit 80958f50c851e9809cb8036a23622391cf437c99, and v0.2.0-draft is
commit 0f30fd7b2c3fd7792249c8f3c5335b9e697a2c7a. The two 0.1.0-draft resources retain the
already documented neutral-domain $id substitution and no other byte change, as recorded in the
0.2.0-draft preservation note.
The three 0.2.0-draft resources are byte-identical to their original tagged forms, including
research-preview maturity and the original structural rules. Their historical identities remain
published; new maturity values and profile/routes rules apply only to the current resources.

Preserved file Original tagged SHA-256 Preserved SHA-256
schema/judgment-pack-core-0.1.0-draft.schema.json 81f6986edc8d2bbf6f49c28a9bbec4f9054f7c72cab5a5028130e01d2e7274d8 c65c559db33d19d2f327858635266fca7fcc049fb75083a7a8d47517e27224fc
schema/conformance-manifest-0.1.0-draft.schema.json fa3f55f53712253551d6374ff3f06621e936b56c04dabd399703bbb05285c740 f073bde8f6f2189edd0334c81c03fecfacf8fae2bd49305a788c75550dcbc2c5
schema/judgment-pack-core-0.2.0-draft.schema.json 847910902fa202d9fb3a97062071b532f11649031c9dad32490bf191dca5b3b5 847910902fa202d9fb3a97062071b532f11649031c9dad32490bf191dca5b3b5
schema/conformance-manifest-0.2.0-draft.schema.json e531a1a89f188dc12ff682263fdd6a0022bcfb6977dfeb642dd05fcbec5e0723 e531a1a89f188dc12ff682263fdd6a0022bcfb6977dfeb642dd05fcbec5e0723
schema/conformance-evaluation-manifest-0.2.0-draft.schema.json 142c30a33c7272cff5e85522b95d36316d2e195565bc5bef6c04a999e0da51f6 142c30a33c7272cff5e85522b95d36316d2e195565bc5bef6c04a999e0da51f6

The evaluation manifest schema remains at
https://judgmentpack.org/schema/0.2.0-draft/conformance/evaluation/manifest.schema.json;
the historical Core and document-manifest $id paths also remain served. The Core bundles carry
all five preserved resources. Separately pinned Policy consumer bytes and format digests are unchanged.

What this release pins

  • Format: exact specVersion 0.3.0, the Core schema's specVersion constant and the selector
    both corpus manifests name.
  • Frozen corpora: the document corpus (conformance/manifest.json) and the evaluation corpus
    (conformance/evaluation/manifest.json), both suiteVersion 0.3.0 at maturity draft. A final
    exact-version conformance claim names these corpora and requires every applicable row to pass.
  • Core schema $id: https://judgmentpack.org/schema/0.3.0/judgment-pack-core.schema.json.
  • Retained-column schema: schema/retained-column/1/contract.schema.json, $id
    https://judgmentpack.org/schema/retained-column/1/contract.schema.json, SHA-256
    sha256:0cb49f238c78391cb163a65474cc9af962df2bb1024a55c5310c2b784b2f0557.
  • Retained-column corpus: conformance/retained-column/1/cases.json, SHA-256
    sha256:17b16ff7a9b74fe4cc81eb6f6129a6aabdd9834621d9e756aa2d4c1a3f245863.
  • Retained-column support: contract retained-column/1, support version 0.3.0, inventory
    releases/v0.3.0.retained-column.json.

Checks run for this release

The release reused main's repository-conformance evidence for this exact commit through the
release evidence gate (scripts/dev/release_evidence.py, configured by .github/ci-evidence.json)
instead of running the repository suite again. The milestone, tag, artifact-pin and bundle checks
ran again at the tag. The reused run's id and attempt are in the gate's decision record, which the
release run keeps as its release-evidence-<attempt> artifact (web/DEPLOYMENT.md, "Release
evidence").

The candidates were reviewed on their pull requests: v0.3.0-rc.1 on #246, #248 and #258, with
its whole-release review recorded on issue #259 and its recovery reviews on issue #261, and
v0.3.0-rc.2 on #274, where same-vendor review under the authorized exception is identified as
such, as the v0.3.0-rc.2 notes record.

Results against this release name its tag and commit. Conformance never proves truth,
authorization, safety or operational fitness.