Skip to content

fix(release): publish raw binaries on release, wire devshell hook - #48

Merged
ryanleecode merged 4 commits into
masterfrom
fix/release-tarball-path
Aug 23, 2026
Merged

fix(release): publish raw binaries on release, wire devshell hook#48
ryanleecode merged 4 commits into
masterfrom
fix/release-tarball-path

Conversation

@systemfsoftware-maker

@systemfsoftware-maker systemfsoftware-maker commented Aug 23, 2026

Copy link
Copy Markdown
Collaborator

Summary

Unpacks release tarballs concurrently to attach standalone binary assets to GitHub releases, and adds devshell hook dogfooding with fallback.

  • Raw binary release assets: create-github-release.ts now unpacks downloaded platform tarballs in parallel via tar -xzf and attaches the target-named executable binaries (comment-checker-<target>[.exe]) directly to the GitHub release alongside the release notes.
  • Hook configuration & PATH fallback: Adds .claude/settings.json PostToolUse hook configuration for Write|Edit|MultiEdit that checks for ambient comment-checker and falls back to direnv exec in Nix environments.
  • Nix devshell dogfooding: Updates flake.nix and .envrc to build and link comment-checker into the local devshell for dogfooding.

Validation

  • Full one-shot gate: cargo fmt --check && cargo clippy --all-targets -- -D warnings && cargo test --all-targets (92 passed across 7 suites).

Tarballs contain a single file; downloading the binary directly is
more convenient. Resolve tarballs concurrently, unpack each to
release-assets/binaries/comment-checker-<target>[.exe] with Promise.all,
and attach the binaries to the GitHub release instead of the archives.
flake.nix now fetches the v0.1.5 binaries from GitHub releases per
system (SRI pinned) and wraps the binary with bwrap --unshare-net,
--die-with-parent, ro-bind /nix/store /etc /usr (/lib,/lib64 probed).
devShell exposes the wrapped `comment-checker` so `nix develop` is the
install. .claude/settings.json wires PostToolUse Write|Edit|MultiEdit
to that binary. Verified: `nix build .#comment-checker` and
`nix develop -c comment-checker` flags `# increment counter` (exit 2)
and passes a clean file (exit 0) inside the sandbox.
direnv exec . now provides the bubblewrapped v0.1.5 binary without
manual nix develop. hook in .claude/settings.json resolves.
@systemfsoftware-maker systemfsoftware-maker changed the title fix(release): support tarball packaging, binary release assets, and hook integration fix(release): publish raw binaries on release, wire devshell hook Aug 23, 2026
@ryanleecode
ryanleecode merged commit 403d2d0 into master Aug 23, 2026
11 checks passed
@ryanleecode
ryanleecode deleted the fix/release-tarball-path branch August 23, 2026 16:49
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.

2 participants