A community based topic aggregation platform built on atproto

test(testkit): complete the harness — PDS client, cursor-gated firehose, AppView client master

Phase 1 task 4. pds.go consolidates five drifted PDS-client-factory adapters, both createPDSAccount copies, and the hand-rolled XRPC clients (TID() now wraps indigo's TIDClock — the old generateTID never emitted a valid TID). firehose.go replaces ten broken subscribeToJetstream copies: gorilla marks a websocket corrupt after a read-deadline expiry, so their continue-on-timeout idiom silently capped every ' 30s' wait at ~5s. The testkit subscriber captures its cursor at construction, re-dials on any read error resuming from last time_us with a same-microsecond dedupe set, counts cursor-predating discards, and fails on buffer overflow. appview.go adds typed XRPC status errors (retry-vs-terminal for WaitFor), ConsumerHealth diagnostics, and transient-aware wait adapters. Full-panel reviewed (Codex + 3 specialty streams + security: clean); ~28 fixes applied. testkit: 117 tests, -race -shuffle green. make ci green: 3429 tests, 14 allowlisted skips. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>