Skip to content

Publish the conventions release record and SHA256SUMS for blueprint, component and core #166

Closed

Description

@justinmerrell

Context

ADR 0037 made every new kind-family archive carry the engineering-conventions release record as release.json, plus a
SHA256SUMS asset. listing 1.0.1 has both. blueprint 1.7.1 (cut before the adoption PR #164) and component 1.6.0 do
not: their release.json is the older record, and no SHA256SUMS is published.

platform-api (https://github.com/musher-dev/platform-api/pull/373) vendors both releases unchanged under
platform-api/contracts/vendor/specifications/{blueprint,component}-release/. Because the record is missing, it waives
DEPS-05 and DEPS-06 for those copies (.repo/conventions.toml, expiring 2026-12-30) and verifies their archives
against GitHub's recorded asset digest instead of SHA256SUMS.

Core delivers no interface, so under ADR 0037 its archive carries no conventions record. Its release has no
SHA256SUMS either, so consumers that run the core conformance corpus from core-vX.Y.Z.tar.gz can only check it
against GitHub's asset digest.

What to change

  • Kind families (S1). Cut the next patch of blueprint and component through the release.yml that
    followed ADR 0037. Each then publishes the conventions record, with specification.json beside it, and
    SHA256SUMS. A prose-only patch is enough.
  • Core (S2). Have the core release path write SHA256SUMS over core-vX.Y.Z.tar.gz and attach it, the same
    way the kind families do. Say so in docs/publication.md § Release assets.

Acceptance criteria

  • blueprint/v1.7.2 and component/v1.6.1 (or later) each carry a release.json that validates against
    engineering-conventions' checks/schemas/release-record.schema.json, and a SHA256SUMS asset that lists the
    archive and the bundle.
  • The next core release has SHA256SUMS. platform-api's scripts/deps/specifications.py then verifies the core
    archive through it automatically.
  • platform-api's task deps:sync moves both kind-family pins, and its DEPS-05 and DEPS-06 waivers are removed.

Order and dependencies


Filed from platform-api#373 by Claude Code on the maintainer's behalf.

Activity

  1. justinmerrell commented on Oct 4, 2026

    @justinmerrell
    ContributorAuthor

    Done. All three releases went through the post-ADR 0037 release.yml, and each is published and immutable.

    Release Assets requires
    core/v1.1.1 core-v1.1.1.tar.gz, SHA256SUMS
    component/v1.6.1 component.schema.json, component-v1.6.1.tar.gz, SHA256SUMS core 1.1.1
    blueprint/v1.7.2 blueprint.schema.json, blueprint-v1.7.2.tar.gz, SHA256SUMS component 1.6.1, core 1.1.1

    Verified on the downloaded assets:

    • sha256sum --check SHA256SUMS passes for all three releases. Each kind family's SHA256SUMS lists both its archive and its bundle.
    • gh attestation verify passes for every listed asset.
    • The component and blueprint archives each carry release.json and specification.json. Both release.json files validate against engineering-conventions v0.7.0's checks/schemas/release-record.schema.json.

    S2 (core): no code change was needed. release.yml already wrote SHA256SUMS for core after #164, and Publication → Release assets already listed it. core 1.1.0 simply predated #164.

    Prose patches: #170, #171 and #172 are genuine corrections to statements that later rules had made stale. None changes what validates.

    Left for platform-api: run task deps:sync to move both kind-family pins, then drop the DEPS-05 and DEPS-06 waivers (they expire 2026-12-30).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions