Validate Rust release matrix across Linux and macOS - #4
Conversation
Separate fast CI builds from release matrix validation so musl and macOS artifacts are produced from locked dependencies with reproducible metadata. Constraint: GitHub Actions only sees committed workflow files on a pushed ref Rejected: Trigger local-only validation | would not exercise hosted runner matrix or musl release path Confidence: medium Scope-risk: moderate Tested: YAML parse and local cargo check -p rust-hft-workspace --locked before branch push Not-tested: Hosted GitHub Actions matrix before this commit
The release matrix resolves tokio-tungstenite 0.26, whose Message payloads use Bytes/Utf8Bytes and whose WebSocketConfig is non-exhaustive. Updating the adapter lets the build matrix exercise release packaging instead of failing at API drift. Constraint: Current lockfile resolves tungstenite 0.26 through workspace dependencies Rejected: Pin older tungstenite API | would hide dependency drift instead of validating current lockfile Confidence: medium Scope-risk: narrow Tested: cargo check -p hft-integration --locked Not-tested: Full hosted release matrix before rerun
The release matrix builds default live features, which include Bitget data and execution adapters. simd-json 0.14 no longer exports ValueAsContainer, and tungstenite 0.26 uses Utf8Bytes plus request traits that do not accept Url directly in this path. Constraint: Release workflow builds with Cargo.lock and default hft-live features Rejected: Drop Bitget from release packages | would avoid validating the production default adapter Confidence: medium Scope-risk: narrow Tested: cargo check -p hft-data-adapter-bitget --features json-simd --locked Tested: cargo check -p hft-execution-adapter-bitget --locked Not-tested: Full hosted release matrix before rerun
The release matrix exposed that the current clickhouse crate returns inserters asynchronously, so replay must await insert creation before writing rows. Constraint: GitHub release matrix failed on all active release targets at hft-replay. Confidence: high Scope-risk: narrow Tested: cargo check -p hft-replay --locked
The release matrix reached package creation after successful app builds, but the package step copied README.md from rust_hft where no root README exists. Use the existing Rust docs README for release bundles. Constraint: Release workflow runs package steps with working-directory rust_hft. Confidence: high Scope-risk: narrow Tested: ruby YAML parse for release workflows Tested: git diff --check
|
Warning Rate limit exceeded
To keep reviews running without waiting, you can enable usage-based add-on for your organization. This allows additional reviews beyond the hourly cap. Account admins can enable it under billing. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (16)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Summary
Verification
Notes