Security hardening: sign releases and publish provenance, not only SHA256SUMS
Free, open-source timeline editor for exact dates at any scale.
Brought to you by:
athanclark
Originally created by: athanclark
Release artifacts have no signatures or provenance; trust rests on the GitHub release alone
contents: write release job is enough to swap the packages and SHA256SUMS together, and downstream channels re-derive their checksums from those assets.--clobber.actions/attest-build-provenance, and no signed apt/dnf repository, so users install .deb/.rpm files by hand with no signature check. The desktop app has no updater (no tauri-plugin-updater; src-tauri/tauri.conf.json has no updater or pubkey), so there is no updater key to steal but also no authenticated update channel. The checksums only detect transport corruption.--clobber and a matching SHA256SUMS, then re-run the release so the Homebrew and AUR jobs publish the new hashes.contents: write, and secrets reach only tag and release runs. Checksums detect mirror corruption.actions/attest-build-provenance (needs id-token: write, attestations: write) for each asset, and sign SHA256SUMS with a key kept outside GitHub, or with Sigstore cosign keyless signing. Pin the pgmp tarball sha256 in the repo for AUR, as Windows and Nix already do. Authenticode-sign the Windows installers and notarize the macOS apps once certificates exist (already noted in the README). Consider tag protection rules for v*.From the security review of 2026-11-06 (commit 6776c44), finding L-16: hardening or information, filed publicly because it describes no way in. The exploitable findings are private security advisories.
🤖 Generated with Claude Code
Ticket changed by: athanclark