Aller au contenu
login
arrow_backRetour aux issues
Tracer-Cloud/opensre #5492

Run the concurrency suites with the turn limit raised, report what breaks

ecoDébutant good first issue tests

descriptionDescription

## Problem `infrastructure/turn_host/concurrency.py` defaults to `SizeProfile.SMALL: 1` — one concurrent turn per process. Every "concurrency test" in the suite therefore runs serially by default, and passing proves almost nothing about behaviour under real overlap. ## Why it matters A test that never overlaps cannot catch an interleaving bug. The suite currently reports green on a configuration nobody deploys under load. ## Steps 1. Run the concurrency-relevant suites at a raised limit: ```bash OPENSRE_MAX_CONCURRENT_TURNS=4 uv run python -m pytest \ gateway/tests/runtime/test_concurrency_gate.py \ gateway/tests/runtime/test_session_agents.py \ gateway/tests/runtime/test_turn_runner.py \ gateway/tests/test_multi_actor_concurrency.py \ tests/infrastructure/test_turn_capacity.py -q ``` 2. Repeat at `=8`, and repeat each a few times — a test that passes once and fails on the third run is a real finding, not noise. 3. For every failure, work out whether it is (a) a genuine product bug, (b) a test that assumed serial execution, or (c) flakiness from a fixed sleep. 4. Open **one issue per finding**, each with the exact command, the limit, how many runs out of how many failed, and the full failure output. 5. Report the summary in this issue: which suites are safe at a raised limit and which are not. ## Expected result A definitive list of what breaks when turns actually overlap — the input to every other concurrency task. ## Verification Each reported failure must be reproducible from the command line you quote. Run it three times and state the hit rate; "fails sometimes" is not actionable. State the machine's core count in the report. Overlap behaviour depends on it, and a result from a 2-core CI runner is a different result. ## Checklist - [ ] Suites run at limit 4 and 8, multiple times each - [ ] Every failure categorised: product bug / serial-assuming test / flake - [ ] One issue per finding, each with command, limit, hit rate, and output - [ ] Summary of safe vs unsafe suites posted here - [ ] Core count stated ## Out of scope Fixing anything you find, and changing the default limit. This issue produces the list; the fixes are separate work. ## Claiming this issue Ask in [OpenSRE Discord](https://discord.com/invite/opensre) before you start so a maintainer can assign it. Ask OpenSRE maintainers and write a commit under this issue.
codeOuvre sur GitHub