Skip to content

Gate v1 publication on final-RC integration and built-artifact verification #5

Open

Description

@BenWestgate

V1 publication must qualify the exact wheel/sdist bytes that are later published.

Required release gate:

  1. freeze the source commit and require the normal supported Python/OS checks;
  2. run the real Bitcoin Core v32 integration/fixture checks on the release candidate;
  3. run optimized/static/differential qualification;
  4. build wheel and sdist once;
  5. install those exact artifacts into clean qualification environments;
  6. record commit, package/tag, dependency/Core versions and SHA256/provenance;
  7. publish only the same qualified bytes.

Implemented in focused PR #52. The refreshed head 9cf9f44 is mergeable, all review threads are resolved, exact-head Python-package run 645 and Bitcoin Core wallet-fixture run 31 succeeded, and it has a current-head Codex release-gate ACK. The workflow stages qualified artifacts on a draft GitHub release, rechecks hashes/provenance immediately before publication, publishes those same bytes to PyPI, then makes the GitHub release public.

The tag-push publication path cannot execute from the PR itself and still requires the normal release-environment approval on the first real tag. As of 2026-10-03, the official Bitcoin Core 32.0 binary index still publishes only test.rc2/, so #52 correctly remains pinned to the available hash-verified rc2 binary even though a signed rc3 source tag exists.

Keep this issue open until #52 is human-integrated and the final frozen candidate runs the actual release-qualification path.

Activity

  1. added
    enhancementNew feature or request
    gate: adversarial reviewResolve, merge, or explicitly defer before the next full adversarial review.
    on Sep 21, 2026
  2. BenWestgate commented on Sep 25, 2026

    @BenWestgate
    OwnerAuthor

    Bitcoin Core release monitor (2026-09-25): 32.0 is still in RC; the official bitcoin-core-32.0/ index currently contains only test.rc2/, and the public download page lists 31.1 as latest stable. Release qualification should therefore treat PR #51's 32.0rc2 run as pre-final evidence, not the final v1 Core qualification. When a newer RC/final appears, repin and rerun before publication.

    When stable Bitcoin Core 32.0 is released, also clean up BenWestgate/Bails#244: remove the now-dead 32.0rc2 fallback (VER=32.0rc2 / bitcoin-core-32.0/test.rc2) after confirming Bails follows the normal stable-release path.

  3. BenWestgate commented on Sep 27, 2026

    @BenWestgate
    OwnerAuthor

    Bitcoin Core release monitor refresh (2026-09-26): upstream bitcoin/bitcoin still exposes v32.0rc1 and v32.0rc2 under the v32.0 tag namespace, with no final v32.0 tag. Keep #51/#52 pinned to rc2 as pre-final evidence; repin and rerun both the fixture gate and exact-artifact qualification if rc3 or final appears before publication.

  4. BenWestgate commented on Sep 28, 2026

    @BenWestgate
    OwnerAuthor

    Bitcoin Core release monitor refresh (2026-09-28): upstream still has v32.0rc2; refs/tags/v32.0rc3 and the final v32.0 release are absent. Keep #51/#52 pinned to rc2 as pre-final evidence only. If rc3 or final appears before publication, repin the pinned archive/hash and rerun both the real-Core fixture gate and exact-artifact release qualification.

  5. BenWestgate commented on Oct 1, 2026

    @BenWestgate
    OwnerAuthor

    Bitcoin Core release monitor refresh (2026-10-01): upstream bitcoin/bitcoin still exposes only v32.0rc1 and v32.0rc2 under the v32 tag prefix; there is no v32.0rc3 or final v32.0 tag. Keep #51/#52 pinned to rc2 as pre-final evidence only. If a newer signed RC or final appears before publication, repin the archive/hash and rerun both the real-Core fixture gate and exact-artifact release qualification.

  6. added a commit that references this issue on Oct 2, 2026
    02bfc6a
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

    area: packaging/releasePackaging, artifacts, compatibility, and release qualification.enhancementNew feature or requestgate: adversarial reviewResolve, merge, or explicitly defer before the next full adversarial review.

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions