chore: development v0.3.12 - comprehensive testing complete [auto-com… #42
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
| # UFFS Tier 1 Nightly CI | |
| # Copyright 2025-2026 Robert Nio | |
| # SPDX-License-Identifier: MIT OR Apache-2.0 | |
| name: 🧪 UFFS Tier 1 Nightly CI | |
| on: | |
| push: | |
| branches: [ main, develop ] | |
| paths: | |
| - '**/*.rs' | |
| - 'Cargo.toml' | |
| - 'Cargo.lock' | |
| - '**/Cargo.toml' | |
| - '**/Cargo.lock' | |
| - '.github/workflows/ci.yml' | |
| - '.github/workflows/optimized-ci.yml' | |
| - 'scripts/ci/check_file_size_policy.sh' | |
| - 'scripts/ci/file_size_exceptions.txt' | |
| - 'scripts/ci/ci-pipeline.rs' | |
| pull_request: | |
| branches: [ main ] | |
| paths: | |
| - '**/*.rs' | |
| - 'Cargo.toml' | |
| - 'Cargo.lock' | |
| - '**/Cargo.toml' | |
| - '**/Cargo.lock' | |
| - '.github/workflows/ci.yml' | |
| - '.github/workflows/optimized-ci.yml' | |
| - 'scripts/ci/check_file_size_policy.sh' | |
| - 'scripts/ci/file_size_exceptions.txt' | |
| - 'scripts/ci/ci-pipeline.rs' | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| env: | |
| CARGO_TERM_COLOR: always | |
| RUST_BACKTRACE: 1 | |
| CARGO_TARGET_DIR: target | |
| RUSTC_WRAPPER: "" | |
| CARGO_BUILD_JOBS: 2 | |
| jobs: | |
| format-check: | |
| name: Tier 1 / Format | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Install nightly Rust toolchain | |
| uses: dtolnay/rust-toolchain@nightly | |
| with: | |
| components: rustfmt | |
| - name: Check formatting | |
| run: cargo fmt --all -- --check | |
| clippy: | |
| name: Tier 1 / Clippy | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 30 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Install nightly Rust toolchain | |
| uses: dtolnay/rust-toolchain@nightly | |
| with: | |
| components: clippy | |
| - name: Cache dependencies | |
| uses: Swatinem/rust-cache@v2 | |
| - name: Run nightly clippy gate | |
| run: cargo clippy --workspace --all-targets --all-features --no-deps -- -D warnings | |
| rustdoc: | |
| name: Tier 1 / Rustdoc | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 45 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Install nightly Rust toolchain | |
| uses: dtolnay/rust-toolchain@nightly | |
| - name: Cache dependencies | |
| uses: Swatinem/rust-cache@v2 | |
| - name: Run rustdoc warnings gate | |
| run: RUSTDOCFLAGS="-Dwarnings" cargo doc --workspace --all-features --no-deps | |
| tests: | |
| name: Tier 1 / Tests | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 45 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Install nightly Rust toolchain | |
| uses: dtolnay/rust-toolchain@nightly | |
| - name: Cache dependencies | |
| uses: Swatinem/rust-cache@v2 | |
| - name: Install nextest | |
| uses: taiki-e/install-action@nextest | |
| - name: Run tests | |
| run: cargo nextest run --workspace --all-features --lib --bins --tests | |
| - name: Run doc tests | |
| run: RUSTDOCFLAGS="-Dwarnings" cargo test --doc --workspace --all-features | |
| security: | |
| name: Tier 1 / Security | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 20 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Install nightly Rust toolchain | |
| uses: dtolnay/rust-toolchain@nightly | |
| - name: Cache dependencies | |
| uses: Swatinem/rust-cache@v2 | |
| - name: Install cargo-audit | |
| uses: taiki-e/install-action@cargo-audit | |
| - name: Run security audit | |
| run: cargo audit | |
| - name: Install cargo-deny | |
| uses: taiki-e/install-action@cargo-deny | |
| - name: Run dependency check | |
| run: cargo deny check | |
| file-size-policy: | |
| name: Tier 1 / File Size Policy | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 10 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Enforce file size policy | |
| run: bash scripts/ci/check_file_size_policy.sh |