Skip to content

fix: pin Rust toolchain, cache tarpaulin, check fuzz targets, guard s…#1285

Open
Jayy4rl wants to merge 1 commit into
LabsCrypt:mainfrom
Jayy4rl:fix/ci-fuzz-tarpaulin-toolchain-soroban-status
Open

fix: pin Rust toolchain, cache tarpaulin, check fuzz targets, guard s…#1285
Jayy4rl wants to merge 1 commit into
LabsCrypt:mainfrom
Jayy4rl:fix/ci-fuzz-tarpaulin-toolchain-soroban-status

Conversation

@Jayy4rl

@Jayy4rl Jayy4rl commented Jun 28, 2026

Copy link
Copy Markdown
Contributor

…endTransaction status

Closes #1159 — add contracts/rust-toolchain.toml pinning channel to 1.85.0 (targets + components moved from the floating CI step so WASM hashes are reproducible across builds).

Closes #1160 — replace from-source cargo install cargo-tarpaulin with taiki-e/install-action (pre-built binary, no compile step) and upload cobertura.xml as a CI artifact instead of discarding it.

Closes #1161 — add cargo check in contracts/fuzz so all five fuzz targets are compiled on every push/PR; also extend Swatinem/rust-cache to cover the fuzz workspace so the check stays fast.

Closes #1164 — inspect sendResult.status immediately after sendTransaction; return early with the status (and log the errorResult XDR) when the network returns ERROR or TRY_AGAIN_LATER instead of polling a doomed hash for ~30 s.

Pull Request Checklist

Please ensure your PR follows these steps, mirroring our CONTRIBUTING.md guidelines.

  • I have read the CONTRIBUTING.md document.
  • My code follows the code style of this project.
  • I have added tests to cover my changes.
  • All new and existing tests passed.
  • I have updated the documentation accordingly.
  • I have verified the changes locally.

…endTransaction status

Closes LabsCrypt#1159 — add contracts/rust-toolchain.toml pinning channel to 1.85.0
(targets + components moved from the floating CI step so WASM hashes are
reproducible across builds).

Closes LabsCrypt#1160 — replace from-source `cargo install cargo-tarpaulin` with
taiki-e/install-action (pre-built binary, no compile step) and upload
cobertura.xml as a CI artifact instead of discarding it.

Closes LabsCrypt#1161 — add `cargo check` in contracts/fuzz so all five fuzz
targets are compiled on every push/PR; also extend Swatinem/rust-cache
to cover the fuzz workspace so the check stays fast.

Closes LabsCrypt#1164 — inspect sendResult.status immediately after sendTransaction;
return early with the status (and log the errorResult XDR) when the network
returns ERROR or TRY_AGAIN_LATER instead of polling a doomed hash for ~30 s.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment