Update lockfile #69
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: CI full | |
| on: | |
| push: | |
| branches: [main] | |
| paths-ignore: ["docs/**"] | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| concurrency: | |
| group: public-ci-full-${{ github.ref }} | |
| cancel-in-progress: true | |
| env: | |
| CARGO_TERM_COLOR: always | |
| jobs: | |
| linux-full: | |
| runs-on: ubuntu-latest | |
| # Once "Full workspace" (below) is fully green, later steps in this | |
| # job (Daemon E2E, Wire integration, DST lanes, installer | |
| # build-health) will actually run for real for the first time -- | |
| # give real headroom for that, matching platform-e2e's own bump. | |
| timeout-minutes: 90 | |
| steps: | |
| - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 | |
| with: | |
| persist-credentials: false | |
| - uses: arduino/setup-protoc@c65c819552d16ad3c9b72d9dfd5ba5237b9c906b # v3.0.0 | |
| with: | |
| repo-token: ${{ github.token }} | |
| - uses: dtolnay/rust-toolchain@2c7215f132e9ebf062739d9130488b56d53c060c # master @ 2026-06-30 | |
| with: | |
| toolchain: stable | |
| - uses: Swatinem/rust-cache@c19371144df3bb44fab255c43d04cbc2ab54d1c4 # v2.9.1 | |
| with: | |
| key: linux-full | |
| save-if: ${{ github.ref == 'refs/heads/main' }} | |
| - name: Full workspace | |
| # Daemon integration tests own real watcher/SQLite/network runtimes and | |
| # run in the single-threaded lane below. Running them here as well makes | |
| # several independent multi-daemon scenarios contend in parallel. | |
| # | |
| # --no-fail-fast: surface every failing crate's tests in one run | |
| # rather than stopping at the first one, so a fix doesn't have to | |
| # be discovered and landed one crate at a time across repeated CI | |
| # round-trips. | |
| run: cargo test --no-fail-fast --workspace --exclude yadorilink-daemon --exclude yadorilink-desktop-app | |
| - name: Daemon E2E | |
| # The two monkey-chaos cases are private seed/soak coverage. They run | |
| # in private beta-heat, while every ordinary daemon integration test | |
| # remains in this public, serial correctness lane. | |
| # | |
| # Deliberately WITHOUT --no-fail-fast: this is 90 separate test | |
| # binaries that has never actually run to completion in public CI -- | |
| # a private-side baseline run found 37 pre-existing failures across | |
| # many unrelated subsystems and took 111 minutes. Running the full | |
| # suite unconditionally here would make every push spend 90+ minutes | |
| # re-discovering the same known-broken tail instead of catching a | |
| # real new regression quickly. Full-suite triage is tracked as its | |
| # own separate effort, not something every CI run should pay for. | |
| run: >- | |
| cargo test -p yadorilink-daemon --tests -- | |
| --test-threads=1 | |
| --skip random_concurrent_operations_converge_to_an_identical_file_set | |
| --skip replay_known_failing_seeds | |
| - name: Wire integration | |
| run: | | |
| cargo test --no-fail-fast -p yadorilink-peer-session --test peer_session --test crash_recovery --test dag_two_device_wire_convergence -- --test-threads=1 | |
| cargo test --no-fail-fast -p yadorilink-daemon --test watcher_decompose_conformance -- --test-threads=1 | |
| - name: DST lanes 0 and 1 | |
| run: | | |
| cargo run -p xtask -- dst-lane0 | |
| cargo run -p xtask -- dst-lane1 | |
| - name: Unsigned Linux installer build-health | |
| run: ./installer/linux/build-deb.sh | |
| platform-e2e: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [windows-latest, macos-latest] | |
| runs-on: ${{ matrix.os }} | |
| timeout-minutes: 60 | |
| steps: | |
| - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 | |
| with: | |
| persist-credentials: false | |
| - uses: arduino/setup-protoc@c65c819552d16ad3c9b72d9dfd5ba5237b9c906b # v3.0.0 | |
| with: | |
| repo-token: ${{ github.token }} | |
| - uses: dtolnay/rust-toolchain@2c7215f132e9ebf062739d9130488b56d53c060c # master @ 2026-06-30 | |
| with: | |
| toolchain: stable | |
| - name: Daemon E2E | |
| # Deliberately WITHOUT --no-fail-fast: see linux-full's own Daemon | |
| # E2E step for why -- this is the same 90-binary suite, never run | |
| # to completion before, with a large known-broken tail. Full-suite | |
| # triage is tracked as its own separate effort. | |
| run: >- | |
| cargo test -p yadorilink-daemon --tests -- | |
| --test-threads=1 | |
| --skip random_concurrent_operations_converge_to_an_identical_file_set | |
| --skip replay_known_failing_seeds | |
| supply-chain: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 | |
| with: | |
| persist-credentials: false | |
| - uses: dtolnay/rust-toolchain@2c7215f132e9ebf062739d9130488b56d53c060c # master @ 2026-06-30 | |
| with: | |
| toolchain: stable | |
| - run: cargo install --locked cargo-audit cargo-deny | |
| - run: cargo audit | |
| - run: cargo deny check |