Two issues caused CI failures:
1. golangci-lint v2.10.1 requires Go >= 1.25.0, but the project uses
Go 1.24.4 (from go.mod). The previous `go install` approach tried
to compile golangci-lint from source, which fails due to the Go
version mismatch. Fix: download the pre-built binary via the
official install script, pinned to the same commit SHA (5d1e709)
for security.
2. TestBackupAndRestore fails because vacuumDatabase() shells out to
the `sqlite3` CLI binary, which is not installed in the CI runner
image. Fix: install sqlite3 via apt-get in CI.