Merge pull request #41 from Perseus-Computing-LLC/fix/money-correctness #31
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: Test | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| jobs: | |
| lint-and-smoke: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Set up Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.12" | |
| - name: Install dependencies | |
| run: pip install pyyaml | |
| - name: Lint — py_compile | |
| run: | | |
| python3 -m py_compile plutus.py | |
| python3 -m py_compile plutus_route.py | |
| - name: Smoke test — version flag | |
| run: | | |
| python3 plutus.py --version | grep 'plutus v' | |
| python3 plutus_route.py --version | grep 'plutus v' | |
| - name: Smoke test — help output | |
| run: | | |
| python3 plutus.py --help > /dev/null | |
| python3 plutus_route.py --help > /dev/null | |
| - name: Smoke test — json mode | |
| run: python3 plutus.py --json 2>/dev/null || echo "(state.db unavailable — expected in CI)" | |
| - name: Run tests | |
| run: python3 -m pytest test_plutus.py -v | |
| engine: | |
| name: monetization engine (plutus_agent) | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| python-version: ["3.9", "3.11", "3.12"] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Set up Python ${{ matrix.python-version }} | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: Install package (with extras) | |
| run: pip install ".[all]" pytest | |
| - name: Lint — compileall | |
| run: python3 -m compileall -q plutus_agent | |
| - name: CLI smoke | |
| run: | | |
| plutus version | grep 'plutus v' | |
| plutus pricing | grep -i 'Pro' | |
| plutus init --org "CI Co" --tier pro --workspace ci --budget 10 | |
| plutus meter --provider anthropic --model claude-opus-4-8 \ | |
| --task code_review --workspace ci --input 1000 --output 500 | |
| plutus status | |
| - name: Run engine + server tests | |
| run: python3 -m pytest tests/ -v |