Skip to content

release: registry integrity propagation can outlive verification retries #81

Description

@steipete

Problem

The v0.5.1 trusted-publishing run successfully published the workflow-validated tarball with provenance, but publish-or-verify.mjs exhausted all 13 registry retries because npm view transiently reported a different dist.integrity. The GitHub Release job was skipped even though publication was good.

This is the residual propagation failure after #73/#74 fixed local re-packing and extended the retry window.

Forensic proof

  • Failed run: https://github.com/openclaw/fs-safe/actions/runs/30729002894
  • Workflow artifact and current registry tarball are byte-for-byte identical (cmp clean), both 5,609,950 bytes.
  • Both have SHA-1 f4dabf3ed706bf08ea7a282750baa4ebf1707b60 and integrity sha512-WcaG3NUMd4q+puq/I55zxwc0+OjNVhqxSprKzpS17c2cDd9bYc8c2DrYrs6Io3mmNXNa90re/UWSwVkX4I6PkA==.
  • Extracted inventories match: 417 files, 17,092,354 bytes, with identical paths, modes, sizes, and per-file hashes.
  • The publish log reported the same SHA-1 and integrity, then observed stale/different registry metadata until the retry budget expired. Current npm view reports the correct integrity and provenance.

Expected

Keep strict artifact identity, but avoid a false-negative when packument metadata is temporarily inconsistent after a successful trusted publish. On an integrity mismatch, consider downloading the versioned registry tarball and verifying its SHA-512 directly before failing, and log the observed integrity to make propagation incidents diagnosable.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2Normal priority bug or improvement with limited blast radius.clawsweeper:needs-maintainer-reviewClawSweeper marked this issue as needing maintainer review before automation.clawsweeper:needs-product-decisionClawSweeper marked this issue as needing a product or behavior decision.clawsweeper:needs-security-reviewClawSweeper marked this issue as needing security-sensitive review.clawsweeper:no-new-fix-prClawSweeper does not recommend queueing a new automated fix PR for this issue.clawsweeper:source-reproClawSweeper found a high-confidence source-level issue reproduction.impact:otherThis issue has meaningful maintainer-visible impact outside the owned taxonomy.issue-rating: 🦞 diamond lobsterVery strong issue quality with high-confidence source-level or clear reproduction.

    Type

    No type

    Fields

    Priority

    None yet

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions