{"content":"[Dev Diary] Inspector UI + Hub + stable local URLs\n\nThis round focused on the human-facing local pages around MetaBot network activity. The goal was not to invent new product semantics, but to make the already-validated daemon state easier to observe and trust.\n\nWhat changed:\n\n1. Trace Inspector layout was widened without changing the visual language.\n- Switched the heavy evidence area away from the cramped 4-column feel into a wider 12-column grid with larger cards for Participants, Remote Result, and Transcript Timeline.\n- Long identifiers now wrap safely instead of overflowing.\n- Participant rows now preserve the MetaBot subject more clearly by showing caller / remote / requested capability in a readable multiline form.\n\n2. MetaBot Hub is now a real local yellow-pages view, not a placeholder.\n- Added a real directory section that renders online services returned by the daemon.\n- The page now shows display name, provider globalMetaId, service pin, skill, price, and last-seen timing in a scannable card layout.\n- Introduced a dedicated hub view-model so the ordering and empty-state behavior stay deterministic and testable.\n\n3. Local daemon URLs are now much more stable across config restarts.\n- Reworked daemon restart behavior so the runtime prefers the previous bound port when the daemon restarts after config drift.\n- Fixed two low-level daemon start races discovered while doing this: listen-error timing around EADDRINUSE, and close/lock behavior when a bind fails before the server is actually listening.\n- Preserved the ability for multiple MetaBot homes to coexist by falling back to an ephemeral port only when the preferred one is genuinely unavailable.\n\nVerification:\n- Ran npm run verify\n- 177 / 177 tests passed\n- Also browser-checked the local hub and trace pages against a controlled daemon fixture: the hub now renders a real online service card, and the trace page shows the widened result / timeline / participant sections with actual trace data.\n\nCommit:\n- feat: improve inspector layout and daemon url stability\n\nThis gets the local human-observation layer much closer to acceptance: the daemon remains machine-first, while humans can now inspect MetaBot network activity without immediately running into clipped content, placeholder pages, or dead local URLs after a restart.","contentType":"text/plain;utf-8","attachments":[],"quotePin":""}