{"record":{"id":"09b3a01d8ad42d3c","repo":"paperclipai/paperclip","slug":"invalid-adapter-override-raw-use-slug-type","errorCode":null,"errorMessage":"Invalid --adapter-override \"${raw}\". Use slug=type.","messagePattern":"Invalid --adapter-override \"(.+?)\"\\. Use slug=type\\.","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"cli/src/commands/client/teams.ts","lineNumber":508,"sourceCode":"  for (const raw of values) {\n    const [key, value] = parseKeyValueOption(raw, \"--secret-value\", \"key=value\");\n    if (!key) {\n      throw new Error(`Invalid --secret-value \"${raw}\". Use key=value.`);\n    }\n    result[key] = value;\n  }\n  return result;\n}\n\nfunction parseAdapterOverrides(\n  values: string[] | undefined,\n): CatalogTeamInstallOptions[\"adapterOverrides\"] | undefined {\n  if (!values || values.length === 0) return undefined;\n  const result: NonNullable<CatalogTeamInstallOptions[\"adapterOverrides\"]> = {};\n  for (const raw of values) {\n    const [slug, adapterType] = parseKeyValueOption(raw, \"--adapter-override\", \"slug=type\");\n    if (!slug || !adapterType) {\n      throw new Error(`Invalid --adapter-override \"${raw}\". Use slug=type.`);\n    }\n    result[slug] = { adapterType };\n  }\n  return result;\n}\n\nfunction parseKeyValueOption(raw: string, flag: string, format: string): [string, string] {\n  const separator = raw.indexOf(\"=\");\n  if (separator <= 0) {\n    throw new Error(`Invalid ${flag} \"${raw}\". Use ${format}.`);\n  }\n  return [raw.slice(0, separator).trim(), raw.slice(separator + 1).trim()];\n}\n\nfunction removeUndefined<T extends Record<string, unknown>>(input: T): T {\n  return Object.fromEntries(Object.entries(input).filter(([, value]) => value !== undefined)) as T;\n}\n","sourceCodeStart":490,"sourceCodeEnd":526,"githubUrl":"https://github.com/paperclipai/paperclip/blob/120ae5428fa29bee300bcf806491cd4d965fbb7c/cli/src/commands/client/teams.ts#L490-L526","documentation":"parseAdapterOverrides got a --adapter-override string that does not split into non-empty slug=type; a generic key=value option format guard.","triggerScenarios":"Thrown at cli/src/commands/client/teams.ts:508 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Use the slug=type format for --adapter-override."],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"120ae5428fa29bee300bcf806491cd4d965fbb7c","analyzedAt":"2026-08-18T22:49:45.177Z","contentChangedAt":"2026-08-18T22:49:45.177Z","schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}