Plugin live events smoke (UH-94)
Status: manual smoke for MissionDrilldown live SSE tail.
Prerequisites
Section titled “Prerequisites”- Hermes dashboard running (
hermes dashboardor LaunchAgent). - UH plugin linked and built:
cd ~/AgenticEngineering/ultimate-harnessbun run plugin:buildln -snf "$PWD/apps/hermes-plugin/dashboard" ~/.hermes/plugins/uh/dashboardcurl -s http://127.0.0.1:9119/api/dashboard/plugins/rescanRestart the dashboard if /api/plugins/uh/* routes 404 after first install.
Smoke steps
Section titled “Smoke steps”- Open
http://127.0.0.1:9119/→ Ultimate Harness tab. - Pick a mission and click Run (or use
uh mission run <id>from a terminal). - While the run is running, open the mission drilldown (hash
#/uh/mission/<id>or pinned run route). - Select the Events tab.
- Confirm:
- Header shows
live(not static “Loading events…”). - New NDJSON lines appear within ~200ms of adapter writes.
- Scrolling down locks auto-scroll; scroll back to top resumes tailing newest events.
- Header shows
- After the run finishes, refresh or re-open drilldown — Events tab should fall back to static historical NDJSON (no
livebadge).
curl check (backend only)
Section titled “curl check (backend only)”With a finished run on disk:
curl -N "http://127.0.0.1:9119/api/plugins/uh/missions/<mission>/runs/<run>/events?stream=1"Expect data: {...} frames and event: done after terminal events drain.
Automated coverage
Section titled “Automated coverage”- Vitest:
tests/live-events-utils.test.ts - Pytest SSE:
apps/hermes-plugin/dashboard/tests/test_events_sse.py(UH-93)