diff --git a/docs/ci.md b/docs/ci.md new file mode 100644 index 0000000..f38fb95 --- /dev/null +++ b/docs/ci.md @@ -0,0 +1,26 @@ +# Continuous integration - nova-platform + +**TL;DR -** Every push and every pull request to `main` runs the CI +workflow (`.gitea/workflows/ci.yml`). It is the offline mirror of +`scripts/run_ci.sh`: lint, test, check-only. A leg that cannot run fails +loud - nothing skipped is reported as passed. + +**What** - + +- **lint** - `python3 -m py_compile` over `core/`, `adapters/`, `scripts/` + (stdlib only, always runs). +- **test** - `pytest tests/ -q -m "not shell"`, with the test dependencies + from `requirements-test.txt` installed first when pypi is reachable; a + missing toolchain fails the leg with its absence list. +- **check-only** - `bash scripts/run_platform.sh --check-only + contracts/static-assets.yml` (needs `yaml` + `jsonschema`). + +**Why** - the line shipped without a pipeline, so every change went out +ungated. The workflow runs the same three legs as the local script, so a +green local run and a green pipeline mean the same thing. + +**Action** - none - FYI. The pipeline was ordered under +`coreci/nova-platform#3`; the workflow itself landed in PR #6. + +**Details** - local equivalent: `bash scripts/run_ci.sh`. Run history: +the repository's Actions tab.