{"repo":"NousResearch/hermes-agent","public_id":"93893","display_label":"Desktop URL validation and title-fetch fixes","summary":"These issues and patches address improper URL handling in the desktop app, where unvalidated or malformed URLs (including directive wrappers and chat markup) leak into fetch and load calls, causing errors. Fixes include stripping wrappers, validating schemes, and guarding related edge cases.","subsystem":null,"counts":{"members":4,"open_issues":0,"open_issues_distinct":0,"open_prs":0,"closed_issues":1,"merged_prs":1,"attempt_prs":2},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":122000,"merged_at":"2026-09-27T01:29:48+00:00"},"resolution":{"state":"resolved","by":"pr-122000"},"freshness":{"state":"verified","last_verified_at":"2026-09-27T01:29:48+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.5},"fix_edges":[{"issue_number":91068,"pr_number":122000,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-27T01:29:48+00:00"},{"issue_number":91611,"pr_number":122000,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-27T01:29:48+00:00"},{"issue_number":91626,"pr_number":122000,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-27T01:29:48+00:00"},{"issue_number":92068,"pr_number":122000,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-27T01:29:48+00:00"},{"issue_number":92371,"pr_number":122000,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-27T01:29:48+00:00"},{"issue_number":92569,"pr_number":122000,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-27T01:29:48+00:00"},{"issue_number":93893,"pr_number":122000,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-27T01:29:48+00:00"},{"issue_number":94703,"pr_number":122000,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-27T01:29:48+00:00"}],"members":[{"kind":"issue","number":93893,"title":"Desktop: chat @url: link markup leaks into Electron loadURL(), producing bogus ERR_NAME_NOT_RESOLVED on printf-style code snippets","url":null,"state":"closed"},{"kind":"pr","number":94002,"title":"fix(desktop): validate link-title URLs before curl/renderer load","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#122000","number":122000}],"category":"superseded_by_pr","implication":"superseded"},"merged":false},{"kind":"pr","number":94149,"title":"fix(desktop): strip directive wrappers and validate URLs before title fetches","url":null,"state":"closed","close_reason":{"category":"implemented_elsewhere","implication":"superseded"},"merged":false},{"kind":"pr","number":122000,"title":"fix(desktop): wave-8 misc fixes — search title, keybind guard, skill pill, @file: titles, math backslash, Cmd+1-9, @url: scheme, ARM64 gate","url":null,"state":"merged","close_reason":{"category":"merged"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["agent/title_generator.py","apps/bootstrap-installer/src-tauri/src/bootstrap.rs","apps/bootstrap-installer/src-tauri/src/update.rs","apps/desktop/electron/link-title-url.test.ts","apps/desktop/electron/link-title-url.ts","apps/desktop/electron/main.ts","apps/desktop/src/app/chat/sidebar/index.tsx","apps/desktop/src/app/chat/sidebar/search-result-to-session.test.ts","apps/desktop/src/app/hooks/use-keybinds.ts","apps/desktop/src/components/assistant-ui/markdown-text.test.ts","apps/desktop/src/components/pane-shell/tree/tab-slot-shown.test.ts","apps/desktop/src/i18n/de.ts","apps/desktop/src/i18n/en.ts","apps/desktop/src/i18n/es.ts","apps/desktop/src/i18n/fr.ts","apps/desktop/src/lib/keybinds/actions.test.ts","apps/desktop/src/lib/keybinds/actions.ts","apps/desktop/src/lib/keybinds/combo.test.ts","apps/desktop/src/lib/keybinds/combo.ts","apps/desktop/src/lib/markdown-preprocess.ts","apps/desktop/src/store/suggestion-providers/skill.test.ts","apps/desktop/src/store/suggestion-providers/skill.ts","apps/desktop/src/types/hermes.ts","scripts/desktop-update/posix.sh","scripts/install.ps1","scripts/install.sh","tests/agent/test_title_generator.py","tests/scripts/desktop_update/test_desktop_update_linux_gate_arm.py","tests/scripts/install/test_install_desktop_product_present.py"]}],"trust":{"default_tier":"verified","includes_suggested":false}}