{"record":{"id":"a278600c2436de79","repo":"nodejs/node","slug":"argument-verbose-v-already-set-n","errorCode":null,"errorMessage":"argument --verbose / -v already set\\n","messagePattern":"argument --verbose / -v already set\\\\n","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"deps/brotli/c/tools/brotli.c","lineNumber":406,"sourceCode":"        } else if (c == 's') {\n          if (squash_set) {\n            fprintf(stderr, \"argument --squash / -s already set\\n\");\n            return COMMAND_INVALID;\n          }\n          squash_set = BROTLI_TRUE;\n          params->reject_uncompressible = BROTLI_TRUE;\n          continue;\n        } else if (c == 't') {\n          if (command_set) {\n            fprintf(stderr, \"command already set when parsing -t\\n\");\n            return COMMAND_INVALID;\n          }\n          command_set = BROTLI_TRUE;\n          command = COMMAND_TEST_INTEGRITY;\n          continue;\n        } else if (c == 'v') {\n          if (params->verbosity > 0) {\n            fprintf(stderr, \"argument --verbose / -v already set\\n\");\n            return COMMAND_INVALID;\n          }\n          params->verbosity = 1;\n          continue;\n        } else if (c == 'K') {\n          if (concatenated_set) {\n            fprintf(stderr, \"argument -K / --concatenated already set\\n\");\n            return COMMAND_INVALID;\n          }\n          concatenated_set = BROTLI_TRUE;\n          params->allow_concatenated = BROTLI_TRUE;\n          continue;\n        } else if (c == 'V') {\n          /* Don't parse further. */\n          return COMMAND_VERSION;\n        } else if (c == 'Z') {\n          if (quality_set) {\n            fprintf(stderr, \"quality already set\\n\");","sourceCodeStart":388,"sourceCodeEnd":424,"githubUrl":"https://github.com/nodejs/node/blob/1b2de5e052fc0fb95fd7fb6846dcec4ade598e9e/deps/brotli/c/tools/brotli.c#L388-L424","documentation":"`-v`/`--verbose` enables verbose output. Unlike some tools, brotli does not increase verbosity with repeats; the parser rejects a second `-v`.","triggerScenarios":"Passing `-v` twice: `brotli -v -v file` or coalesced `brotli -vv file`.","commonSituations":"Users expecting `-vv` to mean 'more verbose' (it does not here); alias + explicit duplicate.","solutions":["Pass `-v` exactly once.","Remove the duplicate from your alias or stacked flags."],"exampleFix":"// before\nbrotli -vv file        # expecting extra verbosity\n// after\nbrotli -v file         # verbose once","handlingStrategy":"validation","validationCode":"assert sum(1 for a in argv if a in ('-v','--verbose') or (a.startswith('-') and not a.startswith('--') and 'v' in a)) <= 1","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Remember brotli has a single verbose level; one -v is enough.","Do not stack -v expecting levels."],"tags":["brotli","cli","argument-parsing"],"backgroundTag":null,"analyzedSha":"1b2de5e052fc0fb95fd7fb6846dcec4ade598e9e","analyzedAt":"2026-08-13T00:53:24.642Z","schemaVersion":2},"datasetVersion":"2026-08-13T04:17:16.726Z"}