62 lines
1.5 KiB
YAML
62 lines
1.5 KiB
YAML
name: Balance Check
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
paths:
|
|
- 'packages/shared/src/constants/**'
|
|
- 'packages/game-engine/src/**'
|
|
- 'packages/game-simulation/**'
|
|
pull_request:
|
|
branches: [main]
|
|
paths:
|
|
- 'packages/shared/src/constants/**'
|
|
- 'packages/game-engine/src/**'
|
|
- 'packages/game-simulation/**'
|
|
|
|
jobs:
|
|
balance-simulation:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Install pnpm
|
|
uses: pnpm/action-setup@v4
|
|
|
|
- name: Setup Node.js
|
|
uses: actions/setup-node@v4
|
|
with:
|
|
node-version: '22'
|
|
|
|
- name: Install dependencies
|
|
run: pnpm install --frozen-lockfile
|
|
|
|
- name: Run tests
|
|
run: pnpm test
|
|
|
|
- name: Run greedy simulation
|
|
run: pnpm --filter @ai-tycoon/game-simulation simulate:ci
|
|
|
|
multi-run-balance:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Install pnpm
|
|
uses: pnpm/action-setup@v4
|
|
|
|
- name: Setup Node.js
|
|
uses: actions/setup-node@v4
|
|
with:
|
|
node-version: '22'
|
|
|
|
- name: Install dependencies
|
|
run: pnpm install --frozen-lockfile
|
|
|
|
- name: Run multi-simulation (5 runs)
|
|
run: pnpm --filter @ai-tycoon/game-simulation multirun -- --runs 5 --parallel 2 --strategy greedy --ticks 28800 --no-timeseries
|
|
|
|
- name: Interpret results
|
|
if: always()
|
|
run: pnpm --filter @ai-tycoon/game-simulation interpret -- --summary packages/game-simulation/multirun-summary.csv
|