Development record
guard tokenizer misses the ampersand redirection operators &> and &>> so a glued or spaced &>/dev/null splits the simple command and drops the dangerous flag out of command position, a silent allow on every blocker-tier entry
issueresolvedmajoriss-2608220131352917
guard tokenizer misses the ampersand redirection operators &> and &>> so a glued or spaced &>/dev/null splits the simple command and drops the dangerous flag out of command position, a silent allow on every blocker-tier entry
Frontmatter
| id | iss-2608220131352917 |
|---|---|
| type | issue |
| lifecycle | resolved |
| severity | major |
.abcd/work/issues/resolved/iss-2608220131352917-guard-ampersand-redirect-tokenizer.md
open on GitHub ↗ · commit history ↗
mentions2
- dcn-26082200000000012026-08-22 — Bug-hunt round 7, branch bughunt-b/round-7. Baseline (make preflight
- iss-2608221126066631The guard tokenizer keeps process-substitution operands out of command position analysis, so a blocker-tier flag glued behind one escapes: 'git push >(cat) --force origin main' and 'git push >$(echo x) --force origin main' both return ALLOW while their plain-redirection spellings block (pre-existing on main; confirmed unchanged by the iss-2608220131352917 &> fix, same redirection family). Within the documented mistake-filter posture, but the &> precedent shows the family is worth sweeping: recognise >(...) / <(...) as redirection-shaped operands and keep the remaining argv in analysis.