{"repo":"NousResearch/hermes-agent","public_id":"126017","display_label":"Harden missed git call sites against config execution","summary":"A bug was identified where four git call sites were not routed through the hardened, non-interactive git environment used elsewhere. These members address fixing those gaps to consistently apply security-hardened git execution across repo probes and index-reading calls.","subsystem":null,"counts":{"members":6,"open_issues":0,"open_issues_distinct":0,"open_prs":0,"closed_issues":1,"merged_prs":1,"attempt_prs":4},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":130661},"resolution":{"state":"resolved","by":"pr-130661"},"freshness":{"state":"verified","last_verified_at":"2026-10-01T19:54:44+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.8666666666666667},"fix_edges":[{"issue_number":126017,"pr_number":130661,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true}],"members":[{"kind":"issue","number":126017,"title":"[Bug]: four git call sites miss the hardened git env used everywhere else","url":null,"state":"closed"},{"kind":"pr","number":126019,"title":"fix(git): run the remaining index-reading git calls under noninteractive_git_env","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"6c51075929","number":0},{"kind":"pr","value":"#130661","number":130661}],"category":"merged_via","implication":"superseded"},"merged":false},{"kind":"pr","number":126075,"title":"fix(git): harden remaining repo probes against config execution","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"6c51075929","number":0},{"kind":"pr","value":"#126019","number":126019},{"kind":"pr","value":"#130661","number":130661}],"category":"merged_via","implication":"superseded"},"merged":false},{"kind":"pr","number":127664,"title":"fix(security): route the four missed git call sites through the hardened git env","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"6c51075929","number":0},{"kind":"pr","value":"#126017","number":126017},{"kind":"pr","value":"#130661","number":130661}],"category":"merged_via","implication":"superseded"},"merged":false},{"kind":"pr","number":130370,"title":"fix(security): harden four unshielded git call sites against repo config injection (#126017)","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"6c51075929","number":0},{"kind":"pr","value":"#126017","number":126017},{"kind":"pr","value":"#130661","number":130661}],"category":"merged_via","implication":"superseded"},"merged":false},{"kind":"pr","number":130661,"title":"fix(git): automatic git runs in kanban, worktree cleanup, subagents and hermes -w no longer execute a cloned repo's filters or hooks (#126017, salvage #126019)","url":null,"state":"merged","close_reason":{"category":"merged","implication":"superseded"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["agent/coding_context.py","hermes_cli/_subprocess_compat.py","hermes_cli/kanban_db_workspace.py","hermes_cli/worktree_gc.py","hermes_cli/worktree_ops.py","tests/security/test_gitspawn_config_injection.py","tests/tools/test_delegation_recovery_diagnostics.py","tools/async_delegation_recovery_hints.py","tools/subagent_worktree.py","tui_gateway/methods_complete_helpers.py","website/docs/user-guide/git-worktrees.md","website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/user-guide/git-worktrees.md"]}],"trust":{"default_tier":"verified","includes_suggested":false}}