@farming-labs/docs 0.2.119 → 0.2.121

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 (188) hide show
  1. package/README.md +8 -0
  2. package/dist/access.d.mts +13 -0
  3. package/dist/access.mjs +56 -0
  4. package/dist/agent-conformance.d.mts +60 -0
  5. package/dist/agent-conformance.mjs +538 -0
  6. package/dist/agent-contract.d.mts +47 -0
  7. package/dist/agent-contract.mjs +645 -0
  8. package/dist/agent-detection.d.mts +6 -0
  9. package/dist/agent-detection.mjs +83 -0
  10. package/dist/agent-evals.d.mts +224 -0
  11. package/dist/{agent-evals-BLNLvXbG.mjs → agent-evals.mjs} +7 -565
  12. package/dist/agent-feedback-evaluations-node.mjs +38 -0
  13. package/dist/agent-feedback-evaluations.d.mts +91 -0
  14. package/dist/{agent-feedback-evaluations-CcMGlgsO.mjs → agent-feedback-evaluations.mjs} +2 -2
  15. package/dist/agent-feedback-loop.d.mts +45 -0
  16. package/dist/{agent-feedback-loop-CcZL_sb1.mjs → agent-feedback-loop.mjs} +1 -1
  17. package/dist/agent-maintenance.d.mts +71 -0
  18. package/dist/{agent-maintenance-CuZ7iAKq.mjs → agent-maintenance.mjs} +1 -1
  19. package/dist/agent-provenance.d.mts +23 -0
  20. package/dist/agent-provenance.mjs +77 -0
  21. package/dist/agent-scope.mjs +321 -0
  22. package/dist/agent-skills-archive.mjs +86 -0
  23. package/dist/agent-skills-bundle.d.mts +1 -1
  24. package/dist/{agent-skills-progressive-disclosure-PjPtTYL-.mjs → agent-skills-progressive-disclosure.mjs} +2 -2
  25. package/dist/{agent-skills-server-CTNWr23x.d.mts → agent-skills-server.d.mts} +3 -3
  26. package/dist/{agent-skills-server-BC7md56k.mjs → agent-skills-server.mjs} +2 -2
  27. package/dist/agent-skills-vite.d.mts +3 -3
  28. package/dist/agent-skills-vite.mjs +1 -2
  29. package/dist/agent-surface-drift.mjs +236 -0
  30. package/dist/{golden-evaluations-CLUViycJ.mjs → agent-usefulness.mjs} +5 -290
  31. package/dist/{content-change-hydration-CvHJadhE.d.mts → agent.d.mts} +10 -411
  32. package/dist/agent.mjs +2729 -0
  33. package/dist/{analytics-B8RZiKUt.d.mts → analytics.d.mts} +2 -2
  34. package/dist/{analytics-p8Vhhu2P.mjs → analytics.mjs} +2 -2
  35. package/dist/{sitemap-server-C9r22_06.d.mts → api-reference.d.mts} +3 -6
  36. package/dist/api-reference.mjs +1481 -0
  37. package/dist/{audience-exposure-DBrFWULA.d.mts → audience-exposure.d.mts} +1 -1
  38. package/dist/audience-exposure.mjs +8 -0
  39. package/dist/audience.d.mts +44 -0
  40. package/dist/audience.mjs +1654 -0
  41. package/dist/authoring-mcp.d.mts +44 -0
  42. package/dist/{authoring-mcp-CiCUQe3o.mjs → authoring-mcp.mjs} +3 -3
  43. package/dist/browser.d.mts +6 -4
  44. package/dist/browser.mjs +6 -7
  45. package/dist/build.d.mts +8 -0
  46. package/dist/build.mjs +8 -0
  47. package/dist/changelog.d.mts +20 -0
  48. package/dist/changelog.mjs +39 -0
  49. package/dist/{agent-export-Cxljt6RP.mjs → cli/agent-export.mjs} +19 -45
  50. package/dist/{agent-CYk2DxY7.mjs → cli/agent.mjs} +6 -35
  51. package/dist/{agents-jtn256sz.mjs → cli/agents.mjs} +5 -18
  52. package/dist/cli/api-doctor.mjs +206 -0
  53. package/dist/{authoring-C2ymvYWl.mjs → cli/authoring.mjs} +2 -8
  54. package/dist/{cloud-6eKrlmKd.mjs → cli/cloud.mjs} +3 -3
  55. package/dist/{codeblocks-CHpgAwY-.mjs → cli/codeblocks.mjs} +2 -2
  56. package/dist/cli/config.d.mts +11 -0
  57. package/dist/{config-BZnKAj_Y.mjs → cli/config.mjs} +1 -1
  58. package/dist/cli/dev-banner.mjs +58 -0
  59. package/dist/{dev-Bnn-NUNa.mjs → cli/dev.mjs} +3 -57
  60. package/dist/{doctor-CUMgbglt.mjs → cli/doctor.mjs} +41 -226
  61. package/dist/{downgrade-CHMta85e.mjs → cli/downgrade.mjs} +2 -2
  62. package/dist/cli/errors.d.mts +4 -0
  63. package/dist/{errors-BtnVLhNF.mjs → cli/errors.mjs} +1 -1
  64. package/dist/{feedback-evals-DMilg9pY.mjs → cli/feedback-evals.mjs} +3 -36
  65. package/dist/{feedback-DL4T5oIO.mjs → cli/feedback.mjs} +1 -1
  66. package/dist/cli/git-dates.mjs +35 -0
  67. package/dist/cli/golden-evaluations.mjs +52 -0
  68. package/dist/cli/index.d.mts +2 -3
  69. package/dist/cli/index.mjs +38 -38
  70. package/dist/{init-K0LmXDZ5.mjs → cli/init.mjs} +3 -3
  71. package/dist/{mcp-Bvha6_mG.mjs → cli/mcp.mjs} +7 -19
  72. package/dist/{openapi-diff-BOESBfnP.mjs → cli/openapi-diff.mjs} +2 -7
  73. package/dist/{openapi-sdk-DJutz2AC.mjs → cli/openapi-sdk.mjs} +2 -7
  74. package/dist/{openapi-source-CiX3hwFp.mjs → cli/openapi-source.mjs} +2 -2
  75. package/dist/{package-version-HJhYeq4M.mjs → cli/package-version.mjs} +2 -2
  76. package/dist/{propose-JmUv_BTt.mjs → cli/propose.mjs} +1 -1
  77. package/dist/{review-C6EmbV0l.mjs → cli/review.mjs} +16 -15
  78. package/dist/{robots-DteZB8vl.mjs → cli/robots.mjs} +3 -7
  79. package/dist/{search-DKcdZgGx.mjs → cli/search.mjs} +7 -20
  80. package/dist/{sitemap-CBQoERNz.mjs → cli/sitemap.mjs} +7 -42
  81. package/dist/{skills-a90P31sJ.mjs → cli/skills.mjs} +5 -19
  82. package/dist/{templates-BuQ8YsGv.mjs → cli/templates.mjs} +1 -1
  83. package/dist/{upgrade-DlQMOFV1.mjs → cli/upgrade.mjs} +2 -2
  84. package/dist/{utils-C7KDrPpA.mjs → cli/utils.mjs} +1 -1
  85. package/dist/client/react.d.mts +2 -18
  86. package/dist/client/react.mjs +1 -157
  87. package/dist/{cloud-analytics-D14HplI7.mjs → cloud-analytics.mjs} +1 -1
  88. package/dist/{cloud-ask-ai-BOahlsIZ.d.mts → cloud-ask-ai.d.mts} +2 -2
  89. package/dist/{cloud-ask-ai-BqKhjpS5.mjs → cloud-ask-ai.mjs} +3 -3
  90. package/dist/code-blocks.d.mts +51 -0
  91. package/dist/{code-blocks-GYdvS3BH.mjs → code-blocks.mjs} +2 -2
  92. package/dist/code-group-mdx.d.mts +11 -0
  93. package/dist/code-group-mdx.mjs +57 -0
  94. package/dist/content-change-hydration.d.mts +87 -0
  95. package/dist/{openapi-mcp-BIOTLiA7.mjs → content-change-hydration.mjs} +5 -210
  96. package/dist/content-changes.d.mts +47 -0
  97. package/dist/content-changes.mjs +216 -0
  98. package/dist/create-theme.d.mts +48 -0
  99. package/dist/create-theme.mjs +57 -0
  100. package/dist/date.d.mts +5 -0
  101. package/dist/date.mjs +17 -0
  102. package/dist/define-docs.d.mts +9 -0
  103. package/dist/define-docs.mjs +46 -0
  104. package/dist/docs-cloud-client.d.mts +18 -0
  105. package/dist/docs-cloud-client.mjs +161 -0
  106. package/dist/docs-cloud-server.d.mts +2 -2
  107. package/dist/docs-cloud-server.mjs +2 -3
  108. package/dist/heading-toc.d.mts +10 -0
  109. package/dist/heading-toc.mjs +23 -0
  110. package/dist/http-body.d.mts +14 -0
  111. package/dist/{http-body-DkAPk6D5.mjs → http-body.mjs} +1 -1
  112. package/dist/http-cache.d.mts +25 -0
  113. package/dist/http-cache.mjs +140 -0
  114. package/dist/http-link.mjs +81 -0
  115. package/dist/i18n.d.mts +18 -0
  116. package/dist/{i18n-B1gJ9EW0.mjs → i18n.mjs} +1 -1
  117. package/dist/index.d.mts +43 -675
  118. package/dist/index.mjs +40 -14
  119. package/dist/markdown-rendering.mjs +1 -1
  120. package/dist/markdown-section-cache.mjs +49 -0
  121. package/dist/markdown-sections.d.mts +47 -0
  122. package/dist/{markdown-sections-9Oxr33b-.mjs → markdown-sections.mjs} +29 -703
  123. package/dist/mcp-auth.d.mts +14 -0
  124. package/dist/mcp-auth.mjs +99 -0
  125. package/dist/mcp.d.mts +5 -3
  126. package/dist/mcp.mjs +39 -9
  127. package/dist/mdx.d.mts +6 -0
  128. package/dist/mdx.mjs +7 -0
  129. package/dist/metadata.d.mts +60 -0
  130. package/dist/{metadata-BOHn0Y5K.mjs → metadata.mjs} +2 -2
  131. package/dist/native-api-reference.mjs +968 -0
  132. package/dist/okf.d.mts +42 -0
  133. package/dist/okf.mjs +145 -0
  134. package/dist/openapi-contract.mjs +154 -0
  135. package/dist/{openapi-mcp-node-C4jUpZG6.mjs → openapi-mcp-node.mjs} +1 -1
  136. package/dist/openapi-mcp.d.mts +26 -0
  137. package/dist/openapi-mcp.mjs +132 -0
  138. package/dist/openapi-operations.d.mts +71 -0
  139. package/dist/{openapi-operations-DFpaqOqA.mjs → openapi-operations.mjs} +1 -1
  140. package/dist/openapi-overlays.mjs +221 -0
  141. package/dist/openapi-references.mjs +233 -0
  142. package/dist/pagination.d.mts +7 -0
  143. package/dist/pagination.mjs +100 -0
  144. package/dist/prompt-references.d.mts +12 -0
  145. package/dist/prompt-references.mjs +132 -0
  146. package/dist/prompt-utils.d.mts +36 -0
  147. package/dist/{prompt-utils-B5g-bv7o.mjs → prompt-utils.mjs} +1 -57
  148. package/dist/reading-time.d.mts +23 -0
  149. package/dist/reading-time.mjs +58 -0
  150. package/dist/related.d.mts +7 -0
  151. package/dist/related.mjs +50 -0
  152. package/dist/retrieval-digest.d.mts +16 -0
  153. package/dist/{retrieval-digest-CT-eIEcp.mjs → retrieval-digest.mjs} +1 -1
  154. package/dist/review.d.mts +69 -0
  155. package/dist/review.mjs +562 -0
  156. package/dist/robots.d.mts +54 -0
  157. package/dist/{robots-BYJAVeI6.mjs → robots.mjs} +5 -3
  158. package/dist/runtime.d.mts +3 -3
  159. package/dist/runtime.mjs +3 -9
  160. package/dist/search.d.mts +210 -0
  161. package/dist/search.mjs +3401 -0
  162. package/dist/server.d.mts +22 -198
  163. package/dist/server.mjs +21 -19
  164. package/dist/sidebar.d.mts +15 -0
  165. package/dist/sidebar.mjs +73 -0
  166. package/dist/sitemap-server.d.mts +7 -0
  167. package/dist/{sitemap-server-Lg3YhUx4.mjs → sitemap-server.mjs} +2 -2
  168. package/dist/{sitemap-DafdOrxK.d.mts → sitemap.d.mts} +3 -3
  169. package/dist/sitemap.mjs +254 -0
  170. package/dist/{standards-discovery-1fiUVDAo.d.mts → standards-discovery.d.mts} +2 -2
  171. package/dist/{standards-discovery-sSEojU80.mjs → standards-discovery.mjs} +3 -139
  172. package/dist/telemetry-runtime.d.mts +42 -0
  173. package/dist/telemetry-runtime.mjs +238 -0
  174. package/dist/telemetry.d.mts +15 -0
  175. package/dist/telemetry.mjs +117 -0
  176. package/dist/{types-BncG8J3g.d.mts → types.d.mts} +21 -3
  177. package/dist/urls.d.mts +7 -0
  178. package/dist/urls.mjs +21 -0
  179. package/dist/utils.d.mts +8 -0
  180. package/dist/utils.mjs +22 -0
  181. package/package.json +21 -3
  182. package/dist/agent-DkAidqtV.mjs +0 -9026
  183. package/dist/api-reference-By_LokQ-.mjs +0 -3033
  184. package/dist/prompt-references-DMgbu_dz.mjs +0 -1082
  185. package/dist/retrieval-digest-DLAQsQmx.d.mts +0 -367
  186. package/dist/sidebar-C2LKcU7n.d.mts +0 -63
  187. package/dist/sidebar-CFHBj29f.mjs +0 -421
  188. /package/dist/{openapi-CfCzX_a1.mjs → cli/openapi.mjs} +0 -0
