Why I Stopped Calling flush() in My Repositories — and What I Do Instead