{"repo":"NousResearch/hermes-agent","public_id":"2348","display_label":"Merge conflict markers breaking Hermes installs/updates","summary":"Multiple issues and fixes address merge conflict markers accidentally shipped in source files (notably web_server.py and cli.py), causing broken installs and updates on Windows and other platforms. The fixes focus on guarding install paths and ensuring update operations reset cleanly rather than leaving conflict markers in place.","subsystem":"hermes_cli","counts":{"members":4,"open_issues":0,"open_issues_distinct":0,"open_prs":0,"closed_issues":2,"merged_prs":1,"attempt_prs":1},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":59304},"resolution":{"state":"partially_resolved","by":"pr-59304"},"freshness":{"state":"verified","last_verified_at":"2026-07-06T02:35:31+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_PARTIAL","link_density":0.3933333333333333},"fix_edges":[{"issue_number":59004,"pr_number":59304,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true}],"members":[{"kind":"issue","number":2348,"title":"'hermes update' can pull non working files","url":null,"state":"closed"},{"kind":"issue","number":59004,"title":"[Bug]: Windows installer ships broken web_server.py (merge conflict markers)","url":null,"state":"closed"},{"kind":"pr","number":59230,"title":"fix(install): guard Windows desktop installs against broken web_server","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#59304","number":59304}],"category":"merged_via","implication":"superseded"},"merged":false},{"kind":"pr","number":59304,"title":"fix(install): guard Windows desktop installs against broken web_server (salvage #59230)","url":null,"state":"merged","close_reason":{"category":"merged","implication":"superseded"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["hermes_cli/main.py","scripts/install.ps1","tests/hermes_cli/test_update_post_pull_syntax_guard.py","tests/test_install_ps1_web_server_syntax_probe.py"]}],"trust":{"default_tier":"verified","includes_suggested":false}}