Skip to content

chore(release): Homebrew formula -> v1.3.4 - #265

Merged
dshakes merged 1 commit into
mainfrom
release/formula-v1.3.4
Aug 18, 2026
Merged

dshakes merged 1 commit into
mainfrom
release/formula-v1.3.4

Conversation

@dshakes

@dshakes dshakes commented Aug 18, 2026

Copy link
Copy Markdown
Owner

Automated formula bump for v1.3.4 (url + tarball sha256 f2fcbc672562ab315b266687d1f10f5c14a353c9e678cd85b1be154506323142). Auto-merges once checks pass, so brew install never lags a release.

@dshakes
dshakes enabled auto-merge (squash) August 18, 2026 00:15
@dshakes dshakes added the agent:reviewed-clean Reviewer found no Blocking issues this round label Aug 18, 2026
@github-actions github-actions Bot added the domain:infra Touches infra / CI / deploy / migrations label Aug 18, 2026
@dshakes
dshakes merged commit 4e84045 into main Aug 18, 2026
21 checks passed
@github-actions

Copy link
Copy Markdown
Contributor

🔎 Codex cross-audit (agent:audit)

No blocking findings.

The PR only bumps Formula/onpar.rb from v1.3.3 to v1.3.4 and replaces the checksum. The target tag exists locally and points at origin/main; pyproject.toml at that tag reports version 1.3.4; the formula still parses with ruby -c.

Residual risk: I could not independently download GitHub’s generated tarball to verify the pinned sha256 because this environment cannot resolve github.com. Local git archive does not match the pinned hash, but that is not conclusive for GitHub-generated archives.

@github-actions

Copy link
Copy Markdown
Contributor

🔷 Gemini cross-audit (agent:audit-gemini)

I have audited the unified diff in pr-diff.patch against the base repository context and identified one blocking test regression and one critical installation risk.


🛑 1. Blocking Issue: Homebrew Test Suite Regression (Exit Status Mismatch)

Location: Formula/onpar.rb:27
Impact: brew test onpar will fail, preventing successful installation or validation of the formula.

The Conflict

  • In the Formula's test block:

    # An unknown model is a clean error, not a traceback.
    assert_match(/error/, shell_output("#{bin}/onpar fit --explain nope 2>&1", 2))

    The formula asserts that calling onpar fit --explain nope with an unknown model must exit with status 2.

  • In the actual CLI implementation (src/onpar/cli.py):
    A recent architecture change refactored exception handling to distinguish between malformed user invocations (status 2) and runtime/cooperation errors (status 1):

    except (KeyError, ValueError, OSError, RuntimeError) as e:
        print(f"error: {e}", file=sys.stderr)
        # 1, not 2. `2` is argparse's *usage error* and it used to be returned
        # for everything nonzero...
        return 1

    Since catalog.get("nope") raises a KeyError (an ordinary runtime error, not a command line syntax/usage error), the command now exits with status 1.

Remedy

The test expectation in Formula/onpar.rb must be updated to match the new CLI specification:

  assert_match(/error/, shell_output("#{bin}/onpar fit --explain nope 2>&1", 1))

⚠️ 2. High Risk: Sandboxed PEP-517 Build Failure (Missing Build-Backend Resource)

Location: Formula/onpar.rb & pyproject.toml
Impact: brew install onpar is likely to fail in standard sandboxed (offline) environments.

The Conflict

  • pyproject.toml specifies hatchling as its build-system backend:
    [build-system]
    requires = ["hatchling"]
    build-backend = "hatchling.build"
  • Under Homebrew, builds are run in an offline sandbox. When virtualenv_install_with_resources executes pip install, pip attempts to set up PEP 517 build isolation and pull hatchling from PyPI.
  • Because hatchling is not listed as a resource in the formula, pip will fail to resolve the build backend, stalling the installation.

Remedy

Declare hatchling and its direct dependencies as resource blocks inside the Homebrew formula so they are cached and made available locally in the build sandbox.


Summary Checklist for Release

  1. Update Formula/onpar.rb test expectations: Change exit status check from 2 to 1 for unknown models.
  2. Add build resources (optional but recommended): Add hatchling as a Homebrew formula resource to support sandboxed offline builds.

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

Labels

agent:reviewed-clean Reviewer found no Blocking issues this round domain:infra Touches infra / CI / deploy / migrations

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant