{"repo":"NousResearch/hermes-agent","public_id":"88607","display_label":"WebSocket rejection codes not reaching browser clients","summary":"These items address a bug where WebSocket close/rejection codes (4401/4403/4404) are never delivered to the browser because the connection is closed before the handshake completes, resulting in a plain HTTP 403 instead. The fixes ensure the handshake is completed before sending rejection codes.","subsystem":"dashboard","counts":{"members":3,"open_issues":1,"open_issues_distinct":1,"open_prs":2,"closed_issues":0,"merged_prs":0,"attempt_prs":2},"landed_fix":null,"resolution":{"state":"unresolved","by":null},"freshness":{"state":"never_verified","last_verified_at":null,"is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":1.0},"fix_edges":[],"members":[{"kind":"issue","number":88607,"title":"Dashboard WebSocket rejections never reach the browser: close-before-accept becomes HTTP 403, so the 4401/4403/4404 handling in web/ is dead","url":null,"state":"open"},{"kind":"pr","number":88613,"title":"fix(dashboard): complete the WS handshake before sending rejection codes","url":null,"state":"open","close_reason":{"refs":[{"kind":"pr","value":"#88607","number":88607},{"kind":"pr","value":"#88619","number":88619}],"category":"uncategorized","implication":"needs_llm"},"merged":false},{"kind":"pr","number":88619,"title":"fix(web_server): deliver WebSocket rejection close codes to the client","url":null,"state":"open","close_reason":{"category":"wontfix_bydesign","implication":"wontfix"},"merged":false}],"trust":{"default_tier":"verified","includes_suggested":false}}