Fix FirehoseConsumer unlike footguns: chain poisoning and silent drop
Two issues addressed on the unlike path:
1. `this.processing = this.processing.then(...)` had no `.catch()`, so a
future refactor that let handleUnlike reject would permanently poison
the chain and silently drop every subsequent unlike. Added a catch
that logs and absorbs the error.
2. On `lookupSubjectUri` failure, the previous code logged and returned
without advancing the cursor — but a later like-create in the same
session would push pendingCursor past the failed event's time_us,
so the unlike was silently dropped. Now we force a reconnect via
`this.ws?.close()`, which resumes from `lastFlushedCursor` and
replays the failed unlike.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>