Skip to content

fix(release): add Homebrew assets to a release that already exists - #558

Merged
wchwawa merged 1 commit into
mainfrom
fix/homebrew-publish-existing-release
Oct 21, 2026
Merged

wchwawa merged 1 commit into
mainfrom
fix/homebrew-publish-existing-release

Conversation

@wchwawa

@wchwawa wchwawa commented Oct 21, 2026

Copy link
Copy Markdown
Member

Related Issue

No issue: this is a release-tooling chore, which the template exempts. It blocks the Homebrew half of the 0.12.0 release.

Summary

  • scripts/release/README.md says either release workflow may create the GitHub release, and each adds only its own immutable assets. The Homebrew publish step instead assumed that an existing release already held its archive, manifest, and SHA256SUMS.
  • For v0.12.0 the Python SDK workflow created the release first. The Homebrew run then passed both macOS install gates but failed to publish with no assets match the file pattern (run 39564170939), so it skipped the tap update PR.
  • The step now mirrors the Python SDK step: it compares each Homebrew asset the release already has byte for byte, and uploads the ones it lacks.
  • The workflow test now also requires the upload path.

Scope

  • This PR changes one logical boundary only.
  • No unrelated refactor, benchmark, metadata model, Holt layout,
    object-store, agent interface, or docs change is mixed in.
  • The linked issue describes the user-visible problem, design decision, or
    maintenance task this PR resolves (release chore; see above).
  • Any breaking change is intentional and documented (none).
  • No compatibility shim, deprecated alias, or forwarding wrapper was added without a removal condition.

Change Size And Review

  • I checked GitHub's additions plus deletions for this pull request.
  • If the total is more than 5,000 lines, one core maintainer other than the
    current-head pusher approved the exact current head commit. Not applicable: under 5,000 lines.
  • This change is still small enough for a focused review; approval count is
    not being used to justify mixed package or lifecycle boundaries.

Code Contract (Code Changes Only)

  • Not applicable; this is a docs/config-only change.

Claims and Evidence

  • User-facing documentation distinguishes current, experimental, and
    planned capabilities (no documentation change).
  • Security claims do not treat a Workbench root or Agent scope as tenant
    authentication or authorization (no security claims).
  • Performance claims state the topology, comparison boundary, cache state,
    run count, and raw-evidence location (no performance claims).
  • Benchmark-only behavior does not alter product semantics.

Validation

  • Command and result: python3 scripts/release/test_homebrew_source_release.py passes with the new assertion, and the workflow YAML parses.
  • Not run (with reason): actionlint, which is not installed locally. The release path itself runs when the workflow is dispatched again for v0.12.0 after this merges.

Contributor Sign-off

  • Every commit in this PR includes a DCO Signed-off-by trailer.

The release docs say either release workflow may create the GitHub
release and each adds only its own assets. The Homebrew publish step
instead assumed an existing release already held its archive, manifest,
and checksums, and failed with "no assets match the file pattern" when
the Python SDK workflow had created the release first, as it did for
v0.12.0.

Mirror the Python SDK step: compare each Homebrew asset the release
already has byte for byte, and upload the ones it lacks.

Signed-off-by: wchwawa <wch19961116@gmail.com>
@wchwawa
wchwawa requested a review from feichai0017 as a code owner October 21, 2026 08:03
@feichai0017 feichai0017 moved this to In Progress in NoKV Delivery Oct 21, 2026
@wchwawa
wchwawa merged commit 970a5f2 into main Oct 21, 2026
9 checks passed
@wchwawa
wchwawa deleted the fix/homebrew-publish-existing-release branch October 21, 2026 08:12
@github-project-automation github-project-automation Bot moved this from In Progress to Done in NoKV Delivery Oct 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant