fix: Add MJAI round-trip validation and fjix mask consistency assertion #573
Workflow file for this run
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 | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| jobs: | |
| py-test: | |
| name: pytest | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v4 | |
| with: | |
| enable-cache: true | |
| cache-dependency-glob: "uv.lock" | |
| - name: Install dependencies | |
| run: uv sync --all-extras --dev | |
| - name: Run pytests | |
| run: uv run --python 3.14 pytest | |
| py-lint: | |
| name: ruff and ty | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v4 | |
| with: | |
| enable-cache: true | |
| cache-dependency-glob: "uv.lock" | |
| - name: Install dependencies | |
| run: uv sync --all-extras --dev | |
| - name: Run ruff format | |
| run: uv run --python 3.14 ruff format --check . | |
| - name: Run ruff check | |
| run: uv run --python 3.14 ruff check . | |
| - name: Run ty | |
| run: uv run --python 3.14 ty check | |
| rs-test: | |
| name: cargo test | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Install Rust toolchain | |
| uses: dtolnay/rust-toolchain@stable | |
| - name: Rust Cargo Test (pure core) | |
| run: cargo test -p riichienv-core | |
| - name: Rust Cargo Test (all features) | |
| run: cargo test --all-targets --all-features | |
| rs-lint: | |
| name: rustfmt and clippy | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v4 | |
| with: | |
| enable-cache: true | |
| cache-dependency-glob: "uv.lock" | |
| - name: Install Rust toolchain | |
| uses: dtolnay/rust-toolchain@stable | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.14' | |
| - name: Run rustfmt | |
| run: cargo fmt --all -- --check | |
| - name: Rust Clippy | |
| run: PYO3_USE_ABI3_FORWARD_COMPATIBILITY=1 cargo clippy --all-targets --all-features -- -D warnings | |
| - name: Rust Cargo Check (pure core) | |
| run: cargo check -p riichienv-core --no-default-features | |
| - name: Rust Cargo Check (all features) | |
| run: cargo check --all-targets --all-features | |
| - name: Rust Cargo Check (wasm target) | |
| run: cargo check -p riichienv-wasm --target wasm32-unknown-unknown | |
| - name: Install dependencies | |
| run: uv sync --all-extras --dev | |
| - name: Install dependencies and Build | |
| run: | | |
| uv run --python 3.14 python -m riichienv.__init__ && echo OK | |
| ui-test: | |
| name: vitest (riichienv-ui) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Install Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: '20' | |
| - name: Install dependencies | |
| run: cd riichienv-ui && npm ci | |
| - name: Run tests | |
| run: cd riichienv-ui && npm test | |
| ui-lint: | |
| name: biome (riichienv-ui) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Install Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: '20' | |
| - name: Install dependencies | |
| run: cd riichienv-ui && npm ci | |
| - name: Run biome check | |
| run: cd riichienv-ui && npm run lint | |
| wasm-build: | |
| name: wasm-pack build | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Install Rust toolchain | |
| uses: dtolnay/rust-toolchain@stable | |
| - name: Install wasm-pack | |
| run: curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh | |
| - name: Build WASM | |
| run: wasm-pack build riichienv-wasm --target web | |
| - name: Install Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: '20' | |
| - name: Build UI | |
| run: | | |
| cd riichienv-ui | |
| npm ci | |
| npm run build |