Files
hermes-agent/apps
Teknium eb1b14b952 test(desktop-e2e): fix spec drift accrued while the lane was disabled
The Desktop E2E lane was disabled Aug 2 – Sep 1; the app and gateway kept
moving, so 16 specs rotted against current main. All failures traced to
spec/harness drift, not product regressions:

- fixtures.ts: title generation now rides the main model (#83636), firing a
  background completion at the mock after every turn — it contains the whole
  conversation (trigger keywords included), advancing scripted-turn indices
  and tripping hold-for-prompt matchers. Disabled by default in the mock
  provider config; specs supplying their own `auxiliary:` section own it.
- chat/interim-messages/session-compression/correction-session-switch/
  hidden-history-messages: busy-state and transcript assertions updated to
  the current composer aria-labels, interim-message semantics, and
  verify-on-stop continuation behavior on main.
- bot-mode-closed-chat-stays-closed/group-to-local-bot-handoff: Bot Chat tab
  selectors updated for the Bot Mode rework (tabs keyed by
  connection+profile, renamed tab triggers).
- glyph-spinner: assertions made compositor-honest for the CI runner
  (steps() keyframes + layer promotion probed via the animation registry
  instead of GPU-dependent screenshots).
- sidebar-states/tile-unread-bug: event-driven waits with mock-server
  release handles replace wall-clock polls that lost races on loaded
  runners.
- warm-resume-jitter/image-attachment-resume: real-session-builder harness
  waits for the thread viewport before evaluating; failure path now dumps
  per-surface pane state.

Local full-suite run on the CI-equivalent xvfb setup: 62 passed,
11 skipped, 1 flaky-passed (correction-session-switch live-correction spec,
passes on retry). No product code changed.
2026-09-01 12:04:29 -07:00
..