mirror of
https://github.com/saymrwulf/autoresearch-quantum.git
synced 2026-05-14 20:37:51 +00:00
Remove GitHub Actions CI — validate locally with app.sh validate
CI ran on every push and generated failure emails. For a single-developer project, local validation is sufficient and less noisy.
This commit is contained in:
parent
e7674ee5c0
commit
e7b8b02a88
4 changed files with 3 additions and 91 deletions
79
.github/workflows/ci.yml
vendored
79
.github/workflows/ci.yml
vendored
|
|
@ -1,79 +0,0 @@
|
||||||
name: CI
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches: [master]
|
|
||||||
pull_request:
|
|
||||||
branches: [master]
|
|
||||||
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
lint:
|
|
||||||
name: Lint & Type Check
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v4
|
|
||||||
|
|
||||||
- uses: actions/setup-python@v5
|
|
||||||
with:
|
|
||||||
python-version: "3.11"
|
|
||||||
|
|
||||||
- name: Install dependencies
|
|
||||||
run: |
|
|
||||||
python -m pip install --upgrade pip
|
|
||||||
pip install -e ".[dev]"
|
|
||||||
|
|
||||||
- name: Ruff check
|
|
||||||
run: ruff check src/ tests/ scripts/
|
|
||||||
|
|
||||||
- name: Ruff format check
|
|
||||||
run: ruff format --check src/ tests/ scripts/
|
|
||||||
|
|
||||||
- name: Mypy
|
|
||||||
run: mypy src/autoresearch_quantum/
|
|
||||||
|
|
||||||
test:
|
|
||||||
name: Tests (Python ${{ matrix.python-version }})
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
strategy:
|
|
||||||
matrix:
|
|
||||||
python-version: ["3.11", "3.12"]
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v4
|
|
||||||
|
|
||||||
- uses: actions/setup-python@v5
|
|
||||||
with:
|
|
||||||
python-version: ${{ matrix.python-version }}
|
|
||||||
|
|
||||||
- name: Install dependencies
|
|
||||||
run: |
|
|
||||||
python -m pip install --upgrade pip
|
|
||||||
pip install -e ".[dev,notebooks]"
|
|
||||||
|
|
||||||
- name: Run unit tests
|
|
||||||
run: pytest tests/ -k "not test_notebook_executes and not test_browser" -v --tb=short
|
|
||||||
|
|
||||||
- name: Run notebook structure tests
|
|
||||||
run: pytest tests/test_notebooks.py tests/test_pedagogy.py -k "not test_notebook_executes" -v --tb=short
|
|
||||||
|
|
||||||
notebook-execution:
|
|
||||||
name: Notebook Execution
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
timeout-minutes: 30
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v4
|
|
||||||
|
|
||||||
- uses: actions/setup-python@v5
|
|
||||||
with:
|
|
||||||
python-version: "3.11"
|
|
||||||
|
|
||||||
- name: Install dependencies
|
|
||||||
run: |
|
|
||||||
python -m pip install --upgrade pip
|
|
||||||
pip install -e ".[dev,notebooks]"
|
|
||||||
python -m ipykernel install --user --name python3
|
|
||||||
|
|
||||||
- name: Run notebook execution tests
|
|
||||||
run: pytest tests/test_notebooks.py -k "test_notebook_executes" -v --tb=short -x
|
|
||||||
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -45,3 +45,4 @@ paper/*.synctex.gz
|
||||||
# Build artifacts
|
# Build artifacts
|
||||||
dist/
|
dist/
|
||||||
build/
|
build/
|
||||||
|
uv.lock
|
||||||
|
|
|
||||||
|
|
@ -89,7 +89,6 @@ autoresearch-quantum/
|
||||||
│ ├── test_persistence.py JSON store round-trips
|
│ ├── test_persistence.py JSON store round-trips
|
||||||
│ ├── test_scoring.py Score function correctness
|
│ ├── test_scoring.py Score function correctness
|
||||||
│ └── test_teaching.py Assessment widget & tracker tests
|
│ └── test_teaching.py Assessment widget & tracker tests
|
||||||
├── .github/workflows/ci.yml CI: lint, type check, test matrix, notebook execution
|
|
||||||
├── .pre-commit-config.yaml Ruff, mypy, nbstripout, hygiene hooks
|
├── .pre-commit-config.yaml Ruff, mypy, nbstripout, hygiene hooks
|
||||||
├── THE_STORY.md Narrative documentation (system design)
|
├── THE_STORY.md Narrative documentation (system design)
|
||||||
├── pyproject.toml Build config, dependencies, tool settings
|
├── pyproject.toml Build config, dependencies, tool settings
|
||||||
|
|
@ -411,14 +410,6 @@ All three run automatically as **pre-commit hooks** (`.pre-commit-config.yaml`).
|
||||||
.venv/bin/pre-commit install
|
.venv/bin/pre-commit install
|
||||||
```
|
```
|
||||||
|
|
||||||
### CI/CD
|
|
||||||
|
|
||||||
The GitHub Actions pipeline (`.github/workflows/ci.yml`) runs on every push and PR:
|
|
||||||
|
|
||||||
1. **Lint job** --- ruff check, ruff format --check, mypy strict (Python 3.11)
|
|
||||||
2. **Test job** --- full test suite on Python 3.11 and 3.12 matrix
|
|
||||||
3. **Notebook execution job** --- runs all 12 notebooks end-to-end via nbclient
|
|
||||||
|
|
||||||
## Extending The Ladder
|
## Extending The Ladder
|
||||||
|
|
||||||
The intended progression is:
|
The intended progression is:
|
||||||
|
|
|
||||||
|
|
@ -478,8 +478,8 @@ quality invariants across all content notebooks:
|
||||||
- All four plans collectively cover core concepts (stabiliser, magic, witness, ratchet)
|
- All four plans collectively cover core concepts (stabiliser, magic, witness, ratchet)
|
||||||
|
|
||||||
These tests catch pedagogical regressions the same way unit tests catch code
|
These tests catch pedagogical regressions the same way unit tests catch code
|
||||||
regressions. Adding a new notebook or modifying an existing one will fail CI
|
regressions. Adding a new notebook or modifying an existing one will fail
|
||||||
if it violates these invariants.
|
validation (`app.sh validate`) if it violates these invariants.
|
||||||
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
@ -629,7 +629,6 @@ autoresearch-quantum/
|
||||||
test_scoring.py Score functions
|
test_scoring.py Score functions
|
||||||
test_teaching.py Assessment widgets & tracker
|
test_teaching.py Assessment widgets & tracker
|
||||||
|
|
||||||
.github/workflows/ci.yml CI: lint, type check, test matrix, notebook execution
|
|
||||||
.pre-commit-config.yaml Ruff, mypy, nbstripout, hygiene hooks
|
.pre-commit-config.yaml Ruff, mypy, nbstripout, hygiene hooks
|
||||||
|
|
||||||
data/ Output directory (created at runtime)
|
data/ Output directory (created at runtime)
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue