test(ingest): cover caught-up break, filtered live-edge, fast-flow, identity
Add regression tests locking the ingestEvents loop behavior reviewed for the
quiet-stream fix:
- caught-up break collects the batch + cursor when a kept event reaches the
live edge (the exit path neither existing test exercised)
- the caught-up check now fires on a filtered live event too (early return),
deferring a following kept event to the next cycle rather than collecting it
- fast-flowing events within the deadline are all collected (the
next()/timeout race drops nothing)
- #identity events surface as handle updates through the ingest path