From cb065c5729ef843de5f42e3a0fd78b558fc1c2b0 Mon Sep 17 00:00:00 2001 From: Artur Shiriev Date: Tue, 30 Jun 2026 11:25:34 +0300 Subject: [PATCH] docs: note full-suite verification for interpreter-compat changes Lowering the Python floor to 3.11 shipped an integration-only broker-shutdown hang that the local no-Redis subset (test_unit/test_fake) could not catch; it only surfaced in the 3.11 CI leg. Record the rule so the full suite is run on the target interpreter for compat changes. Co-Authored-By: Claude Opus 4.8 (1M context) --- CLAUDE.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/CLAUDE.md b/CLAUDE.md index 5207074..49334b2 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -12,6 +12,11 @@ source of truth for recipes — run `just --list` or read it. The non-obvious bi the rest (the integration suites) do. - `just lint` / `just lint-ci` — autofix vs non-mutating; `lint-ci` also runs the planning-bundle validator (`planning/index.py --check`). +- Verifying a Python-version / interpreter-compat change: run the **full** suite + on the target interpreter (the CI matrix, or `just test` in docker), not just + the no-Redis subset. An integration-only failure — e.g. a broker-shutdown hang + that only bites under a specific interpreter's async timing — won't surface in + `test_unit.py` / `test_fake.py` alone. ## Workflow