Skip to content

️🛠 - Run the Rust tests in CI with the desktop feature - #209

Merged
maxwellmattryan merged 4 commits into
developfrom
forge/197-run-the-rust-tests-in
Nov 3, 2026
Merged

maxwellmattryan merged 4 commits into
developfrom
forge/197-run-the-rust-tests-in

Conversation

@maxwellmattryan

Copy link
Copy Markdown
Collaborator

Summary

No CI workflow ran cargo test, so a broken USB export could land unnoticed. This adds a test workflow that also runs on fork PRs. It also fixes two problems that made the flagless cargo test fail.

Changes

  • Add .github/workflows/ci.test.yml with two jobs on macos-latest, rust-test-desktop (cargo test --features desktop) and rust-test (cargo test). It triggers on every push and on pull_request, with contents: read and no secrets.
  • src-tauri/build.rs: a featureless desktop-target build now loads only capabilities/default.json. desktop.json references plugins that only the desktop feature pulls in. Desktop-feature and mobile builds are unchanged.
  • src-tauri/src/updater.rs: accepts_release now rejects every update on the Other (dev) channel. This fixes updater::tests::dev_builds_never_update.

Testing

  • forge verify passed: format, typecheck, lint, and cd src-tauri && cargo test.
  • --features desktop has not been run locally. The rust-test-desktop check on this PR is its first run.

Notes

  • Same-repo PRs run the workflow twice, once for push and once for pull_request. This is deliberate, because a skipped check would block merges.
  • Follow-ups for a person:
    • Set commands.test in .forge/config.yml to cd src-tauri && cargo test --features desktop && cargo test.
    • After merge, run the deliberate-failure probe in services/export to confirm rust-test-desktop fails.
    • Then add both checks to merge.requiredChecks.
  • No UI changes.

Decision

Escalated for: protected-paths, acs. Approved by a person (daemon) on 2026-11-02.

  • protected-paths: 1 escalate path no person approved: .github/workflows/ci.test.yml
  • acs: unmapped: AC1, AC2, AC3, AC4, AC5, AC6, AC7, AC8, AC9, AC10, AC11

Closes #197

Bump rustls, rustls-webpki and webpki-root-certs to patched versions.
zip only arrives through tauri-plugin-updater, and 2.14.1 is the first
release on zip 9, so upgrade the plugin. It requires Tauri 2.12, so the
npm api and updater packages move with it to avoid a version mismatch
in `tauri build`.
`tauri build` checks the copy hoisted to the root node_modules. After the
bump to 2.12.4, yarn hoisted the 2.9.1 that older plugins resolved through
^2.8.0, which failed the version mismatch check against the tauri crate.
@maxwellmattryan
maxwellmattryan merged commit 34f4cef into develop Nov 3, 2026
15 checks passed
@maxwellmattryan
maxwellmattryan deleted the forge/197-run-the-rust-tests-in branch November 3, 2026 00:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

️🛠 - Run the Rust tests in CI with the desktop feature

1 participant