@@ -105,12 +105,13 @@ pre-installed in the dev container images. No local setup required.
105105uv sync --group dev
106106```
107107
108- ### Three -Tier CI Model
108+ ### Two -Tier CI Model
109109
110- Testing is split across three tiers with increasing scope and cost:
110+ Testing is split across two tiers with increasing scope and cost:
111111
112112** Tier 1 — Local pre-commit (seconds):** Fast smoke tests in a single
113- container. Run before every commit. No MQ, no matrix.
113+ container. Enforced via the ` .githooks ` pre-commit gate on every commit.
114+ No MQ, no matrix.
114115
115116``` bash
116117./scripts/dev/test.sh # Unit tests in dev-python:3.14
@@ -119,16 +120,14 @@ container. Run before every commit. No MQ, no matrix.
119120./scripts/dev/audit.sh # pip-audit in dev-python:3.14
120121```
121122
122- ** Tier 2 — Push CI (~ 3-5 min):** Triggers automatically on push to
123- ` feature/** ` , ` bugfix/** ` , ` hotfix/** ` , ` chore/** ` . Single Python version
124- (3.14), includes integration tests, no security scanners or release gates.
125- Workflow: ` .github/workflows/ci-push.yml ` (calls ` ci.yml ` ).
126-
127- ** Tier 3 — PR CI (~ 8-10 min):** Triggers on ` pull_request ` . Full Python
123+ ** Tier 2 — PR CI (~ 8-10 min):** Triggers on ` pull_request ` . Full Python
128124matrix (3.12, 3.13, 3.14), all integration tests, security scanners (CodeQL,
129125Trivy, Semgrep), standards compliance, and release gates. Workflow:
130126` .github/workflows/ci.yml ` .
131127
128+ Push-CI was retired once ` st-validate-local ` reached parity with PR-CI.
129+ See wphillipmoore/standard-actions #176 for the parity audit and rationale.
130+
132131### Validation
133132
134133``` bash
0 commit comments