{"repo":"NousResearch/hermes-agent","public_id":"25351","display_label":"TUI bundle staleness check and rebuild loop fixes","summary":"These issues and PRs address incorrect bundle filename detection in the dashboard TUI staleness check, which caused infinite or blocking npm rebuild loops on every PTY spawn, including failures on read-only filesystems and behind reverse proxies. Related work includes switching the TUI bundle to esbuild and fixing off-event-loop argv handling.","subsystem":"gateway","counts":{"members":5,"open_issues":0,"open_issues_distinct":0,"open_prs":0,"closed_issues":2,"merged_prs":1,"attempt_prs":2},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":48561},"resolution":{"state":"unresolved","by":null},"freshness":{"state":"verified","last_verified_at":"2026-06-19T02:20:53+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.43600000000000005},"fix_edges":[{"issue_number":25351,"pr_number":48561,"tier":"verified","basis":"superseded_ref","confidence":0.9,"recoverable_from_timeline":false}],"members":[{"kind":"issue","number":25351,"title":"Dashboard chat silently breaks behind reverse proxies: _hermes_ink_bundle_stale() always returns True, triggering 15s blocking npm run build on every PTY spawn","url":null,"state":"closed"},{"kind":"issue","number":30228,"title":"Dashboard --tui fails on read-only /usr: ink-bundle.js / entry-exports.js filename mismatch causes infinite rebuild loop","url":null,"state":"closed"},{"kind":"pr","number":20951,"title":"fix(tui): correct hermes-ink bundle filename in staleness check","url":null,"state":"closed","close_reason":{"category":"stale_abandoned","implication":"active"},"merged":false},{"kind":"pr","number":26124,"title":"fix(dashboard): resolve chat TUI argv off event loop","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#48561","number":48561},{"kind":"pr","value":"#48561","number":48561}],"category":"superseded_by_pr","implication":"superseded"},"merged":false},{"kind":"pr","number":48561,"title":"fix(dashboard): resolve chat TUI argv off event loop","url":null,"state":"merged","close_reason":{"category":"merged","implication":"superseded"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["hermes_cli/web_server.py","scripts/release.py","tests/hermes_cli/test_web_server.py"]}],"trust":{"default_tier":"verified","includes_suggested":false}}