{"record":{"id":"d0ace3ad03da9150","repo":"quickwit-oss/quickwit","slug":"unknown-split-subcommand-subcommand","errorCode":null,"errorMessage":"unknown split subcommand `{subcommand}`","messagePattern":"unknown split subcommand `(.+?)`","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"quickwit/quickwit-cli/src/split.rs","lineNumber":175,"sourceCode":"}\n\n#[derive(Debug, PartialEq)]\npub enum SplitCliCommand {\n    List(ListSplitArgs),\n    MarkForDeletion(MarkForDeletionArgs),\n    Describe(DescribeSplitArgs),\n}\n\nimpl SplitCliCommand {\n    pub fn parse_cli_args(mut matches: ArgMatches) -> anyhow::Result<Self> {\n        let (subcommand, submatches) = matches\n            .remove_subcommand()\n            .context(\"failed to split subcommand\")?;\n        match subcommand.as_str() {\n            \"describe\" => Self::parse_describe_args(submatches),\n            \"list\" => Self::parse_list_args(submatches),\n            \"mark-for-deletion\" => Self::parse_mark_for_deletion_args(submatches),\n            _ => bail!(\"unknown split subcommand `{subcommand}`\"),\n        }\n    }\n\n    fn parse_list_args(mut matches: ArgMatches) -> anyhow::Result<Self> {\n        let client_args = ClientArgs::parse(&mut matches)?;\n        let index_id = matches\n            .remove_one::<String>(\"index\")\n            .expect(\"`index` should be a required arg.\");\n        let offset = matches\n            .remove_one::<String>(\"offset\")\n            .and_then(|s| s.parse::<usize>().ok());\n        let limit = matches\n            .remove_one::<String>(\"limit\")\n            .and_then(|s| s.parse::<usize>().ok());\n        let split_states = matches\n            .remove_many::<String>(\"states\")\n            .map(|values| {\n                values","sourceCodeStart":157,"sourceCodeEnd":193,"githubUrl":"https://github.com/quickwit-oss/quickwit/blob/a39730c5cdcd1a4fe798403737ae293999ea21f8/quickwit/quickwit-cli/src/split.rs#L157-L193","documentation":"The `quickwit split` CLI only recognizes `describe`, `list`, and `mark-for-deletion` subcommands. Any other token after `split` bails out of `parse_cli_args` with this message. Like other parse-time errors, it occurs before any network call.","triggerScenarios":"Running `quickwit split <invalid> ...`, e.g. `quickwit split delete` (does not exist; use `mark-for-deletion`), `quickwit split ls`, or `quickwit split inspect`.","commonSituations":"Typing `delete` or `remove` expecting split deletion instead of `mark-for-deletion`; abbreviations like `ls`; scripts written against imagined or older CLI surfaces; mixing up `index`/`source`/`split` subcommand vocabularies.","solutions":["Run `quickwit split --help` and use one of describe, list, or mark-for-deletion.","Replace `delete`/`remove` with `mark-for-deletion` (splits are marked then garbage-collected, not deleted inline).","Fix typos/abbreviations (`ls` -> `list`, `inspect` -> `describe`)."],"exampleFix":"// before\nquickwit split delete --index my-index --split-id 01ABC\n// after\nquickwit split mark-for-deletion --index my-index --split-id 01ABC","handlingStrategy":"validation","validationCode":"const SPLIT_SUBCOMMANDS = [\"describe\", \"list\", \"mark-for-deletion\"];\nfunction isValidSplitSubcommand(cmd: string): boolean {\n  return SPLIT_SUBCOMMANDS.includes(cmd);\n}","typeGuard":"function isSplitSubcommand(cmd: string): cmd is \"describe\" | \"list\" | \"mark-for-deletion\" {\n  return [\"describe\", \"list\", \"mark-for-deletion\"].includes(cmd);\n}","tryCatchPattern":"// Exit code 2 (clap usage error) with stderr matching /unknown split subcommand/\nconst res = await run(\"quickwit split list --index my-index\");\nif (res.code === 2 && /unknown split subcommand/.test(res.stderr)) {\n  console.error(\"Use describe, list, or mark-for-deletion.\");\n}","preventionTips":["Use `mark-for-deletion` for split removal; there is no `split delete`.","Check `quickwit split --help` before writing new automation.","Do not reuse subcommand vocabulary from `quickwit index` or `quickwit source`."],"tags":["cli","subcommand","quickwit"],"backgroundTag":"invalid-cli-argument","analyzedSha":"a39730c5cdcd1a4fe798403737ae293999ea21f8","analyzedAt":"2026-09-08T13:19:37.784Z","contentChangedAt":"2026-09-08T13:19:37.784Z","schemaVersion":2},"datasetVersion":"2026-09-14T11:17:12.474Z"}