{"repo":"NousResearch/hermes-agent","public_id":"108537","display_label":"Profile context lost during deferred/background work","summary":"A bug where deferred background operations (reviews, curator, catalog, ledger replay, plugin routes) lose the originating profile before execution, and related fixes to preserve that profile context through idle dispatch and off-turn work.","subsystem":"agent","counts":{"members":3,"open_issues":0,"open_issues_distinct":0,"open_prs":1,"closed_issues":1,"merged_prs":1,"attempt_prs":1},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":126165,"merged_at":"2026-09-28T12:37:56+00:00"},"resolution":{"state":"resolved","by":"pr-126165"},"freshness":{"state":"verified","last_verified_at":"2026-09-28T12:37:56+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.6666666666666666},"fix_edges":[{"issue_number":103778,"pr_number":126165,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-28T12:37:56+00:00"},{"issue_number":108537,"pr_number":126165,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-28T12:37:56+00:00"},{"issue_number":120310,"pr_number":126165,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-28T12:37:56+00:00"},{"issue_number":123265,"pr_number":126165,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-28T12:37:56+00:00"},{"issue_number":123372,"pr_number":126165,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-28T12:37:56+00:00"},{"issue_number":125032,"pr_number":126165,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-28T12:37:56+00:00"}],"members":[{"kind":"issue","number":108537,"title":"Deferred background reviews lose the originating profile before the enabled check and worker spawn","url":null,"state":"closed"},{"kind":"pr","number":108538,"title":"fix(review): preserve the originating profile through idle dispatch","url":null,"state":"open","close_reason":{"category":"silent_close","implication":"active"},"merged":false},{"kind":"pr","number":126165,"title":"Off-turn work (curator, deferred reviews, catalog SWR, plugin API routes, ledger replay) runs under the requesting profile; import model_tools no longer creates state.db (#125032 #108537 #120310 #123372 #103778 #123265)","url":null,"state":"merged","close_reason":{"category":"merged"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["agent/curator.py","agent/review_idle_queue.py","gateway/run_notifications.py","gateway/run_startup.py","hermes_cli/model_catalog.py","hermes_cli/web_server_dashboard.py","tests/agent/test_curator.py","tests/agent/test_review_idle_queue.py","tests/fixtures/plugins/example-dashboard/dashboard/plugin_api.py","tests/gateway/test_multiplex_unserved_shared_ingress.py","tests/hermes_cli/test_model_catalog.py","tests/hermes_cli/test_web_server.py","tests/plugins/test_kanban_dashboard_plugin.py","tests/tools/test_async_delegation.py","tests/tools/test_process_registry_lazy_restore.py","tests/tui_gateway/test_notification_turn_release.py","tools/async_delegation.py","tools/process_registry.py","tui_gateway/session_notifications.py"]}],"trust":{"default_tier":"verified","includes_suggested":false}}