chore(ci): add cargo build cache and correct CI docs (PSA-34) #3

Merged
nrupard merged 1 commit from chore/psa-34-ci-hardening into main 2026-06-02 19:15:17 +02:00
Owner

What

Closes the remaining gaps from PSA-34 ([dunite] Add missing CI workflow and require it on PRs).

Investigation found the issue premise is partly stale: .forgejo/workflows/checks.yml already exists and has run successfully on every push and PR (including PR #1 and PR #2). What was actually missing:

  • Cargo build cache: the checks workflow now uses Swatinem/rust-cache@v2 with cache-on-failure: true, matching the bunyip check workflow convention, so the cargo registry and build artifacts are reused between runs.
  • Accurate CLAUDE.md: the CI section referenced a nonexistent ci.yml and abbreviated the commands. It now documents the real file (checks.yml), the exact commands, SQLX_OFFLINE=true, the create-release workflow, and the branch-protection requirement.

Not in this PR

  • Branch protection (require "fmt + clippy + test" to pass before merge) is a Forgejo repo setting, not a file in the repo. It needs to be enabled in repo settings or via the API; tracked as the last open item on PSA-34.

Verification

  • No Rust code changed; only workflow YAML and documentation.
  • The modified workflow runs on this PR itself, which exercises the new cache step.
## What Closes the remaining gaps from PSA-34 ([dunite] Add missing CI workflow and require it on PRs). Investigation found the issue premise is partly stale: `.forgejo/workflows/checks.yml` already exists and has run successfully on every push and PR (including PR #1 and PR #2). What was actually missing: - **Cargo build cache**: the checks workflow now uses `Swatinem/rust-cache@v2` with `cache-on-failure: true`, matching the bunyip check workflow convention, so the cargo registry and build artifacts are reused between runs. - **Accurate CLAUDE.md**: the CI section referenced a nonexistent `ci.yml` and abbreviated the commands. It now documents the real file (`checks.yml`), the exact commands, `SQLX_OFFLINE=true`, the create-release workflow, and the branch-protection requirement. ## Not in this PR - **Branch protection** (require "fmt + clippy + test" to pass before merge) is a Forgejo repo setting, not a file in the repo. It needs to be enabled in repo settings or via the API; tracked as the last open item on PSA-34. ## Verification - No Rust code changed; only workflow YAML and documentation. - The modified workflow runs on this PR itself, which exercises the new cache step.
chore(ci): add cargo build cache and correct CLAUDE.md CI docs (PSA-34)
All checks were successful
Checks / fmt + clippy + test (pull_request) Successful in 30s
create-release / create-release (pull_request) Has been skipped
eee684ce76
- Add Swatinem/rust-cache to the checks workflow so the cargo registry and build artifacts are reused between runs, matching the bunyip check workflow convention.
- Fix the CLAUDE.md CI section: the workflow file is .forgejo/workflows/checks.yml (not ci.yml), document the exact commands, the SQLX_OFFLINE setting, the create-release workflow, and the branch-protection requirement that the "fmt + clippy + test" status check must pass before merging to main.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
nrupard deleted branch chore/psa-34-ci-hardening 2026-06-02 19:15:17 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
psa-systems/dunite!3
No description provided.