{"record":{"id":"b0db0012afc24450","repo":"angular/angular-cli","slug":"documentation-index-for-v-finalsearchedversion-n","errorCode":null,"errorMessage":"Documentation index for v${finalSearchedVersion} not found or empty. Falling back to v${LATEST_KNOWN_DOCS_VERSION}.","messagePattern":"Documentation index for v(.+?) not found or empty\\. Falling back to v(.+?)\\.","errorType":"console","errorClass":null,"httpStatus":null,"severity":"info","filePath":"packages/angular/cli/src/commands/mcp/tools/doc-search.ts","lineNumber":168,"sourceCode":"\n  return async ({ query, includeTopContent, version }: DocSearchInput) => {\n    let finalSearchedVersion = Math.max(\n      version ?? LATEST_KNOWN_DOCS_VERSION,\n      MIN_SUPPORTED_DOCS_VERSION,\n    );\n\n    let allHits: Record<string, unknown>[] | undefined;\n    try {\n      allHits = await performSearch(query, finalSearchedVersion);\n    } catch (error) {\n      logger.warn(`Error searching Angular v${finalSearchedVersion} documentation: ${error}`);\n    }\n\n    // If the initial search for a newer-than-stable version returns no results, it may be because\n    // the index for that version doesn't exist yet. In this case, fall back to the latest known\n    // stable version.\n    if ((!allHits || allHits.length === 0) && finalSearchedVersion > LATEST_KNOWN_DOCS_VERSION) {\n      logger.warn(\n        `Documentation index for v${finalSearchedVersion} not found or empty. Falling back to v${LATEST_KNOWN_DOCS_VERSION}.`,\n      );\n      finalSearchedVersion = LATEST_KNOWN_DOCS_VERSION;\n      try {\n        allHits = await performSearch(query, finalSearchedVersion);\n      } catch (error) {\n        logger.warn(\n          `Error searching fallback Angular v${finalSearchedVersion} documentation: ${error}`,\n        );\n      }\n    }\n\n    if (!allHits?.length) {\n      return {\n        content: [\n          {\n            type: 'text' as const,\n            text: `No results found for query \"${query}\" in Angular v${finalSearchedVersion} documentation.`,","sourceCodeStart":150,"sourceCodeEnd":186,"githubUrl":"https://github.com/angular/angular-cli/blob/bb72145f9ab45aee29f523236b3a25cd0813a841/packages/angular/cli/src/commands/mcp/tools/doc-search.ts#L150-L186","documentation":"The MCP doc-search tool found zero hits for a version newer than the last known stable docs version, meaning that version's search index likely does not exist yet. The tool warns and falls back to LATEST_KNOWN_DOCS_VERSION.","triggerScenarios":"Querying docs with a version greater than LATEST_KNOWN_DOCS_VERSION (e.g. a next/prerelease) while `performSearch` returns an empty result set.","commonSituations":"Searching documentation for a newly released or prerelease Angular version before its search index is published; passing an explicit future version to the MCP doc search tool.","solutions":["Search against the latest stable Angular version instead of a prerelease.","Update @angular/cli so LATEST_KNOWN_DOCS_VERSION includes your target version.","Verify the version string is a real released version (no typos like '99.0.0')."],"exampleFix":"// before\n{ \"tool\": \"search_docs\", \"arguments\": { \"query\": \"signal\", \"version\": \"21.0.0-next.0\" } }\n// after\n{ \"tool\": \"search_docs\", \"arguments\": { \"query\": \"signal\", \"version\": \"20.0.0\" } }","handlingStrategy":"fallback","validationCode":"if (requestedVersion > LATEST_KNOWN_DOCS_VERSION) requestedVersion = LATEST_KNOWN_DOCS_VERSION;","typeGuard":"function isKnownDocsVersion(v: number): boolean { return v <= LATEST_KNOWN_DOCS_VERSION; }","tryCatchPattern":"if (requestedVersion > LATEST_KNOWN_DOCS_VERSION) { logger.warn('index missing; using stable'); requestedVersion = LATEST_KNOWN_DOCS_VERSION; }","preventionTips":["Query stable Angular versions, not next/prerelease tags.","Update @angular/cli before searching docs of a newly released version.","Avoid hand-crafted future version strings."],"tags":["documentation-search","fallback","versioning","mcp"],"backgroundTag":"docs-index-missing","analyzedSha":"bb72145f9ab45aee29f523236b3a25cd0813a841","analyzedAt":"2026-08-30T02:47:34.745Z","schemaVersion":2},"datasetVersion":"2026-08-30T03:17:51.788Z"}