{"repo":"NousResearch/hermes-agent","public_id":"57569","display_label":"Stale credential caching bugs and fixes","summary":"These issues and PRs concern a bug where auth.json retains outdated or stale credentials after provider or model switches, leading to problems like double requests and incorrect endpoint usage. The members address detection and pruning of stale custom credentials across multiple provider scenarios.","subsystem":"agent","counts":{"members":3,"open_issues":1,"open_issues_distinct":1,"open_prs":0,"closed_issues":0,"merged_prs":1,"attempt_prs":1},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":58505,"merged_at":"2026-07-05T07:55:52+00:00"},"resolution":{"state":"unresolved","by":null},"freshness":{"state":"verified","last_verified_at":"2026-07-05T07:55:52+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.6666666666666666},"fix_edges":[{"issue_number":57569,"pr_number":58505,"tier":"verified","basis":"superseded_ref","confidence":0.9,"recoverable_from_timeline":false,"pr_merged_at":"2026-07-05T07:55:52+00:00"}],"members":[{"kind":"issue","number":57569,"title":"[Bug]: auth.json caches credentials, causing double requests, old and new endpoints","url":null,"state":"open"},{"kind":"pr","number":58409,"title":"fix(auth): prune stale custom model credentials","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#58505","number":58505}],"category":"merged_via","implication":"superseded"},"merged":false},{"kind":"pr","number":58505,"title":"fix(cli): preserve static custom provider models + prune stale custom credentials (2-PR salvage)","url":null,"state":"merged","close_reason":{"category":"merged"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["hermes_cli/config.py","hermes_cli/model_setup_flows.py","hermes_cli/model_switch.py","scripts/release.py","tests/hermes_cli/test_custom_provider_model_switch.py","tests/hermes_cli/test_inventory.py","tests/hermes_cli/test_model_switch_custom_providers.py"]}],"trust":{"default_tier":"verified","includes_suggested":false}}