The update-pins workflow regenerates the candidate PR from main daily, so
PR-branch-only fixes do not survive. Land the packaging fixes here:
- relax setuptools==83.0.0 pin (nixpkgs ships 80.10.1) in postPatch; no-op on 0.19
- set HERMES_NIX_BUILD=1: upstream setup.py refuses wheel builds without it
- disable slack-bolt 1.27.0 tests: crash at interpreter shutdown in sandbox
- package nemo-relay 0.6.0 from its manylinux abi3 wheel (not in nixpkgs)
The processpool executor tests assert specific signal exit codes that
differ inside the nix build sandbox. Same class of issue as the existing
sanic/cherrypy/pytest-services overrides.
Fixes#2
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Upstream removed minisweagent_path.py in favor of mini_swe_runner.py,
breaking the nightly-package-contents check. Accept either module name
in checks and ensure both are patched into pyproject.toml py-modules.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
litellm on PyPI has been reported as compromised. The upstream
hermes-agent v0.4.0 already dropped it from its dependencies.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
sanic 25.12.0 in nixpkgs has a flaky test_keep_alive_client_timeout
that fails in sandbox builds. Override the python package set to skip
sanic's tests — they're upstream's problem, not ours.
Cascade was: sanic → sanic-testing → slack-bolt → hermes-agent → all checks.
- Patch upstream pyproject.toml to include minisweagent_path in py-modules
- Copy mini-swe-agent/src/minisweagent into package for importability
- Add 3 nix checks: package-contents, cli-commands, doctor
- All binaries tested: hermes, hermes-agent, hermes-acp
- hermes gateway, config, status, claw migrate all verified working