bytelyst-devops-tools/dashboard/web
Hermes VM ecd1f20d59 feat(dashboard): Phase 2 — instance dimension across Mission Control
Closes Phase 2. Every entity in `web/src/lib/hermes` now carries an
`instanceId: 'vijay' | 'bheem'` (with `'all'` allowed for cross-cutting
agents like Hermes Core / GitHub link), and a global instance switcher
above every Mission Control pane filters them.

Library changes (`web/src/lib/hermes.ts`):
  - New `HermesInstanceId` / `HermesInstanceFilter` types + `HERMES_INSTANCES`
    metadata array.
  - `instanceId` added to `HermesProduct`, `HermesTask`, `HermesEvent`,
    `HermesRun`, `HermesAgentStatus`. Seed data deterministically split
    ~50/50 across instances; agents tagged per-scope (Local VM runner →
    bheem, CLI runner / Scheduler → vijay, Hermes Core / GitHub /
    OpenClaw / deployment / notifications → all).
  - `getHermesTasks({instance})`, `getHermesProducts(view, instance)`,
    `getHermesAgents(instance)`, `getHermesHistory(instance)`,
    `getHermesOverview(instance)` all accept the filter; helper
    `instanceMatches(scope, filter)` keeps the semantics consistent
    (always-match for `'all'` on either side).

UI changes:
  - New `HermesInstanceProvider` (React context, localStorage-backed
    under `hermes.instanceFilter.v1`, SSR-safe default to avoid
    hydration mismatch) mounted in `app/hermes/layout.tsx`.
  - New `HermesInstanceSwitcher` segmented control (radiogroup with
    aria-checked) rendered in the layout header above every pane.
  - New `HermesInstanceBadge` shown on task rows (Active Missions +
    Task Ledger), product cards (overview minicards + portfolio
    cards), and agent cards.
  - `/hermes` overview gains a "Per-instance roll-up" section that
    always shows Vijay vs Bheem side-by-side regardless of the active
    filter — that's the always-cross-instance comparison view, while
    the eight metric cards above it are filtered by the switcher.

Tests:
  - 2 new unit tests in `lib/hermes.test.ts` (instance tagging on seed
    data + filter semantics across tasks/products/agents/overview).
  - 1 new E2E test asserting the switcher's radiogroup, default
    selection, and persistence-friendly state change.
  - All green: 13/13 web unit tests, 7/7 E2E.

`web/test-results/` and `web/playwright-report/` added to `.gitignore`
since they're regenerated per run.

Generated with [Devin](https://cli.devin.ai/docs)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-05-30 07:43:55 +00:00
..
e2e feat(dashboard): Phase 2 — instance dimension across Mission Control 2026-05-30 07:43:55 +00:00
public feat(devops): adopt trading web deployment model with docker-compose 2026-05-11 03:24:11 +00:00
src feat(dashboard): Phase 2 — instance dimension across Mission Control 2026-05-30 07:43:55 +00:00
.env.local.example feat(devops-web): fix responsive layout and add comprehensive dashboard pages 2026-05-11 03:10:31 +00:00
.gitignore feat(dashboard): Phase 2 — instance dimension across Mission Control 2026-05-30 07:43:55 +00:00
.pnpmfile.cjs feat(devops-web): add UX foundation - local package resolution and design tokens 2026-05-11 02:01:29 +00:00
Dockerfile feat(devops): restore dashboard build and log polling 2026-05-18 09:00:56 +00:00
eslint.config.mjs fix(dashboard): Phase 5 P0 — correct CI workspace path + real ESLint 2026-05-30 06:50:32 +00:00
next-env.d.ts feat: add Hermes mission control dashboard 2026-05-26 08:27:59 +00:00
next.config.js feat: add Hermes mission control dashboard 2026-05-26 08:27:59 +00:00
package-lock.json feat(dashboard/vm): Phases 1.1, 1.3, 3.1, 3.4 — VM page panels 2026-05-27 21:49:23 +00:00
package.json fix(dashboard): Phase 5 P0 — correct CI workspace path + real ESLint 2026-05-30 06:50:32 +00:00
playwright.config.ts feat: add Hermes mission control dashboard 2026-05-26 08:27:59 +00:00
postcss.config.js feat(devops-web): fix responsive layout and add comprehensive dashboard pages 2026-05-11 03:10:31 +00:00
tailwind.config.ts feat(devops-web): fix responsive layout and add comprehensive dashboard pages 2026-05-11 03:10:31 +00:00
tsconfig.json feat: add Hermes mission control dashboard 2026-05-26 08:27:59 +00:00
tsconfig.tsbuildinfo fix: systematic bug fixes — code-quality parser, env key, config warnings, auth cleanup, deployment safety 2026-05-27 18:53:20 +00:00
vitest.config.ts feat: add Hermes mission control dashboard 2026-05-26 08:27:59 +00:00