The shared test session kept whatever a failing handler flushed and never committed, so a later read in the test saw a write production loses when get_db closes the session — and a handler whose failure path must commit (E16: the tracker's issue link) looked right without the commit.