add a serial test lane for concurrency-vulnerable tests
Generalizes the pty split into an explicit "parallel=false" opt-out: a `serial` tag (declared in dart_test.yaml). The parallel flutter run now excludes `pty || serial`; a separate `flutter test --tags serial --concurrency=1` pass runs the vulnerable ones. For the coverage gate the two passes are real-merged by ci/merge_lcov.py (union DA, max hits, recompute LF/LH) — a plain concat would double-count and corrupt the total. Tag transcript_publisher's bus-republish test serial (it flaked in the parallel pool). Gate verified green end-to-end at 95.08%. T-193. Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -10,3 +10,10 @@ tags:
|
||||
# under `dart test`. (Tag was historically named `forkpty`, before
|
||||
# T-96 replaced forkpty with posix_spawn.) See `test/pty/session_test.dart`.
|
||||
pty:
|
||||
# Concurrency-vulnerable tests that flake in the parallel flutter pool
|
||||
# (e.g. MessageBus delivery races). The parallel run excludes them
|
||||
# (`--exclude-tags "pty || serial"`); ci/test.sh runs a separate
|
||||
# `--tags serial --concurrency=1` pass and merges its coverage. Prefer a
|
||||
# deterministic await first — only tag `serial` when isolation is the real
|
||||
# fix. (T-193)
|
||||
serial:
|
||||
|
||||
Reference in New Issue
Block a user