@farming-labs/docs 0.2.91 → 0.2.93

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/dist/{agent-Vk9oUKpQ.d.mts → agent-DGEdQ0Nh.d.mts} +2 -2
  2. package/dist/{agent-evals-GFDpcXO3.mjs → agent-evals-CKZ7bPSp.mjs} +44 -2
  3. package/dist/{agent-export-CNDoSwv4.mjs → agent-export-BuLVkNkL.mjs} +3 -3
  4. package/dist/agent-skills-bundle.d.mts +1 -1
  5. package/dist/{agent-skills-server-Cltp5qai.d.mts → agent-skills-server-14HFIrBY.d.mts} +2 -2
  6. package/dist/agent-skills-vite.d.mts +3 -3
  7. package/dist/{agents-CUPf3vZe.mjs → agents-CNtukMtM.mjs} +3 -3
  8. package/dist/cli/index.mjs +30 -30
  9. package/dist/client/react.d.mts +1 -1
  10. package/dist/{cloud-DwhH_b_q.mjs → cloud-CojpBKC-.mjs} +1 -1
  11. package/dist/{cloud-ask-ai-Da6md6U7.d.mts → cloud-ask-ai-B2v4Nry-.d.mts} +1 -1
  12. package/dist/{dev-BFBPvjnk.mjs → dev-DugcMDQQ.mjs} +2 -2
  13. package/dist/docs-cloud-server.d.mts +2 -2
  14. package/dist/{doctor-DTUnmCWU.mjs → doctor-_Ceveoj7.mjs} +19 -11
  15. package/dist/{downgrade-Wcgqbfv_.mjs → downgrade-Dn_p7yMn.mjs} +3 -3
  16. package/dist/{golden-evaluations-CjpJSUEg.mjs → golden-evaluations-AH4y5QDu.mjs} +1 -0
  17. package/dist/index.d.mts +5 -5
  18. package/dist/{init-CuLodGjP.mjs → init-ClizlMoO.mjs} +61 -9
  19. package/dist/{mcp-DYVbyw5b.mjs → mcp-Dxg2FzSt.mjs} +2 -2
  20. package/dist/mcp.d.mts +3 -3
  21. package/dist/{package-version-B3PJ6IDr.mjs → package-version-ZAEdrNDw.mjs} +8 -2
  22. package/dist/{retrieval-digest-Dl7Bx121.d.mts → retrieval-digest-DMqcN_MK.d.mts} +2 -2
  23. package/dist/{review-BjOfzbsm.mjs → review-BfQvzPWj.mjs} +3 -3
  24. package/dist/{robots-B4zuleV8.mjs → robots-C8M6odcB.mjs} +1 -1
  25. package/dist/{search-DRSqR1_k.mjs → search-CA_eLPUX.mjs} +2 -2
  26. package/dist/server.d.mts +38 -12
  27. package/dist/server.mjs +2 -2
  28. package/dist/{sitemap-BiaR2pC_.mjs → sitemap-C8xaervA.mjs} +3 -3
  29. package/dist/{sitemap-server-rv00bP21.mjs → sitemap-server-JffNpEef.mjs} +11 -0
  30. package/dist/{skills-Biq9Q7z4.mjs → skills-BgqqsITg.mjs} +2 -2
  31. package/dist/{standards-discovery-DX9iiGar.d.mts → standards-discovery-B7L9pSnQ.d.mts} +1 -1
  32. package/dist/{templates-Co7I_Okv.mjs → templates-BTIO0i_g.mjs} +104 -3
  33. package/dist/{types-DUMzbRER.d.mts → types-CMNYudRn.d.mts} +1 -1
  34. package/dist/{upgrade-BSCjUH0V.mjs → upgrade-CTW2Xlxm.mjs} +3 -3
  35. package/dist/{utils-DpiIioYb.mjs → utils-C4U_e1aw.mjs} +1 -0
  36. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
- import { a as devInstallCommand, c as fileExists, d as readFileSafe, f as spawnAndWaitFor, i as detectPackageManagerFromProject, l as formatPackageManagerDetection, n as detectGlobalCssFiles, o as exec, p as writeFileSafe, r as detectNextAppDir, t as detectFramework, u as installCommand } from "./utils-DpiIioYb.mjs";
2
- import { $ as svelteDocsLayoutServerTemplate, A as injectTanstackVitePlugins, B as nuxtGlobalCssTemplate, C as injectDocsAgentSkillsVitePlugin, Ct as tsconfigTemplate, D as injectSvelteCssImport, E as injectRootProviderIntoLayout, F as nextLocaleDocPageTemplate, G as nuxtServerDocsPublicMiddlewareTemplate, H as nuxtQuickstartPageTemplate, I as nextLocalizedPageTemplate, J as quickstartPageTemplate, K as nuxtWelcomePageTemplate, L as nuxtConfigTemplate, M as nextApiReferencePageTemplate, N as nextConfigMergedTemplate, O as injectSvelteDocsPublicHook, P as nextConfigTemplate, Q as svelteDocsConfigTemplate, R as nuxtDocsConfigTemplate, S as injectCssImport, St as tanstackWelcomePageTemplate, T as injectNuxtCssImport, U as nuxtServerApiDocsRouteTemplate, V as nuxtInstallationPageTemplate, W as nuxtServerApiReferenceRouteTemplate, X as svelteApiReferenceRouteTemplate, Y as rootLayoutTemplate, Z as svelteDocsApiRouteTemplate, _ as getAstroAdapterPkg, _t as tanstackDocsServerTemplate, a as astroDocsIndexTemplate, at as svelteInstallationPageTemplate, b as injectAstroCssImport, bt as tanstackRootRouteTemplate, c as astroDocsServerTemplate, ct as svelteViteConfigTemplate, d as astroQuickstartPageTemplate, dt as tanstackApiReferenceRouteTemplate, et as svelteDocsLayoutTemplate, f as astroWelcomePageTemplate, ft as tanstackDocsCatchAllRouteTemplate, g as docsLayoutTemplate, gt as tanstackDocsPublicRouteTemplate, h as docsConfigTemplate, ht as tanstackDocsIndexRouteTemplate, i as astroDocsConfigTemplate, it as svelteGlobalCssTemplate, j as installationPageTemplate, k as injectTanstackRootProviderIntoRoute, l as astroGlobalCssTemplate, lt as svelteWelcomePageTemplate, m as customThemeTsTemplate, mt as tanstackDocsFunctionsTemplate, n as astroApiRouteTemplate, nt as svelteDocsPublicHookTemplate, o as astroDocsMiddlewareTemplate, ot as svelteQuickstartPageTemplate, p as customThemeCssTemplate, pt as tanstackDocsConfigTemplate, q as postcssConfigTemplate, r as astroConfigTemplate, rt as svelteDocsServerTemplate, s as astroDocsPageTemplate, st as svelteRootLayoutTemplate, t as astroApiReferenceRouteTemplate, tt as svelteDocsPageTemplate, u as astroInstallationPageTemplate, ut as tanstackApiDocsRouteTemplate, v as globalCssTemplate, vt as tanstackInstallationPageTemplate, w as injectNuxtAgentSkillsPlugin, wt as welcomePageTemplate, x as injectAstroDocsMiddleware, xt as tanstackViteConfigTemplate, y as injectAstroAgentSkillsPlugin, yt as tanstackQuickstartPageTemplate, z as nuxtDocsPageTemplate } from "./templates-Co7I_Okv.mjs";
1
+ import { a as devInstallCommand, c as fileExists, d as readFileSafe, f as spawnAndWaitFor, i as detectPackageManagerFromProject, l as formatPackageManagerDetection, n as detectGlobalCssFiles, o as exec, p as writeFileSafe, r as detectNextAppDir, t as detectFramework, u as installCommand } from "./utils-C4U_e1aw.mjs";
2
+ import { $ as postcssConfigTemplate, A as injectNuxtAgentSkillsPlugin, At as welcomePageTemplate, B as nextConfigTemplate, C as globalCssTemplate, Ct as tanstackDocsServerTemplate, D as injectCssImport, Dt as tanstackViteConfigTemplate, E as injectAstroDocsMiddleware, Et as tanstackRootRouteTemplate, F as injectTanstackRootProviderIntoRoute, G as nuxtDocsPageTemplate, H as nextLocalizedPageTemplate, I as injectTanstackVitePlugins, J as nuxtQuickstartPageTemplate, K as nuxtGlobalCssTemplate, L as installationPageTemplate, M as injectRootProviderIntoLayout, N as injectSvelteCssImport, O as injectDocsAgentSkillsVitePlugin, Ot as tanstackWelcomePageTemplate, P as injectSvelteDocsPublicHook, Q as nuxtWelcomePageTemplate, R as nextApiReferencePageTemplate, S as getAstroAdapterPkg, St as tanstackDocsPublicRouteTemplate, T as injectAstroCssImport, Tt as tanstackQuickstartPageTemplate, U as nuxtConfigTemplate, V as nextLocaleDocPageTemplate, W as nuxtDocsConfigTemplate, X as nuxtServerApiReferenceRouteTemplate, Y as nuxtServerApiDocsRouteTemplate, Z as nuxtServerDocsPublicMiddlewareTemplate, _ as farmjsConfigTemplate, _t as tanstackApiReferenceRouteTemplate, a as astroDocsIndexTemplate, at as svelteDocsLayoutServerTemplate, b as farmjsQuickstartPageTemplate, bt as tanstackDocsFunctionsTemplate, c as astroDocsServerTemplate, ct as svelteDocsPublicHookTemplate, d as astroQuickstartPageTemplate, dt as svelteInstallationPageTemplate, et as quickstartPageTemplate, f as astroWelcomePageTemplate, ft as svelteQuickstartPageTemplate, g as docsLayoutTemplate, gt as tanstackApiDocsRouteTemplate, h as docsConfigTemplate, ht as svelteWelcomePageTemplate, i as astroDocsConfigTemplate, it as svelteDocsConfigTemplate, j as injectNuxtCssImport, k as injectFarmjsConfig, kt as tsconfigTemplate, l as astroGlobalCssTemplate, lt as svelteDocsServerTemplate, m as customThemeTsTemplate, mt as svelteViteConfigTemplate, n as astroApiRouteTemplate, nt as svelteApiReferenceRouteTemplate, o as astroDocsMiddlewareTemplate, ot as svelteDocsLayoutTemplate, p as customThemeCssTemplate, pt as svelteRootLayoutTemplate, q as nuxtInstallationPageTemplate, r as astroConfigTemplate, rt as svelteDocsApiRouteTemplate, s as astroDocsPageTemplate, st as svelteDocsPageTemplate, t as astroApiReferenceRouteTemplate, tt as rootLayoutTemplate, u as astroInstallationPageTemplate, ut as svelteGlobalCssTemplate, v as farmjsDocsConfigTemplate, vt as tanstackDocsCatchAllRouteTemplate, w as injectAstroAgentSkillsPlugin, wt as tanstackInstallationPageTemplate, x as farmjsWelcomePageTemplate, xt as tanstackDocsIndexRouteTemplate, y as farmjsInstallationPageTemplate, yt as tanstackDocsConfigTemplate, z as nextConfigMergedTemplate } from "./templates-BTIO0i_g.mjs";
3
3
  import fs from "node:fs";
4
4
  import path from "node:path";
5
5
  import pc from "picocolors";
@@ -129,6 +129,11 @@ function detectApiRouteRoot(cwd, framework, nextAppDir = "app") {
129
129
  if (fs.existsSync(path.join(routesRoot, defaultRoot))) return defaultRoot;
130
130
  return detectFromRecursiveRouteFiles(routesRoot, (_entry, relativePath) => /(?:^|\/)[^/]+\.(?:[cm]?[jt]sx?)$/i.test(relativePath)) ?? defaultRoot;
131
131
  }
