Skip to content

feat: explain changes, handoffs and unresolved work in Captain’s Bridge - #63

Merged
timeleft-- merged 3 commits into
mainfrom
automation/hermes-helmet-58
Oct 9, 2026
Merged

timeleft-- merged 3 commits into
mainfrom
automation/hermes-helmet-58

Conversation

@yia-mw-agent

Copy link
Copy Markdown
Contributor

Closes #58. Part of #53; builds on #54 and #62 (both merged) and #56.

What changed

  • Overview: prose objective/summary, grouped What changed / What remains unresolved / Other recorded work; elapsed time and gaps are now a collapsed section instead of a main block.
  • Work detail: new relations (Handoff, Wakeup, Follow-up) for explicit async relationships across turns, with copy stating order is not causation and silence is not a stall.
  • Evidence: records now expose their original https links; Back restores selection, scroll and focus on the control that opened the view.
  • Validation: titles, labels and link names reject internal planning IDs and chat UUIDs; Hermes steps must cite a record that mentions Hermes.
  • observe-chat skill documents relations; version 0.3.0 -> 0.4.0 with changelog.

Verification

  • scripts/verify.sh passes (Python + node view checks, 29 bridge tests, new focused tests).
  • mw-version.py check passes.
  • Panel inspected in a browser with synthetic records at 400px (no horizontal overflow) and 1000px.
  • Not verified: rendering inside a Codex host (none available on this worker).

@timeleft-- timeleft-- left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The 29 Python tests and three existing JavaScript suites pass on this exact head. One acceptance regression needs repair before host acceptance: expand Elapsed time and gaps on the overview, choose View full activity, then Back to changes. render() recreates the details element closed, so the saved opener is hidden and accessible focus cannot return to it; scrolling is also clamped against the now-shorter overview. Preserve disclosure state in navigation history and restore it before scroll/focus. Add a focused regression that opens the disclosure, navigates to activity, and returns. A reproduction using the existing test_view.cjs fake DOM with details.open initialized to false fails the assertion that the elapsed-time disclosure remains open after back(). Please repair this same PR and preserve its source/tests. Real installed Codex panel acceptance remains Captain-owned after the repaired head; do not block source repair on Docker lacking Codex.

@timeleft-- timeleft-- left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The repaired timing disclosure now survives Back in the installed Codex panel, with focus restored to View full activity. The installed host exposes another material readability defect: in the dark panel, headings, step labels, completion/acceptance labels, brand text and the Show Me button inherit rgb(26,28,31), while their backgrounds are dark. The screenshot makes these labels nearly invisible; muted paragraphs and explicitly colored evidence links remain readable. This reproduces in the real expanded Codex MCP App at the current exact head, not merely a standalone viewer.

Please make the app's primary foreground and background/theme treatment apply reliably to its rendered content in the actual host, covering headings, inherited strong text and ordinary buttons. Preserve the subdued report/acceptance backgrounds and existing layout. Add a focused regression for the host theme/style interaction and inspect both light and dark appearance; no new viewer or unrelated redesign is needed. Current installed-host computed styles: h1/h2/status strong/Show Me button rgb(26,28,31); Show Me background rgb(24,27,34); context text rgb(166,177,201). The inspection surface also reports transparent HTML/body backgrounds. Narrow host geometry remains unverified because the inspection backend reports 1250px even after the Captain narrowed the panel; do not claim a measured 400px host receipt. Existing worker responsive checks remain separate evidence.

@timeleft-- timeleft-- left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed the exact repaired head and accepted child #58. The existing prototype and tests were reused. Independent validation passes 29 Bridge Python tests, all three JavaScript suites, version policy and whitespace checks. Both repairs are resolved: Back preserves the expanded timing disclosure and restores its opener focus; the installed dark Codex panel now renders headings, report/acceptance labels and ordinary buttons in rgb(237,240,250) on the app's dark palette.

Actual installed-host checks used explicitly synthetic records read from this exact chat: grouped overview, actors, separate completion report/acceptance, explicit handoff/wakeup, original evidence with literal HTML-safe text, direct 30-to-10 before/after, Back selection and focus. The inspection backend measured 1250px client/scroll widths with no horizontal overflow; the Captain separately inspected the narrowed side panel and confirmed readable overview/work/source text without clipping or horizontal scrolling. Do not conflate that owner observation with a measured 400px viewport. The source regression covers light/dark theme handling and palette contrast; real-host appearance inspected here was dark.

The exact candidate was installed through the supported Git marketplace CLI and the active server served the repaired renderer without another restart. Required source checks are green. Background preparation, agent-free refresh and optional-skill behavior remain the separate child tickets. Runtime preview image publication remains a separate failing gate; this approval does not claim successful publication.

@timeleft--
timeleft-- merged commit 8b803d3 into main Oct 9, 2026
7 of 9 checks passed
@timeleft--
timeleft-- deleted the automation/hermes-helmet-58 branch October 9, 2026 23:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Explain changes, handoffs and unresolved work in the approved layout

2 participants