{"repo":"NousResearch/hermes-agent","public_id":"96776","display_label":"Fix false-positive hardline blocks on grep quote patterns","summary":"These issues and PRs address a bug where valid grep patterns containing quoted bracket classes or escaped quotes were incorrectly triggering hardline approval blocks. The fixes update shell tokenization and approval logic to correctly handle these 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":110990,"merged_at":"2026-09-14T16:19:26+00:00"},"resolution":{"state":"resolved","by":"pr-110990"},"freshness":{"state":"verified","last_verified_at":"2026-09-14T16:19:26+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.5},"fix_edges":[{"issue_number":70838,"pr_number":110990,"tier":"verified","basis":"superseded_ref","confidence":0.9,"recoverable_from_timeline":false,"pr_merged_at":"2026-09-14T16:19:26+00:00"},{"issue_number":96776,"pr_number":110990,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-14T16:19:26+00:00"}],"members":[{"kind":"issue","number":96776,"title":"approvals hardline block false-positive on grep bracket class containing a quote","url":null,"state":"closed"},{"kind":"pr","number":96805,"title":"fix(approval): stop valid quoted grep patterns from being hardline-blocked","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"e383c28d2ffc","number":0},{"kind":"pr","value":"#110990","number":110990}],"category":"implemented_elsewhere","implication":"superseded"},"merged":false},{"kind":"pr","number":96826,"title":"fix(tools): allow grep bracket-class quotes in shell tokenizer (#96776)","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"e383c28d2ffc","number":0},{"kind":"pr","value":"#110990","number":110990}],"category":"implemented_elsewhere","implication":"superseded"},"merged":false},{"kind":"pr","number":110990,"title":"fix(approval): escaped quotes in grep patterns no longer hardline-blocked, and no longer hide a following hardline command (#96776, salvage #85922)","url":null,"state":"merged","close_reason":{"category":"merged"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["tests/tools/test_hardline_escaped_quote_state.py","tools/approval_detection.py","website/docs/user-guide/security.md"]}],"trust":{"default_tier":"verified","includes_suggested":false}}