The AfterScenario hook only asserted that the clean command returned 200, but cleaning sessions happens asynchronously in the daemon. Poll the session list until it is empty (60s deadline) so leftover sessions do not leak into the next scenario.