The feed grew a real table: a Postman-style, sortable / resizable / reorderable column grid for the 1-line view, with a device split, a status dot, humanized durations, and server-side search that finally reports the right "X of N". BusyBro caught up to the MCP surface at 87 tools and gained per-service specialist agents, a ⚡ Performance specialist, web access, and a persistent floating panel you can resize from all eight sides. The status board pivoted its Supabase card to our own per-service health, and the proxy-server absorbed a stack of open-relay-flood hardening plus the issue-#001 source-IP gate. iOS dropped its deployment floor to iOS 16. Dashboard builds 299 → 308; Supabase migrations 215 → 227; proxy-server builds 137 → 141; status builds 3 → 9; iOS build 167.
What changed
Proxyman-grade feed table (dashboard 299 → 308 / supabase 216 → 219)
- The 1-line feed is now a Postman-style column table (299 / supabase 216) — columns are sortable, resizable, reorderable, and draggable (302 / supabase 217), with chevron sort icons and draggable column chips for picking which columns show (303 / supabase 218).
- Device split with a per-row status dot and a mobile-first default column set (301), humanized request duration, and sortable Time / Method / ID columns (302 / supabase 217).
- Counter divergence fix — live host counts are now scope-gated and the double per-device increment was dropped, so the displayed totals stay correct (300).
- A refined detail layout for the expanded row (304 / supabase 219).
Server-side feed search (dashboard 294 / supabase 215)
- Feed search moved to the server via the new
entries_filtered_listRPC backed by a trigram GIN index, fixing the "0 of N / no entries match" bug and returning the correct "X of N" match count.
BusyBro: full MCP parity → 87 tools (dashboard 308 / supabase 226)
- BusyBro now reaches full MCP parity at 87 tools (308 / supabase 226), with a jsonb-arg coercion fix so object-typed tool arguments are no longer stored as strings (supabase 227).
- Per-service specialist agents — BusyBro can spin up and route to per-service specialists (dashboard 306 / supabase 221), distinguishes those agents from the component roster (supabase 222), and supports managing service agents with id deep-links (supabase 224) plus parity-audit fixes —
list_tagsreturnsid, and Telegram id deep-link templates (supabase 225). - A ⚡ Performance specialist and a cross-cutting
performance/workspace, mirroring the security specialist (supabase 220). - Web access via the Anthropic
web_searchserver tool (supabase 223). - A persistent floating panel (305) that is resizable from all eight sides — four edges plus four corners (307).
- Telegram discussion mode with id deep-links (supabase 224 → 225).
Status board (status 3 → 9 / proxy 141)
- The Supabase Platform card pivoted from upstream Cloud Pro status to our project's per-service health grid (Auth / Storage anon probes plus db / rest / realtime / pooler via the Management API), with project meta and our-region-only maintenance (status 8). The project region is read from the Management API — we are
eu-west-1, noteu-west-2(status 9). - A Proxy Security card surfaces flood / abuse signals and the issue-#001 gate, positioned directly under the Host card (proxy 141 / status 3 → 7).
Proxy hardening (proxy 137 → 141)
- Open-relay flood fixes — a capture freeze + OOM under flood (137) and insert starvation that crowded out legitimate capture (138), plus a per-device enqueue rate cap that protects legit capture from relay floods (139).
- Issue #001 — source-IP PAC gate — reworked to a durable source-IP binding since the iOS PAC is
PROXY-only, shipped in shadow mode with pac-flow logging, plus a PAC apex directive (140). The pool range is documented as 9000–9999.
iOS 16 support (ios 167)
- BusymateHelper now runs on iOS 16 —
@Observablemigrated toObservableObject, anonChangeCompatshim, and availability gates throughout (#43).
Where it's documented
- The feed table, view options, and server-side search: Dashboard — How-to.
- BusyBro's tool parity, specialists, web access, and floating panel: BusyBro — How-to, BusyBro architecture, and MCP — How-to.
- The status board's per-service Supabase card and Proxy Security card: Status — How-to and Status board architecture.
- The proxy-server flood hardening and source-IP gate: Web proxy architecture.