test(#775): integration tests for #769-#771 interactive-only guards a… #922
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: | |
| - main | |
| - 'gaebal/**' | |
| - 'omx-issue-*' | |
| paths: | |
| - .github/workflows/rust-ci.yml | |
| - .github/scripts/check_doc_source_of_truth.py | |
| - .github/scripts/check_release_readiness.py | |
| - .github/FUNDING.yml | |
| - CODE_OF_CONDUCT.md | |
| - CONTRIBUTING.md | |
| - LICENSE | |
| - README.md | |
| - SECURITY.md | |
| - SUPPORT.md | |
| - USAGE.md | |
| - PARITY.md | |
| - PHILOSOPHY.md | |
| - ROADMAP.md | |
| - scripts/roadmap-*.sh | |
| - tests/test_roadmap_helpers.py | |
| - docs/** | |
| - rust/** | |
| pull_request: | |
| branches: | |
| - main | |
| paths: | |
| - .github/workflows/rust-ci.yml | |
| - .github/scripts/check_doc_source_of_truth.py | |
| - .github/scripts/check_release_readiness.py | |
| - .github/FUNDING.yml | |
| - CODE_OF_CONDUCT.md | |
| - CONTRIBUTING.md | |
| - LICENSE | |
| - README.md | |
| - SECURITY.md | |
| - SUPPORT.md | |
| - USAGE.md | |
| - PARITY.md | |
| - PHILOSOPHY.md | |
| - ROADMAP.md | |
| - scripts/roadmap-*.sh | |
| - tests/test_roadmap_helpers.py | |
| - docs/** | |
| - rust/** | |
| workflow_dispatch: | |
| concurrency: | |
| group: rust-ci-${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
| cancel-in-progress: true | |
| defaults: | |
| run: | |
| working-directory: rust | |
| env: | |
| CARGO_TERM_COLOR: always | |
| jobs: | |
| doc-source-of-truth: | |
| name: docs source-of-truth | |
| runs-on: ubuntu-latest | |
| defaults: | |
| run: | |
| working-directory: . | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.x" | |
| - name: Check docs and metadata for stale branding | |
| run: python .github/scripts/check_doc_source_of_truth.py | |
| - name: Check release policy docs and local links | |
| run: python .github/scripts/check_release_readiness.py | |
| - name: Check ROADMAP ids | |
| run: scripts/roadmap-check-ids.sh | |
| - name: Check ROADMAP helper behavior | |
| run: python -m unittest discover -s tests -p test_roadmap_helpers.py | |
| fmt: | |
| name: cargo fmt | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| with: | |
| components: rustfmt | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| workspaces: rust -> target | |
| - name: Check formatting | |
| run: cargo fmt --all --check | |
| test-workspace: | |
| name: cargo test --workspace | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| workspaces: rust -> target | |
| - name: Run workspace tests | |
| run: cargo test --workspace | |
| clippy-workspace: | |
| name: cargo clippy --workspace | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| with: | |
| components: clippy | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| workspaces: rust -> target | |
| - name: Run workspace clippy | |
| run: cargo clippy --workspace | |
| windows-smoke: | |
| name: windows PowerShell smoke | |
| runs-on: windows-latest | |
| defaults: | |
| run: | |
| working-directory: rust | |
| shell: pwsh | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| workspaces: rust -> target | |
| - name: Build CLI for Windows smoke | |
| run: cargo build -p rusty-claude-cli | |
| - name: Smoke local commands without live credentials | |
| env: | |
| ANTHROPIC_API_KEY: "" | |
| ANTHROPIC_AUTH_TOKEN: "" | |
| OPENAI_API_KEY: "" | |
| XAI_API_KEY: "" | |
| DASHSCOPE_API_KEY: "" | |
| run: | | |
| $ErrorActionPreference = "Stop" | |
| $env:CLAW_CONFIG_HOME = Join-Path $env:RUNNER_TEMP "claw config home" | |
| New-Item -ItemType Directory -Force -Path $env:CLAW_CONFIG_HOME | Out-Null | |
| $workspace = Join-Path $env:RUNNER_TEMP "claw path smoke" | |
| New-Item -ItemType Directory -Force -Path $workspace | Out-Null | |
| $claw = Join-Path $env:GITHUB_WORKSPACE "rust\target\debug\claw.exe" | |
| Push-Location $workspace | |
| try { | |
| & $claw help | |
| & $claw status | |
| & $claw config env | |
| & $claw doctor | |
| } finally { | |
| Pop-Location | |
| } |