ci: add workspace clippy + test gate workflow #135

Merged
funman300 merged 2 commits from ci/test-workflow into master 2026-07-06 23:29:11 +00:00
Owner

Review finding H1 (2026-07-06 large-scale review): no CI workflow ran cargo test or cargo clippy — the entire §6 gate discipline was local-machine-only, and direct pushes to master (including the web-wasm-rebuild bot's pkg commits) were unguarded.

Adds .gitea/workflows/test.yml: the exact §6 commands on master pushes + PRs, SQLX_OFFLINE against the checked-in .sqlx cache, path-filtered to Rust-relevant files, toolchain/cache setup mirroring web-e2e.yml (dtolnay/rust-toolchain + Swatinem/rust-cache).

Notes:

  • YAML-only change; the tree is otherwise identical to master@15bb136 which passed the full local gates today.
  • First run may surface CI-environment test assumptions (e.g. keyring-less Linux for solitaire_data) — if it does, that's the workflow doing its job; fix-forward.

🤖 Generated with Claude Code

Review finding **H1** (2026-07-06 large-scale review): no CI workflow ran `cargo test` or `cargo clippy` — the entire §6 gate discipline was local-machine-only, and direct pushes to master (including the web-wasm-rebuild bot's pkg commits) were unguarded. Adds `.gitea/workflows/test.yml`: the exact §6 commands on master pushes + PRs, `SQLX_OFFLINE` against the checked-in `.sqlx` cache, path-filtered to Rust-relevant files, toolchain/cache setup mirroring `web-e2e.yml` (dtolnay/rust-toolchain + Swatinem/rust-cache). Notes: - YAML-only change; the tree is otherwise identical to master@15bb136 which passed the full local gates today. - First run may surface CI-environment test assumptions (e.g. keyring-less Linux for solitaire_data) — if it does, that's the workflow doing its job; fix-forward. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
funman300 added 1 commit 2026-07-06 23:21:21 +00:00
ci: add workspace clippy + test gate workflow
Test / test (pull_request) Failing after 1m35s
c9adcaa5e4
Until now no CI workflow ran the test suite or clippy at all — the
android-release, docker-build, web-e2e, web-wasm-rebuild, and
builder-image workflows cover packaging and e2e, but a direct push to
master (including the web-wasm-rebuild bot commit) never executed
cargo test or clippy. The gate discipline in CLAUDE.md §6 existed only
on developer machines.

test.yml runs the exact §6 commands (clippy --workspace --all-targets
-D warnings; cargo test --workspace) on master pushes and PRs, with
SQLX_OFFLINE against the checked-in .sqlx cache, path-filtered so
docs-only merges don't burn CI. Toolchain/cache mirror web-e2e.yml.

Found during the 2026-07-06 large-scale review (finding H1).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
funman300 added 1 commit 2026-07-06 23:28:30 +00:00
ci: pin toolchain to 1.95.0 and install Bevy native deps
Test / test (pull_request) Successful in 27m47s
f6e57b759e
Review feedback on #135: floating 'stable' + -D warnings lets every new
clippy release redden master with new lints — pin 1.95.0 like the
web-wasm-rebuild workflow. And ubuntu-latest lacks the ALSA/udev/X11/
Wayland dev packages the Bevy crates link against; install the standard
Bevy CI set (the project's own builder images have no desktop-Bevy
precedent — android-builder targets the NDK and web-e2e only builds the
server).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
funman300 merged commit d0c1db6c1d into master 2026-07-06 23:29:11 +00:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: funman300/Ferrous-Solitaire#135