{"repo":"NousResearch/hermes-agent","public_id":"124029","display_label":"Gateway identity matching and package-manager update fixes","summary":"These items address failures in gateway identity matchers to recognize pm-runtime and Hermes inline-bootstrap launchers, and fix package-manager installs losing features, dependencies, and diagnostics across updates. Several entries salvage or supersede earlier related changes.","subsystem":"gateway","counts":{"members":6,"open_issues":0,"open_issues_distinct":0,"open_prs":0,"closed_issues":1,"merged_prs":3,"attempt_prs":2},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":124965},"resolution":{"state":"resolved","by":"pr-126133"},"freshness":{"state":"verified","last_verified_at":"2026-09-28T13:42:01+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.3333333333333333},"fix_edges":[{"issue_number":123109,"pr_number":124965,"tier":"verified","basis":"superseded_ref","confidence":0.9,"recoverable_from_timeline":false},{"issue_number":123151,"pr_number":126133,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true},{"issue_number":123430,"pr_number":126133,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true},{"issue_number":123971,"pr_number":124965,"tier":"verified","basis":"superseded_ref","confidence":0.9,"recoverable_from_timeline":false},{"issue_number":124029,"pr_number":124965,"tier":"verified","basis":"superseded_ref","confidence":0.9,"recoverable_from_timeline":false},{"issue_number":124029,"pr_number":126133,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true},{"issue_number":124029,"pr_number":126172,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true},{"issue_number":124049,"pr_number":126172,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true},{"issue_number":124214,"pr_number":126172,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true},{"issue_number":124228,"pr_number":126172,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true},{"issue_number":124318,"pr_number":124965,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true},{"issue_number":124418,"pr_number":126172,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true},{"issue_number":124588,"pr_number":124965,"tier":"verified","basis":"superseded_ref","confidence":0.9,"recoverable_from_timeline":false},{"issue_number":124635,"pr_number":126172,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true},{"issue_number":124659,"pr_number":124965,"tier":"verified","basis":"superseded_ref","confidence":0.9,"recoverable_from_timeline":false},{"issue_number":124893,"pr_number":124965,"tier":"verified","basis":"superseded_ref","confidence":0.9,"recoverable_from_timeline":false},{"issue_number":124893,"pr_number":126133,"tier":"verified","basis":"superseded_ref","confidence":0.9,"recoverable_from_timeline":false},{"issue_number":125610,"pr_number":126133,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true}],"members":[{"kind":"issue","number":124029,"title":"pm-runtime launcher cmdline is never recognized by gateway identity matchers; `live_gateway_pid_for_home()` can never verify a shim-launched gateway","url":null,"state":"closed"},{"kind":"pr","number":124312,"title":"fix(gateway): recognise the pm-runtime inline launcher as a gateway identity","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"60e531cb52","number":0},{"kind":"pr","value":"#124965","number":124965},{"kind":"pr","value":"#124965","number":124965},{"kind":"pr","value":"#124318","number":124318},{"kind":"pr","value":"#123331","number":123331}],"category":"merged_via","implication":"superseded"},"merged":false},{"kind":"pr","number":124965,"title":"fix(gateway): recognise Hermes inline-bootstrap gateways on every OS (salvage #123331)","url":null,"state":"merged","close_reason":{"category":"merged","implication":"superseded"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["gateway/status.py","hermes_cli/gateway_windows.py","hermes_cli/update_cmd_windows.py","hermes_cli/update_fleet_scope.py","tests/e2e/core/windows_update/_machine.py","tests/e2e/core/windows_update/test_gateway_across_update.py","tests/e2e/core/windows_update/test_update_spares_other_installs.py","tests/gateway/test_gateway_inline_bootstrap_identity.py","tests/hermes_cli/test_update_windows_cross_install_gateway.py"]},{"kind":"pr","number":126133,"title":"Live gateway identity files survive matcher mismatches; bootstrap-launched record names its entry point; held lock without gateway.pid no longer aborts Windows update (#125610, #124029, #123151, #123430, salvage #125679)","url":null,"state":"merged","close_reason":{"category":"merged","implication":"superseded"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["gateway/status.py","tests/gateway/test_status.py"]},{"kind":"pr","number":126172,"title":"fix(pm): package-manager installs keep features, deps and diagnostics across updates (salvage #124060, #124246, #124446, #124656)","url":null,"state":"merged","close_reason":{"category":"merged","implication":"superseded"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["hermes_bootstrap.py","hermes_cli/_early_recovery.py","hermes_cli/doctor.py","hermes_cli/doctor_platform.py","hermes_cli/main_install_repair.py","hermes_cli/source_build.py","pm/cli.py","pm/environment.py","pm/environments.py","pm/index_config.py","tests/e2e/core/upgrade/handoff/_handoff.py","tests/e2e/core/upgrade/hosts/test_permissions.py","tests/e2e/core/upgrade/network/test_mirrors.py","tests/e2e/core/upgrade/pm/test_configured_features.py","tests/e2e/core/upgrade/pm/test_interpreter_hygiene.py","tests/e2e/core/upgrade/pm/test_stamps_and_doctor.py","tests/hermes_cli/test_doctor_web_dashboard_import.py","tests/hermes_cli/test_update_missing_configured_deps.py","tests/pm/test_environment_build.py","tests/pm/test_install_state_permissions.py","tests/tools/test_code_execution_pm_runtime.py","tools/code_execution_env.py"]},{"kind":"pr","number":127302,"title":"fix(gateway): recognize the pm-runtime launcher bootstrap in gateway identity matchers (fixes #124029)","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#123971","number":123971},{"kind":"pr","value":"#107002","number":107002},{"kind":"pr","value":"#129945","number":129945}],"category":"uncategorized","implication":"needs_llm"},"merged":false}],"trust":{"default_tier":"verified","includes_suggested":false}}