You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Parent: #280
Related performance investigation: #148
Outcome
Give agents and contributors a documented, mechanically reliable fast inner verification loop for iterative changes, while keeping the existing full repository gate authoritative before completion.
Why
#148 measured that the current test suite spends a large portion of wall time in repeated subprocess/import startup and that tests marked slow are still included in ordinary pytest runs.
For an agent making small iterative edits, a slow feedback loop increases context switching and encourages under-verification. The answer should not be to weaken final verification; it should be to distinguish fast affected-boundary checks from the full completion gate.
Current-main reconciliation — 2026-09-29
PR #290 completed the fast/full verification split:
fast iteration: uv run python scripts/run_fast_tests.py [pytest args];
the fast profile applies -m "not slow" and disables repository-wide coverage for narrowed iteration;
AGENTS explicitly states that this is affected-boundary evidence, not completion proof;
CI runs the same Fast Tests profile while preserving the full Python 3.11/3.12 pytest jobs.
Remaining work is the measured #148 program: intentional ownership of process-isolated tests and reducing subprocess/import startup only where the boundary does not justify its lifecycle cost.
Required distinction
Inner loop
A fast command or small set of commands intended to answer:
Did the affected seam regress?
It may use:
targeted pytest files;
a defined not slow profile;
focused static checks;
in-process CLI tests where process isolation is not part of the behavior being tested.
Completion gate
The existing repository-level required checks remain authoritative, currently including the full pre-commit/prek gate and full pytest expectations defined by repository policy/CI.
Passing the inner loop must never be described as proving repository-wide completion.
Parent: #280
Related performance investigation: #148
Outcome
Give agents and contributors a documented, mechanically reliable fast inner verification loop for iterative changes, while keeping the existing full repository gate authoritative before completion.
Why
#148 measured that the current test suite spends a large portion of wall time in repeated subprocess/import startup and that tests marked
sloware still included in ordinary pytest runs.For an agent making small iterative edits, a slow feedback loop increases context switching and encourages under-verification. The answer should not be to weaken final verification; it should be to distinguish fast affected-boundary checks from the full completion gate.
Current-main reconciliation — 2026-09-29
PR #290 completed the fast/full verification split:
uv run python scripts/run_fast_tests.py [pytest args];-m "not slow"and disables repository-wide coverage for narrowed iteration;Remaining work is the measured #148 program: intentional ownership of process-isolated tests and reducing subprocess/import startup only where the boundary does not justify its lifecycle cost.
Required distinction
Inner loop
A fast command or small set of commands intended to answer:
It may use:
not slowprofile;Completion gate
The existing repository-level required checks remain authoritative, currently including the full pre-commit/prek gate and full pytest expectations defined by repository policy/CI.
Passing the inner loop must never be described as proving repository-wide completion.
Plan
pytestcontract should mean:AGENTS.mdso agents know:Constraints
Acceptance criteria