@farming-labs/docs 0.2.107 → 0.2.108
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.
- package/dist/{agent-B0eRMIyt.mjs → agent--fSgaVIK.mjs} +169 -10
- package/dist/{agent-DCTGj6J7.mjs → agent-BDrflLmt.mjs} +1 -1
- package/dist/{agent-evals-D-sPJfXz.mjs → agent-evals-3m5FXStK.mjs} +26 -7
- package/dist/{agent-export-GcTZPLfB.mjs → agent-export-CSdby81L.mjs} +6 -6
- package/dist/agent-skills-bundle.d.mts +1 -1
- package/dist/{agent-skills-server-D34054x5.d.mts → agent-skills-server-CF6iVTBR.d.mts} +2 -2
- package/dist/agent-skills-vite.d.mts +3 -3
- package/dist/{agents-e1SYT64z.mjs → agents-DDt41QR8.mjs} +5 -5
- package/dist/{analytics-aeXwEvQX.d.mts → analytics-CwXxM9oL.d.mts} +1 -1
- package/dist/{authoring-Do87QzBd.mjs → authoring-ct8s0Z_X.mjs} +3 -3
- package/dist/{authoring-mcp-Be7quE5R.mjs → authoring-mcp-Wy-h93DM.mjs} +1 -1
- package/dist/browser.d.mts +2 -2
- package/dist/cli/index.mjs +19 -16
- package/dist/client/react.d.mts +1 -1
- package/dist/{cloud-ask-ai-BqfiQaNZ.d.mts → cloud-ask-ai-C9dvEBpW.d.mts} +1 -1
- package/dist/{content-change-hydration-CoYRs3pC.d.mts → content-change-hydration-CDuohygf.d.mts} +2 -2
- package/dist/docs-cloud-server.d.mts +2 -2
- package/dist/{doctor-CPGUlDVt.mjs → doctor-DESIZy7v.mjs} +126 -30
- package/dist/{golden-evaluations-Bnlljxq3.mjs → golden-evaluations-Dc06CZM-.mjs} +1 -1
- package/dist/index.d.mts +6 -6
- package/dist/index.mjs +4 -4
- package/dist/{mcp-DsjWxF7g.mjs → mcp-CC74oNj3.mjs} +5 -5
- package/dist/mcp.d.mts +3 -3
- package/dist/mcp.mjs +16 -2
- package/dist/{openapi-mcp-DQ3xptKo.mjs → openapi-mcp-CFWUsMUr.mjs} +1 -1
- package/dist/{prompt-references-1Wce71c7.mjs → prompt-references-DVhk8W6r.mjs} +2 -2
- package/dist/{retrieval-digest-DyNRD-mt.d.mts → retrieval-digest-VUlhYMUW.d.mts} +10 -3
- package/dist/{review-BvjSFiD_.mjs → review-glShh1or.mjs} +4 -4
- package/dist/{robots-CzKesbdX.mjs → robots-D6RgVpll.mjs} +2 -2
- package/dist/{robots-BOjWB1ky.mjs → robots-dNbBnlVh.mjs} +1 -1
- package/dist/{search-DwAoC9X7.mjs → search-BOOiOwTS.mjs} +5 -5
- package/dist/server.d.mts +6 -6
- package/dist/server.mjs +5 -5
- package/dist/{sidebar-CJze8SBi.d.mts → sidebar-Bne72SU-.d.mts} +1 -1
- package/dist/{sitemap-DOaJIKJf.mjs → sitemap-Ck1YKSAJ.mjs} +5 -5
- package/dist/{sitemap-server-NeVu8W38.mjs → sitemap-server-BKNIqgvq.mjs} +1 -1
- package/dist/{skills-BILSESek.mjs → skills-Bucp3wjq.mjs} +5 -5
- package/dist/{standards-discovery-Xm84bS4M.d.mts → standards-discovery-CjyUCxdy.d.mts} +1 -1
- package/dist/{types-QhYMnKvb.d.mts → types-BkAk6B2d.d.mts} +13 -1
- package/package.json +1 -1
package/dist/cli/index.mjs
CHANGED
|
@@ -149,10 +149,10 @@ async function main() {
|
|
|
149
149
|
printCloudHelp();
|
|
150
150
|
process.exit(1);
|
|
151
151
|
} else if (parsedCommand.command === "mcp" && subcommand === "author") {
|
|
152
|
-
const { runAuthoringMcp } = await import("../authoring-
|
|
152
|
+
const { runAuthoringMcp } = await import("../authoring-ct8s0Z_X.mjs");
|
|
153
153
|
await runAuthoringMcp(authoringMcpOptions);
|
|
154
154
|
} else if (parsedCommand.command === "mcp") {
|
|
155
|
-
const { runMcp } = await import("../mcp-
|
|
155
|
+
const { runMcp } = await import("../mcp-CC74oNj3.mjs");
|
|
156
156
|
await runMcp(mcpOptions);
|
|
157
157
|
} else if (parsedCommand.command === "agent" && (subcommand === "--help" || subcommand === "-h")) printAgentHelp();
|
|
158
158
|
else if (parsedCommand.command === "agent" && subcommand === "feedback") {
|
|
@@ -180,7 +180,7 @@ async function main() {
|
|
|
180
180
|
}
|
|
181
181
|
await runAgentMaintenancePropose(proposeOptions);
|
|
182
182
|
} else if (parsedCommand.command === "agent" && subcommand === "compact") {
|
|
183
|
-
const { compactAgentDocs, parseAgentCompactArgs, printAgentCompactHelp } = await import("../agent
|
|
183
|
+
const { compactAgentDocs, parseAgentCompactArgs, printAgentCompactHelp } = await import("../agent--fSgaVIK.mjs").then((n) => n.t);
|
|
184
184
|
const agentCompactOptions = parseAgentCompactArgs(args.slice(2));
|
|
185
185
|
if (agentCompactOptions.help) {
|
|
186
186
|
printAgentCompactHelp();
|
|
@@ -188,7 +188,7 @@ async function main() {
|
|
|
188
188
|
}
|
|
189
189
|
await compactAgentDocs(agentCompactOptions);
|
|
190
190
|
} else if (parsedCommand.command === "agent" && subcommand === "export") {
|
|
191
|
-
const { exportAgentBundle, parseAgentExportArgs, printAgentExportHelp } = await import("../agent-export-
|
|
191
|
+
const { exportAgentBundle, parseAgentExportArgs, printAgentExportHelp } = await import("../agent-export-CSdby81L.mjs");
|
|
192
192
|
const agentExportOptions = parseAgentExportArgs(args.slice(2));
|
|
193
193
|
if (agentExportOptions.help) {
|
|
194
194
|
printAgentExportHelp();
|
|
@@ -201,7 +201,7 @@ async function main() {
|
|
|
201
201
|
printAgentHelp();
|
|
202
202
|
process.exit(1);
|
|
203
203
|
} else if (parsedCommand.command === "agents" && subcommand === "generate") {
|
|
204
|
-
const { generateAgents, parseAgentsGenerateArgs, printAgentsGenerateHelp } = await import("../agents-
|
|
204
|
+
const { generateAgents, parseAgentsGenerateArgs, printAgentsGenerateHelp } = await import("../agents-DDt41QR8.mjs");
|
|
205
205
|
const agentsOptions = parseAgentsGenerateArgs(args.slice(2));
|
|
206
206
|
if (agentsOptions.help) {
|
|
207
207
|
printAgentsGenerateHelp();
|
|
@@ -211,11 +211,11 @@ async function main() {
|
|
|
211
211
|
} else if (parsedCommand.command === "agents") {
|
|
212
212
|
console.error(pc.red(`Unknown agents subcommand: ${subcommand ?? "(missing)"}`));
|
|
213
213
|
console.error();
|
|
214
|
-
const { printAgentsGenerateHelp } = await import("../agents-
|
|
214
|
+
const { printAgentsGenerateHelp } = await import("../agents-DDt41QR8.mjs");
|
|
215
215
|
printAgentsGenerateHelp();
|
|
216
216
|
process.exit(1);
|
|
217
217
|
} else if (parsedCommand.command === "skills" && subcommand === "scaffold") {
|
|
218
|
-
const { parseSkillScaffoldArgs, printSkillScaffoldHelp, scaffoldSkillFromContracts } = await import("../skills-
|
|
218
|
+
const { parseSkillScaffoldArgs, printSkillScaffoldHelp, scaffoldSkillFromContracts } = await import("../skills-Bucp3wjq.mjs");
|
|
219
219
|
const skillOptions = parseSkillScaffoldArgs(args.slice(2));
|
|
220
220
|
if (skillOptions.help) {
|
|
221
221
|
printSkillScaffoldHelp();
|
|
@@ -223,16 +223,16 @@ async function main() {
|
|
|
223
223
|
}
|
|
224
224
|
await scaffoldSkillFromContracts(skillOptions);
|
|
225
225
|
} else if (parsedCommand.command === "skills" && (subcommand === "--help" || subcommand === "-h")) {
|
|
226
|
-
const { printSkillScaffoldHelp } = await import("../skills-
|
|
226
|
+
const { printSkillScaffoldHelp } = await import("../skills-Bucp3wjq.mjs");
|
|
227
227
|
printSkillScaffoldHelp();
|
|
228
228
|
} else if (parsedCommand.command === "skills") {
|
|
229
229
|
console.error(pc.red(`Unknown skills subcommand: ${subcommand ?? "(missing)"}`));
|
|
230
230
|
console.error();
|
|
231
|
-
const { printSkillScaffoldHelp } = await import("../skills-
|
|
231
|
+
const { printSkillScaffoldHelp } = await import("../skills-Bucp3wjq.mjs");
|
|
232
232
|
printSkillScaffoldHelp();
|
|
233
233
|
process.exit(1);
|
|
234
234
|
} else if (parsedCommand.command === "doctor") {
|
|
235
|
-
const { parseDoctorArgs, printDoctorHelp, runDoctor } = await import("../doctor-
|
|
235
|
+
const { parseDoctorArgs, printDoctorHelp, runDoctor } = await import("../doctor-DESIZy7v.mjs");
|
|
236
236
|
const doctorOptions = parseDoctorArgs(args.slice(1));
|
|
237
237
|
if (doctorOptions.help) {
|
|
238
238
|
printDoctorHelp();
|
|
@@ -240,7 +240,7 @@ async function main() {
|
|
|
240
240
|
}
|
|
241
241
|
await runDoctor(doctorOptions);
|
|
242
242
|
} else if (parsedCommand.command === "review") {
|
|
243
|
-
const { parseReviewArgs, printReviewHelp, runReview } = await import("../review-
|
|
243
|
+
const { parseReviewArgs, printReviewHelp, runReview } = await import("../review-glShh1or.mjs");
|
|
244
244
|
const reviewOptions = parseReviewArgs(args.slice(1));
|
|
245
245
|
if (reviewOptions.help) {
|
|
246
246
|
printReviewHelp();
|
|
@@ -262,7 +262,7 @@ async function main() {
|
|
|
262
262
|
printCodeBlocksValidateHelp();
|
|
263
263
|
process.exit(1);
|
|
264
264
|
} else if (parsedCommand.command === "search" && subcommand === "sync") {
|
|
265
|
-
const { syncSearch } = await import("../search-
|
|
265
|
+
const { syncSearch } = await import("../search-BOOiOwTS.mjs");
|
|
266
266
|
await syncSearch(searchSyncOptions);
|
|
267
267
|
} else if (parsedCommand.command === "search") {
|
|
268
268
|
console.error(pc.red(`Unknown search subcommand: ${subcommand ?? "(missing)"}`));
|
|
@@ -270,7 +270,7 @@ async function main() {
|
|
|
270
270
|
printHelp();
|
|
271
271
|
process.exit(1);
|
|
272
272
|
} else if (parsedCommand.command === "sitemap" && subcommand === "generate") {
|
|
273
|
-
const { generateSitemap, parseSitemapGenerateArgs, printSitemapGenerateHelp } = await import("../sitemap-
|
|
273
|
+
const { generateSitemap, parseSitemapGenerateArgs, printSitemapGenerateHelp } = await import("../sitemap-Ck1YKSAJ.mjs");
|
|
274
274
|
const sitemapOptions = parseSitemapGenerateArgs(args.slice(2));
|
|
275
275
|
if (sitemapOptions.help) {
|
|
276
276
|
printSitemapGenerateHelp();
|
|
@@ -280,11 +280,11 @@ async function main() {
|
|
|
280
280
|
} else if (parsedCommand.command === "sitemap") {
|
|
281
281
|
console.error(pc.red(`Unknown sitemap subcommand: ${subcommand ?? "(missing)"}`));
|
|
282
282
|
console.error();
|
|
283
|
-
const { printSitemapGenerateHelp } = await import("../sitemap-
|
|
283
|
+
const { printSitemapGenerateHelp } = await import("../sitemap-Ck1YKSAJ.mjs");
|
|
284
284
|
printSitemapGenerateHelp();
|
|
285
285
|
process.exit(1);
|
|
286
286
|
} else if (parsedCommand.command === "robots" && subcommand === "generate") {
|
|
287
|
-
const { generateRobots, parseRobotsGenerateArgs, printRobotsGenerateHelp } = await import("../robots-
|
|
287
|
+
const { generateRobots, parseRobotsGenerateArgs, printRobotsGenerateHelp } = await import("../robots-D6RgVpll.mjs");
|
|
288
288
|
const robotsOptions = parseRobotsGenerateArgs(args.slice(2));
|
|
289
289
|
if (robotsOptions.help) {
|
|
290
290
|
printRobotsGenerateHelp();
|
|
@@ -294,7 +294,7 @@ async function main() {
|
|
|
294
294
|
} else if (parsedCommand.command === "robots") {
|
|
295
295
|
console.error(pc.red(`Unknown robots subcommand: ${subcommand ?? "(missing)"}`));
|
|
296
296
|
console.error();
|
|
297
|
-
const { printRobotsGenerateHelp } = await import("../robots-
|
|
297
|
+
const { printRobotsGenerateHelp } = await import("../robots-D6RgVpll.mjs");
|
|
298
298
|
printRobotsGenerateHelp();
|
|
299
299
|
process.exit(1);
|
|
300
300
|
} else if (parsedCommand.command === "downgrade") {
|
|
@@ -424,6 +424,7 @@ ${pc.dim("Options for agent compact:")}
|
|
|
424
424
|
${pc.cyan("agent compact --changed")} Compact only docs pages changed in the current git working tree
|
|
425
425
|
${pc.cyan("agent compact --stale")} Refresh only stale generated ${pc.dim("agent.md")} files
|
|
426
426
|
${pc.cyan("agent compact --check")} Fail when generated ${pc.dim("agent.md")} files are stale or required files are missing
|
|
427
|
+
${pc.cyan("agent compact --review <page...>")} Record hash-bound human review without rewriting ${pc.dim("agent.md")}
|
|
427
428
|
${pc.cyan("--page <slug|path>")} Repeatable explicit page flag; positional page args work too
|
|
428
429
|
${pc.cyan("--include-missing")} With ${pc.cyan("--stale")}, also create explicit or token-budget pages missing ${pc.dim("agent.md")}
|
|
429
430
|
${pc.cyan("--api-key <key>")} Use an API key directly; prefer ${pc.dim("cloud.apiKey.env")}
|
|
@@ -481,6 +482,8 @@ ${pc.dim("Options for doctor:")}
|
|
|
481
482
|
${pc.cyan("doctor --agent --fix")} Refresh stale generated ${pc.dim("agent.md")} files and token-budget missing outputs
|
|
482
483
|
${pc.cyan("doctor --agent --fix --dry-run")} Report the fix command without writing generated ${pc.dim("agent.md")} files
|
|
483
484
|
${pc.cyan("doctor --fail-on warn|fail")} Choose whether warnings or only failures fail CI
|
|
485
|
+
${pc.cyan("doctor --timeout <ms>")} Set each hosted probe timeout (default: ${pc.dim("15000")})
|
|
486
|
+
${pc.cyan("doctor --retries <0-5>")} Retry safe hosted GET/HEAD probes (default: ${pc.dim("1")})
|
|
484
487
|
${pc.cyan("doctor agent")} Subcommand alias for agent scoring
|
|
485
488
|
${pc.cyan("doctor site")} Subcommand alias for reader-facing scoring
|
|
486
489
|
${pc.cyan("doctor human")} Legacy alias for reader-facing scoring
|
package/dist/client/react.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ht as DocsAnalyticsConfig, kt as DocsCloudConfig, t as AIConfig } from "./types-BkAk6B2d.mjs";
|
|
2
2
|
|
|
3
3
|
//#region src/cloud-ask-ai.d.ts
|
|
4
4
|
interface DocsCloudAskAIConfig {
|
package/dist/{content-change-hydration-CoYRs3pC.d.mts → content-change-hydration-CDuohygf.d.mts}
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { O as DocsA2AAgentCardOptions, R as DocsDiscoveryApiRouteOptions, z as DocsPublishedAgentSkill } from "./standards-discovery-
|
|
1
|
+
import { $n as DocsSearchFacetsResponse, Dn as DocsPaginatedSearchResponse, Dr as FeedbackConfig, Dt as DocsAskAIMcpConfig, En as DocsPageAccessPolicy, Fr as McpDocsSearchConfig, J as DocsAgentFeedbackData, Jn as DocsSearchDocument, Jt as DocsContentSnapshot, Kn as DocsSearchChunkingConfig, L as DocsAgentContentChangesConfig, Ln as DocsRobotsConfig, Mr as LlmsTxtMaxCharsConfig, Nr as LlmsTxtMaxCharsMode, Pr as LlmsTxtSectionConfig, Qt as DocsI18nConfig, Vn as DocsSearchAdapterFactory, Vt as DocsConfig, Zr as PageAgentFrontmatter, _n as DocsOkfConfig, ai as ResolvedDocsRelatedLink, dr as DocsSearchRequest, f as CustomDocsSearchConfig, hi as TypesenseDocsSearchConfig, hr as DocsSearchSourcePage, in as DocsMcpConfig, ir as DocsSearchFilters, jr as LlmsTxtConfig, m as DocsAccessPrincipal, nr as DocsSearchFilterField, pr as DocsSearchResult, qn as DocsSearchConfig, qt as DocsContentChangesResponse, r as AlgoliaDocsSearchConfig, rr as DocsSearchFilterInput, vr as DocsSitemapConfig, xn as DocsOkfTrustMetadataInput, zn as DocsSearchAdapter } from "./types-BkAk6B2d.mjs";
|
|
2
|
+
import { O as DocsA2AAgentCardOptions, R as DocsDiscoveryApiRouteOptions, z as DocsPublishedAgentSkill } from "./standards-discovery-CjyUCxdy.mjs";
|
|
3
3
|
import { t as DocsContentAudience } from "./audience-exposure-CkNZNeVX.mjs";
|
|
4
4
|
import { DocsMcpPage, DocsMcpResolvedConfig, DocsMcpResolvedPromptsConfig } from "./mcp.mjs";
|
|
5
5
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { n as DocsCloudAskAIResponseOptions, t as DocsCloudAskAIConfig } from "./cloud-ask-ai-
|
|
1
|
+
import { _t as DocsAnalyticsEventInput, gt as DocsAnalyticsEvent, ht as DocsAnalyticsConfig } from "./types-BkAk6B2d.mjs";
|
|
2
|
+
import { n as DocsCloudAskAIResponseOptions, t as DocsCloudAskAIConfig } from "./cloud-ask-ai-C9dvEBpW.mjs";
|
|
3
3
|
|
|
4
4
|
//#region src/docs-cloud-server.d.ts
|
|
5
5
|
type DocsCloudRuntimeValue<T = string> = T | undefined | null | (() => T | undefined | null);
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { a as scanDocsPageTargets, i as loadAgentCompactionReviews, n as compactAgentDocs, r as inspectAgentCompactionState } from "./agent--fSgaVIK.mjs";
|
|
2
2
|
import { f as PAGE_AGENT_CONTRACT_FIELDS } from "./markdown-sections-BKy4labo.mjs";
|
|
3
|
-
import { d as httpLinkHeaderHasTargetRelation, f as AGENT_SKILL_ARCHIVE_MAX_UNCOMPRESSED_BYTES, p as readAgentSkillDocumentFromTar } from "./prompt-references-
|
|
4
|
-
import { A as buildDocsAgentDiscoverySpec, At as DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, F as buildDocsMcpEndpointCandidates, Gn as getDocsMcpProtectedResourceMetadataRoutes, Jn as isDocsMcpOAuthScopeToken, Lt as resolveDocsSitemapConfig, M as buildDocsConfigMap, Qn as normalizeDocsMcpAuthorizationServerUrls, S as DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE, T as DOCS_CONFIG_MAP_TOP_LEVEL_KEYS, Un as DEFAULT_MCP_WELL_KNOWN_ROUTE, Vn as DEFAULT_MCP_PUBLIC_ROUTE, c as DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, cr as resolveDocsOkfTrustMetadata, h as DEFAULT_LLMS_FULL_TXT_ROUTE, i as DEFAULT_AGENT_FEEDBACK_ROUTE, jt as DEFAULT_SITEMAP_XML_ROUTE, kt as DEFAULT_SITEMAP_MD_ROUTE, l as DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, mn as resolveAskAISearchRequestConfig, n as DEFAULT_AGENTS_MD_WELL_KNOWN_ROUTE, sr as resolveDocsOkfConfig, t as DEFAULT_AGENTS_MD_ROUTE, v as DEFAULT_LLMS_TXT_ROUTE, x as DEFAULT_SKILL_MD_ROUTE } from "./agent-
|
|
3
|
+
import { d as httpLinkHeaderHasTargetRelation, f as AGENT_SKILL_ARCHIVE_MAX_UNCOMPRESSED_BYTES, p as readAgentSkillDocumentFromTar } from "./prompt-references-DVhk8W6r.mjs";
|
|
4
|
+
import { A as buildDocsAgentDiscoverySpec, At as DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, F as buildDocsMcpEndpointCandidates, Gn as getDocsMcpProtectedResourceMetadataRoutes, Jn as isDocsMcpOAuthScopeToken, Lt as resolveDocsSitemapConfig, M as buildDocsConfigMap, Qn as normalizeDocsMcpAuthorizationServerUrls, S as DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE, T as DOCS_CONFIG_MAP_TOP_LEVEL_KEYS, Un as DEFAULT_MCP_WELL_KNOWN_ROUTE, Vn as DEFAULT_MCP_PUBLIC_ROUTE, c as DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, cr as resolveDocsOkfTrustMetadata, h as DEFAULT_LLMS_FULL_TXT_ROUTE, i as DEFAULT_AGENT_FEEDBACK_ROUTE, jt as DEFAULT_SITEMAP_XML_ROUTE, kt as DEFAULT_SITEMAP_MD_ROUTE, l as DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, mn as resolveAskAISearchRequestConfig, n as DEFAULT_AGENTS_MD_WELL_KNOWN_ROUTE, sr as resolveDocsOkfConfig, t as DEFAULT_AGENTS_MD_ROUTE, v as DEFAULT_LLMS_TXT_ROUTE, x as DEFAULT_SKILL_MD_ROUTE } from "./agent-BDrflLmt.mjs";
|
|
5
5
|
import { I as resolveDocsDiscoveryApiRoute, _ as DEFAULT_API_CATALOG_FORMAT, d as DEFAULT_AGENT_SKILLS_ROUTE_PATTERN, f as DEFAULT_AGENT_SKILLS_ROUTE_PREFIX, h as DEFAULT_AGENT_SKILL_FORMAT, l as DEFAULT_AGENT_SKILLS_INDEX_FORMAT, n as API_CATALOG_MEDIA_TYPE, r as API_CATALOG_PROFILE_URI, t as AGENT_SKILLS_DISCOVERY_SCHEMA_URI, u as DEFAULT_AGENT_SKILLS_INDEX_ROUTE, v as DEFAULT_API_CATALOG_ROUTE } from "./standards-discovery-Bpz90VYq.mjs";
|
|
6
6
|
import { isDocsAgentSkillName, validateDocsAgentSkillFrontmatter } from "./agent-skills-spec.mjs";
|
|
7
|
-
import "./openapi-mcp-
|
|
8
|
-
import { a as analyzeDocsRobotsTxt, n as DEFAULT_ROBOTS_TXT_ROUTE, u as resolveDocsRobotsConfig } from "./robots-
|
|
7
|
+
import "./openapi-mcp-CFWUsMUr.mjs";
|
|
8
|
+
import { a as analyzeDocsRobotsTxt, n as DEFAULT_ROBOTS_TXT_ROUTE, u as resolveDocsRobotsConfig } from "./robots-dNbBnlVh.mjs";
|
|
9
9
|
import { a as resolveDocsMetadataBaseUrl } from "./metadata-7htr-Xj_.mjs";
|
|
10
|
-
import "./sitemap-server-
|
|
10
|
+
import "./sitemap-server-BKNIqgvq.mjs";
|
|
11
11
|
import { r as resolveConfiguredAgentSkills } from "./agent-skills-server-Ddbf15pY.mjs";
|
|
12
|
-
import { t as runDocsGoldenTasks } from "./agent-evals-
|
|
12
|
+
import { t as runDocsGoldenTasks } from "./agent-evals-3m5FXStK.mjs";
|
|
13
13
|
import { createFilesystemDocsMcpSource, getDocsConfigSchema, resolveDocsMcpConfig } from "./mcp.mjs";
|
|
14
|
-
import "./authoring-mcp-
|
|
14
|
+
import "./authoring-mcp-Wy-h93DM.mjs";
|
|
15
15
|
import "./code-blocks-D90CCJFs.mjs";
|
|
16
16
|
import "./server.mjs";
|
|
17
17
|
import { _ as resolveDocsContentDir, d as readNavTitle, g as resolveDocsConfigPath, h as readTopLevelStringProperty, l as readBooleanProperty, r as extractTopLevelConfigObject, s as loadDocsConfigModuleResultWithProjectEnv, t as extractNestedObjectLiteral, v as resolveDocsProjectRoot } from "./config-DrZ3fXgf.mjs";
|
|
18
18
|
import { t as detectFramework } from "./utils-Cc1SrVza.mjs";
|
|
19
|
-
import { i as createAgentUsefulnessPagesFromMcp, n as analyzeAgentSurfaceDrift, r as analyzeAgentUsefulness, t as resolveGoldenEvaluationInput } from "./golden-evaluations-
|
|
19
|
+
import { i as createAgentUsefulnessPagesFromMcp, n as analyzeAgentSurfaceDrift, r as analyzeAgentUsefulness, t as resolveGoldenEvaluationInput } from "./golden-evaluations-Dc06CZM-.mjs";
|
|
20
20
|
import { t as analyzeConfiguredAgentSkillsProgressiveDisclosure } from "./agent-skills-progressive-disclosure-DL-q4JZo.mjs";
|
|
21
21
|
import { existsSync, lstatSync, mkdirSync, readFileSync, readdirSync, writeFileSync } from "node:fs";
|
|
22
22
|
import path from "node:path";
|
|
@@ -24,8 +24,12 @@ import { createHash } from "node:crypto";
|
|
|
24
24
|
import { gunzipSync } from "node:zlib";
|
|
25
25
|
import { LATEST_PROTOCOL_VERSION } from "@modelcontextprotocol/server";
|
|
26
26
|
import pc from "picocolors";
|
|
27
|
+
import { AsyncLocalStorage } from "node:async_hooks";
|
|
27
28
|
|
|
28
29
|
//#region src/cli/doctor.ts
|
|
30
|
+
const DEFAULT_HOSTED_TIMEOUT_MS = 15e3;
|
|
31
|
+
const DEFAULT_HOSTED_RETRIES = 1;
|
|
32
|
+
const hostedProbeOptions = new AsyncLocalStorage();
|
|
29
33
|
const NEXT_CONFIG_PATTERN = /^next\.config\.(?:[cm]?js|[cm]?ts)$/;
|
|
30
34
|
const ASTRO_CONFIG_PATTERN = /^astro\.config\.(?:[cm]?js|[cm]?ts)$/;
|
|
31
35
|
const CODE_FILE_PATTERN = /\.(?:[cm]?js|[cm]?ts|jsx|tsx)$/;
|
|
@@ -58,6 +62,12 @@ function parseDoctorFailOn(value) {
|
|
|
58
62
|
if (value === "warn" || value === "fail") return value;
|
|
59
63
|
throw new Error("Invalid value for --fail-on. Expected warn or fail.");
|
|
60
64
|
}
|
|
65
|
+
function parseDoctorInteger(flag, value, bounds) {
|
|
66
|
+
if (!/^\d+$/.test(value)) throw new Error(`Invalid value for ${flag}. Expected an integer.`);
|
|
67
|
+
const parsed = Number(value);
|
|
68
|
+
if (parsed < bounds.min || parsed > bounds.max) throw new Error(`Invalid value for ${flag}. Expected a value between ${bounds.min} and ${bounds.max}.`);
|
|
69
|
+
return parsed;
|
|
70
|
+
}
|
|
61
71
|
function parseDoctorArgs(argv) {
|
|
62
72
|
const parsed = {};
|
|
63
73
|
for (let index = 0; index < argv.length; index += 1) {
|
|
@@ -152,6 +162,44 @@ function parseDoctorArgs(argv) {
|
|
|
152
162
|
index += 1;
|
|
153
163
|
continue;
|
|
154
164
|
}
|
|
165
|
+
if (arg.startsWith("--timeout=")) {
|
|
166
|
+
const value = parseInlineFlag(arg).value;
|
|
167
|
+
if (!value) throw new Error("Missing value for --timeout.");
|
|
168
|
+
parsed.hostedTimeoutMs = parseDoctorInteger("--timeout", value, {
|
|
169
|
+
min: 100,
|
|
170
|
+
max: 12e4
|
|
171
|
+
});
|
|
172
|
+
continue;
|
|
173
|
+
}
|
|
174
|
+
if (arg === "--timeout") {
|
|
175
|
+
const value = argv[index + 1];
|
|
176
|
+
if (!value || value.startsWith("--")) throw new Error("Missing value for --timeout.");
|
|
177
|
+
parsed.hostedTimeoutMs = parseDoctorInteger("--timeout", value, {
|
|
178
|
+
min: 100,
|
|
179
|
+
max: 12e4
|
|
180
|
+
});
|
|
181
|
+
index += 1;
|
|
182
|
+
continue;
|
|
183
|
+
}
|
|
184
|
+
if (arg.startsWith("--retries=")) {
|
|
185
|
+
const value = parseInlineFlag(arg).value;
|
|
186
|
+
if (value === void 0 || value === "") throw new Error("Missing value for --retries.");
|
|
187
|
+
parsed.hostedRetries = parseDoctorInteger("--retries", value, {
|
|
188
|
+
min: 0,
|
|
189
|
+
max: 5
|
|
190
|
+
});
|
|
191
|
+
continue;
|
|
192
|
+
}
|
|
193
|
+
if (arg === "--retries") {
|
|
194
|
+
const value = argv[index + 1];
|
|
195
|
+
if (!value || value.startsWith("--")) throw new Error("Missing value for --retries.");
|
|
196
|
+
parsed.hostedRetries = parseDoctorInteger("--retries", value, {
|
|
197
|
+
min: 0,
|
|
198
|
+
max: 5
|
|
199
|
+
});
|
|
200
|
+
index += 1;
|
|
201
|
+
continue;
|
|
202
|
+
}
|
|
155
203
|
if (arg === "--config") {
|
|
156
204
|
const value = argv[index + 1];
|
|
157
205
|
if (!value || value.startsWith("--")) throw new Error("Missing value for --config.");
|
|
@@ -195,6 +243,8 @@ ${pc.dim("Options:")}
|
|
|
195
243
|
${pc.cyan("--dry-run")} With ${pc.cyan("--fix")}, report the compaction command without writing files
|
|
196
244
|
${pc.cyan("--fail-on <level>")} Exit with failure on ${pc.cyan("warn")} or only on ${pc.cyan("fail")}
|
|
197
245
|
${pc.cyan("--url <url>")} Probe hosted agent surfaces, e.g. ${pc.dim("https://docs.example.com")}
|
|
246
|
+
${pc.cyan("--timeout <ms>")} Set each hosted probe timeout (default: ${pc.dim(String(DEFAULT_HOSTED_TIMEOUT_MS))})
|
|
247
|
+
${pc.cyan("--retries <count>")} Retry safe hosted GET/HEAD probes (default: ${pc.dim(String(DEFAULT_HOSTED_RETRIES))})
|
|
198
248
|
${pc.cyan("--config <path>")} Use a custom docs config path instead of ${pc.dim("docs.config.ts[x]")}
|
|
199
249
|
${pc.cyan("-h, --help")} Show this help message
|
|
200
250
|
`);
|
|
@@ -677,6 +727,9 @@ function buildCoverage(pages) {
|
|
|
677
727
|
explicitCoverage: totalPages === 0 ? 0 : Math.round(explicitPages / Math.max(totalPages, 1) * 100),
|
|
678
728
|
compaction: {
|
|
679
729
|
freshGeneratedPages: 0,
|
|
730
|
+
reviewedGeneratedPages: 0,
|
|
731
|
+
invalidReviewedPages: 0,
|
|
732
|
+
orphanedReviews: 0,
|
|
680
733
|
staleGeneratedPages: 0,
|
|
681
734
|
modifiedGeneratedPages: 0,
|
|
682
735
|
unknownGeneratedPages: 0,
|
|
@@ -704,20 +757,36 @@ function buildCompactionCoverage(rootDir, contentDir, entry, pages, defaults) {
|
|
|
704
757
|
const targetsBySlug = new Map(targets.map((target) => [target.slug, target]));
|
|
705
758
|
const coverage = {
|
|
706
759
|
freshGeneratedPages: 0,
|
|
760
|
+
reviewedGeneratedPages: 0,
|
|
761
|
+
invalidReviewedPages: 0,
|
|
762
|
+
orphanedReviews: 0,
|
|
707
763
|
staleGeneratedPages: 0,
|
|
708
764
|
modifiedGeneratedPages: 0,
|
|
709
765
|
unknownGeneratedPages: 0,
|
|
710
766
|
tokenBudgetMissingPages: 0,
|
|
711
767
|
otherMissingPages: 0
|
|
712
768
|
};
|
|
769
|
+
const reviewRecords = loadAgentCompactionReviews(rootDir, defaults.reviewManifestPath);
|
|
770
|
+
const inspectionDefaults = {
|
|
771
|
+
...defaults,
|
|
772
|
+
reviewRecords
|
|
773
|
+
};
|
|
774
|
+
const targetRoutes = new Set(targets.map((target) => target.url));
|
|
775
|
+
coverage.orphanedReviews = reviewRecords.filter((review) => !targetRoutes.has(review.route)).length;
|
|
713
776
|
for (const page of pages) {
|
|
714
777
|
const target = targetsBySlug.get(page.slug);
|
|
715
778
|
if (!target) continue;
|
|
716
|
-
const state = inspectAgentCompactionState(page, target,
|
|
779
|
+
const state = inspectAgentCompactionState(page, target, inspectionDefaults);
|
|
717
780
|
switch (state.status) {
|
|
718
781
|
case "fresh":
|
|
719
782
|
coverage.freshGeneratedPages += 1;
|
|
720
783
|
break;
|
|
784
|
+
case "reviewed":
|
|
785
|
+
coverage.reviewedGeneratedPages += 1;
|
|
786
|
+
break;
|
|
787
|
+
case "review-invalid":
|
|
788
|
+
coverage.invalidReviewedPages += 1;
|
|
789
|
+
break;
|
|
721
790
|
case "stale":
|
|
722
791
|
coverage.staleGeneratedPages += 1;
|
|
723
792
|
break;
|
|
@@ -737,8 +806,10 @@ function buildCompactionCoverage(rootDir, contentDir, entry, pages, defaults) {
|
|
|
737
806
|
return coverage;
|
|
738
807
|
}
|
|
739
808
|
function compactionFreshnessScore(coverage, compactConfigured) {
|
|
740
|
-
if (coverage.staleGeneratedPages > 0 || coverage.modifiedGeneratedPages > 0 || coverage.tokenBudgetMissingPages > 0) {
|
|
809
|
+
if (coverage.invalidReviewedPages > 0 || coverage.orphanedReviews > 0 || coverage.staleGeneratedPages > 0 || coverage.modifiedGeneratedPages > 0 || coverage.tokenBudgetMissingPages > 0) {
|
|
741
810
|
const recommendations = [];
|
|
811
|
+
if (coverage.invalidReviewedPages > 0) recommendations.push("Inspect every changed source/settings/output hash, then rerun docs agent compact --review with an explicit reviewer and rationale only when the preserved agent.md remains correct.");
|
|
812
|
+
if (coverage.orphanedReviews > 0) recommendations.push("Remove or replace orphaned entries in the agent compaction review manifest.");
|
|
742
813
|
if (coverage.staleGeneratedPages > 0) recommendations.push("Run docs agent compact --stale to refresh stale generated agent.md files.");
|
|
743
814
|
if (coverage.modifiedGeneratedPages > 0) recommendations.push("Review modified generated agent.md files before overwriting them; --stale skips manual edits on purpose.");
|
|
744
815
|
if (coverage.tokenBudgetMissingPages > 0) recommendations.push("Run docs agent compact --stale --include-missing to create generated agent.md files for pages that opted into agent.tokenBudget.");
|
|
@@ -752,7 +823,7 @@ function compactionFreshnessScore(coverage, compactConfigured) {
|
|
|
752
823
|
status: "pass",
|
|
753
824
|
score: compactConfigured ? 5 : 3
|
|
754
825
|
};
|
|
755
|
-
if (coverage.freshGeneratedPages > 0) return {
|
|
826
|
+
if (coverage.freshGeneratedPages > 0 || coverage.reviewedGeneratedPages > 0) return {
|
|
756
827
|
status: "pass",
|
|
757
828
|
score: compactConfigured ? 5 : 4
|
|
758
829
|
};
|
|
@@ -837,16 +908,31 @@ function toMarkdownRoute(pageUrl) {
|
|
|
837
908
|
const normalized = pageUrl === "/" ? "/index" : pageUrl.replace(/\/+$/, "");
|
|
838
909
|
return normalized.endsWith(".md") ? normalized : `${normalized}.md`;
|
|
839
910
|
}
|
|
840
|
-
async function fetchWithTimeout(url, init = {}
|
|
841
|
-
const
|
|
842
|
-
const
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
911
|
+
async function fetchWithTimeout(url, init = {}) {
|
|
912
|
+
const options = hostedProbeOptions.getStore();
|
|
913
|
+
const timeoutMs = options?.timeoutMs ?? DEFAULT_HOSTED_TIMEOUT_MS;
|
|
914
|
+
const retries = options?.retries ?? DEFAULT_HOSTED_RETRIES;
|
|
915
|
+
const method = init.method?.toUpperCase() ?? "GET";
|
|
916
|
+
const retryableMethod = method === "GET" || method === "HEAD";
|
|
917
|
+
for (let attempt = 0;; attempt += 1) {
|
|
918
|
+
const controller = new AbortController();
|
|
919
|
+
const timeout = setTimeout(() => controller.abort(), timeoutMs);
|
|
920
|
+
try {
|
|
921
|
+
const response = await fetch(url, {
|
|
922
|
+
...init,
|
|
923
|
+
signal: controller.signal
|
|
924
|
+
});
|
|
925
|
+
const retryableStatus = response.status === 408 || response.status === 425 || response.status === 429 || response.status >= 500;
|
|
926
|
+
if (retryableMethod && retryableStatus && attempt < retries) {
|
|
927
|
+
await response.body?.cancel().catch(() => void 0);
|
|
928
|
+
continue;
|
|
929
|
+
}
|
|
930
|
+
return response;
|
|
931
|
+
} catch (error) {
|
|
932
|
+
if (!retryableMethod || attempt >= retries) throw error;
|
|
933
|
+
} finally {
|
|
934
|
+
clearTimeout(timeout);
|
|
935
|
+
}
|
|
850
936
|
}
|
|
851
937
|
}
|
|
852
938
|
async function probeTextRoute(baseUrl, route) {
|
|
@@ -1707,6 +1793,9 @@ async function inspectAgentReadiness(options = {}) {
|
|
|
1707
1793
|
explicitCoverage: 0,
|
|
1708
1794
|
compaction: {
|
|
1709
1795
|
freshGeneratedPages: 0,
|
|
1796
|
+
reviewedGeneratedPages: 0,
|
|
1797
|
+
invalidReviewedPages: 0,
|
|
1798
|
+
orphanedReviews: 0,
|
|
1710
1799
|
staleGeneratedPages: 0,
|
|
1711
1800
|
modifiedGeneratedPages: 0,
|
|
1712
1801
|
unknownGeneratedPages: 0,
|
|
@@ -1917,19 +2006,26 @@ async function inspectAgentReadiness(options = {}) {
|
|
|
1917
2006
|
checks.push(makeCheck("agent-applicability", "Framework and version applicability", applicabilityResult.status, applicabilityResult.score, 10, `${usefulness.metrics.applicability.conflictingPages} conflicting, ${usefulness.metrics.applicability.ambiguousPages} ambiguous, and ${usefulness.metrics.applicability.mismatchedPages} project-mismatched actionable pages.`, usefulness.metrics.actionablePages > 0 && applicabilityIssueCount === 0 ? void 0 : "Declare consistent framework/version metadata in page frontmatter and agent.appliesTo so retrieval can select the right variant."));
|
|
1918
2007
|
checks.push(makeCheck("command-health", "Documented command health", commandHealthResult.status, commandHealthResult.score, 10, `${usefulness.metrics.commands.healthy}/${usefulness.metrics.commands.total} statically inspected commands are healthy; ${usefulness.metrics.commands.unhealthy} are unhealthy and ${usefulness.metrics.commands.unverified} could not be verified safely.`, usefulness.metrics.commands.total > 0 && usefulness.metrics.commands.unhealthy === 0 && usefulness.metrics.commands.unverified === 0 ? void 0 : "Update broken or stale commands and make workspace selectors resolvable so scripts, working directories, package managers, and docs CLI subcommands can be verified.", commandFindings));
|
|
1919
2008
|
checks.push(makeCheck("related-coverage", "Related-page task coverage", relatedCoverageResult.status, relatedCoverageResult.score, 5, `${usefulness.metrics.related.coveredActionablePages}/${usefulness.metrics.actionablePages} actionable pages link to a valid related docs route; ${usefulness.metrics.related.brokenLinks} related links are broken.`, usefulness.metrics.actionablePages > 0 && usefulness.metrics.related.coverage >= 80 && usefulness.metrics.related.brokenLinks === 0 ? void 0 : "Add and validate related routes on actionable pages so agents can expand context without guessing."));
|
|
1920
|
-
checks.push(makeCheck("compact", "Agent compaction freshness", compactionResult.status, compactionResult.score, 5, `${compactionCoverage.freshGeneratedPages} fresh, ${compactionCoverage.staleGeneratedPages} stale, ${compactionCoverage.modifiedGeneratedPages} modified, ${compactionCoverage.unknownGeneratedPages} unknown, ${compactionCoverage.tokenBudgetMissingPages} token-budget missing, and ${compactionCoverage.otherMissingPages} other missing page${compactionCoverage.otherMissingPages === 1 ? "" : "s"} across compactable docs pages.` + (compactConfigured ? " agent.compact defaults are configured." : " No agent.compact defaults were found in docs config."), compactionResult.recommendation));
|
|
2009
|
+
checks.push(makeCheck("compact", "Agent compaction freshness", compactionResult.status, compactionResult.score, 5, `${compactionCoverage.freshGeneratedPages} fresh, ${compactionCoverage.reviewedGeneratedPages} reviewed, ${compactionCoverage.invalidReviewedPages} invalid reviews, ${compactionCoverage.orphanedReviews} orphaned reviews, ${compactionCoverage.staleGeneratedPages} stale, ${compactionCoverage.modifiedGeneratedPages} modified, ${compactionCoverage.unknownGeneratedPages} unknown, ${compactionCoverage.tokenBudgetMissingPages} token-budget missing, and ${compactionCoverage.otherMissingPages} other missing page${compactionCoverage.otherMissingPages === 1 ? "" : "s"} across compactable docs pages.` + (compactConfigured ? " agent.compact defaults are configured." : " No agent.compact defaults were found in docs config."), compactionResult.recommendation));
|
|
1921
2010
|
const averageMetric = (values) => values.length === 0 ? 0 : Math.round(values.reduce((total, value) => total + value, 0) / values.length * 100) / 100;
|
|
1922
2011
|
const evaluationQuality = evaluations.quality;
|
|
1923
2012
|
const proportionalEvaluationScore = evaluationQuality.score === null ? 0 : Math.round(evaluationQuality.score / 100 * 10);
|
|
1924
2013
|
const evaluationScore = evaluationQuality.status === "failed" ? Math.min(9, proportionalEvaluationScore) : proportionalEvaluationScore;
|
|
1925
2014
|
checks.push(makeCheck("golden-tasks", "Golden task quality", evaluationQuality.status === "passed" ? "pass" : evaluationQuality.status === "failed" ? "fail" : "warn", evaluationScore, 10, evaluationQuality.status === "unmeasured" ? "No golden agent tasks are configured; evaluation quality is unmeasured." : `${evaluationQuality.passedTaskCount}/${evaluationQuality.taskCount} golden tasks passed with ${evaluationQuality.score}/100 average quality across configured expectations, ${averageMetric(evaluations.tasks.map((task) => task.retrieval.recallAtK))} retrieval recall, ${averageMetric(evaluations.tasks.map((task) => task.citations.recall))} citation recall, and ${evaluations.tasks.reduce((total, task) => total + task.usage.usedUtf8Bytes, 0)} UTF-8 context bytes used.`, evaluationQuality.status === "passed" ? void 0 : evaluationQuality.status === "unmeasured" ? "Configure agent.evaluations.tasks so doctor and review can measure retrieval, citations, framework/version selection, adversarial safety, executable examples, and token usage." : "Inspect the failed golden task metrics and fix retrieval ranking, citations, applicability metadata, adversarial safety, examples, or context budgets."));
|
|
1926
2015
|
const evaluationCoverage = evaluations.coverage;
|
|
1927
|
-
const formatDimensionCoverage = (label, dimension) =>
|
|
1928
|
-
|
|
2016
|
+
const formatDimensionCoverage = (label, dimension) => {
|
|
2017
|
+
if (dimension.status === "not-applicable") return `${label}: not applicable (${dimension.notApplicableTaskCount} tasks)`;
|
|
2018
|
+
return `${label}: ${dimension.status} (${dimension.measuredTaskCount}/${dimension.applicableTaskCount} applicable tasks${dimension.notApplicableTaskCount > 0 ? `, ${dimension.notApplicableTaskCount} not applicable` : ""})`;
|
|
2019
|
+
};
|
|
2020
|
+
const evaluationCoveragePassed = evaluationCoverage.status === "measured" || evaluationCoverage.status === "not-applicable";
|
|
2021
|
+
checks.push(makeCheck("golden-task-coverage", "Golden evaluation coverage", evaluationCoveragePassed ? "pass" : "warn", Math.round(evaluationCoverage.coveragePercent / 100 * 5), 5, `${evaluationCoverage.status} coverage across optional confidence dimensions (${evaluationCoverage.measuredTaskDimensions}/${evaluationCoverage.applicableTaskDimensions} applicable task-dimensions, ${evaluationCoverage.notApplicableTaskDimensions} not applicable, ${evaluationCoverage.coveragePercent}%): ${formatDimensionCoverage("safety", evaluationCoverage.dimensions.safety)}; ${formatDimensionCoverage("answer quality", evaluationCoverage.dimensions.answerQuality)}; ${formatDimensionCoverage("executable examples", evaluationCoverage.dimensions.executableExamples)}.`, evaluationCoveragePassed ? void 0 : "Add golden-task safety expectations, actual-answer assertions, and execute-level example checks for applicable tasks; explicitly mark example execution not-applicable only when it would not meaningfully validate the task."));
|
|
1929
2022
|
const okfConfig = resolveDocsOkfConfig(config?.agent?.okf);
|
|
1930
2023
|
const staleOkfPages = okfConfig.enabled ? pages.filter((page) => resolveDocsOkfTrustMetadata(page, okfConfig).stale) : [];
|
|
1931
2024
|
checks.push(makeCheck("okf-trust", "OKF trust metadata", staleOkfPages.length > 0 ? "warn" : "pass", staleOkfPages.length > 0 ? 1 : 2, 2, !okfConfig.enabled ? "OKF export is optional and not configured." : staleOkfPages.length === 0 ? `OKF v0.2 trust metadata is enabled at ${okfConfig.route}; ${pages.length} page${pages.length === 1 ? "" : "s"} passed the configured staleness policy.` : `${staleOkfPages.length}/${pages.length} OKF document${staleOkfPages.length === 1 ? " is" : "s are"} beyond stale_after.`, staleOkfPages.length > 0 ? "Review or regenerate stale pages, then update okf.verified or stale_after with an auditable timestamp." : void 0));
|
|
1932
|
-
const hosted = options.url ? await
|
|
2025
|
+
const hosted = options.url ? await hostedProbeOptions.run({
|
|
2026
|
+
timeoutMs: options.hostedTimeoutMs ?? DEFAULT_HOSTED_TIMEOUT_MS,
|
|
2027
|
+
retries: options.hostedRetries ?? DEFAULT_HOSTED_RETRIES
|
|
2028
|
+
}, () => buildHostedAgentChecks(options.url, pages)) : void 0;
|
|
1933
2029
|
if (hosted) checks.push(...hosted.checks);
|
|
1934
2030
|
const { score, maxScore } = normalizedDoctorScore(checks.reduce((total, check) => total + check.score, 0), checks.reduce((total, check) => total + check.maxScore, 0));
|
|
1935
2031
|
return {
|
|
@@ -2048,9 +2144,9 @@ function printAgentDoctorReport(report) {
|
|
|
2048
2144
|
const evaluationQuality = report.evaluations.quality;
|
|
2049
2145
|
console.log(`${pc.bold("Golden task quality:")} ${evaluationQuality.status === "unmeasured" ? "unmeasured" : `${evaluationQuality.passedTaskCount}/${evaluationQuality.taskCount} passed (${evaluationQuality.score}/100)`}`);
|
|
2050
2146
|
const evaluationCoverage = report.evaluations.coverage;
|
|
2051
|
-
console.log(`${pc.bold("Evaluation coverage:")} ${evaluationCoverage.status} ${pc.dim(`(${evaluationCoverage.measuredTaskDimensions}/${evaluationCoverage.
|
|
2147
|
+
console.log(`${pc.bold("Evaluation coverage:")} ${evaluationCoverage.status} ${pc.dim(`(${evaluationCoverage.measuredTaskDimensions}/${evaluationCoverage.applicableTaskDimensions} applicable task-dimensions, ${evaluationCoverage.notApplicableTaskDimensions} not applicable, ${evaluationCoverage.coveragePercent}%)`)} ${pc.dim("•")} safety ${evaluationCoverage.dimensions.safety.status} ${pc.dim("•")} answer quality ${evaluationCoverage.dimensions.answerQuality.status} ${pc.dim("•")} executable examples ${evaluationCoverage.dimensions.executableExamples.status}`);
|
|
2052
2148
|
}
|
|
2053
|
-
console.log(`${pc.bold("Generated agent.md freshness:")} ${report.coverage.compaction.freshGeneratedPages} fresh ${pc.dim("•")} ${report.coverage.compaction.staleGeneratedPages} stale ${pc.dim("•")} ${report.coverage.compaction.modifiedGeneratedPages} modified ${pc.dim("•")} ${report.coverage.compaction.tokenBudgetMissingPages} token-budget missing`);
|
|
2149
|
+
console.log(`${pc.bold("Generated agent.md freshness:")} ${report.coverage.compaction.freshGeneratedPages} fresh ${pc.dim("•")} ${report.coverage.compaction.reviewedGeneratedPages} reviewed ${pc.dim("•")} ${report.coverage.compaction.invalidReviewedPages} invalid reviews ${pc.dim("•")} ${report.coverage.compaction.staleGeneratedPages} stale ${pc.dim("•")} ${report.coverage.compaction.modifiedGeneratedPages} modified ${pc.dim("•")} ${report.coverage.compaction.tokenBudgetMissingPages} token-budget missing`);
|
|
2054
2150
|
if (report.fixes && report.fixes.length > 0) console.log(`${pc.bold("Fixes:")} ${report.fixes.map((fix) => `${fix.status === "applied" ? "applied" : "skipped"} ${fix.title}`).join(pc.dim(" • "))}`);
|
|
2055
2151
|
console.log();
|
|
2056
2152
|
for (const check of report.checks) {
|
|
@@ -2137,11 +2233,11 @@ async function runAgentDoctorFixes(report, options) {
|
|
|
2137
2233
|
const fixes = [];
|
|
2138
2234
|
const compaction = report.coverage.compaction;
|
|
2139
2235
|
if (!(compaction.staleGeneratedPages > 0 || compaction.tokenBudgetMissingPages > 0)) {
|
|
2140
|
-
if (compaction.modifiedGeneratedPages > 0 || compaction.unknownGeneratedPages > 0) fixes.push({
|
|
2236
|
+
if (compaction.invalidReviewedPages > 0 || compaction.orphanedReviews > 0 || compaction.modifiedGeneratedPages > 0 || compaction.unknownGeneratedPages > 0) fixes.push({
|
|
2141
2237
|
id: "agent-compact",
|
|
2142
2238
|
title: "agent compact",
|
|
2143
2239
|
status: "skipped",
|
|
2144
|
-
detail: "Only
|
|
2240
|
+
detail: "Only invalid/orphaned reviews or modified/unknown agent.md files need attention; doctor --fix leaves those for manual review."
|
|
2145
2241
|
});
|
|
2146
2242
|
return fixes;
|
|
2147
2243
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { _ as hasStructuredPageAgentContract, v as normalizePageAgentFrontmatter } from "./markdown-sections-BKy4labo.mjs";
|
|
2
|
-
import { An as normalizeAgentFramework, En as resolveDocsAudienceMdxContent, Nn as normalizeAgentVersion, kn as agentVersionConstraintsOverlap, wn as findDocsAudienceMdxTags } from "./agent-
|
|
2
|
+
import { An as normalizeAgentFramework, En as resolveDocsAudienceMdxContent, Nn as normalizeAgentVersion, kn as agentVersionConstraintsOverlap, wn as findDocsAudienceMdxTags } from "./agent-BDrflLmt.mjs";
|
|
3
3
|
import { t as extractCodeBlocksFromMarkdown } from "./code-blocks-D90CCJFs.mjs";
|
|
4
4
|
import { isMap, isScalar, isSeq, parseDocument } from "yaml";
|
|
5
5
|
import { existsSync, lstatSync, readFileSync, readdirSync } from "node:fs";
|
package/dist/index.d.mts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { $ as
|
|
1
|
+
import { $ as DocsAgentGoldenExpectedExample, $n as DocsSearchFacetsResponse, $r as PageFrontmatter, $t as DocsMcpAllowedOrigins, A as DocsAgentA2AProtocolBinding, An as DocsRetrievalSourceScope, Ar as LastUpdatedConfig, At as DocsCloudFeatureConfig, B as DocsAgentEvaluationAnswerRequest, Bn as DocsSearchAdapterContext, Br as OpenDocsProviderId, Bt as DocsCodeBlocksValidationPolicy, C as DocsAgentA2AOAuthAuthorizationCodeFlow, Cn as DocsOpenApiMcpConfig, Cr as DocsTelemetryEventType, Ct as DocsAskAIFeedbackConfig, D as DocsAgentA2AOAuthImplicitFlow, Dn as DocsPaginatedSearchResponse, Dr as FeedbackConfig, Dt as DocsAskAIMcpConfig, E as DocsAgentA2AOAuthFlows, En as DocsPageAccessPolicy, Er as DocsTheme, Et as DocsAskAIFeedbackValue, F as DocsAgentCompactConfig, Fn as DocsReviewScoreConfig, Fr as McpDocsSearchConfig, Ft as DocsCodeBlocksPlannerProvider, G as DocsAgentEvaluationTaskInput, Gn as DocsSearchAmbiguityResolution, Gr as PageActionInstallSkillsConfig, Gt as DocsContentChangeSnapshotSaver, H as DocsAgentEvaluationAnswerRunner, Hn as DocsSearchAdapterPage, Hr as OpenGraphImage, Ht as DocsContentChangeDocument, I as DocsAgentConfig, In as DocsReviewSeverity, Ir as OGConfig, It as DocsCodeBlocksRunnerConfig, J as DocsAgentFeedbackData, Jn as DocsSearchDocument, Jr as PageAgentAppliesTo, Jt as DocsContentSnapshot, K as DocsAgentEvaluationsConfig, Kn as DocsSearchChunkingConfig, Kr as PageActionMcpProvider, Kt as DocsContentChangedDocument, L as DocsAgentContentChangesConfig, Ln as DocsRobotsConfig, Lr as OpenDocsConfig, Lt as DocsCodeBlocksRunnerProvider, M as DocsAgentA2ASecurityScheme, Mn as DocsReviewCiMode, Mr as LlmsTxtMaxCharsConfig, Mt as DocsCloudPublishConfig, N as DocsAgentA2ASecurityScopeList, Nn as DocsReviewConfig, Nr as LlmsTxtMaxCharsMode, Nt as DocsCodeBlocksConfig, O as DocsAgentA2AOAuthPasswordFlow, On as DocsRelatedItem, Or as FontStyle, Ot as DocsCloudApiKeyConfig, P as DocsAgentA2ASkill, Pn as DocsReviewRulesConfig, Pr as LlmsTxtSectionConfig, Pt as DocsCodeBlocksPlannerConfig, Q as DocsAgentGoldenExampleVerification, Qn as DocsSearchFacetValue, Qr as PageAgentVerification, Qt as DocsI18nConfig, R as DocsAgentEvaluationAnswerInput, Rn as DocsRobotsRule, Rr as OpenDocsProvider, Rt as DocsCodeBlocksValidateConfig, S as DocsAgentA2AOAuth2SecurityScheme, Sn as DocsOkfTrustTier, Sr as DocsTelemetryEventInput, St as DocsAskAIActionType, T as DocsAgentA2AOAuthDeviceCodeFlow, Tn as DocsOpenApiMcpHeaders, Tr as DocsTelemetryFramework, Tt as DocsAskAIFeedbackMessage, U as DocsAgentEvaluationSourceReference, Un as DocsSearchAmbiguityDecision, Ur as OrderingItem, Ut as DocsContentChangeSnapshotContext, V as DocsAgentEvaluationAnswerResult, Vn as DocsSearchAdapterFactory, Vr as OpenDocsTarget, Vt as DocsConfig, W as DocsAgentEvaluationSurface, Wn as DocsSearchAmbiguityDecisionStatus, Wr as PageActionConnectMcpConfig, Wt as DocsContentChangeSnapshotLoader, X as DocsAgentGoldenAuthenticatedContentExpectation, Xn as DocsSearchExplanation, Xr as PageAgentFailureMode, Xt as DocsFeedbackData, Y as DocsAgentGoldenAnswerExpectation, Yn as DocsSearchEmbeddingsConfig, Yr as PageAgentCommand, Yt as DocsContentSnapshotDocument, Zn as DocsSearchFacet, Zr as PageAgentFrontmatter, Zt as DocsFeedbackValue, _ as DocsAgentA2AConfig, _i as UIConfig, _n as DocsOkfConfig, _r as DocsSearchWarningCode, _t as DocsAnalyticsEventInput, a as ApiReferenceRenderer, ai as ResolvedDocsRelatedLink, an as DocsMcpCorsConfig, ar as DocsSearchMatchField, at as DocsAgentGoldenTask, b as DocsAgentA2AInterfaceConfig, bn as DocsOkfTrustMetadata, br as DocsTelemetryConfig, bt as DocsAnalyticsSource, c as ChangelogFrontmatter, ci as SidebarFolderIndexBehavior, cn as DocsMcpProtectedResourceConfig, cr as DocsSearchRankingReason, ct as DocsAgentSkillsCompatibilityPolicy, d as CopyMarkdownFormat, di as SidebarPageNode, dn as DocsMetadata, dr as DocsSearchRequest, dt as DocsAgentSkillsProgressiveDisclosureConfig, ei as PageOpenGraph, en as DocsMcpAuthPrincipal, er as DocsSearchFilterDecision, et as DocsAgentGoldenFreshnessExpectation, f as CustomDocsSearchConfig, fi as SidebarTree, fn as DocsNav, fr as DocsSearchResponse, ft as DocsAgentTraceEventInput, g as DocsAgentA2ACapabilities, gi as TypographyConfig, gn as DocsOkfActorTimestamp, gr as DocsSearchWarning, gt as DocsAnalyticsEvent, h as DocsAgentA2AApiKeySecurityScheme, hi as TypesenseDocsSearchConfig, hn as DocsObservabilityEventInput, hr as DocsSearchSourcePage, ht as DocsAnalyticsConfig, i as ApiReferenceConfig, ii as ReadingTimeFormat, in as DocsMcpConfig, ir as DocsSearchFilters, it as DocsAgentGoldenSafetyExpectation, j as DocsAgentA2ASecurityRequirement, jn as DocsReviewCiConfig, jr as LlmsTxtConfig, jt as DocsCloudPreviewConfig, k as DocsAgentA2AOpenIdConnectSecurityScheme, kn as DocsRetrievalSourceProvenance, kr as GithubConfig, kt as DocsCloudConfig, l as CodeBlockCopyData, li as SidebarFolderNode, ln as DocsMcpSecurityConfig, lr as DocsSearchRankingReasonCode, lt as DocsAgentSkillsConfig, m as DocsAccessPrincipal, mi as ThemeToggleConfig, mn as DocsObservabilityEvent, mr as DocsSearchResultType, mt as DocsAgentTraceStatus, n as AgentFeedbackConfig, ni as PageTwitter, nn as DocsMcpAuthenticateContext, nr as DocsSearchFilterField, nt as DocsAgentGoldenQueryVariant, o as BreadcrumbConfig, oi as SidebarComponentProps, on as DocsMcpOriginContext, or as DocsSearchMatchedTerm, ot as DocsAgentGoldenTaskExpectation, p as DocsAccessClaimValue, pi as SimpleDocsSearchConfig, pn as DocsObservabilityConfig, pr as DocsSearchResult, pt as DocsAgentTraceEventType, q as DocsAgentFeedbackContext, qn as DocsSearchConfig, qr as PageActionsConfig, qt as DocsContentChangesResponse, r as AlgoliaDocsSearchConfig, ri as ReadingTimeConfig, rn as DocsMcpAuthenticateResult, rr as DocsSearchFilterInput, rt as DocsAgentGoldenQueryVariantKind, s as ChangelogConfig, si as SidebarConfig, sn as DocsMcpPromptsConfig, sr as DocsSearchQuery, st as DocsAgentGoldenTaskFilters, t as AIConfig, ti as PageSidebarFrontmatter, tn as DocsMcpAuthenticate, tr as DocsSearchFilterDecisionOutcome, tt as DocsAgentGoldenPromptInjectionExpectation, u as CopyMarkdownConfig, ui as SidebarNode, un as DocsMcpToolsConfig, ur as DocsSearchRankingStrategy, ut as DocsAgentSkillsInput, v as DocsAgentA2AExtension, vn as DocsOkfSource, vr as DocsSitemapConfig, vt as DocsAnalyticsEventType, w as DocsAgentA2AOAuthClientCredentialsFlow, wn as DocsOpenApiMcpCredentialContext, wr as DocsTelemetryFeatures, wt as DocsAskAIFeedbackData, x as DocsAgentA2AMutualTlsSecurityScheme, xn as DocsOkfTrustMetadataInput, xr as DocsTelemetryEvent, xt as DocsAskAIActionData, y as DocsAgentA2AHttpAuthSecurityScheme, yn as DocsOkfStatus, yr as DocsTelemetryAgentSurface, yt as DocsAnalyticsInput, z as DocsAgentEvaluationAnswerProvider, zn as DocsSearchAdapter, zr as OpenDocsProviderConfig, zt as DocsCodeBlocksValidationMode } from "./types-BkAk6B2d.mjs";
|
|
2
2
|
import { AGENT_SKILL_COMPATIBILITY_MAX_LENGTH, AGENT_SKILL_DESCRIPTION_MAX_LENGTH, AGENT_SKILL_FRONTMATTER_FIELDS, AGENT_SKILL_NAME_MAX_LENGTH, DocsAgentSkillFrontmatter, DocsAgentSkillFrontmatterError, DocsAgentSkillFrontmatterField, DocsAgentSkillFrontmatterIssue, DocsAgentSkillFrontmatterValidation, DocsAgentSkillFrontmatterValidationOptions, isDocsAgentSkillName, parseDocsAgentSkillFrontmatter, validateDocsAgentSkillFrontmatter } from "./agent-skills-spec.mjs";
|
|
3
|
-
import { $ as resolveDocsDiscoveryApiRoute, A as DocsAgentSkillIndexEntry, B as DocsPublishedAgentSkillFile, C as DOCS_AGENT_MANIFEST_FORMAT, D as DocsA2AAgentCard, E as DOCS_AGENT_MANIFEST_VERSION, F as DocsApiCatalogLinkTarget, G as buildDocsA2AAgentCard, H as DocsStandardsDiscoveryRequest, I as DocsApiCatalogOpenApiDefinition, J as buildDocsLegacySkillsIndex, K as buildDocsAgentSkillsIndex, L as DocsApiCatalogOptions, M as DocsApiCatalog, N as DocsApiCatalogApiTarget, O as DocsA2AAgentCardOptions, P as DocsApiCatalogLinkContext, Q as isDocsStandardsDiscoveryRequest, R as DocsDiscoveryApiRouteOptions, S as DEFAULT_LEGACY_SKILLS_ROUTE_PREFIX, T as DOCS_AGENT_MANIFEST_SCHEMA_URI, U as DocsStandardsDiscoveryRouteOptions, V as DocsPublishedAgentSkillOptions, W as appendDocsDiscoveryLinkHeader, X as getDocsAgentManifestLinkHeader, Y as createDocsStandardsResponse, Z as getDocsDiscoveryLinkHeader, _ as DEFAULT_AGENT_SKILL_RESOURCE_FORMAT, a as DEFAULT_A2A_AGENT_CARD_FORMAT, b as DEFAULT_LEGACY_SKILLS_INDEX_FORMAT, c as DEFAULT_A2A_PROTOCOL_VERSION, d as DEFAULT_AGENT_SKILLS_INDEX_ROUTE, et as resolveDocsPublishedAgentSkill, f as DEFAULT_AGENT_SKILLS_ROUTE_PATTERN, g as DEFAULT_AGENT_SKILL_FORMAT, h as DEFAULT_AGENT_SKILL_FILE_FORMAT, i as CreateDocsStandardsResponseOptions, j as DocsAgentSkillsIndex, k as DocsA2AAgentInterface, l as DEFAULT_AGENT_SKILLS_ARCHIVE_ROUTE_PATTERN, m as DEFAULT_AGENT_SKILL_ARCHIVE_FORMAT, n as API_CATALOG_MEDIA_TYPE, nt as sha256DocsDiscoveryContent, o as DEFAULT_A2A_AGENT_CARD_ROUTE, p as DEFAULT_AGENT_SKILLS_ROUTE_PREFIX, q as buildDocsApiCatalog, r as API_CATALOG_PROFILE_URI, s as DEFAULT_A2A_PROTOCOL_BINDING, t as AGENT_SKILLS_DISCOVERY_SCHEMA_URI, tt as resolveDocsStandardsDiscoveryRequest, u as DEFAULT_AGENT_SKILLS_INDEX_FORMAT, v as DEFAULT_API_CATALOG_FORMAT, w as DOCS_AGENT_MANIFEST_SCHEMA_MEDIA_TYPE, x as DEFAULT_LEGACY_SKILLS_INDEX_ROUTE, y as DEFAULT_API_CATALOG_ROUTE, z as DocsPublishedAgentSkill } from "./standards-discovery-
|
|
4
|
-
import { a as createDocsAgentTraceContext, c as emitDocsAnalyticsEvent, d as resolveDocsAnalyticsConfig, f as resolveDocsObservabilityConfig, i as ResolvedDocsObservabilityConfig, l as emitDocsObservabilityEvent, n as DocsAgentTraceContext, o as createDocsAgentTraceId, r as ResolvedDocsAnalyticsConfig, s as emitDocsAgentTraceEvent, t as DOCS_AGENT_TRACE_EVENT_TYPES, u as getDocsRequestAnalyticsProperties } from "./analytics-
|
|
5
|
-
import { i as resolveSidebarFolderIndexBehaviorForPath, n as resolvePageSidebarFolderIndexBehavior, r as resolveSidebarFolderIndexBehavior, t as applySidebarFolderIndexBehavior } from "./sidebar-
|
|
3
|
+
import { $ as resolveDocsDiscoveryApiRoute, A as DocsAgentSkillIndexEntry, B as DocsPublishedAgentSkillFile, C as DOCS_AGENT_MANIFEST_FORMAT, D as DocsA2AAgentCard, E as DOCS_AGENT_MANIFEST_VERSION, F as DocsApiCatalogLinkTarget, G as buildDocsA2AAgentCard, H as DocsStandardsDiscoveryRequest, I as DocsApiCatalogOpenApiDefinition, J as buildDocsLegacySkillsIndex, K as buildDocsAgentSkillsIndex, L as DocsApiCatalogOptions, M as DocsApiCatalog, N as DocsApiCatalogApiTarget, O as DocsA2AAgentCardOptions, P as DocsApiCatalogLinkContext, Q as isDocsStandardsDiscoveryRequest, R as DocsDiscoveryApiRouteOptions, S as DEFAULT_LEGACY_SKILLS_ROUTE_PREFIX, T as DOCS_AGENT_MANIFEST_SCHEMA_URI, U as DocsStandardsDiscoveryRouteOptions, V as DocsPublishedAgentSkillOptions, W as appendDocsDiscoveryLinkHeader, X as getDocsAgentManifestLinkHeader, Y as createDocsStandardsResponse, Z as getDocsDiscoveryLinkHeader, _ as DEFAULT_AGENT_SKILL_RESOURCE_FORMAT, a as DEFAULT_A2A_AGENT_CARD_FORMAT, b as DEFAULT_LEGACY_SKILLS_INDEX_FORMAT, c as DEFAULT_A2A_PROTOCOL_VERSION, d as DEFAULT_AGENT_SKILLS_INDEX_ROUTE, et as resolveDocsPublishedAgentSkill, f as DEFAULT_AGENT_SKILLS_ROUTE_PATTERN, g as DEFAULT_AGENT_SKILL_FORMAT, h as DEFAULT_AGENT_SKILL_FILE_FORMAT, i as CreateDocsStandardsResponseOptions, j as DocsAgentSkillsIndex, k as DocsA2AAgentInterface, l as DEFAULT_AGENT_SKILLS_ARCHIVE_ROUTE_PATTERN, m as DEFAULT_AGENT_SKILL_ARCHIVE_FORMAT, n as API_CATALOG_MEDIA_TYPE, nt as sha256DocsDiscoveryContent, o as DEFAULT_A2A_AGENT_CARD_ROUTE, p as DEFAULT_AGENT_SKILLS_ROUTE_PREFIX, q as buildDocsApiCatalog, r as API_CATALOG_PROFILE_URI, s as DEFAULT_A2A_PROTOCOL_BINDING, t as AGENT_SKILLS_DISCOVERY_SCHEMA_URI, tt as resolveDocsStandardsDiscoveryRequest, u as DEFAULT_AGENT_SKILLS_INDEX_FORMAT, v as DEFAULT_API_CATALOG_FORMAT, w as DOCS_AGENT_MANIFEST_SCHEMA_MEDIA_TYPE, x as DEFAULT_LEGACY_SKILLS_INDEX_ROUTE, y as DEFAULT_API_CATALOG_ROUTE, z as DocsPublishedAgentSkill } from "./standards-discovery-CjyUCxdy.mjs";
|
|
4
|
+
import { a as createDocsAgentTraceContext, c as emitDocsAnalyticsEvent, d as resolveDocsAnalyticsConfig, f as resolveDocsObservabilityConfig, i as ResolvedDocsObservabilityConfig, l as emitDocsObservabilityEvent, n as DocsAgentTraceContext, o as createDocsAgentTraceId, r as ResolvedDocsAnalyticsConfig, s as emitDocsAgentTraceEvent, t as DOCS_AGENT_TRACE_EVENT_TYPES, u as getDocsRequestAnalyticsProperties } from "./analytics-CwXxM9oL.mjs";
|
|
5
|
+
import { i as resolveSidebarFolderIndexBehaviorForPath, n as resolvePageSidebarFolderIndexBehavior, r as resolveSidebarFolderIndexBehavior, t as applySidebarFolderIndexBehavior } from "./sidebar-Bne72SU-.mjs";
|
|
6
6
|
import { n as resolveDocsAudienceExposure, t as DocsContentAudience } from "./audience-exposure-CkNZNeVX.mjs";
|
|
7
|
-
import { $ as resolveDocsSearchError, $n as resolveDocsAgentFeedbackConfig, $t as DocsLlmsTxtResolvedSection, A as DocsSearchRequestError, An as findDocsMarkdownPage, Ar as hasDocsMcpProtectedResourceConfig, At as DOCS_TRADITIONAL_BOT_USER_AGENT_HEADER_PATTERN, B as createCustomSearchAdapter, Bn as isDocsMarkdownSectionIndexRequest, Bt as DocsDiagnostics, C as isDocsContentChangesRequest, Cn as buildDocsMarkdownSectionIndex, Cr as DEFAULT_MCP_PROTECTED_RESOURCE_METADATA_ROUTE, Ct as DEFAULT_OPENAPI_SCHEMA_ROUTE, D as BuildDocsSearchFacetsOptions, Dn as createDocsMarkdownResponse, Dr as buildDocsMcpProtectedResourceMetadataRoute, Dt as DOCS_BOT_LIKE_USER_AGENT_HEADER_PATTERN, E as BuildDocsContentSnapshotOptions, En as compactDocsAgentDiscoverySpec, Er as DEFAULT_MCP_WELL_KNOWN_ROUTE, Et as DOCS_AI_AGENT_USER_AGENT_HEADER_PATTERN, F as buildDocsContentSnapshot, Fn as isDocsAgentDiscoveryRequest, Fr as resolveDocsLocale, Ft as DocsAgentFeedbackResolvedConfig, G as formatDocsAskAIPackageHints, Gn as normalizeDocsUrlPath, Gt as DocsDiagnosticsStatus, H as createSimpleSearchAdapter, Hn as isDocsSkillRequest, Ht as DocsDiagnosticsIssue, I as buildDocsRetrievalDigestProjection, In as isDocsAgentsRequest, Ir as resolveDocsPath, It as DocsAgentsDocumentOptions, J as performDocsSearch, Jn as renderDocsLlmsTxt, Jt as DocsLlmsTxtGeneratedSection, K as inferDocsAskAIPackageHints, Kn as parseDocsAgentFeedbackData, Kt as DocsLlmsDiscoveryConfig, L as buildDocsSearchDocuments, Ln as isDocsConfigRequest, Lt as DocsConfigMap, M as EnrichDocsSearchDocumentsWithProvenanceOptions, Mn as getDocsMarkdownCanonicalLinkHeader, Mr as DocsPathMatch, Mt as DocsAgentDiscoverySpecOptions, N as PerformDocsSearchOptions, Nn as getDocsMarkdownVaryHeader, Nr as ResolvedDocsI18n, Nt as DocsAgentFeedbackDiscoveryConfig, O as DocsLocalMcpSearchRuntimeConfig, On as createDocsStandardsDiscoveryResponse, Or as getDocsMcpProtectedResourceMetadataRoutes, Ot as DOCS_MARKDOWN_SECTION_INDEX_FORMAT, P as buildDocsAskAIContext, Pn as hasDocsMarkdownSignatureAgent, Pr as resolveDocsI18n, Pt as DocsAgentFeedbackRequest, Q as resolveDocsSearchAudience, Qn as resolveDocsAgentContractMcpTools, Qt as DocsLlmsTxtResolvedMaxChars, R as buildDocsSearchFacets, Rn as isDocsDiagnosticsRequest, Rt as DocsConfigMapJsonValue, S as isDocsContentChangeGeneration, Sn as buildDocsDiagnostics, Sr as resolveDocsAudienceMdxContent, St as DEFAULT_LLMS_TXT_WELL_KNOWN_ROUTE, T as resolveDocsContentChangesRequest, Tn as collectDocsMarkdownSections, Tr as DEFAULT_MCP_ROUTE, Tt as DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE, U as createTypesenseSearchAdapter, Un as matchesDocsLlmsTxtSection, Ut as DocsDiagnosticsIssueSeverity, V as createMcpSearchAdapter, Vn as isDocsPublicGetRequest, Vt as DocsDiagnosticsFeature, W as enrichDocsSearchDocumentsWithProvenance, Wn as normalizeDocsPathSegment, Wt as DocsDiagnosticsOptions, X as resolveAskAISearchRequestConfig, Xn as renderDocsMarkdownNotFound, Xt as DocsLlmsTxtPageInput, Y as performDocsSearchWithMetadata, Yn as renderDocsMarkdownDocument, Yt as DocsLlmsTxtMaxCharsIssue, Z as resolveDocsRetrievalLastModified, Zn as renderDocsSkillDocument, Zt as DocsLlmsTxtRequest, _ as DocsContentChangesRequestError, _n as DocsStandardsDiscoveryResponseOptions, _t as DEFAULT_DOCS_DIAGNOSTICS_ROUTE, a as DocsContentChangeHydrationResponse, an as DocsMarkdownResponseOptions, ar as resolveDocsMarkdownCanonicalUrl, at as DEFAULT_AGENTS_MD_WELL_KNOWN_ROUTE, b as createDocsContentChangeFeed, bn as buildDocsAgentFeedbackSchema, br as findDocsAudienceMdxIssues, bt as DEFAULT_LLMS_TXT_MAX_CHARS, c as HydrateDocsContentChangesOptions, cn as DocsMarkdownSectionIndexOptions, cr as resolveDocsMarkdownSectionRequest, ct as DEFAULT_AGENT_MD_ROUTE, d as hydrateDocsContentChanges, dn as DocsMarkdownSectionResult, dr as resolveDocsSkillFormat, dt as DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, en as DocsLlmsTxtSelectedContent, er as resolveDocsAgentFeedbackRequest, et as resolveDocsSearchFilters, f as DOCS_CONTENT_CHANGES_FORMAT, fn as DocsMcpEndpointCandidate, fr as selectDocsLlmsTxtContent, ft as DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, g as DocsContentChangesRequest, gn as DocsSkillDocumentOptions, gr as DocsAudienceMdxIssue, gt as DEFAULT_DOCS_DIAGNOSTICS_FORMAT, h as DocsContentChangeFeed, hn as DocsOpenApiResolvedDiscoveryConfig, hr as validateDocsAgentFeedbackPayload, ht as DEFAULT_DOCS_CONFIG_ROUTE, i as DocsContentChangeHydrationContent, in as DocsMarkdownRecoveryResult, ir as resolveDocsLlmsTxtSections, it as DEFAULT_AGENTS_MD_ROUTE, j as DocsSearchRequestResolutionOptions, jn as getDocsLlmsTxtMaxCharsIssue, jr as isDocsMcpRequest, jt as DocsAgentContractMcpTools, k as DocsLocalMcpSearchRuntimeInput, kn as detectDocsMarkdownAgentRequest, kr as getDocsMcpResourcePaths, kt as DOCS_MARKDOWN_SIGNATURE_AGENT_HEADER, l as MAX_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, ln as DocsMarkdownSectionMetadata, lr as resolveDocsOpenApiDiscoveryConfig, lt as DEFAULT_AGENT_MD_WELL_KNOWN_ROUTE, m as DOCS_CONTENT_SNAPSHOT_FORMAT, mn as DocsOpenApiDiscoveryConfig, mr as toDocsMarkdownUrl, mt as DEFAULT_DOCS_CONFIG_FORMAT, n as DOCS_CONTENT_CHANGE_HYDRATION_FORMAT, nn as DocsMarkdownPage, nr as resolveDocsLlmsTxtFormat, nt as resolveLocalDocsMcpSearchConfig, o as DocsContentChangeHydrationSection, on as DocsMarkdownSection, or as resolveDocsMarkdownRecovery, ot as DEFAULT_AGENT_FEEDBACK_PAYLOAD_SCHEMA, p as DOCS_CONTENT_CHANGES_RESPONSE_VALUE, pn as DocsMcpEndpointCandidateOptions, pr as selectDocsMarkdownSection, pt as DEFAULT_DOCS_API_ROUTE, q as normalizeDocsSearchFilters, qn as renderDocsAgentsDocument, qt as DocsLlmsTxtGeneratedContent, r as DocsContentChangeHydrationBudget, rn as DocsMarkdownRecoveryMatch, rr as resolveDocsLlmsTxtRequest, rt as resolveSearchRequestConfig, s as DocsContentChangeHydrationTombstone, sn as DocsMarkdownSectionIndex, sr as resolveDocsMarkdownRequest, st as DEFAULT_AGENT_FEEDBACK_ROUTE, t as DEFAULT_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, tn as DocsMarkdownAgentDetection, tr as resolveDocsAgentsFormat, tt as resolveDocsSearchRequest, u as MIN_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, un as DocsMarkdownSectionRequest, ur as resolveDocsRequestApiRoute, ut as DEFAULT_AGENT_SPEC_ROUTE, v as DocsResolvedContentChangesConfig, vn as acceptsDocsMarkdown, vt as DEFAULT_LLMS_FULL_TXT_ROUTE, w as resolveDocsContentChangesConfig, wn as buildDocsMcpEndpointCandidates, wr as DEFAULT_MCP_PUBLIC_ROUTE, wt as DEFAULT_SKILL_MD_ROUTE, x as createDocsContentChangesHttpResponse, xn as buildDocsConfigMap, xr as resolveDocsAgentMdxContent, xt as DEFAULT_LLMS_TXT_ROUTE, y as ResolveDocsContentChangesOptions, yn as buildDocsAgentDiscoverySpec, yt as DEFAULT_LLMS_FULL_TXT_WELL_KNOWN_ROUTE, z as createAlgoliaSearchAdapter, zn as isDocsLlmsTxtPublicRequest, zt as DocsConfigMapPointer } from "./content-change-hydration-
|
|
8
|
-
import { A as PromptProviderChoice, C as resolveDocsSitemapRequest, M as SerializedOpenDocsProvider, S as resolveDocsSitemapPageLastmod, _ as createDocsSitemapResponse, a as DocsPaginationCursorError, b as renderDocsSitemapXml, c as DEFAULT_SITEMAP_MD_ROUTE, ct as DocsGoldenTasksReport, d as DocsSitemapFormat, f as DocsSitemapManifest, g as buildDocsSitemapManifest, h as DocsSitemapResolvedConfig, ht as DocsAgentFeedbackImprovementReport, i as sha256DocsContent, 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, r as isDocsRetrievalCanonicalUrl, s as DEFAULT_SITEMAP_MD_DOCS_ROUTE, t as digestDocsContent, u as DEFAULT_SITEMAP_XML_ROUTE, v as readDocsSitemapManifestFromContentMap, w as toDocsSitemapMarkdownUrl, x as resolveDocsSitemapConfig, y as renderDocsSitemapMarkdown } from "./retrieval-digest-
|
|
7
|
+
import { $ as resolveDocsSearchError, $n as resolveDocsAgentFeedbackConfig, $t as DocsLlmsTxtResolvedSection, A as DocsSearchRequestError, An as findDocsMarkdownPage, Ar as hasDocsMcpProtectedResourceConfig, At as DOCS_TRADITIONAL_BOT_USER_AGENT_HEADER_PATTERN, B as createCustomSearchAdapter, Bn as isDocsMarkdownSectionIndexRequest, Bt as DocsDiagnostics, C as isDocsContentChangesRequest, Cn as buildDocsMarkdownSectionIndex, Cr as DEFAULT_MCP_PROTECTED_RESOURCE_METADATA_ROUTE, Ct as DEFAULT_OPENAPI_SCHEMA_ROUTE, D as BuildDocsSearchFacetsOptions, Dn as createDocsMarkdownResponse, Dr as buildDocsMcpProtectedResourceMetadataRoute, Dt as DOCS_BOT_LIKE_USER_AGENT_HEADER_PATTERN, E as BuildDocsContentSnapshotOptions, En as compactDocsAgentDiscoverySpec, Er as DEFAULT_MCP_WELL_KNOWN_ROUTE, Et as DOCS_AI_AGENT_USER_AGENT_HEADER_PATTERN, F as buildDocsContentSnapshot, Fn as isDocsAgentDiscoveryRequest, Fr as resolveDocsLocale, Ft as DocsAgentFeedbackResolvedConfig, G as formatDocsAskAIPackageHints, Gn as normalizeDocsUrlPath, Gt as DocsDiagnosticsStatus, H as createSimpleSearchAdapter, Hn as isDocsSkillRequest, Ht as DocsDiagnosticsIssue, I as buildDocsRetrievalDigestProjection, In as isDocsAgentsRequest, Ir as resolveDocsPath, It as DocsAgentsDocumentOptions, J as performDocsSearch, Jn as renderDocsLlmsTxt, Jt as DocsLlmsTxtGeneratedSection, K as inferDocsAskAIPackageHints, Kn as parseDocsAgentFeedbackData, Kt as DocsLlmsDiscoveryConfig, L as buildDocsSearchDocuments, Ln as isDocsConfigRequest, Lt as DocsConfigMap, M as EnrichDocsSearchDocumentsWithProvenanceOptions, Mn as getDocsMarkdownCanonicalLinkHeader, Mr as DocsPathMatch, Mt as DocsAgentDiscoverySpecOptions, N as PerformDocsSearchOptions, Nn as getDocsMarkdownVaryHeader, Nr as ResolvedDocsI18n, Nt as DocsAgentFeedbackDiscoveryConfig, O as DocsLocalMcpSearchRuntimeConfig, On as createDocsStandardsDiscoveryResponse, Or as getDocsMcpProtectedResourceMetadataRoutes, Ot as DOCS_MARKDOWN_SECTION_INDEX_FORMAT, P as buildDocsAskAIContext, Pn as hasDocsMarkdownSignatureAgent, Pr as resolveDocsI18n, Pt as DocsAgentFeedbackRequest, Q as resolveDocsSearchAudience, Qn as resolveDocsAgentContractMcpTools, Qt as DocsLlmsTxtResolvedMaxChars, R as buildDocsSearchFacets, Rn as isDocsDiagnosticsRequest, Rt as DocsConfigMapJsonValue, S as isDocsContentChangeGeneration, Sn as buildDocsDiagnostics, Sr as resolveDocsAudienceMdxContent, St as DEFAULT_LLMS_TXT_WELL_KNOWN_ROUTE, T as resolveDocsContentChangesRequest, Tn as collectDocsMarkdownSections, Tr as DEFAULT_MCP_ROUTE, Tt as DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE, U as createTypesenseSearchAdapter, Un as matchesDocsLlmsTxtSection, Ut as DocsDiagnosticsIssueSeverity, V as createMcpSearchAdapter, Vn as isDocsPublicGetRequest, Vt as DocsDiagnosticsFeature, W as enrichDocsSearchDocumentsWithProvenance, Wn as normalizeDocsPathSegment, Wt as DocsDiagnosticsOptions, X as resolveAskAISearchRequestConfig, Xn as renderDocsMarkdownNotFound, Xt as DocsLlmsTxtPageInput, Y as performDocsSearchWithMetadata, Yn as renderDocsMarkdownDocument, Yt as DocsLlmsTxtMaxCharsIssue, Z as resolveDocsRetrievalLastModified, Zn as renderDocsSkillDocument, Zt as DocsLlmsTxtRequest, _ as DocsContentChangesRequestError, _n as DocsStandardsDiscoveryResponseOptions, _t as DEFAULT_DOCS_DIAGNOSTICS_ROUTE, a as DocsContentChangeHydrationResponse, an as DocsMarkdownResponseOptions, ar as resolveDocsMarkdownCanonicalUrl, at as DEFAULT_AGENTS_MD_WELL_KNOWN_ROUTE, b as createDocsContentChangeFeed, bn as buildDocsAgentFeedbackSchema, br as findDocsAudienceMdxIssues, bt as DEFAULT_LLMS_TXT_MAX_CHARS, c as HydrateDocsContentChangesOptions, cn as DocsMarkdownSectionIndexOptions, cr as resolveDocsMarkdownSectionRequest, ct as DEFAULT_AGENT_MD_ROUTE, d as hydrateDocsContentChanges, dn as DocsMarkdownSectionResult, dr as resolveDocsSkillFormat, dt as DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, en as DocsLlmsTxtSelectedContent, er as resolveDocsAgentFeedbackRequest, et as resolveDocsSearchFilters, f as DOCS_CONTENT_CHANGES_FORMAT, fn as DocsMcpEndpointCandidate, fr as selectDocsLlmsTxtContent, ft as DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, g as DocsContentChangesRequest, gn as DocsSkillDocumentOptions, gr as DocsAudienceMdxIssue, gt as DEFAULT_DOCS_DIAGNOSTICS_FORMAT, h as DocsContentChangeFeed, hn as DocsOpenApiResolvedDiscoveryConfig, hr as validateDocsAgentFeedbackPayload, ht as DEFAULT_DOCS_CONFIG_ROUTE, i as DocsContentChangeHydrationContent, in as DocsMarkdownRecoveryResult, ir as resolveDocsLlmsTxtSections, it as DEFAULT_AGENTS_MD_ROUTE, j as DocsSearchRequestResolutionOptions, jn as getDocsLlmsTxtMaxCharsIssue, jr as isDocsMcpRequest, jt as DocsAgentContractMcpTools, k as DocsLocalMcpSearchRuntimeInput, kn as detectDocsMarkdownAgentRequest, kr as getDocsMcpResourcePaths, kt as DOCS_MARKDOWN_SIGNATURE_AGENT_HEADER, l as MAX_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, ln as DocsMarkdownSectionMetadata, lr as resolveDocsOpenApiDiscoveryConfig, lt as DEFAULT_AGENT_MD_WELL_KNOWN_ROUTE, m as DOCS_CONTENT_SNAPSHOT_FORMAT, mn as DocsOpenApiDiscoveryConfig, mr as toDocsMarkdownUrl, mt as DEFAULT_DOCS_CONFIG_FORMAT, n as DOCS_CONTENT_CHANGE_HYDRATION_FORMAT, nn as DocsMarkdownPage, nr as resolveDocsLlmsTxtFormat, nt as resolveLocalDocsMcpSearchConfig, o as DocsContentChangeHydrationSection, on as DocsMarkdownSection, or as resolveDocsMarkdownRecovery, ot as DEFAULT_AGENT_FEEDBACK_PAYLOAD_SCHEMA, p as DOCS_CONTENT_CHANGES_RESPONSE_VALUE, pn as DocsMcpEndpointCandidateOptions, pr as selectDocsMarkdownSection, pt as DEFAULT_DOCS_API_ROUTE, q as normalizeDocsSearchFilters, qn as renderDocsAgentsDocument, qt as DocsLlmsTxtGeneratedContent, r as DocsContentChangeHydrationBudget, rn as DocsMarkdownRecoveryMatch, rr as resolveDocsLlmsTxtRequest, rt as resolveSearchRequestConfig, s as DocsContentChangeHydrationTombstone, sn as DocsMarkdownSectionIndex, sr as resolveDocsMarkdownRequest, st as DEFAULT_AGENT_FEEDBACK_ROUTE, t as DEFAULT_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, tn as DocsMarkdownAgentDetection, tr as resolveDocsAgentsFormat, tt as resolveDocsSearchRequest, u as MIN_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, un as DocsMarkdownSectionRequest, ur as resolveDocsRequestApiRoute, ut as DEFAULT_AGENT_SPEC_ROUTE, v as DocsResolvedContentChangesConfig, vn as acceptsDocsMarkdown, vt as DEFAULT_LLMS_FULL_TXT_ROUTE, w as resolveDocsContentChangesConfig, wn as buildDocsMcpEndpointCandidates, wr as DEFAULT_MCP_PUBLIC_ROUTE, wt as DEFAULT_SKILL_MD_ROUTE, x as createDocsContentChangesHttpResponse, xn as buildDocsConfigMap, xr as resolveDocsAgentMdxContent, xt as DEFAULT_LLMS_TXT_ROUTE, y as ResolveDocsContentChangesOptions, yn as buildDocsAgentDiscoverySpec, yt as DEFAULT_LLMS_FULL_TXT_WELL_KNOWN_ROUTE, z as createAlgoliaSearchAdapter, zn as isDocsLlmsTxtPublicRequest, zt as DocsConfigMapPointer } from "./content-change-hydration-CDuohygf.mjs";
|
|
8
|
+
import { A as PromptProviderChoice, C as resolveDocsSitemapRequest, M as SerializedOpenDocsProvider, S as resolveDocsSitemapPageLastmod, _ as createDocsSitemapResponse, a as DocsPaginationCursorError, b as renderDocsSitemapXml, c as DEFAULT_SITEMAP_MD_ROUTE, ct as DocsGoldenTasksReport, d as DocsSitemapFormat, f as DocsSitemapManifest, g as buildDocsSitemapManifest, h as DocsSitemapResolvedConfig, ht as DocsAgentFeedbackImprovementReport, i as sha256DocsContent, 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, r as isDocsRetrievalCanonicalUrl, s as DEFAULT_SITEMAP_MD_DOCS_ROUTE, t as digestDocsContent, u as DEFAULT_SITEMAP_XML_ROUTE, v as readDocsSitemapManifestFromContentMap, w as toDocsSitemapMarkdownUrl, x as resolveDocsSitemapConfig, y as renderDocsSitemapMarkdown } from "./retrieval-digest-VUlhYMUW.mjs";
|
|
9
9
|
|
|
10
10
|
//#region src/access.d.ts
|
|
11
11
|
declare function normalizeDocsPageAccessPolicy(value: unknown): DocsPageAccessPolicy | undefined;
|