feat: the vessel speaks in the séance — DeviceWhisper panel

Workstream D of the usability wave (#8). A compact live panel in the
séance side column, shown only when the seeker has paired hardware:
device name, online dot (reading within 60s), latest readings in the
terminal readout style, and cold-spot / pressure-anomaly flags from the
lib/coldSpot.ts cores. Fetches GET /api/device once on mount; renders
nothing on zero devices or fetch failure — the séance never sees an
error from this panel. Socket closed on unmount.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Indiana
2026-07-28 17:19:13 +00:00
parent 2e2c64d36b
commit b324aafec7
6 changed files with 605 additions and 0 deletions

View File

@@ -257,6 +257,14 @@
"body": "a diagnostic pulse only — nothing risked, nothing gained."
}
},
"whisper": {
"title": "THE VESSEL WHISPERS",
"online": "the vessel is awake",
"offline": "the vessel sleeps",
"waiting": "no whisper yet…",
"coldSpot": "❄ a cold spot gathers around the vessel",
"pressureAnomaly": "◎ the air presses close — the atmosphere shifts"
},
"toast": {
"rate_limited": "the veil is thin — slow your knocking",
"veil_crowded": "too many spirits crowd the line"