RFC-0914 Planned: Stoolap Partial Indexes #473
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Rust CI | |
| on: | |
| push: | |
| branches: [next, feat/**, agent/**, research/**, hotfix/**] | |
| pull_request: | |
| branches: [main, next] | |
| merge_group: | |
| env: | |
| CARGO_TERM_COLOR: always | |
| RUST_BACKTRACE: 1 | |
| jobs: | |
| # Multi-platform test matrix | |
| test: | |
| name: Test (${{ matrix.os }}-${{ matrix.rust }}) | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-latest, macos-latest, windows-latest] | |
| rust: [stable, beta, nightly] | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: dtolnay/rust-toolchain@stable | |
| with: | |
| toolchain: ${{ matrix.rust }} | |
| components: rustfmt, clippy | |
| - uses: swatinem/rust-cache@v2 | |
| with: | |
| cache-on-failure: true | |
| - name: Build determin | |
| working-directory: determin | |
| run: cargo build --release --verbose | |
| - name: Build CLI | |
| working-directory: determin/cli | |
| run: cargo build --release --verbose | |
| - name: Run tests (release mode per RFC-0104) | |
| working-directory: determin | |
| run: cargo test --release --verbose | |
| - name: Format check | |
| working-directory: determin | |
| run: cargo fmt --all -- --check | |
| - name: Clippy | |
| working-directory: determin | |
| run: cargo clippy --all-targets --all-features -- -D warnings | |
| # Python cross-language verifier | |
| verifier: | |
| name: Cross-Language Verifier | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: dtolnay/rust-toolchain@stable | |
| - uses: actions/setup-python@v6 | |
| with: | |
| python-version: '3.11' | |
| - name: Build CLI | |
| working-directory: determin/cli | |
| run: cargo build --release | |
| - name: Run verifier | |
| working-directory: determin/verify | |
| run: | | |
| pip install -q -r requirements.txt 2>/dev/null || true | |
| python3 verifier.py --count 1000 | |
| - name: Run production verifier (10,500 tests) | |
| working-directory: determin/verify | |
| run: python3 verify_vectors.py | |
| # Check MSRV (Minimum Supported Rust Version) | |
| msrv: | |
| name: Check MSRV | |
| runs-on: ubuntu-latest | |
| if: github.event_name == 'pull_request' || github.event_name == 'merge_group' | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: dtolnay/rust-toolchain@master | |
| with: | |
| toolchain: "1.93.0" # MSRV | |
| - uses: swatinem/rust-cache@v2 | |
| - name: Check with MSRV | |
| working-directory: determin | |
| run: cargo check --verbose | |
| # Clippy on stable | |
| clippy: | |
| name: Clippy (stable) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: dtolnay/rust-toolchain@stable | |
| with: | |
| components: clippy | |
| - uses: swatinem/rust-cache@v2 | |
| - name: Clippy | |
| working-directory: determin | |
| run: cargo clippy --all-targets --all-features -- -D warnings |