Skip to content

fix: Add MJAI round-trip validation and fjix mask consistency assertion #573

fix: Add MJAI round-trip validation and fjix mask consistency assertion

fix: Add MJAI round-trip validation and fjix mask consistency assertion #573

Workflow file for this run

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