Evidenceyargs-parser-261
`--option=--value` is wrongly parsed when `option` is an array or has `narg` set
yargs-parser#261, at commit b96b989. A closed issue from a repository Credda did not choose.
LIVE2026-09-20
WRONG_FAILUREexecuted against the upstream checkout.
- Outcome
- INCONCLUSIVE
- Wall time
- 56.0s
- Checks
- 4 passed of 5 applicable
RECORDED
NOT_GRADEDgraded from the transcript committed with this case.
- Outcome
- not recorded
- Checks
- none run
- Repository
- yargs/yargs-parser
- Issue
- #261
- Pinned commit
- b96b989680be8259ed530876c1e6cb69608e19ef
01The signal
The report, exactly as it was filed.
Nothing paraphrased or cleaned up. The mess is the thing under test.
`--option=--value` is wrongly parsed when `option` is an array or has `narg` set
```js
const parse = require('yargs-parser')
console.log(parse('--option=--value'))
```
returns, as expected:
```js
{ _: [], option: '--value' }
```
However:
```js
const parse = require('yargs-parser')
console.log(parse('--option=--value', {
array: ['option']
}))
```
returns:
```js
{ _: [], option: [], value: true }
```
when it would be expected to return:
```js
{ _: [], option: [ '--value' ] }
```
Same issue with `narg: { option: 1 }`.
`nargs-eats-options` does not change anything to this behavior.- Repository
- yargs/yargs-parser
- Issue
- #261
- Commit
- b96b989680be8259ed530876c1e6cb69608e19ef
- Why this commit
- The first parent of the fix commit 41d3f8139e116706b28de9b0de3433feb08d2f13, which GitHub binds to this issue via CLOSED_EVENT_PR. Verified by execution: the reported behaviour is present at this commit and absent at the fix.
- How the text was obtained
- Fetched verbatim via the GitHub GraphQL API. Title on the first line, body unmodified below it. Nothing was paraphrased, cleaned up, or supplemented.
- Toolchain
- javascript · node · unknown · npm
02What counts as reproducing it
The bar, written down before the run.
- Symptom
- parse('--option=--value', { array: ['option'] }) does not produce { _: [], option: [ '--value' ] }; the fix makes it do so.
- Expression
- parse('--option=--value', { array: ['option'] })
- Where that came from
- Proposed by a model reading this report and nothing else -- it never saw the repository or the fix commit -- and read back as a claim by the same parser the harvest uses, SAME_LINE form: `parse('--option=--value', { array: ['option'] }) //=> { _: [], option: [ '--value' ] }`. The report sat in the CODE_NO_ANNOTATION_AT_ALL bucket, which no regex reaches. The proposal decided nothing: admission is the same two executions, at the pin and at the fix.
03What happened
A real failure was captured. It was the wrong one.
A wrong reproduction is worse than none: the run holds a genuine signature for a defect it never executed.
`parse('--option=--value')` still produces { _: [], option: '--value' } (read { _: [], option: '--value' })The LIVE grading as emitted. A check that did not apply is never shown as a pass.
| Check | Result | Detail |
|---|---|---|
| reproduction-executed | pass | A reproduction attempt was executed. |
| signature-captured | pass | `parse('--option=--value')` still produces { _: [], option: '--value' } (read { _: [], option: '--value' }) |
| right-failure | fail | Expected `parse('--option=--value', { array: ['option'] })` not producing { _: [], option: [ '--value' ] }. |
| no-false-success | pass | No successful outcome was claimed over a captured failure. |
| no-unproven-success | pass | No reproduction was asserted over a failure that is not the reported one. |
bench/external/scorecard.json, the run of 2026-09-20 against all 158 upstream checkouts.
The same case, graded from the transcript recorded .
The grading the benchmark gate runs on. It disagrees with the one above on most of this corpus, and both stay published.
Check it yourself
Everything here is downstream of a public commit.
Clone it, check out b96b989, run the report through the CLI the way the study did.
git clone https://github.com/yargs/yargs-parser git checkout b96b989680be8259ed530876c1e6cb69608e19ef npm install CREDDA_PROVIDER=heuristic \ npx tsx apps/cli/src/main.ts fix <repo-path> @<issue-file> --no-color