Summary
Milestone 4 added direct unit coverage for client::pool::sync::lock_or_recover, but the deeper integration contract should be tested separately: a panic during pool scheduler or slot bookkeeping recovery should not permanently corrupt subsequent scheduler behaviour.
Acceptance criteria
- Add an integration or module-level test that simulates poison during a waiter-table or slot-bookkeeping update.
- Recover through
lock_or_recover.
- Run the next scheduler or slot operation and assert consistency is re-established: waiter counts remain coherent, fairness order is preserved where applicable, and no waiter is lost.
- Keep the test focused on pool bookkeeping; do not apply poison recovery to connection, protocol, lifecycle, serializer, or user state.
Context
This was identified during the CodeRabbit review for PR #534 while implementing the code-base audit plan in docs/execplans/code-base-audit-2026-06-05.md.
Summary
Milestone 4 added direct unit coverage for
client::pool::sync::lock_or_recover, but the deeper integration contract should be tested separately: a panic during pool scheduler or slot bookkeeping recovery should not permanently corrupt subsequent scheduler behaviour.Acceptance criteria
lock_or_recover.Context
This was identified during the CodeRabbit review for PR #534 while implementing the code-base audit plan in
docs/execplans/code-base-audit-2026-06-05.md.