v0.3.1 — Security follow-ups & AUR packaging
Patch release: hardening follow-ups from the v0.3.0 security review, a dependency security bump, and automated AUR publishing.
Fixes
- Malformed input now fails loudly at the entry point — gpg-sign requests with an empty
commit_objectare rejected with 400 (nothing to sign, nothing to bind the approval display to), and JWTs without ajtiare rejected instead of silently sharing""as a single-use nonce, which would have voided replay protection after the first redemption. - Notification escaping no longer mangles quotes — bodies escape only the markup-significant
& < >, so commit subjects with apostrophes render correctly in dunst/mako/GNOME Shell; the v0.3.0 anti-spoofing property is unchanged.
Security
- golang.org/x/crypto bumped v0.48.0 → v0.54.0, clearing all 13 open Dependabot advisories — mostly in
ssh/ssh/agent(key/agent constraint enforcement,@revokedbypass, U2F presence-check bypass, several DoS vectors), which the SSH agent proxy uses directly.
Packaging
- Releases now publish to the AUR automatically — the release workflow renders the PKGBUILD template, test-builds it in an Arch container, and pushes to the AUR.
workflow_dispatchcan republish an existing tag after a template fix.