@@ -0,0 +1,83 @@
1
+ //#region src/agent-detection.ts
2
+ const DOCS_AI_AGENT_USER_AGENT_PATTERNS = [
3
+ "claudebot",
4
+ "claude-searchbot",
5
+ "claude-user",
6
+ "anthropic-ai",
7
+ "claude-web",
8
+ "chatgpt",
9
+ "gptbot",
10
+ "oai-searchbot",
11
+ "openai",
12
+ "gemini",
13
+ "bard",
14
+ "google-cloudvertexbot",
15
+ "google-extended",
16
+ "meta-externalagent",
17
+ "meta-externalfetcher",
18
+ "meta-webindexer",
19
+ "perplexity",
20
+ "youbot",
21
+ "you.com",
22
+ "deepseekbot",
23
+ "cursor",
24
+ "github-copilot",
25
+ "codeium",
26
+ "tabnine",
27
+ "sourcegraph",
28
+ "cohere-ai",
29
+ "bytespider",
30
+ "amazonbot",
31
+ "ai2bot",
32
+ "diffbot",
33
+ "omgili",
34
+ "omgilibot"
35
+ ];
36
+ const DOCS_TRADITIONAL_BOT_USER_AGENT_PATTERNS = [
37
+ "googlebot",
38
+ "bingbot",
39
+ "yandexbot",
40
+ "baiduspider",
41
+ "duckduckbot",
42
+ "slurp",
43
+ "msnbot",
44
+ "facebot",
45
+ "twitterbot",
46
+ "linkedinbot",
47
+ "whatsapp",
48
+ "telegrambot",
49
+ "pingdom",
50
+ "uptimerobot",
51
+ "newrelic",
52
+ "datadog",
53
+ "statuspage",
54
+ "site24x7",
55
+ "applebot"
56
+ ];
57
+ const DOCS_BOT_LIKE_USER_AGENT_PATTERN = /bot|agent|fetch|crawl|spider|search/i;
58
+ const DOCS_BOT_LIKE_USER_AGENT_TERMS = [
59
+ "bot",
60
+ "agent",
61
+ "fetch",
62
+ "crawl",
63
+ "spider",
64
+ "search"
65
+ ];
66
+ const DOCS_AI_AGENT_USER_AGENT_HEADER_PATTERN = buildDocsUserAgentHeaderPattern(DOCS_AI_AGENT_USER_AGENT_PATTERNS);
67
+ const DOCS_TRADITIONAL_BOT_USER_AGENT_HEADER_PATTERN = buildDocsUserAgentHeaderPattern(DOCS_TRADITIONAL_BOT_USER_AGENT_PATTERNS);
68
+ const DOCS_BOT_LIKE_USER_AGENT_HEADER_PATTERN = buildDocsUserAgentHeaderPattern(DOCS_BOT_LIKE_USER_AGENT_TERMS);
69
+ function buildDocsUserAgentHeaderPattern(patterns) {
70
+ return `.*(?:${patterns.map(toCaseInsensitiveHeaderPattern).join("|")}).*`;
71
+ }
72
+ function toCaseInsensitiveHeaderPattern(value) {
73
+ return value.split("").map((char) => {
74
+ if (/^[a-z]$/i.test(char)) return `[${char.toLowerCase()}${char.toUpperCase()}]`;
75
+ return escapeRegex(char);
76
+ }).join("");
77
+ }
78
+ function escapeRegex(value) {
79
+ return value.replace(/[\\^$.*+?()[\]{}|]/g, "\\$&");
80
+ }
81
+
82
+ //#endregion
83
+ export { DOCS_AI_AGENT_USER_AGENT_HEADER_PATTERN, DOCS_AI_AGENT_USER_AGENT_PATTERNS, DOCS_BOT_LIKE_USER_AGENT_HEADER_PATTERN, DOCS_BOT_LIKE_USER_AGENT_PATTERN, DOCS_TRADITIONAL_BOT_USER_AGENT_HEADER_PATTERN, DOCS_TRADITIONAL_BOT_USER_AGENT_PATTERNS };
@@ -0,0 +1,224 @@
1
+ import { DocsAgentEvaluationAnswerProvider, DocsAgentEvaluationSurface, DocsAgentGoldenCoverageApplicability, DocsAgentGoldenExpectedExample, DocsAgentGoldenQueryVariant, DocsAgentGoldenTask, DocsAgentGoldenTaskExpectation, DocsAgentGoldenTaskFilters, DocsCodeBlocksValidateConfig, DocsSearchConfig } from "./types.mjs";
2
+ import { DocsCodeBlockValidationResult } from "./code-blocks.mjs";
3
+ import { DocsMcpPage } from "./mcp.mjs";
4
+
5
+ //#region src/agent-evals.d.ts
6
+ type DocsGoldenEvaluationStatus = "unmeasured" | "passed" | "failed";
7
+ type DocsGoldenEvaluationCoverageStatus = "measured" | "partially-measured" | "unmeasured" | "not-applicable";
8
+ type DocsGoldenTaskFilters = DocsAgentGoldenTaskFilters;
9
+ type DocsGoldenExpectedExample = DocsAgentGoldenExpectedExample;
10
+ type DocsGoldenTaskExpectation = DocsAgentGoldenTaskExpectation;
11
+ type DocsGoldenTask = DocsAgentGoldenTask;
12
+ interface DocsGoldenRetrievedSource {
13
+ rank: number;
14
+ url: string;
15
+ title: string;
16
+ framework?: string;
17
+ version?: string;
18
+ package?: string[];
19
+ tags?: string[];
20
+ utf8Bytes: number;
21
+ relevant: boolean;
22
+ truncated: boolean;
23
+ }
24
+ interface DocsGoldenRetrievalMetrics {
25
+ expectedRelevant: number;
26
+ retrievedRelevant: number;
27
+ recallAtK: number;
28
+ firstRelevantRank: number | null;
29
+ reciprocalRank: number;
30
+ forbiddenSources: string[];
31
+ passed: boolean;
32
+ }
33
+ interface DocsGoldenCitationMetrics {
34
+ /** Where the citation evidence came from. Context/results are not model-answer citations. */
35
+ evidence: "context" | "results";
36
+ expected: string[];
37
+ actual: string[];
38
+ missing: string[];
39
+ unexpected: string[];
40
+ precision: number;
41
+ recall: number;
42
+ /** True when every rendered Source line maps one-to-one to a returned source record. */
43
+ integrity: boolean;
44
+ passed: boolean;
45
+ }
46
+ interface DocsGoldenSelectionMetrics {
47
+ requestedFramework?: string;
48
+ requestedVersion?: string;
49
+ requestedPackage?: string | readonly string[];
50
+ requestedTags?: string | readonly string[];
51
+ requestedLocale?: string;
52
+ expectedFramework?: string;
53
+ expectedVersion?: string;
54
+ expectedPackage?: string | readonly string[];
55
+ expectedTags?: string | readonly string[];
56
+ expectedLocale?: string;
57
+ firstFrameworkMatchRank: number | null;
58
+ firstVersionMatchRank: number | null;
59
+ firstPackageMatchRank?: number | null;
60
+ firstTagsMatchRank?: number | null;
61
+ firstLocaleMatchRank: number | null;
62
+ conflictingSources: string[];
63
+ ambiguousSources: string[];
64
+ passed: boolean;
65
+ }
66
+ interface DocsGoldenExampleResult {
67
+ expected: DocsGoldenExpectedExample;
68
+ matchedId?: string;
69
+ source?: string;
70
+ verification: "present" | "syntax" | "execute";
71
+ status: "passed" | "failed" | "skipped";
72
+ reason?: string;
73
+ syntaxValid: boolean;
74
+ executed: boolean;
75
+ executionStatus?: DocsCodeBlockValidationResult["status"];
76
+ /** @deprecated Static/planner executability signal retained for report compatibility. */
77
+ executable: boolean;
78
+ passed: boolean;
79
+ }
80
+ interface DocsGoldenExampleMetrics {
81
+ expected: number;
82
+ matched: number;
83
+ syntaxValid: number;
84
+ executed: number;
85
+ /** @deprecated Count of statically/planner-executable examples retained for compatibility. */
86
+ executable: number;
87
+ results: DocsGoldenExampleResult[];
88
+ passed: boolean;
89
+ }
90
+ interface DocsGoldenUsageMetrics {
91
+ budgetUnit: "utf8-bytes";
92
+ tokenBudget: number;
93
+ usedUtf8Bytes: number;
94
+ remainingUtf8Bytes: number;
95
+ estimatedTokens: number;
96
+ /** Exact conservative upper bound: one token per UTF-8 byte. */
97
+ conservativeTokenUpperBound: number;
98
+ usefulUtf8Bytes: number;
99
+ usefulByteRatio: number;
100
+ truncated: boolean;
101
+ withinBudget: boolean;
102
+ passed: boolean;
103
+ }
104
+ interface DocsGoldenAnswerMetrics {
105
+ evidence: "answer";
106
+ expected: boolean;
107
+ provided: boolean;
108
+ textIncludesMissing: string[];
109
+ textExcludesPresent: string[];
110
+ citations: string[];
111
+ requiredCitations: string[];
112
+ missingCitations: string[];
113
+ unexpectedCitations: string[];
114
+ forbiddenCitations: string[];
115
+ passed: boolean;
116
+ }
117
+ type DocsGoldenSafetyCaseKind = "prompt-injection" | "poisoned-citations" | "authenticated-content" | "freshness" | "framework-version-conflict" | "deleted-section-tombstones";
118
+ interface DocsGoldenSafetyCaseResult {
119
+ kind: DocsGoldenSafetyCaseKind;
120
+ passed: boolean;
121
+ issues: string[];
122
+ }
123
+ interface DocsGoldenQueryVariantResult {
124
+ kind: DocsAgentGoldenQueryVariant["kind"];
125
+ query: string;
126
+ passed: boolean;
127
+ score: number;
128
+ firstRelevantRank: number | null;
129
+ citationIntegrity: boolean;
130
+ issues: string[];
131
+ }
132
+ interface DocsGoldenSafetyMetrics {
133
+ expected: boolean;
134
+ passed: boolean;
135
+ cases: DocsGoldenSafetyCaseResult[];
136
+ queryVariants: DocsGoldenQueryVariantResult[];
137
+ }
138
+ interface DocsGoldenTaskReport {
139
+ id: string;
140
+ query: string;
141
+ surface: DocsAgentEvaluationSurface;
142
+ provider: string;
143
+ status: "passed" | "failed";
144
+ passed: boolean;
145
+ score: number;
146
+ context: string;
147
+ sources: DocsGoldenRetrievedSource[];
148
+ retrieval: DocsGoldenRetrievalMetrics;
149
+ citations: DocsGoldenCitationMetrics;
150
+ answer: DocsGoldenAnswerMetrics;
151
+ safety: DocsGoldenSafetyMetrics;
152
+ selection: DocsGoldenSelectionMetrics;
153
+ examples: DocsGoldenExampleMetrics;
154
+ usage: DocsGoldenUsageMetrics;
155
+ coverageApplicability: {
156
+ executableExamples: DocsAgentGoldenCoverageApplicability;
157
+ };
158
+ issues: string[];
159
+ }
160
+ interface DocsGoldenTasksReport {
161
+ status: DocsGoldenEvaluationStatus;
162
+ passed: boolean | null;
163
+ /** Compatibility alias for quality.score. */
164
+ score: number | null;
165
+ taskCount: number;
166
+ passedTaskCount: number;
167
+ failedTaskCount: number;
168
+ /** Quality across only the expectations configured by each task. */
169
+ quality: DocsGoldenEvaluationQuality;
170
+ /** Coverage is intentionally separate so absent evaluation dimensions cannot look perfect. */
171
+ coverage: DocsGoldenEvaluationCoverage;
172
+ tasks: DocsGoldenTaskReport[];
173
+ }
174
+ interface DocsGoldenEvaluationQuality {
175
+ status: DocsGoldenEvaluationStatus;
176
+ passed: boolean | null;
177
+ score: number | null;
178
+ taskCount: number;
179
+ passedTaskCount: number;
180
+ failedTaskCount: number;
181
+ }
182
+ interface DocsGoldenEvaluationDimensionCoverage {
183
+ status: DocsGoldenEvaluationCoverageStatus;
184
+ measuredTaskCount: number;
185
+ applicableTaskCount: number;
186
+ notApplicableTaskCount: number;
187
+ totalTaskCount: number;
188
+ coveragePercent: number;
189
+ }
190
+ interface DocsGoldenEvaluationCoverage {
191
+ status: DocsGoldenEvaluationCoverageStatus;
192
+ measuredTaskDimensions: number;
193
+ applicableTaskDimensions: number;
194
+ notApplicableTaskDimensions: number;
195
+ totalTaskDimensions: number;
196
+ coveragePercent: number;
197
+ dimensions: {
198
+ safety: DocsGoldenEvaluationDimensionCoverage;
199
+ answerQuality: DocsGoldenEvaluationDimensionCoverage;
200
+ executableExamples: DocsGoldenEvaluationDimensionCoverage;
201
+ };
202
+ }
203
+ interface RunDocsGoldenTasksOptions {
204
+ /** Default evaluation surface. Tasks may override this with `task.surface`. */
205
+ surface?: DocsAgentEvaluationSurface;
206
+ /** Search configuration used by configured-search and ask-ai-context. */
207
+ search?: boolean | DocsSearchConfig;
208
+ /** Production-resolved Ask AI retrieval config, including `ai.useMcp`. */
209
+ askAISearch?: boolean | DocsSearchConfig;
210
+ siteTitle?: string;
211
+ baseUrl?: string;
212
+ rootDir?: string;
213
+ /** Permit external configured search or HTTP answer calls. @default false */
214
+ allowNetwork?: boolean;
215
+ /** Per-attempt configured-search/Ask-AI retrieval timeout in milliseconds. @default 30000 */
216
+ searchTimeoutMs?: number;
217
+ /** Project code-block validation config used only by explicit execute expectations. */
218
+ codeBlocksValidate?: boolean | DocsCodeBlocksValidateConfig;
219
+ /** Optional actual-answer runner. No model or HTTP request is made when omitted. */
220
+ answer?: DocsAgentEvaluationAnswerProvider;
221
+ }
222
+ declare function runDocsGoldenTasks(pages: readonly DocsMcpPage[], tasks: readonly DocsGoldenTask[] | undefined, options?: RunDocsGoldenTasksOptions): Promise<DocsGoldenTasksReport>;
223
+ //#endregion
224
+ export { DocsGoldenAnswerMetrics, DocsGoldenCitationMetrics, DocsGoldenEvaluationCoverage, DocsGoldenEvaluationCoverageStatus, DocsGoldenEvaluationDimensionCoverage, DocsGoldenEvaluationQuality, DocsGoldenEvaluationStatus, DocsGoldenExampleMetrics, DocsGoldenExampleResult, DocsGoldenExpectedExample, DocsGoldenQueryVariantResult, DocsGoldenRetrievalMetrics, DocsGoldenRetrievedSource, DocsGoldenSafetyCaseKind, DocsGoldenSafetyCaseResult, DocsGoldenSafetyMetrics, DocsGoldenSelectionMetrics, DocsGoldenTask, DocsGoldenTaskExpectation, DocsGoldenTaskFilters, DocsGoldenTaskReport, DocsGoldenTasksReport, DocsGoldenUsageMetrics, RunDocsGoldenTasksOptions, runDocsGoldenTasks };