132
+ if (framework === "farmjs") {
133
+ const appRoot = fs.existsSync(path.join(cwd, "src", "app")) ? path.join(cwd, "src", "app") : path.join(cwd, "app");
134
+ if (fs.existsSync(path.join(appRoot, defaultRoot))) return defaultRoot;
135
+ return detectFromRecursiveRouteFiles(appRoot, (_entry, relativePath) => /\/?route\.(?:[cm]?[jt]sx?)$/i.test(relativePath)) ?? defaultRoot;
136
+ }
132
137
  if (framework === "sveltekit") {
133
138
  const routesRoot = path.join(cwd, "src/routes");
134
139
  if (fs.existsSync(path.join(routesRoot, defaultRoot))) return defaultRoot;
@@ -188,7 +193,7 @@ async function configureDocsCloudOnboarding(options) {
188
193
  enabled = cloudAnswer;
189
194
  }
190
195
  if (!enabled) return;
191
- const { initCloudConfig } = await import("./cloud-DwhH_b_q.mjs");
196
+ const { initCloudConfig } = await import("./cloud-CojpBKC-.mjs");
192
197
  printDocsCloudOnboardingInstructions(await initCloudConfig({
193
198
  rootDir: options.rootDir,
194
199
  configPath: getDocsCloudConfigPathForFramework(options.framework)
@@ -349,7 +354,7 @@ async function init(options = {}) {
349
354
  }
350
355
  let framework = detectFramework(cwd);
351
356
  if (framework) {
352
- const frameworkName = framework === "nextjs" ? "Next.js" : framework === "tanstack-start" ? "TanStack Start" : framework === "sveltekit" ? "SvelteKit" : framework === "astro" ? "Astro" : "Nuxt";
357
+ const frameworkName = framework === "nextjs" ? "Next.js" : framework === "tanstack-start" ? "TanStack Start" : framework === "farmjs" ? "Farm.js" : framework === "sveltekit" ? "SvelteKit" : framework === "astro" ? "Astro" : "Nuxt";
353
358
  p.log.success(`Detected framework: ${pc.cyan(frameworkName)}`);
354
359
  } else {
355
360
  p.log.warn("Could not auto-detect a framework from " + pc.cyan("package.json") + ".");
@@ -366,6 +371,11 @@ async function init(options = {}) {
366
371
  label: "TanStack Start",
367
372
  hint: "React with TanStack Router and server functions"
368
373
  },
374
+ {
375
+ value: "farmjs",
376
+ label: "Farm.js",
377
+ hint: "React framework for product applications"
378
+ },
369
379
  {
370
380
  value: "sveltekit",
371
381
  label: "SvelteKit",
@@ -513,7 +523,7 @@ async function init(options = {}) {
513
523
  }
514
524
  customThemeName = nameAnswer.trim().replace(/\.(ts|css)$/i, "") || defaultThemeName;
515
525
  }
516
- const aliasHint = framework === "nextjs" ? `Uses ${pc.cyan("@/")} prefix (requires tsconfig paths)` : framework === "tanstack-start" ? `Uses ${pc.cyan("@/")} prefix (requires tsconfig paths)` : framework === "sveltekit" ? `Uses ${pc.cyan("$lib/")} prefix (SvelteKit built-in)` : framework === "nuxt" ? `Uses ${pc.cyan("~/")} prefix (Nuxt built-in)` : `Uses ${pc.cyan("@/")} prefix (requires tsconfig paths)`;
526
+ const aliasHint = framework === "nextjs" ? `Uses ${pc.cyan("@/")} prefix (requires tsconfig paths)` : framework === "tanstack-start" ? `Uses ${pc.cyan("@/")} prefix (requires tsconfig paths)` : framework === "farmjs" ? `Uses ${pc.cyan("@/")} prefix (requires tsconfig paths)` : framework === "sveltekit" ? `Uses ${pc.cyan("$lib/")} prefix (SvelteKit built-in)` : framework === "nuxt" ? `Uses ${pc.cyan("~/")} prefix (Nuxt built-in)` : `Uses ${pc.cyan("@/")} prefix (requires tsconfig paths)`;
517
527
  const useAlias = await p.confirm({
518
528
  message: `Use path aliases for imports? ${pc.dim(aliasHint)}`,
519
529
  initialValue: false
@@ -696,7 +706,7 @@ async function init(options = {}) {
696
706
  }
697
707
  const detectedCssFiles = detectGlobalCssFiles(cwd);
698
708
  let globalCssRelPath;
699
- const defaultCssPath = framework === "tanstack-start" ? "src/styles/app.css" : framework === "sveltekit" ? "src/app.css" : framework === "astro" ? "src/styles/global.css" : framework === "nuxt" ? "assets/css/main.css" : framework === "nextjs" ? `${nextAppDir}/globals.css` : "app/globals.css";
709
+ const defaultCssPath = framework === "tanstack-start" ? "src/styles/app.css" : framework === "farmjs" ? "src/app/globals.css" : framework === "sveltekit" ? "src/app.css" : framework === "astro" ? "src/styles/global.css" : framework === "nuxt" ? "assets/css/main.css" : framework === "nextjs" ? `${nextAppDir}/globals.css` : "app/globals.css";
700
710
  if (detectedCssFiles.length === 1) {
701
711
  globalCssRelPath = detectedCssFiles[0];
702
712
  p.log.info(`Found global CSS at ${pc.cyan(globalCssRelPath)}`);
@@ -753,6 +763,7 @@ async function init(options = {}) {
753
763
  else skipped.push(rel);
754
764
  }
755
765
  if (framework === "tanstack-start") scaffoldTanstackStart(cwd, cfg, globalCssRelPath, write, skipped, written);
766
+ else if (framework === "farmjs") scaffoldFarmjs(cwd, cfg, globalCssRelPath, write, skipped, written);
756
767
  else if (framework === "sveltekit") scaffoldSvelteKit(cwd, cfg, globalCssRelPath, write, skipped, written);
757
768
  else if (framework === "astro") scaffoldAstro(cwd, cfg, globalCssRelPath, write, skipped, written);
758
769
  else if (framework === "nuxt") scaffoldNuxt(cwd, cfg, globalCssRelPath, write, skipped, written);
@@ -797,7 +808,7 @@ async function init(options = {}) {
797
808
  p.log.info(`Using ${pc.cyan(pm)} as package manager`);
798
809
  const s2 = p.spinner();
799
810
  s2.start("Installing dependencies");
800
- const docsRuntimeInstallCommand = framework === "tanstack-start" ? `${installCommand(pm)} @farming-labs/docs @farming-labs/theme @farming-labs/tanstack-start` : framework === "sveltekit" ? `${installCommand(pm)} @farming-labs/docs @farming-labs/svelte @farming-labs/svelte-theme @farming-labs/theme` : framework === "astro" ? `${installCommand(pm)} @farming-labs/docs @farming-labs/astro @farming-labs/astro-theme @farming-labs/theme ${getAstroAdapterPkg(cfg.astroAdapter ?? "vercel")}` : framework === "nuxt" ? `${installCommand(pm)} @farming-labs/docs @farming-labs/nuxt @farming-labs/nuxt-theme @farming-labs/theme` : `${installCommand(pm)} @farming-labs/docs @farming-labs/next @farming-labs/theme`;
811
+ const docsRuntimeInstallCommand = framework === "tanstack-start" ? `${installCommand(pm)} @farming-labs/docs @farming-labs/theme @farming-labs/tanstack-start` : framework === "farmjs" ? `${installCommand(pm)} @farming-labs/docs @farming-labs/farmjs @farming-labs/theme` : framework === "sveltekit" ? `${installCommand(pm)} @farming-labs/docs @farming-labs/svelte @farming-labs/svelte-theme @farming-labs/theme` : framework === "astro" ? `${installCommand(pm)} @farming-labs/docs @farming-labs/astro @farming-labs/astro-theme @farming-labs/theme ${getAstroAdapterPkg(cfg.astroAdapter ?? "vercel")}` : framework === "nuxt" ? `${installCommand(pm)} @farming-labs/docs @farming-labs/nuxt @farming-labs/nuxt-theme @farming-labs/theme` : `${installCommand(pm)} @farming-labs/docs @farming-labs/next @farming-labs/theme`;
801
812
  try {
802
813
  exec(docsRuntimeInstallCommand, cwd);
803
814
  if (framework === "tanstack-start") {
@@ -853,6 +864,10 @@ async function init(options = {}) {
853
864
  cmd: "npx",
854
865
  args: ["vite", "dev"],
855
866
  waitFor: "ready"
867
+ } : framework === "farmjs" ? {
868
+ cmd: "npx",
869
+ args: ["farm", "dev"],
870
+ waitFor: "Local:"
856
871
  } : framework === "sveltekit" ? {
857
872
  cmd: "npx",
858
873
  args: ["vite", "dev"],
@@ -874,7 +889,7 @@ async function init(options = {}) {
874
889
  ],
875
890
  waitFor: "Ready"
876
891
  };
877
- const defaultPort = framework === "tanstack-start" ? "5173" : framework === "sveltekit" ? "5173" : framework === "astro" ? "4321" : framework === "nuxt" ? "3000" : "3000";
892
+ const defaultPort = framework === "tanstack-start" ? "5173" : framework === "farmjs" ? "3000" : framework === "sveltekit" ? "5173" : framework === "astro" ? "4321" : framework === "nuxt" ? "3000" : "3000";
878
893
  try {
879
894
  const child = await spawnAndWaitFor(devCommand.cmd, devCommand.args, cwd, devCommand.waitFor, 6e4);
880
895
  const url = `http://localhost:${defaultPort}/${entryPath}`;
@@ -893,7 +908,7 @@ async function init(options = {}) {
893
908
  });
894
909
  });
895
910
  } catch {
896
- const manualCmd = framework === "tanstack-start" ? "npx vite dev" : framework === "sveltekit" ? "npx vite dev" : framework === "astro" ? "npx astro dev" : framework === "nuxt" ? "npx nuxt dev" : "pnpm dev";
911
+ const manualCmd = framework === "tanstack-start" ? "npx vite dev" : framework === "farmjs" ? "npx farm dev" : framework === "sveltekit" ? "npx vite dev" : framework === "astro" ? "npx astro dev" : framework === "nuxt" ? "npx nuxt dev" : "pnpm dev";
897
912
  p.log.error(`Could not start dev server. Try running manually:
898
913
  ${pc.cyan(manualCmd)}`);
899
914
  p.outro(pc.yellow("Setup complete. Start the server manually."));
@@ -903,6 +918,43 @@ async function init(options = {}) {
903
918
  function getScaffoldContentRoots(cfg) {
904
919
  return cfg.i18n?.locales?.length ? cfg.i18n.locales.map((locale) => `${cfg.entry}/${locale}`) : [cfg.entry];
905
920
  }
921
+ function scaffoldFarmjs(cwd, cfg, globalCssRelPath, write, skipped, written) {
922
+ if (cfg.theme === "custom" && cfg.customThemeName) {
923
+ const baseName = cfg.customThemeName.replace(/\.(ts|css)$/i, "");
924
+ write(`themes/${baseName}.ts`, customThemeTsTemplate(baseName));
925
+ write(`themes/${baseName}.css`, customThemeCssTemplate(baseName));
926
+ }
927
+ write("docs.config.ts", farmjsDocsConfigTemplate(cfg));
928
+ const farmConfigPath = [
929
+ "farm.config.ts",
930
+ "farm.config.mts",
931
+ "farm.config.js",
932
+ "farm.config.mjs"
933
+ ].map((candidate) => path.join(cwd, candidate)).find((candidate) => fileExists(candidate));
934
+ if (farmConfigPath) {
935
+ const existing = readFileSafe(farmConfigPath);
936
+ const injected = existing ? injectFarmjsConfig(existing) : null;
937
+ const relativePath = path.relative(cwd, farmConfigPath);
938
+ if (injected) {
939
+ writeFileSafe(farmConfigPath, injected, true);
940
+ written.push(`${relativePath} (wrapped with withDocs)`);
941
+ } else skipped.push(`${relativePath} (already configured or unsupported default export)`);
942
+ } else write("farm.config.ts", farmjsConfigTemplate());
943
+ const globalCssAbsPath = path.join(cwd, globalCssRelPath);
944
+ const existingGlobalCss = readFileSafe(globalCssAbsPath);
945
+ if (existingGlobalCss) {
946
+ const injected = injectCssImport(existingGlobalCss, cfg.theme, cfg.customThemeName, globalCssRelPath);
947
+ if (injected) {
948
+ writeFileSafe(globalCssAbsPath, injected, true);
949
+ written.push(`${globalCssRelPath} (updated)`);
950
+ } else skipped.push(`${globalCssRelPath} (already configured)`);
951
+ } else write(globalCssRelPath, globalCssTemplate(cfg.theme, cfg.customThemeName, globalCssRelPath));
952
+ for (const base of getScaffoldContentRoots(cfg)) {
953
+ write(`${base}/page.md`, farmjsWelcomePageTemplate(cfg));
954
+ write(`${base}/installation/page.md`, farmjsInstallationPageTemplate(cfg));
955
+ write(`${base}/quickstart/page.md`, farmjsQuickstartPageTemplate(cfg));
956
+ }
957
+ }
906
958
  function scaffoldNextJs(cwd, cfg, globalCssRelPath, write, skipped, written) {
907
959
  const appDir = cfg.nextAppDir ?? "app";
908
960
  if (cfg.theme === "custom" && cfg.customThemeName) {
@@ -3,9 +3,9 @@ import "./markdown-sections-7OoA7ylx.mjs";
3
3
  import { L as resolveDocsPublishedAgentSkill } from "./standards-discovery-Ckx0tN7B.mjs";
4
4
  import "./content-change-hydration-Cy2a7rb1.mjs";
5
5
  import { a as resolveDocsMetadataBaseUrl } from "./metadata-N252j5_a.mjs";
6
- import "./sitemap-server-rv00bP21.mjs";
6
+ import "./sitemap-server-JffNpEef.mjs";
7
7
  import { r as resolveConfiguredAgentSkills } from "./agent-skills-server-CwmzAzf_.mjs";
8
- import "./agent-evals-GFDpcXO3.mjs";
8
+ import "./agent-evals-CKZ7bPSp.mjs";
9
9
  import { createFilesystemDocsMcpSource, resolveDocsMcpConfig, runDocsMcpStdio } from "./mcp.mjs";
10
10
  import "./code-blocks-0wjOsqdJ.mjs";
11
11
  import "./server.mjs";
package/dist/mcp.d.mts CHANGED
@@ -1,6 +1,6 @@
1
- import { F as DocsAgentContentChangesConfig, Nn as DocsSearchConfig, Pr as PageAgentFrontmatter, Qt as DocsMcpAuthenticate, W as DocsAgentEvaluationsConfig, Xt as DocsMcpAllowedOrigins, Zt as DocsMcpAuthPrincipal, dr as DocsTelemetryFramework, ft as DocsAnalyticsConfig, hn as DocsRetrievalSourceProvenance, kr as OrderingItem, or as DocsTelemetryConfig, tn as DocsMcpConfig, tr as DocsSearchSourcePage, un as DocsObservabilityConfig } from "./types-DUMzbRER.mjs";
2
- import { z as DocsPublishedAgentSkill } from "./standards-discovery-DX9iiGar.mjs";
3
- import { An as MIN_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, Cn as DocsContentChangeHydrationBudget, Dn as DocsContentChangeHydrationTombstone, En as DocsContentChangeHydrationSection, Fn as DocsContentChangeFeed, On as HydrateDocsContentChangesOptions, Sn as DOCS_CONTENT_CHANGE_HYDRATION_FORMAT, Tn as DocsContentChangeHydrationResponse, it as DocsMarkdownSectionIndex, jn as hydrateDocsContentChanges, kn as MAX_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, wn as DocsContentChangeHydrationContent, xn as DEFAULT_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET } from "./agent-Vk9oUKpQ.mjs";
1
+ import { F as DocsAgentContentChangesConfig, Nn as DocsSearchConfig, Pr as PageAgentFrontmatter, Qt as DocsMcpAuthenticate, W as DocsAgentEvaluationsConfig, Xt as DocsMcpAllowedOrigins, Zt as DocsMcpAuthPrincipal, dr as DocsTelemetryFramework, ft as DocsAnalyticsConfig, hn as DocsRetrievalSourceProvenance, kr as OrderingItem, or as DocsTelemetryConfig, tn as DocsMcpConfig, tr as DocsSearchSourcePage, un as DocsObservabilityConfig } from "./types-CMNYudRn.mjs";
2
+ import { z as DocsPublishedAgentSkill } from "./standards-discovery-B7L9pSnQ.mjs";
3
+ import { An as MIN_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, Cn as DocsContentChangeHydrationBudget, Dn as DocsContentChangeHydrationTombstone, En as DocsContentChangeHydrationSection, Fn as DocsContentChangeFeed, On as HydrateDocsContentChangesOptions, Sn as DOCS_CONTENT_CHANGE_HYDRATION_FORMAT, Tn as DocsContentChangeHydrationResponse, it as DocsMarkdownSectionIndex, jn as hydrateDocsContentChanges, kn as MAX_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, wn as DocsContentChangeHydrationContent, xn as DEFAULT_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET } from "./agent-DGEdQ0Nh.mjs";
4
4
  import { McpServer } from "@modelcontextprotocol/server";
5
5
 
6
6
  //#region src/mcp.d.ts
@@ -1,4 +1,4 @@
1
- import { i as detectPackageManagerFromProject, l as formatPackageManagerDetection, t as detectFramework, u as installCommand } from "./utils-DpiIioYb.mjs";
1
+ import { i as detectPackageManagerFromProject, l as formatPackageManagerDetection, t as detectFramework, u as installCommand } from "./utils-C4U_e1aw.mjs";
2
2
  import pc from "picocolors";
3
3
  import * as p from "@clack/prompts";
4
4
 
@@ -6,6 +6,7 @@ import * as p from "@clack/prompts";
6
6
  const PRESETS = [
7
7
  "next",
8
8
  "tanstack-start",
9
+ "farmjs",
9
10
  "nuxt",
10
11
  "sveltekit",
11
12
  "astro"
@@ -21,6 +22,11 @@ const PACKAGES_BY_FRAMEWORK = {
21
22
  "@farming-labs/theme",
22
23
  "@farming-labs/tanstack-start"
23
24
  ],
25
+ farmjs: [
26
+ "@farming-labs/docs",
27
+ "@farming-labs/theme",
28
+ "@farming-labs/farmjs"
29
+ ],
24
30
  nuxt: [
25
31
  "@farming-labs/docs",
26
32
  "@farming-labs/nuxt",
@@ -75,7 +81,7 @@ function resolveDocsPackageFramework(cwd, rawFramework) {
75
81
  }
76
82
  const detected = detectFramework(cwd);
77
83
  if (!detected) {
78
- p.log.error("Could not detect a supported framework (Next.js, TanStack Start, Nuxt, SvelteKit, Astro). Use " + pc.cyan("--framework <next|tanstack-start|nuxt|sveltekit|astro>") + " to specify.");
84
+ p.log.error("Could not detect a supported framework (Next.js, TanStack Start, Farm.js, Nuxt, SvelteKit, Astro). Use " + pc.cyan("--framework <next|tanstack-start|farmjs|nuxt|sveltekit|astro>") + " to specify.");
79
85
  process.exit(1);
80
86
  }
81
87
  return {
@@ -1,5 +1,5 @@
1
- import { Dr as OpenDocsTarget, Hr as ResolvedDocsRelatedLink, dn as DocsObservabilityEvent, fn as DocsObservabilityEventInput, ft as DocsAnalyticsConfig, ir as DocsSitemapConfig, lt as DocsAgentTraceEventInput, mt as DocsAnalyticsEventInput, pt as DocsAnalyticsEvent, un as DocsObservabilityConfig, wr as OpenDocsProvider } from "./types-DUMzbRER.mjs";
2
- import { R as DocsDiscoveryApiRouteOptions } from "./standards-discovery-DX9iiGar.mjs";
1
+ import { Dr as OpenDocsTarget, Hr as ResolvedDocsRelatedLink, dn as DocsObservabilityEvent, fn as DocsObservabilityEventInput, ft as DocsAnalyticsConfig, ir as DocsSitemapConfig, lt as DocsAgentTraceEventInput, mt as DocsAnalyticsEventInput, pt as DocsAnalyticsEvent, un as DocsObservabilityConfig, wr as OpenDocsProvider } from "./types-CMNYudRn.mjs";
2
+ import { R as DocsDiscoveryApiRouteOptions } from "./standards-discovery-B7L9pSnQ.mjs";
3
3
 
4
4
  //#region src/analytics.d.ts
5
5
  declare const DOCS_AGENT_TRACE_EVENT_TYPES: readonly ["run.start", "run.end", "run.error", "user.input", "prompt.build", "retrieval.query", "retrieval.result", "retrieval.error", "model.call", "model.response", "model.stream", "model.error", "tool.call", "tool.result", "tool.error", "retry", "timeout", "error", "agent.final"];
@@ -4,12 +4,12 @@ import { I as resolveDocsDiscoveryApiRoute, _ as DEFAULT_API_CATALOG_FORMAT, d a
4
4
  import "./content-change-hydration-Cy2a7rb1.mjs";
5
5
  import { a as resolveDocsMetadataBaseUrl } from "./metadata-N252j5_a.mjs";
6
6
  import "./agent-skills-server-CwmzAzf_.mjs";
7
- import { c as resolveDocsReviewConfig, o as ensureDocsReviewWorkflow, s as readDocsReviewConfigFromSource, t as runDocsGoldenTasks } from "./agent-evals-GFDpcXO3.mjs";
7
+ import { c as resolveDocsReviewConfig, o as ensureDocsReviewWorkflow, s as readDocsReviewConfigFromSource, t as runDocsGoldenTasks } from "./agent-evals-CKZ7bPSp.mjs";
8
8
  import { createFilesystemDocsMcpSource, getDocsConfigSchema, resolveDocsMcpConfig } from "./mcp.mjs";
9
9
  import "./code-blocks-0wjOsqdJ.mjs";
10
10
  import { _ as resolveDocsContentDir, g as resolveDocsConfigPath, h as readTopLevelStringProperty, s as loadDocsConfigModuleResultWithProjectEnv } from "./config-BtxaQTPP.mjs";
11
- import { t as detectFramework } from "./utils-DpiIioYb.mjs";
12
- import { a as extractAgentBlocks, i as createAgentUsefulnessPagesFromMcp, n as analyzeAgentSurfaceDrift, r as analyzeAgentUsefulness, t as resolveGoldenEvaluationInput } from "./golden-evaluations-CjpJSUEg.mjs";
11
+ import { t as detectFramework } from "./utils-C4U_e1aw.mjs";
12
+ import { a as extractAgentBlocks, i as createAgentUsefulnessPagesFromMcp, n as analyzeAgentSurfaceDrift, r as analyzeAgentUsefulness, t as resolveGoldenEvaluationInput } from "./golden-evaluations-AH4y5QDu.mjs";
13
13
  import { t as analyzeConfiguredAgentSkillsProgressiveDisclosure } from "./agent-skills-progressive-disclosure-BVvj7nM8.mjs";
14
14
  import matter from "gray-matter";
15
15
  import { existsSync, lstatSync, readFileSync, readdirSync } from "node:fs";
@@ -3,7 +3,7 @@ import "./markdown-sections-7OoA7ylx.mjs";
3
3
  import "./standards-discovery-Ckx0tN7B.mjs";
4
4
  import { c as renderDocsRobotsGeneratedBlock, f as upsertDocsRobotsGeneratedBlock, i as DOCS_ROBOTS_GENERATED_BLOCK_START, r as DOCS_ROBOTS_GENERATED_BLOCK_END, u as resolveDocsRobotsConfig } from "./robots-CQVNLcVS.mjs";
5
5
  import { a as loadDocsConfigModule, g as resolveDocsConfigPath, h as readTopLevelStringProperty, l as readBooleanProperty, m as readTopLevelBooleanProperty, p as readStringProperty, t as extractNestedObjectLiteral } from "./config-BtxaQTPP.mjs";
6
- import { t as detectFramework } from "./utils-DpiIioYb.mjs";
6
+ import { t as detectFramework } from "./utils-C4U_e1aw.mjs";
7
7
  import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
8
8
  import path from "node:path";
9
9
  import pc from "picocolors";
@@ -4,9 +4,9 @@ import "./standards-discovery-Ckx0tN7B.mjs";
4
4
  import "./content-change-hydration-Cy2a7rb1.mjs";
5
5
  import { t as resolveDocsI18n } from "./i18n-hHVWcflJ.mjs";
6
6
  import { a as resolveDocsMetadataBaseUrl } from "./metadata-N252j5_a.mjs";
7
- import "./sitemap-server-rv00bP21.mjs";
7
+ import "./sitemap-server-JffNpEef.mjs";
8
8
  import "./agent-skills-server-CwmzAzf_.mjs";
9
- import "./agent-evals-GFDpcXO3.mjs";
9
+ import "./agent-evals-CKZ7bPSp.mjs";
10
10
  import { createFilesystemDocsMcpSource } from "./mcp.mjs";
11
11
  import "./code-blocks-0wjOsqdJ.mjs";
12
12
  import "./server.mjs";
package/dist/server.d.mts CHANGED
@@ -1,10 +1,10 @@
1
- import { $ as DocsAgentGoldenQueryVariant, $n as DocsSearchResult, An as DocsSearchAmbiguityDecisionStatus, B as DocsAgentEvaluationAnswerRunner, Bn as DocsSearchFilterDecision, Bt as DocsContentChangeSnapshotContext, Ct as DocsAskAIFeedbackValue, Dn as DocsSearchAdapterFactory, En as DocsSearchAdapterContext, F as DocsAgentContentChangesConfig, Ft as DocsCodeBlocksValidateConfig, Gn as DocsSearchMatchField, Gt as DocsContentSnapshot, H as DocsAgentEvaluationSurface, Hn as DocsSearchFilterField, Ht as DocsContentChangeSnapshotSaver, I as DocsAgentEvaluationAnswerInput, In as DocsSearchExplanation, J as DocsAgentGoldenAuthenticatedContentExpectation, Jn as DocsSearchRankingReason, Kn as DocsSearchMatchedTerm, Kt as DocsContentSnapshotDocument, L as DocsAgentEvaluationAnswerProvider, Mt as DocsCodeBlocksPlannerProvider, Nn as DocsSearchConfig, On as DocsSearchAdapterPage, Pn as DocsSearchDocument, Q as DocsAgentGoldenPromptInjectionExpectation, Qn as DocsSearchResponse, R as DocsAgentEvaluationAnswerRequest, Rt as DocsConfig, St as DocsAskAIFeedbackMessage, Tn as DocsSearchAdapter, U as DocsAgentEvaluationTaskInput, Un as DocsSearchFilterInput, Ut as DocsContentChangedDocument, V as DocsAgentEvaluationSourceReference, Vn as DocsSearchFilterDecisionOutcome, Vt as DocsContentChangeSnapshotLoader, Wn as DocsSearchFilters, Wt as DocsContentChangesResponse, X as DocsAgentGoldenExpectedExample, Xn as DocsSearchRankingStrategy, Y as DocsAgentGoldenExampleVerification, Yn as DocsSearchRankingReasonCode, Z as DocsAgentGoldenFreshnessExpectation, Zn as DocsSearchRequest, a as ApiReferenceRenderer, bn as DocsReviewRulesConfig, bt as DocsAskAIFeedbackConfig, dn as DocsObservabilityEvent, dt as DocsAgentTraceStatus, et as DocsAgentGoldenQueryVariantKind, fn as DocsObservabilityEventInput, ft as DocsAnalyticsConfig, gn as DocsRetrievalSourceScope, hn as DocsRetrievalSourceProvenance, ir as DocsSitemapConfig, it as DocsAgentGoldenTaskFilters, jn as DocsSearchAmbiguityResolution, kn as DocsSearchAmbiguityDecision, lt as DocsAgentTraceEventInput, mt as DocsAnalyticsEventInput, nr as DocsSearchWarning, nt as DocsAgentGoldenTask, pn as DocsPaginatedSearchResponse, pt as DocsAnalyticsEvent, q as DocsAgentGoldenAnswerExpectation, qn as DocsSearchQuery, rr as DocsSearchWarningCode, rt as DocsAgentGoldenTaskExpectation, tr as DocsSearchSourcePage, tt as DocsAgentGoldenSafetyExpectation, un as DocsObservabilityConfig, ut as DocsAgentTraceEventType, vn as DocsReviewCiMode, wt as DocsAskAIMcpConfig, xr as McpDocsSearchConfig, xt as DocsAskAIFeedbackData, yn as DocsReviewConfig, z as DocsAgentEvaluationAnswerResult, zt as DocsContentChangeDocument } from "./types-DUMzbRER.mjs";
2
- import { n as resolveConfiguredAgentSkills, r as resolveConfiguredAgentSkillsSync, t as ResolveConfiguredAgentSkillsOptions } from "./agent-skills-server-Cltp5qai.mjs";
1
+ import { $ as DocsAgentGoldenQueryVariant, $n as DocsSearchResult, An as DocsSearchAmbiguityDecisionStatus, B as DocsAgentEvaluationAnswerRunner, Bn as DocsSearchFilterDecision, Bt as DocsContentChangeSnapshotContext, Ct as DocsAskAIFeedbackValue, Dn as DocsSearchAdapterFactory, En as DocsSearchAdapterContext, F as DocsAgentContentChangesConfig, Ft as DocsCodeBlocksValidateConfig, Gn as DocsSearchMatchField, Gt as DocsContentSnapshot, H as DocsAgentEvaluationSurface, Hn as DocsSearchFilterField, Ht as DocsContentChangeSnapshotSaver, I as DocsAgentEvaluationAnswerInput, In as DocsSearchExplanation, J as DocsAgentGoldenAuthenticatedContentExpectation, Jn as DocsSearchRankingReason, Kn as DocsSearchMatchedTerm, Kt as DocsContentSnapshotDocument, L as DocsAgentEvaluationAnswerProvider, Mt as DocsCodeBlocksPlannerProvider, Nn as DocsSearchConfig, On as DocsSearchAdapterPage, Pn as DocsSearchDocument, Q as DocsAgentGoldenPromptInjectionExpectation, Qn as DocsSearchResponse, R as DocsAgentEvaluationAnswerRequest, Rt as DocsConfig, St as DocsAskAIFeedbackMessage, Tn as DocsSearchAdapter, U as DocsAgentEvaluationTaskInput, Un as DocsSearchFilterInput, Ut as DocsContentChangedDocument, V as DocsAgentEvaluationSourceReference, Vn as DocsSearchFilterDecisionOutcome, Vt as DocsContentChangeSnapshotLoader, Wn as DocsSearchFilters, Wt as DocsContentChangesResponse, X as DocsAgentGoldenExpectedExample, Xn as DocsSearchRankingStrategy, Y as DocsAgentGoldenExampleVerification, Yn as DocsSearchRankingReasonCode, Z as DocsAgentGoldenFreshnessExpectation, Zn as DocsSearchRequest, a as ApiReferenceRenderer, bn as DocsReviewRulesConfig, bt as DocsAskAIFeedbackConfig, dn as DocsObservabilityEvent, dt as DocsAgentTraceStatus, et as DocsAgentGoldenQueryVariantKind, fn as DocsObservabilityEventInput, ft as DocsAnalyticsConfig, gn as DocsRetrievalSourceScope, hn as DocsRetrievalSourceProvenance, ir as DocsSitemapConfig, it as DocsAgentGoldenTaskFilters, jn as DocsSearchAmbiguityResolution, kn as DocsSearchAmbiguityDecision, lt as DocsAgentTraceEventInput, mt as DocsAnalyticsEventInput, nr as DocsSearchWarning, nt as DocsAgentGoldenTask, pn as DocsPaginatedSearchResponse, pt as DocsAnalyticsEvent, q as DocsAgentGoldenAnswerExpectation, qn as DocsSearchQuery, rr as DocsSearchWarningCode, rt as DocsAgentGoldenTaskExpectation, tr as DocsSearchSourcePage, tt as DocsAgentGoldenSafetyExpectation, un as DocsObservabilityConfig, ut as DocsAgentTraceEventType, vn as DocsReviewCiMode, wt as DocsAskAIMcpConfig, xr as McpDocsSearchConfig, xt as DocsAskAIFeedbackData, yn as DocsReviewConfig, z as DocsAgentEvaluationAnswerResult, zt as DocsContentChangeDocument } from "./types-CMNYudRn.mjs";
2
+ import { n as resolveConfiguredAgentSkills, r as resolveConfiguredAgentSkillsSync, t as ResolveConfiguredAgentSkillsOptions } from "./agent-skills-server-14HFIrBY.mjs";
3
3
  import { renderDocsAgentSkillsBundle } from "./agent-skills-vite.mjs";
4
- import { i as isDocsCloudAskAIProvider, n as DocsCloudAskAIResponseOptions, r as createDocsCloudAskAIResponse, t as DocsCloudAskAIConfig } from "./cloud-ask-ai-Da6md6U7.mjs";
4
+ import { i as isDocsCloudAskAIProvider, n as DocsCloudAskAIResponseOptions, r as createDocsCloudAskAIResponse, t as DocsCloudAskAIConfig } from "./cloud-ask-ai-B2v4Nry-.mjs";
5
5
  import { DocsCloudAskAIOptions, DocsCloudPublicConfig, DocsCloudRouteHandlerOptions, DocsCloudRouteHandlers, DocsCloudRuntimeEnv, DocsCloudRuntimeValue, DocsCloudServer, DocsCloudServerOptions, DocsCloudTrackEventOptions, createDocsCloudRouteHandler, createDocsCloudServer } from "./docs-cloud-server.mjs";
6
- import { A as PromptProviderChoice, B as serializeOpenDocsProviders, C as resolveDocsSitemapRequest, D as DEFAULT_OPEN_DOCS_TARGET, E as DEFAULT_OPEN_DOCS_PROVIDER_IDS, F as resolvePromptProviderChoices, G as createDocsAgentTraceContext, H as DocsAgentTraceContext, I as sanitizePromptText, J as emitDocsAnalyticsEvent, K as createDocsAgentTraceId, L as serializeDocsIcon, M as SerializedOpenDocsProvider, N as normalizePromptProviderName, O as DEFAULT_PROMPT_PROVIDER_TEMPLATES, P as parsePromptStringArray, Q as resolveDocsObservabilityConfig, R as serializeDocsIconRegistry, S as resolveDocsSitemapPageLastmod, T as DEFAULT_OPEN_DOCS_PROMPT, U as ResolvedDocsAnalyticsConfig, V as DOCS_AGENT_TRACE_EVENT_TYPES, W as ResolvedDocsObservabilityConfig, X as getDocsRequestAnalyticsProperties, Y as emitDocsObservabilityEvent, Z as resolveDocsAnalyticsConfig, _ as createDocsSitemapResponse, a as DocsPaginationCursorError, b as renderDocsSitemapXml, c as DEFAULT_SITEMAP_MD_ROUTE, d as DocsSitemapFormat, f as DocsSitemapManifest, g as buildDocsSitemapManifest, h as DocsSitemapResolvedConfig, j as SerializeOpenDocsProviderOptions, k as PromptAction, l as DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, m as DocsSitemapPageInput, n as digestDocsRetrievalContent, o as DEFAULT_SITEMAP_MANIFEST_PATH, p as DocsSitemapManifestPage, q as emitDocsAgentTraceEvent, r as isDocsRetrievalCanonicalUrl, s as DEFAULT_SITEMAP_MD_DOCS_ROUTE, u as DEFAULT_SITEMAP_XML_ROUTE, v as readDocsSitemapManifestFromContentMap, w as toDocsSitemapMarkdownUrl, x as resolveDocsSitemapConfig, y as renderDocsSitemapMarkdown, z as serializeOpenDocsProvider } from "./retrieval-digest-Dl7Bx121.mjs";
7
- import { $n as PerformDocsSearchOptions, An as MIN_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, Bn as createDocsContentChangeFeed, Cn as DocsContentChangeHydrationBudget, Cr as resolveSearchRequestConfig, Dn as DocsContentChangeHydrationTombstone, Dr as ExtractedDocsMarkdownPromptBlocks, En as DocsContentChangeHydrationSection, Er as DocsMarkdownPromptBlock, Fn as DocsContentChangeFeed, Gn as resolveDocsContentChangesRequest, Hn as isDocsContentChangeGeneration, In as DocsContentChangesRequest, Jn as DocsLocalMcpSearchRuntimeConfig, Kn as BuildDocsContentSnapshotOptions, Ln as DocsContentChangesRequestError, Mn as DOCS_CONTENT_CHANGES_FORMAT, Nn as DOCS_CONTENT_CHANGES_RESPONSE_VALUE, On as HydrateDocsContentChangesOptions, Or as extractDocsMarkdownPromptBlocks, Pn as DOCS_CONTENT_SNAPSHOT_FORMAT, Qn as EnrichDocsSearchDocumentsWithProvenanceOptions, Rn as DocsResolvedContentChangesConfig, Sn as DOCS_CONTENT_CHANGE_HYDRATION_FORMAT, Sr as resolveLocalDocsMcpSearchConfig, Tn as DocsContentChangeHydrationResponse, Un as isDocsContentChangesRequest, Vn as createDocsContentChangesHttpResponse, Wn as resolveDocsContentChangesConfig, Xn as DocsSearchRequestError, Yn as DocsLocalMcpSearchRuntimeInput, Zn as DocsSearchRequestResolutionOptions, _r as resolveDocsRetrievalLastModified, ar as createAlgoliaSearchAdapter, br as resolveDocsSearchFilters, cr as createSimpleSearchAdapter, dr as formatDocsAskAIPackageHints, er as buildDocsAskAIContext, fr as inferDocsAskAIPackageHints, gr as resolveAskAISearchRequestConfig, hr as performDocsSearchWithMetadata, jn as hydrateDocsContentChanges, kn as MAX_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, lr as createTypesenseSearchAdapter, mr as performDocsSearch, nr as buildDocsRetrievalDigestProjection, or as createCustomSearchAdapter, pr as normalizeDocsSearchFilters, rr as buildDocsSearchDocuments, sr as createMcpSearchAdapter, tr as buildDocsContentSnapshot, ur as enrichDocsSearchDocumentsWithProvenance, vr as resolveDocsSearchAudience, wn as DocsContentChangeHydrationContent, xn as DEFAULT_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, xr as resolveDocsSearchRequest, yr as resolveDocsSearchError, zn as ResolveDocsContentChangesOptions } from "./agent-Vk9oUKpQ.mjs";
6
+ import { A as PromptProviderChoice, B as serializeOpenDocsProviders, C as resolveDocsSitemapRequest, D as DEFAULT_OPEN_DOCS_TARGET, E as DEFAULT_OPEN_DOCS_PROVIDER_IDS, F as resolvePromptProviderChoices, G as createDocsAgentTraceContext, H as DocsAgentTraceContext, I as sanitizePromptText, J as emitDocsAnalyticsEvent, K as createDocsAgentTraceId, L as serializeDocsIcon, M as SerializedOpenDocsProvider, N as normalizePromptProviderName, O as DEFAULT_PROMPT_PROVIDER_TEMPLATES, P as parsePromptStringArray, Q as resolveDocsObservabilityConfig, R as serializeDocsIconRegistry, S as resolveDocsSitemapPageLastmod, T as DEFAULT_OPEN_DOCS_PROMPT, U as ResolvedDocsAnalyticsConfig, V as DOCS_AGENT_TRACE_EVENT_TYPES, W as ResolvedDocsObservabilityConfig, X as getDocsRequestAnalyticsProperties, Y as emitDocsObservabilityEvent, Z as resolveDocsAnalyticsConfig, _ as createDocsSitemapResponse, a as DocsPaginationCursorError, b as renderDocsSitemapXml, c as DEFAULT_SITEMAP_MD_ROUTE, d as DocsSitemapFormat, f as DocsSitemapManifest, g as buildDocsSitemapManifest, h as DocsSitemapResolvedConfig, j as SerializeOpenDocsProviderOptions, k as PromptAction, l as DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, m as DocsSitemapPageInput, n as digestDocsRetrievalContent, o as DEFAULT_SITEMAP_MANIFEST_PATH, p as DocsSitemapManifestPage, q as emitDocsAgentTraceEvent, r as isDocsRetrievalCanonicalUrl, s as DEFAULT_SITEMAP_MD_DOCS_ROUTE, u as DEFAULT_SITEMAP_XML_ROUTE, v as readDocsSitemapManifestFromContentMap, w as toDocsSitemapMarkdownUrl, x as resolveDocsSitemapConfig, y as renderDocsSitemapMarkdown, z as serializeOpenDocsProvider } from "./retrieval-digest-DMqcN_MK.mjs";
7
+ import { $n as PerformDocsSearchOptions, An as MIN_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, Bn as createDocsContentChangeFeed, Cn as DocsContentChangeHydrationBudget, Cr as resolveSearchRequestConfig, Dn as DocsContentChangeHydrationTombstone, Dr as ExtractedDocsMarkdownPromptBlocks, En as DocsContentChangeHydrationSection, Er as DocsMarkdownPromptBlock, Fn as DocsContentChangeFeed, Gn as resolveDocsContentChangesRequest, Hn as isDocsContentChangeGeneration, In as DocsContentChangesRequest, Jn as DocsLocalMcpSearchRuntimeConfig, Kn as BuildDocsContentSnapshotOptions, Ln as DocsContentChangesRequestError, Mn as DOCS_CONTENT_CHANGES_FORMAT, Nn as DOCS_CONTENT_CHANGES_RESPONSE_VALUE, On as HydrateDocsContentChangesOptions, Or as extractDocsMarkdownPromptBlocks, Pn as DOCS_CONTENT_SNAPSHOT_FORMAT, Qn as EnrichDocsSearchDocumentsWithProvenanceOptions, Rn as DocsResolvedContentChangesConfig, Sn as DOCS_CONTENT_CHANGE_HYDRATION_FORMAT, Sr as resolveLocalDocsMcpSearchConfig, Tn as DocsContentChangeHydrationResponse, Un as isDocsContentChangesRequest, Vn as createDocsContentChangesHttpResponse, Wn as resolveDocsContentChangesConfig, Xn as DocsSearchRequestError, Yn as DocsLocalMcpSearchRuntimeInput, Zn as DocsSearchRequestResolutionOptions, _r as resolveDocsRetrievalLastModified, ar as createAlgoliaSearchAdapter, br as resolveDocsSearchFilters, cr as createSimpleSearchAdapter, dr as formatDocsAskAIPackageHints, er as buildDocsAskAIContext, fr as inferDocsAskAIPackageHints, gr as resolveAskAISearchRequestConfig, hr as performDocsSearchWithMetadata, jn as hydrateDocsContentChanges, kn as MAX_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, lr as createTypesenseSearchAdapter, mr as performDocsSearch, nr as buildDocsRetrievalDigestProjection, or as createCustomSearchAdapter, pr as normalizeDocsSearchFilters, rr as buildDocsSearchDocuments, sr as createMcpSearchAdapter, tr as buildDocsContentSnapshot, ur as enrichDocsSearchDocumentsWithProvenance, vr as resolveDocsSearchAudience, wn as DocsContentChangeHydrationContent, xn as DEFAULT_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, xr as resolveDocsSearchRequest, yr as resolveDocsSearchError, zn as ResolveDocsContentChangesOptions } from "./agent-DGEdQ0Nh.mjs";
8
8
  import { CreateDocsMcpServerOptions, DEFAULT_DOCS_MCP_CONTENT_CHANGE_POLL_INTERVAL_MS, DEFAULT_DOCS_MCP_CORS_ALLOWED_HEADERS, DEFAULT_DOCS_MCP_CORS_EXPOSED_HEADERS, DEFAULT_DOCS_MCP_CORS_MAX_AGE_SECONDS, DEFAULT_DOCS_MCP_MAX_BODY_BYTES, DOCS_CONFIG_SCHEMA_OPTIONS, DOCS_MCP_CONTENT_CHANGES_CURRENT_URI, DOCS_MCP_CONTENT_CHANGES_URI_TEMPLATE, DocsMcpAgentContractSummary, DocsMcpCodeExample, DocsMcpConfigSchema, DocsMcpConfigSchemaOption, DocsMcpContextResult, DocsMcpContextSource, DocsMcpDocsList, DocsMcpDocsPageSummary, DocsMcpDocsSection, DocsMcpHttpHandlers, DocsMcpNavigationNode, DocsMcpNavigationTree, DocsMcpPage, DocsMcpPageSectionIndex, DocsMcpPageSectionList, DocsMcpPaginatedDocsList, DocsMcpPagination, DocsMcpRequestContext, DocsMcpResolvedConfig, DocsMcpResolvedCorsConfig, DocsMcpResolvedPromptsConfig, DocsMcpResolvedProtectedResourceConfig, DocsMcpResolvedSecurityConfig, DocsMcpSource, DocsMcpTaskSummary, createDocsMcpHttpHandler, createDocsMcpServer, createFilesystemDocsMcpSource, getDocsConfigSchema, normalizeDocsMcpRoute, resolveDocsMcpConfig, resolveDocsMcpPromptsConfig, runDocsMcpStdio } from "./mcp.mjs";
9
9
 
10
10
  //#region src/code-group-mdx.d.ts
@@ -19,7 +19,7 @@ declare function remarkCodeGroup(): (tree: MarkdownNode) => void;
19
19
  //#endregion
20
20
  //#region src/api-reference.d.ts
21
21
  type HttpMethod = "GET" | "POST" | "PUT" | "PATCH" | "DELETE" | "OPTIONS" | "HEAD";
22
- type ApiReferenceFramework = "next" | "tanstack-start" | "sveltekit" | "astro" | "nuxt";
22
+ type ApiReferenceFramework = "next" | "tanstack-start" | "farmjs" | "sveltekit" | "astro" | "nuxt";
23
23
  interface ApiReferenceRoute {
24
24
  title: string;
25
25
  summary: string;
@@ -186,6 +186,7 @@ declare global {
186
186
  //#endregion
187
187
  //#region src/agent-evals.d.ts
188
188
  type DocsGoldenEvaluationStatus = "unmeasured" | "passed" | "failed";
189
+ type DocsGoldenEvaluationCoverageStatus = "measured" | "partially-measured" | "unmeasured";
189
190
  type DocsGoldenTaskFilters = DocsAgentGoldenTaskFilters;
190
191
  type DocsGoldenExpectedExample = DocsAgentGoldenExpectedExample;
191
192
  type DocsGoldenTaskExpectation = DocsAgentGoldenTaskExpectation;
@@ -338,12 +339,42 @@ interface DocsGoldenTaskReport {
338
339
  interface DocsGoldenTasksReport {
339
340
  status: DocsGoldenEvaluationStatus;
340
341
  passed: boolean | null;
342
+ /** Compatibility alias for quality.score. */
341
343
  score: number | null;
342
344
  taskCount: number;
343
345
  passedTaskCount: number;
344
346
  failedTaskCount: number;
347
+ /** Quality across only the expectations configured by each task. */
348
+ quality: DocsGoldenEvaluationQuality;
349
+ /** Coverage is intentionally separate so absent evaluation dimensions cannot look perfect. */
350
+ coverage: DocsGoldenEvaluationCoverage;
345
351
  tasks: DocsGoldenTaskReport[];
346
352
  }
353
+ interface DocsGoldenEvaluationQuality {
354
+ status: DocsGoldenEvaluationStatus;
355
+ passed: boolean | null;
356
+ score: number | null;
357
+ taskCount: number;
358
+ passedTaskCount: number;
359
+ failedTaskCount: number;
360
+ }
361
+ interface DocsGoldenEvaluationDimensionCoverage {
362
+ status: DocsGoldenEvaluationCoverageStatus;
363
+ measuredTaskCount: number;
364
+ totalTaskCount: number;
365
+ coveragePercent: number;
366
+ }
367
+ interface DocsGoldenEvaluationCoverage {
368
+ status: DocsGoldenEvaluationCoverageStatus;
369
+ measuredTaskDimensions: number;
370
+ totalTaskDimensions: number;
371
+ coveragePercent: number;
372
+ dimensions: {
373
+ safety: DocsGoldenEvaluationDimensionCoverage;
374
+ answerQuality: DocsGoldenEvaluationDimensionCoverage;
375
+ executableExamples: DocsGoldenEvaluationDimensionCoverage;
376
+ };
377
+ }
347
378
  interface RunDocsGoldenTasksOptions {
348
379
  /** Default evaluation surface. Tasks may override this with `task.surface`. */
349
380
  surface?: DocsAgentEvaluationSurface;
@@ -363,14 +394,9 @@ interface RunDocsGoldenTasksOptions {
363
394
  /** Optional actual-answer runner. No model or HTTP request is made when omitted. */
364
395
  answer?: DocsAgentEvaluationAnswerProvider;
365
396
  }
366
- /**
367
- * Run offline-by-default golden-task evaluations against MCP-ready docs pages.
368
- * Configured external retrieval, HTTP answers, and runtime execution require explicit opt-in.
369
- * An empty task list is intentionally unmeasured so CI cannot turn absent coverage into a pass.
370
- */
371
397
  declare function runDocsGoldenTasks(pages: readonly DocsMcpPage[], tasks: readonly DocsGoldenTask[] | undefined, options?: RunDocsGoldenTasksOptions): Promise<DocsGoldenTasksReport>;
372
398
  //#endregion
373
399
  //#region src/sitemap-server.d.ts
374
400
  declare function readDocsSitemapManifest(rootDir: string, sitemap?: boolean | DocsSitemapConfig): DocsSitemapManifest | null;
375
401
  //#endregion
376
- export { type ApiReferenceFramework, type ApiReferenceOpenApiDiscovery, type ApiReferenceRenderer, type ApiReferenceRoute, type BuildDocsContentSnapshotOptions, type CreateDocsMcpServerOptions, DEFAULT_API_REFERENCE_OPENAPI_ROUTE, DEFAULT_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, DEFAULT_DOCS_MCP_CONTENT_CHANGE_POLL_INTERVAL_MS, DEFAULT_DOCS_MCP_CORS_ALLOWED_HEADERS, DEFAULT_DOCS_MCP_CORS_EXPOSED_HEADERS, DEFAULT_DOCS_MCP_CORS_MAX_AGE_SECONDS, DEFAULT_DOCS_MCP_MAX_BODY_BYTES, DEFAULT_DOCS_REVIEW_SCORE_THRESHOLD, DEFAULT_DOCS_REVIEW_WORKFLOW_PATH, DEFAULT_OPEN_DOCS_PROMPT, DEFAULT_OPEN_DOCS_PROVIDER_IDS, DEFAULT_OPEN_DOCS_TARGET, DEFAULT_PROMPT_PROVIDER_TEMPLATES, DEFAULT_SITEMAP_MANIFEST_PATH, DEFAULT_SITEMAP_MD_DOCS_ROUTE, DEFAULT_SITEMAP_MD_ROUTE, DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, DEFAULT_SITEMAP_XML_ROUTE, DOCS_AGENT_TRACE_EVENT_TYPES, DOCS_CONFIG_SCHEMA_OPTIONS, DOCS_CONTENT_CHANGES_FORMAT, DOCS_CONTENT_CHANGES_RESPONSE_VALUE, DOCS_CONTENT_CHANGE_HYDRATION_FORMAT, DOCS_CONTENT_SNAPSHOT_FORMAT, DOCS_MCP_CONTENT_CHANGES_CURRENT_URI, DOCS_MCP_CONTENT_CHANGES_URI_TEMPLATE, type DocsAgentContentChangesConfig, type DocsAgentEvaluationAnswerInput, type DocsAgentEvaluationAnswerProvider, type DocsAgentEvaluationAnswerRequest, type DocsAgentEvaluationAnswerResult, type DocsAgentEvaluationAnswerRunner, type DocsAgentEvaluationSourceReference, type DocsAgentEvaluationSurface, type DocsAgentEvaluationTaskInput, type DocsAgentGoldenAnswerExpectation, type DocsAgentGoldenAuthenticatedContentExpectation, type DocsAgentGoldenExampleVerification, type DocsAgentGoldenFreshnessExpectation, type DocsAgentGoldenPromptInjectionExpectation, type DocsAgentGoldenQueryVariant, type DocsAgentGoldenQueryVariantKind, type DocsAgentGoldenSafetyExpectation, type DocsAgentTraceContext, type DocsAgentTraceEventInput, type DocsAgentTraceEventType, type DocsAgentTraceStatus, type DocsAnalyticsConfig, type DocsAnalyticsEvent, type DocsAnalyticsEventInput, type DocsAskAIFeedbackConfig, type DocsAskAIFeedbackData, type DocsAskAIFeedbackMessage, type DocsAskAIFeedbackValue, type DocsAskAIMcpConfig, type DocsCloudAskAIConfig, type DocsCloudAskAIOptions, type DocsCloudAskAIResponseOptions, type DocsCloudPublicConfig, type DocsCloudRouteHandlerOptions, type DocsCloudRouteHandlers, type DocsCloudRuntimeEnv, type DocsCloudRuntimeValue, type DocsCloudServer, type DocsCloudServerOptions, type DocsCloudTrackEventOptions, type DocsContentChangeDocument, type DocsContentChangeFeed, type DocsContentChangeHydrationBudget, type DocsContentChangeHydrationContent, type DocsContentChangeHydrationResponse, type DocsContentChangeHydrationSection, type DocsContentChangeHydrationTombstone, type DocsContentChangeSnapshotContext, type DocsContentChangeSnapshotLoader, type DocsContentChangeSnapshotSaver, type DocsContentChangedDocument, type DocsContentChangesRequest, DocsContentChangesRequestError, type DocsContentChangesResponse, type DocsContentSnapshot, type DocsContentSnapshotDocument, type DocsGoldenAnswerMetrics, type DocsGoldenCitationMetrics, type DocsGoldenEvaluationStatus, type DocsGoldenExampleMetrics, type DocsGoldenExampleResult, type DocsGoldenExpectedExample, type DocsGoldenQueryVariantResult, type DocsGoldenRetrievalMetrics, type DocsGoldenRetrievedSource, type DocsGoldenSafetyCaseKind, type DocsGoldenSafetyCaseResult, type DocsGoldenSafetyMetrics, type DocsGoldenSelectionMetrics, type DocsGoldenTask, type DocsGoldenTaskExpectation, type DocsGoldenTaskFilters, type DocsGoldenTaskReport, type DocsGoldenTasksReport, type DocsGoldenUsageMetrics, type DocsLocalMcpSearchRuntimeConfig, type DocsLocalMcpSearchRuntimeInput, type DocsMarkdownPromptBlock, type DocsMcpAgentContractSummary, type DocsMcpCodeExample, type DocsMcpConfigSchema, type DocsMcpConfigSchemaOption, type DocsMcpContextResult, type DocsMcpContextSource, type DocsMcpDocsList, type DocsMcpDocsPageSummary, type DocsMcpDocsSection, type DocsMcpHttpHandlers, type DocsMcpNavigationNode, type DocsMcpNavigationTree, type DocsMcpPage, type DocsMcpPageSectionIndex, type DocsMcpPageSectionList, type DocsMcpPaginatedDocsList, type DocsMcpPagination, type DocsMcpRequestContext, type DocsMcpResolvedConfig, type DocsMcpResolvedCorsConfig, type DocsMcpResolvedPromptsConfig, type DocsMcpResolvedProtectedResourceConfig, type DocsMcpResolvedSecurityConfig, type DocsMcpSource, type DocsMcpTaskSummary, type DocsObservabilityConfig, type DocsObservabilityEvent, type DocsObservabilityEventInput, type DocsPaginatedSearchResponse, DocsPaginationCursorError, type DocsResolvedContentChangesConfig, type DocsRetrievalSourceProvenance, type DocsRetrievalSourceScope, type DocsSearchAdapter, type DocsSearchAdapterContext, type DocsSearchAdapterFactory, type DocsSearchAdapterPage, type DocsSearchAmbiguityDecision, type DocsSearchAmbiguityDecisionStatus, type DocsSearchAmbiguityResolution, type DocsSearchConfig, type DocsSearchDocument, type DocsSearchExplanation, type DocsSearchFilterDecision, type DocsSearchFilterDecisionOutcome, type DocsSearchFilterField, type DocsSearchFilterInput, type DocsSearchFilters, type DocsSearchMatchField, type DocsSearchMatchedTerm, type DocsSearchQuery, type DocsSearchRankingReason, type DocsSearchRankingReasonCode, type DocsSearchRankingStrategy, type DocsSearchRequest, DocsSearchRequestError, type DocsSearchRequestResolutionOptions, type DocsSearchResponse, type DocsSearchResult, type DocsSearchSourcePage, type DocsSearchWarning, type DocsSearchWarningCode, type DocsSitemapFormat, type DocsSitemapManifest, type DocsSitemapManifestPage, type DocsSitemapPageInput, type DocsSitemapResolvedConfig, type EnrichDocsSearchDocumentsWithProvenanceOptions, type ExtractedDocsMarkdownPromptBlocks, type HydrateDocsContentChangesOptions, MAX_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, MIN_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, type McpDocsSearchConfig, type PerformDocsSearchOptions, type PromptAction, type PromptProviderChoice, type ResolveConfiguredAgentSkillsOptions, type ResolveDocsContentChangesOptions, type ResolvedApiReferenceConfig, type ResolvedDocsAnalyticsConfig, type ResolvedDocsObservabilityConfig, type ResolvedDocsReviewConfig, type RunDocsGoldenTasksOptions, type SerializeOpenDocsProviderOptions, type SerializedOpenDocsProvider, buildApiReferenceHtmlDocument, buildApiReferenceHtmlDocumentAsync, buildApiReferenceOpenApiDocument, buildApiReferenceOpenApiDocumentAsync, buildApiReferencePageTitle, buildApiReferenceScalarCss, buildDocsAskAIContext, buildDocsContentSnapshot, buildDocsRetrievalDigestProjection, buildDocsReviewWorkflow, buildDocsReviewWorkflowPathFilters, buildDocsSearchDocuments, buildDocsSitemapManifest, createAlgoliaSearchAdapter, createCustomSearchAdapter, createDocsAgentTraceContext, createDocsAgentTraceId, createDocsCloudAskAIResponse, createDocsCloudRouteHandler, createDocsCloudServer, createDocsContentChangeFeed, createDocsContentChangesHttpResponse, createDocsMcpHttpHandler, createDocsMcpServer, createDocsSitemapResponse, createFilesystemDocsMcpSource, createMcpSearchAdapter, createSimpleSearchAdapter, createTypesenseSearchAdapter, digestDocsRetrievalContent, emitDocsAgentTraceEvent, emitDocsAnalyticsEvent, emitDocsObservabilityEvent, enrichDocsSearchDocumentsWithProvenance, ensureDocsReviewWorkflow, extractDocsMarkdownPromptBlocks, formatDocsAskAIPackageHints, getDocsConfigSchema, getDocsRequestAnalyticsProperties, hydrateDocsContentChanges, inferDocsAskAIPackageHints, isApiReferenceOpenApiRequest, isDocsCloudAskAIProvider, isDocsContentChangeGeneration, isDocsContentChangesRequest, isDocsRetrievalCanonicalUrl, normalizeDocsMcpRoute, normalizeDocsSearchFilters, normalizePromptProviderName, parsePromptStringArray, performDocsSearch, performDocsSearchWithMetadata, readDocsReviewConfigFromSource, readDocsSitemapManifest, readDocsSitemapManifestFromContentMap, remarkCodeGroup, renderDocsAgentSkillsBundle, renderDocsSitemapMarkdown, renderDocsSitemapXml, resolveApiReferenceConfig, resolveApiReferenceOpenApiDiscovery, resolveApiReferenceRenderer, resolveAskAISearchRequestConfig, resolveConfiguredAgentSkills, resolveConfiguredAgentSkillsSync, resolveDocsAnalyticsConfig, resolveDocsContentChangesConfig, resolveDocsContentChangesRequest, resolveDocsMcpConfig, resolveDocsMcpPromptsConfig, resolveDocsObservabilityConfig, resolveDocsRetrievalLastModified, resolveDocsReviewConfig, resolveDocsSearchAudience, resolveDocsSearchError, resolveDocsSearchFilters, resolveDocsSearchRequest, resolveDocsSitemapConfig, resolveDocsSitemapPageLastmod, resolveDocsSitemapRequest, resolveLocalDocsMcpSearchConfig, resolvePromptProviderChoices, resolveSearchRequestConfig, runDocsGoldenTasks, runDocsMcpStdio, sanitizePromptText, serializeDocsIcon, serializeDocsIconRegistry, serializeOpenDocsProvider, serializeOpenDocsProviders, toDocsSitemapMarkdownUrl };
402
+ export { type ApiReferenceFramework, type ApiReferenceOpenApiDiscovery, type ApiReferenceRenderer, type ApiReferenceRoute, type BuildDocsContentSnapshotOptions, type CreateDocsMcpServerOptions, DEFAULT_API_REFERENCE_OPENAPI_ROUTE, DEFAULT_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, DEFAULT_DOCS_MCP_CONTENT_CHANGE_POLL_INTERVAL_MS, DEFAULT_DOCS_MCP_CORS_ALLOWED_HEADERS, DEFAULT_DOCS_MCP_CORS_EXPOSED_HEADERS, DEFAULT_DOCS_MCP_CORS_MAX_AGE_SECONDS, DEFAULT_DOCS_MCP_MAX_BODY_BYTES, DEFAULT_DOCS_REVIEW_SCORE_THRESHOLD, DEFAULT_DOCS_REVIEW_WORKFLOW_PATH, DEFAULT_OPEN_DOCS_PROMPT, DEFAULT_OPEN_DOCS_PROVIDER_IDS, DEFAULT_OPEN_DOCS_TARGET, DEFAULT_PROMPT_PROVIDER_TEMPLATES, DEFAULT_SITEMAP_MANIFEST_PATH, DEFAULT_SITEMAP_MD_DOCS_ROUTE, DEFAULT_SITEMAP_MD_ROUTE, DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, DEFAULT_SITEMAP_XML_ROUTE, DOCS_AGENT_TRACE_EVENT_TYPES, DOCS_CONFIG_SCHEMA_OPTIONS, DOCS_CONTENT_CHANGES_FORMAT, DOCS_CONTENT_CHANGES_RESPONSE_VALUE, DOCS_CONTENT_CHANGE_HYDRATION_FORMAT, DOCS_CONTENT_SNAPSHOT_FORMAT, DOCS_MCP_CONTENT_CHANGES_CURRENT_URI, DOCS_MCP_CONTENT_CHANGES_URI_TEMPLATE, type DocsAgentContentChangesConfig, type DocsAgentEvaluationAnswerInput, type DocsAgentEvaluationAnswerProvider, type DocsAgentEvaluationAnswerRequest, type DocsAgentEvaluationAnswerResult, type DocsAgentEvaluationAnswerRunner, type DocsAgentEvaluationSourceReference, type DocsAgentEvaluationSurface, type DocsAgentEvaluationTaskInput, type DocsAgentGoldenAnswerExpectation, type DocsAgentGoldenAuthenticatedContentExpectation, type DocsAgentGoldenExampleVerification, type DocsAgentGoldenFreshnessExpectation, type DocsAgentGoldenPromptInjectionExpectation, type DocsAgentGoldenQueryVariant, type DocsAgentGoldenQueryVariantKind, type DocsAgentGoldenSafetyExpectation, type DocsAgentTraceContext, type DocsAgentTraceEventInput, type DocsAgentTraceEventType, type DocsAgentTraceStatus, type DocsAnalyticsConfig, type DocsAnalyticsEvent, type DocsAnalyticsEventInput, type DocsAskAIFeedbackConfig, type DocsAskAIFeedbackData, type DocsAskAIFeedbackMessage, type DocsAskAIFeedbackValue, type DocsAskAIMcpConfig, type DocsCloudAskAIConfig, type DocsCloudAskAIOptions, type DocsCloudAskAIResponseOptions, type DocsCloudPublicConfig, type DocsCloudRouteHandlerOptions, type DocsCloudRouteHandlers, type DocsCloudRuntimeEnv, type DocsCloudRuntimeValue, type DocsCloudServer, type DocsCloudServerOptions, type DocsCloudTrackEventOptions, type DocsContentChangeDocument, type DocsContentChangeFeed, type DocsContentChangeHydrationBudget, type DocsContentChangeHydrationContent, type DocsContentChangeHydrationResponse, type DocsContentChangeHydrationSection, type DocsContentChangeHydrationTombstone, type DocsContentChangeSnapshotContext, type DocsContentChangeSnapshotLoader, type DocsContentChangeSnapshotSaver, type DocsContentChangedDocument, type DocsContentChangesRequest, DocsContentChangesRequestError, type DocsContentChangesResponse, type DocsContentSnapshot, type DocsContentSnapshotDocument, type DocsGoldenAnswerMetrics, type DocsGoldenCitationMetrics, type DocsGoldenEvaluationCoverage, type DocsGoldenEvaluationCoverageStatus, type DocsGoldenEvaluationDimensionCoverage, type DocsGoldenEvaluationQuality, type DocsGoldenEvaluationStatus, type DocsGoldenExampleMetrics, type DocsGoldenExampleResult, type DocsGoldenExpectedExample, type DocsGoldenQueryVariantResult, type DocsGoldenRetrievalMetrics, type DocsGoldenRetrievedSource, type DocsGoldenSafetyCaseKind, type DocsGoldenSafetyCaseResult, type DocsGoldenSafetyMetrics, type DocsGoldenSelectionMetrics, type DocsGoldenTask, type DocsGoldenTaskExpectation, type DocsGoldenTaskFilters, type DocsGoldenTaskReport, type DocsGoldenTasksReport, type DocsGoldenUsageMetrics, type DocsLocalMcpSearchRuntimeConfig, type DocsLocalMcpSearchRuntimeInput, type DocsMarkdownPromptBlock, type DocsMcpAgentContractSummary, type DocsMcpCodeExample, type DocsMcpConfigSchema, type DocsMcpConfigSchemaOption, type DocsMcpContextResult, type DocsMcpContextSource, type DocsMcpDocsList, type DocsMcpDocsPageSummary, type DocsMcpDocsSection, type DocsMcpHttpHandlers, type DocsMcpNavigationNode, type DocsMcpNavigationTree, type DocsMcpPage, type DocsMcpPageSectionIndex, type DocsMcpPageSectionList, type DocsMcpPaginatedDocsList, type DocsMcpPagination, type DocsMcpRequestContext, type DocsMcpResolvedConfig, type DocsMcpResolvedCorsConfig, type DocsMcpResolvedPromptsConfig, type DocsMcpResolvedProtectedResourceConfig, type DocsMcpResolvedSecurityConfig, type DocsMcpSource, type DocsMcpTaskSummary, type DocsObservabilityConfig, type DocsObservabilityEvent, type DocsObservabilityEventInput, type DocsPaginatedSearchResponse, DocsPaginationCursorError, type DocsResolvedContentChangesConfig, type DocsRetrievalSourceProvenance, type DocsRetrievalSourceScope, type DocsSearchAdapter, type DocsSearchAdapterContext, type DocsSearchAdapterFactory, type DocsSearchAdapterPage, type DocsSearchAmbiguityDecision, type DocsSearchAmbiguityDecisionStatus, type DocsSearchAmbiguityResolution, type DocsSearchConfig, type DocsSearchDocument, type DocsSearchExplanation, type DocsSearchFilterDecision, type DocsSearchFilterDecisionOutcome, type DocsSearchFilterField, type DocsSearchFilterInput, type DocsSearchFilters, type DocsSearchMatchField, type DocsSearchMatchedTerm, type DocsSearchQuery, type DocsSearchRankingReason, type DocsSearchRankingReasonCode, type DocsSearchRankingStrategy, type DocsSearchRequest, DocsSearchRequestError, type DocsSearchRequestResolutionOptions, type DocsSearchResponse, type DocsSearchResult, type DocsSearchSourcePage, type DocsSearchWarning, type DocsSearchWarningCode, type DocsSitemapFormat, type DocsSitemapManifest, type DocsSitemapManifestPage, type DocsSitemapPageInput, type DocsSitemapResolvedConfig, type EnrichDocsSearchDocumentsWithProvenanceOptions, type ExtractedDocsMarkdownPromptBlocks, type HydrateDocsContentChangesOptions, MAX_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, MIN_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, type McpDocsSearchConfig, type PerformDocsSearchOptions, type PromptAction, type PromptProviderChoice, type ResolveConfiguredAgentSkillsOptions, type ResolveDocsContentChangesOptions, type ResolvedApiReferenceConfig, type ResolvedDocsAnalyticsConfig, type ResolvedDocsObservabilityConfig, type ResolvedDocsReviewConfig, type RunDocsGoldenTasksOptions, type SerializeOpenDocsProviderOptions, type SerializedOpenDocsProvider, buildApiReferenceHtmlDocument, buildApiReferenceHtmlDocumentAsync, buildApiReferenceOpenApiDocument, buildApiReferenceOpenApiDocumentAsync, buildApiReferencePageTitle, buildApiReferenceScalarCss, buildDocsAskAIContext, buildDocsContentSnapshot, buildDocsRetrievalDigestProjection, buildDocsReviewWorkflow, buildDocsReviewWorkflowPathFilters, buildDocsSearchDocuments, buildDocsSitemapManifest, createAlgoliaSearchAdapter, createCustomSearchAdapter, createDocsAgentTraceContext, createDocsAgentTraceId, createDocsCloudAskAIResponse, createDocsCloudRouteHandler, createDocsCloudServer, createDocsContentChangeFeed, createDocsContentChangesHttpResponse, createDocsMcpHttpHandler, createDocsMcpServer, createDocsSitemapResponse, createFilesystemDocsMcpSource, createMcpSearchAdapter, createSimpleSearchAdapter, createTypesenseSearchAdapter, digestDocsRetrievalContent, emitDocsAgentTraceEvent, emitDocsAnalyticsEvent, emitDocsObservabilityEvent, enrichDocsSearchDocumentsWithProvenance, ensureDocsReviewWorkflow, extractDocsMarkdownPromptBlocks, formatDocsAskAIPackageHints, getDocsConfigSchema, getDocsRequestAnalyticsProperties, hydrateDocsContentChanges, inferDocsAskAIPackageHints, isApiReferenceOpenApiRequest, isDocsCloudAskAIProvider, isDocsContentChangeGeneration, isDocsContentChangesRequest, isDocsRetrievalCanonicalUrl, normalizeDocsMcpRoute, normalizeDocsSearchFilters, normalizePromptProviderName, parsePromptStringArray, performDocsSearch, performDocsSearchWithMetadata, readDocsReviewConfigFromSource, readDocsSitemapManifest, readDocsSitemapManifestFromContentMap, remarkCodeGroup, renderDocsAgentSkillsBundle, renderDocsSitemapMarkdown, renderDocsSitemapXml, resolveApiReferenceConfig, resolveApiReferenceOpenApiDiscovery, resolveApiReferenceRenderer, resolveAskAISearchRequestConfig, resolveConfiguredAgentSkills, resolveConfiguredAgentSkillsSync, resolveDocsAnalyticsConfig, resolveDocsContentChangesConfig, resolveDocsContentChangesRequest, resolveDocsMcpConfig, resolveDocsMcpPromptsConfig, resolveDocsObservabilityConfig, resolveDocsRetrievalLastModified, resolveDocsReviewConfig, resolveDocsSearchAudience, resolveDocsSearchError, resolveDocsSearchFilters, resolveDocsSearchRequest, resolveDocsSitemapConfig, resolveDocsSitemapPageLastmod, resolveDocsSitemapRequest, resolveLocalDocsMcpSearchConfig, resolvePromptProviderChoices, resolveSearchRequestConfig, runDocsGoldenTasks, runDocsMcpStdio, sanitizePromptText, serializeDocsIcon, serializeDocsIconRegistry, serializeOpenDocsProvider, serializeOpenDocsProviders, toDocsSitemapMarkdownUrl };
package/dist/server.mjs CHANGED
@@ -3,9 +3,9 @@ import { $t as buildDocsRetrievalDigestProjection, At as DEFAULT_SITEMAP_XML_ROU
3
3
  import "./markdown-sections-7OoA7ylx.mjs";
4
4
  import { K as digestDocsRetrievalContent, q as isDocsRetrievalCanonicalUrl } from "./standards-discovery-Ckx0tN7B.mjs";
5
5
  import { a as hydrateDocsContentChanges, i as MIN_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, n as DOCS_CONTENT_CHANGE_HYDRATION_FORMAT, r as MAX_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, t as DEFAULT_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET } from "./content-change-hydration-Cy2a7rb1.mjs";
6
- import { C as resolveApiReferenceOpenApiDiscovery, S as resolveApiReferenceConfig, T as remarkCodeGroup, _ as buildApiReferenceOpenApiDocument, a as DEFAULT_PROMPT_PROVIDER_TEMPLATES, b as buildApiReferenceScalarCss, c as resolvePromptProviderChoices, d as serializeDocsIconRegistry, f as serializeOpenDocsProvider, g as buildApiReferenceHtmlDocumentAsync, h as buildApiReferenceHtmlDocument, i as DEFAULT_OPEN_DOCS_TARGET, l as sanitizePromptText, m as DEFAULT_API_REFERENCE_OPENAPI_ROUTE, n as DEFAULT_OPEN_DOCS_PROMPT, o as normalizePromptProviderName, p as serializeOpenDocsProviders, r as DEFAULT_OPEN_DOCS_PROVIDER_IDS, s as parsePromptStringArray, t as readDocsSitemapManifest, u as serializeDocsIcon, v as buildApiReferenceOpenApiDocumentAsync, w as resolveApiReferenceRenderer, x as isApiReferenceOpenApiRequest, y as buildApiReferencePageTitle } from "./sitemap-server-rv00bP21.mjs";
6
+ import { C as resolveApiReferenceOpenApiDiscovery, S as resolveApiReferenceConfig, T as remarkCodeGroup, _ as buildApiReferenceOpenApiDocument, a as DEFAULT_PROMPT_PROVIDER_TEMPLATES, b as buildApiReferenceScalarCss, c as resolvePromptProviderChoices, d as serializeDocsIconRegistry, f as serializeOpenDocsProvider, g as buildApiReferenceHtmlDocumentAsync, h as buildApiReferenceHtmlDocument, i as DEFAULT_OPEN_DOCS_TARGET, l as sanitizePromptText, m as DEFAULT_API_REFERENCE_OPENAPI_ROUTE, n as DEFAULT_OPEN_DOCS_PROMPT, o as normalizePromptProviderName, p as serializeOpenDocsProviders, r as DEFAULT_OPEN_DOCS_PROVIDER_IDS, s as parsePromptStringArray, t as readDocsSitemapManifest, u as serializeDocsIcon, v as buildApiReferenceOpenApiDocumentAsync, w as resolveApiReferenceRenderer, x as isApiReferenceOpenApiRequest, y as buildApiReferencePageTitle } from "./sitemap-server-JffNpEef.mjs";
7
7
  import { i as resolveConfiguredAgentSkillsSync, r as resolveConfiguredAgentSkills } from "./agent-skills-server-CwmzAzf_.mjs";
8
- import { a as buildDocsReviewWorkflowPathFilters, c as resolveDocsReviewConfig, i as buildDocsReviewWorkflow, n as DEFAULT_DOCS_REVIEW_SCORE_THRESHOLD, o as ensureDocsReviewWorkflow, r as DEFAULT_DOCS_REVIEW_WORKFLOW_PATH, s as readDocsReviewConfigFromSource, t as runDocsGoldenTasks } from "./agent-evals-GFDpcXO3.mjs";
8
+ import { a as buildDocsReviewWorkflowPathFilters, c as resolveDocsReviewConfig, i as buildDocsReviewWorkflow, n as DEFAULT_DOCS_REVIEW_SCORE_THRESHOLD, o as ensureDocsReviewWorkflow, r as DEFAULT_DOCS_REVIEW_WORKFLOW_PATH, s as readDocsReviewConfigFromSource, t as runDocsGoldenTasks } from "./agent-evals-CKZ7bPSp.mjs";
9
9
  import { DEFAULT_DOCS_MCP_CONTENT_CHANGE_POLL_INTERVAL_MS, DEFAULT_DOCS_MCP_CORS_ALLOWED_HEADERS, DEFAULT_DOCS_MCP_CORS_EXPOSED_HEADERS, DEFAULT_DOCS_MCP_CORS_MAX_AGE_SECONDS, DEFAULT_DOCS_MCP_MAX_BODY_BYTES, DOCS_CONFIG_SCHEMA_OPTIONS, DOCS_MCP_CONTENT_CHANGES_CURRENT_URI, DOCS_MCP_CONTENT_CHANGES_URI_TEMPLATE, createDocsMcpHttpHandler, createDocsMcpServer, createFilesystemDocsMcpSource, getDocsConfigSchema, normalizeDocsMcpRoute, resolveDocsMcpConfig, resolveDocsMcpPromptsConfig, runDocsMcpStdio } from "./mcp.mjs";
10
10
  import { n as isDocsCloudAskAIProvider, t as createDocsCloudAskAIResponse } from "./cloud-ask-ai-BRBK4RBG.mjs";
11
11
  import { createDocsCloudRouteHandler, createDocsCloudServer } from "./docs-cloud-server.mjs";
@@ -2,14 +2,14 @@ import { Ft as renderDocsSitemapXml, It as resolveDocsSitemapConfig, Pt as rende
2
2
  import "./markdown-sections-7OoA7ylx.mjs";
3
3
  import "./standards-discovery-Ckx0tN7B.mjs";
4
4
  import "./content-change-hydration-Cy2a7rb1.mjs";
5
- import "./sitemap-server-rv00bP21.mjs";
5
+ import "./sitemap-server-JffNpEef.mjs";
6
6
  import "./agent-skills-server-CwmzAzf_.mjs";
7
- import "./agent-evals-GFDpcXO3.mjs";
7
+ import "./agent-evals-CKZ7bPSp.mjs";
8
8
  import { createFilesystemDocsMcpSource } from "./mcp.mjs";
9
9
  import "./code-blocks-0wjOsqdJ.mjs";
10
10
  import "./server.mjs";
11
11
  import { _ as resolveDocsContentDir, a as loadDocsConfigModule, d as readNavTitle, g as resolveDocsConfigPath, h as readTopLevelStringProperty, l as readBooleanProperty, p as readStringProperty, t as extractNestedObjectLiteral } from "./config-BtxaQTPP.mjs";
12
- import { t as detectFramework } from "./utils-DpiIioYb.mjs";
12
+ import { t as detectFramework } from "./utils-C4U_e1aw.mjs";
13
13
  import { existsSync, mkdirSync, readFileSync, statSync, writeFileSync } from "node:fs";
14
14
  import path from "node:path";
15
15
  import { execFileSync } from "node:child_process";
@@ -703,6 +703,14 @@ function buildApiReferenceRoutes(config, options) {
703
703
  toRouteSegments: (relativeFile) => relativeFile.split("/").slice(0, -1).filter(Boolean),
704
704
  exclude: apiReference.exclude
705
705
  });
706
+ case "farmjs": return buildFileConventionRoutes({
707
+ rootDir,
708
+ sourceDir: resolveRootedDir(rootDir, apiReference.routeRoot, getFarmAppDir(rootDir)),
709
+ routePathBase: toRouteBase(apiReference.routeRoot, getFarmAppDir(rootDir)),
710
+ isRouteFile: (name) => NEXT_ROUTE_FILE_RE.test(name),
711
+ toRouteSegments: (relativeFile) => relativeFile.split("/").slice(0, -1).filter(Boolean),
712
+ exclude: apiReference.exclude
713
+ });
706
714
  case "sveltekit": return buildFileConventionRoutes({
707
715
  rootDir,
708
716
  sourceDir: resolveRootedDir(rootDir, apiReference.routeRoot, "src/routes"),
@@ -731,6 +739,9 @@ function buildApiReferenceRoutes(config, options) {
731
739
  case "tanstack-start": return buildTanstackRoutes(rootDir, apiReference);
732
740
  }
733
741
  }
742
+ function getFarmAppDir(rootDir) {
743
+ return existsSync(join(rootDir, "src", "app")) ? "src/app" : "app";
744
+ }
734
745
  function buildFileConventionRoutes({ rootDir, sourceDir, routePathBase, isRouteFile, toRouteSegments, exclude, getMethods = extractMethods }) {
735
746
  const files = scanRouteFiles(sourceDir, isRouteFile);
736
747
  const routes = [];
@@ -3,9 +3,9 @@ import { _ as hasStructuredPageAgentContract, v as normalizePageAgentFrontmatter
3
3
  import "./standards-discovery-Ckx0tN7B.mjs";
4
4
  import { isDocsAgentSkillName, validateDocsAgentSkillFrontmatter } from "./agent-skills-spec.mjs";
5
5
  import "./content-change-hydration-Cy2a7rb1.mjs";
6
- import "./sitemap-server-rv00bP21.mjs";
6
+ import "./sitemap-server-JffNpEef.mjs";
7
7
  import "./agent-skills-server-CwmzAzf_.mjs";
8
- import "./agent-evals-GFDpcXO3.mjs";
8
+ import "./agent-evals-CKZ7bPSp.mjs";
9
9
  import { createFilesystemDocsMcpSource } from "./mcp.mjs";
10
10
  import "./code-blocks-0wjOsqdJ.mjs";
11
11
  import "./server.mjs";
@@ -1,4 +1,4 @@
1
- import { A as DocsAgentA2ASecurityScheme, M as DocsAgentA2ASkill, O as DocsAgentA2AProtocolBinding, h as DocsAgentA2AConfig, k as DocsAgentA2ASecurityRequirement, m as DocsAgentA2ACapabilities } from "./types-DUMzbRER.mjs";
1
+ import { A as DocsAgentA2ASecurityScheme, M as DocsAgentA2ASkill, O as DocsAgentA2AProtocolBinding, h as DocsAgentA2AConfig, k as DocsAgentA2ASecurityRequirement, m as DocsAgentA2ACapabilities } from "./types-CMNYudRn.mjs";
2
2
 
3
3
  //#region src/standards-discovery.d.ts
4
4
  declare const DEFAULT_API_CATALOG_ROUTE = "/.well-known/api-catalog";