chore: sync local changes before shutdown #204
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: | |
| workflow_dispatch: | |
| concurrency: | |
| group: ci-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| root: | |
| name: Root Hygiene And Tests | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 40 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: actions/setup-python@v6 | |
| with: | |
| python-version: "3.12" | |
| cache: pip | |
| cache-dependency-path: | | |
| requirements.txt | |
| requirements-dev.txt | |
| hub/requirements.txt | |
| edge-backlog/pyproject.toml | |
| - name: Install dependencies | |
| run: make bootstrap | |
| - name: Doctor | |
| run: make doctor | |
| - name: Quickstart smoke | |
| run: python3 scripts/quickstart.py --prepare-only --agent-name ci-smoke | |
| - name: Hygiene | |
| run: make hygiene | |
| - name: Lint (ruff) | |
| run: make lint | |
| - name: Type check (mypy) | |
| run: make type-check | |
| continue-on-error: true | |
| - name: Fastpath verification | |
| run: make verify-fastpath | |
| - name: Full root test suite | |
| run: make test-root | |
| - name: Check FAST_TRADE_EDGE_ANALYSIS.md freshness | |
| run: | | |
| if [ ! -f FAST_TRADE_EDGE_ANALYSIS.md ]; then | |
| echo "::warning::FAST_TRADE_EDGE_ANALYSIS.md not found" | |
| exit 0 | |
| fi | |
| last_modified=$(stat -c %Y FAST_TRADE_EDGE_ANALYSIS.md 2>/dev/null || stat -f %m FAST_TRADE_EDGE_ANALYSIS.md) | |
| now=$(date +%s) | |
| age_hours=$(( (now - last_modified) / 3600 )) | |
| echo "FAST_TRADE_EDGE_ANALYSIS.md last modified ${age_hours}h ago" | |
| if [ "$age_hours" -gt 48 ]; then | |
| echo "::warning::FAST_TRADE_EDGE_ANALYSIS.md is stale (${age_hours}h old, threshold 48h). Re-run the pipeline." | |
| fi | |
| polymarket: | |
| name: Polymarket Bot Tests | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 40 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: actions/setup-python@v6 | |
| with: | |
| python-version: "3.12" | |
| cache: pip | |
| cache-dependency-path: | | |
| requirements.txt | |
| requirements-dev.txt | |
| hub/requirements.txt | |
| polymarket-bot/pyproject.toml | |
| edge-backlog/pyproject.toml | |
| - name: Install dependencies | |
| run: make bootstrap | |
| - name: Polymarket regression suite | |
| shell: bash | |
| run: | | |
| set -euo pipefail | |
| cd polymarket-bot | |
| python3 -m pytest tests -q --cov=src --cov-report=term-missing 2>&1 | tee ../polymarket-regression.log | |
| - name: Upload polymarket regression log | |
| if: failure() | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: polymarket-regression-log | |
| path: polymarket-regression.log |