seo 0.2.8 → 0.2.10

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/index.d.ts CHANGED
@@ -347,6 +347,27 @@ interface GscRow {
347
347
  ctr: number;
348
348
  position: number;
349
349
  }
350
+ type CrawlerIdentity = {
351
+ name: string;
352
+ robotsToken: string;
353
+ version: string;
354
+ userAgent: string;
355
+ documentationUrl: string;
356
+ };
357
+ type AccessBlockEvidence = {
358
+ provider: 'cloudflare' | 'unknown';
359
+ kind: 'challenge' | 'firewall' | 'rate-limit' | 'authentication';
360
+ status: number;
361
+ crawler: CrawlerIdentity;
362
+ indicators: string[];
363
+ requestId?: string;
364
+ guidance: {
365
+ summary: string;
366
+ recommendedAction: string;
367
+ securityNote: string;
368
+ documentationUrl?: string;
369
+ };
370
+ };
350
371
  interface PageFetchResult {
351
372
  url: string;
352
373
  finalUrl: string;
@@ -390,6 +411,7 @@ interface PageFetchDiagnostics {
390
411
  consecutiveErrors: number;
391
412
  recentP95Ms?: number;
392
413
  };
414
+ accessBlock?: AccessBlockEvidence;
393
415
  robotsTxt?: {
394
416
  url: string;
395
417
  cache: 'hit' | 'miss' | 'bypass';
@@ -509,7 +531,7 @@ interface QueryContentCoverage {
509
531
  recommendation: string;
510
532
  summary: string;
511
533
  }
512
- type ContentExtractor = 'defuddle' | 'readability';
534
+ type ContentExtractor = 'crawler' | 'defuddle' | 'readability';
513
535
  interface ContentExtractionDiagnostics {
514
536
  requested: ContentExtractor;
515
537
  used: ContentExtractor;
@@ -868,6 +890,19 @@ declare const RULE_DEFINITIONS: readonly [{
868
890
  readonly howToFix: "Check DNS, TLS certificates, firewall/CDN rules, server logs, and timeout behavior. Make the URL return a stable 2xx response or one direct redirect to the replacement.";
869
891
  readonly impactIfIgnored: "The page cannot be crawled, ranked, or cited while the connection failure remains.";
870
892
  readonly howToVerify: "Re-run the crawl and confirm the URL returns a normal HTTP status instead of status 0.";
893
+ }, {
894
+ readonly id: "crawler_access_blocked";
895
+ readonly title: "Crawler access blocked";
896
+ readonly category: "response";
897
+ readonly defaultSeverity: "medium";
898
+ readonly whyItMatters: "The audit could not observe the intended page because an authentication layer, rate limit, firewall, or challenge intercepted this crawler. This limits the audit evidence but does not prove that search engines or users are blocked.";
899
+ readonly howToFix: "First confirm the block is unintended. If the audit should have access, use the provider evidence in the report to grant temporary, narrow access for the audit machine source IP, required hostname or paths, and the exact crawler User-Agent. Do not trust a User-Agent by itself.";
900
+ readonly impactIfIgnored: "The affected URL remains unverified in this crawl, so content and indexability checks cannot support a pass or an all-clear.";
901
+ readonly howToVerify: "Re-run the same health check and confirm access.blockedRequests is zero and the URL returns its intended status without challenge evidence.";
902
+ readonly agentHints: {
903
+ readonly evidenceFields: ["request.accessBlock", "report.access", "issue.evidence.accessBlock"];
904
+ readonly suggestedCommands: ["seo crawl --sitemap-url <url> --health --json"];
905
+ };
871
906
  }, {
872
907
  readonly id: "client_error";
873
908
  readonly title: "Client error";
@@ -1553,6 +1588,8 @@ interface QueryCluster {
1553
1588
  interface CacheStats {
1554
1589
  dbPath: string;
1555
1590
  sizeBytes: number;
1591
+ logicalSizeBytes: number;
1592
+ maxSizeBytes: number;
1556
1593
  counts: Record<string, number>;
1557
1594
  }
1558
1595
  //#endregion
@@ -1580,10 +1617,14 @@ interface FetchPageOptions {
1580
1617
  */
1581
1618
  js?: JavaScriptRenderingInput;
1582
1619
  refresh?: boolean;
1620
+ /** Read existing cached responses but do not retain this response body. */
1621
+ writeCache?: boolean;
1583
1622
  timeoutMs?: number;
1584
1623
  rate?: FetchRateControls;
1585
1624
  signal?: AbortSignal;
1586
1625
  respectRobots?: boolean;
1626
+ /** Reuse one robots.txt policy in memory across a bounded crawl. */
1627
+ robotsResolver?: RobotsResolver;
1587
1628
  /** Reuse one browser process across related fetches, such as a site crawl. */
1588
1629
  renderer?: PageRenderer;
1589
1630
  }
@@ -1602,9 +1643,19 @@ type NormalizedFetchRateControls = {
1602
1643
  intervalMs: number;
1603
1644
  backpressure: Required<FetchBackpressureControls>;
1604
1645
  };
1646
+ type RobotsResult = {
1647
+ allowed: boolean | null;
1648
+ availability: 'available' | 'absent' | 'access-blocked' | 'rate-limited' | 'unreachable';
1649
+ status?: number;
1650
+ error?: string;
1651
+ matchedLine?: string;
1652
+ cache: 'hit' | 'miss' | 'bypass';
1653
+ url: string;
1654
+ };
1655
+ type RobotsResolver = (origin: string, targetUrl: string) => Promise<RobotsResult>;
1605
1656
  //#endregion
1606
1657
  //#region packages/core/src/fetch/page-fetcher/plain.d.ts
1607
- declare function fetchPlain(url: string, refresh: boolean | undefined, timeoutMs: number | undefined, rate: NormalizedFetchRateControls, signal?: AbortSignal, respectRobots?: boolean): Promise<PageFetchResult>;
1658
+ declare function fetchPlain(url: string, refresh: boolean | undefined, timeoutMs: number | undefined, rate: NormalizedFetchRateControls, signal?: AbortSignal, respectRobots?: boolean, writeCache?: boolean): Promise<PageFetchResult>;
1608
1659
  //#endregion
1609
1660
  //#region packages/core/src/fetch/page-fetcher/rendered.d.ts
1610
1661
  /**
@@ -1615,6 +1666,9 @@ declare function createPageRenderer(input?: {
1615
1666
  concurrency?: number;
1616
1667
  }): PageRenderer;
1617
1668
  //#endregion
1669
+ //#region packages/core/src/fetch/page-fetcher/status-probe.d.ts
1670
+ declare function fetchPageStatus(url: string, opts?: FetchPageOptions): Promise<PageFetchResult>;
1671
+ //#endregion
1618
1672
  //#region packages/core/src/fetch/page-fetcher.d.ts
1619
1673
  type FetchPageDependencies = {
1620
1674
  fetchPlain?: typeof fetchPlain;
@@ -1882,7 +1936,28 @@ interface MainContentDependencies {
1882
1936
  }
1883
1937
  //#endregion
1884
1938
  //#region packages/core/src/extract/page-extractor.d.ts
1885
- declare function extractPage(fetchResult: PageFetchResult, extractor?: ContentExtractor, dependencies?: MainContentDependencies): Promise<ExtractedPage>;
1939
+ type CrawlerExtractionEvidence = {
1940
+ h1?: string;
1941
+ h1Count: number;
1942
+ h2Count: number;
1943
+ h3Count: number;
1944
+ questionHeadings: number;
1945
+ internalLinks: string[];
1946
+ externalLinks: string[];
1947
+ internalAnchorSamples: Array<{
1948
+ href: string;
1949
+ text: string;
1950
+ }>;
1951
+ externalAnchorSamples: Array<{
1952
+ href: string;
1953
+ text: string;
1954
+ }>;
1955
+ socialProfileLinks: string[];
1956
+ };
1957
+ type PageExtraction = ExtractedPage & {
1958
+ crawlerEvidence?: CrawlerExtractionEvidence;
1959
+ };
1960
+ declare function extractPage(fetchResult: PageFetchResult, extractor?: ContentExtractor, dependencies?: MainContentDependencies): Promise<PageExtraction>;
1886
1961
  //#endregion
1887
1962
  //#region packages/core/src/analyze/content-coverage.d.ts
1888
1963
  declare function normalizeForCoverage(value: string): string;
@@ -2040,7 +2115,13 @@ declare function createCtrBenchmarkContext(rows: OpportunityBenchmarkRow[], opti
2040
2115
  byPosition: Record<string, PositionBenchmark>;
2041
2116
  forRow(row: OpportunityBenchmarkRow): PositionBenchmark;
2042
2117
  forUrl(row: OpportunityBenchmarkRow): PositionBenchmark;
2118
+ urlRowCount(row: OpportunityBenchmarkRow): number;
2043
2119
  forAggregate(row: OpportunityBenchmarkRow, excludedRows?: OpportunityBenchmarkRow[]): PositionBenchmark;
2120
+ diagnostics: {
2121
+ indexRowVisits: number;
2122
+ urlLookups: number;
2123
+ fallbackRowScans: number;
2124
+ };
2044
2125
  };
2045
2126
  declare function queryFieldCoverage(query: string, input: {
2046
2127
  title?: string;
@@ -2312,6 +2393,8 @@ type CrawlPageSnapshot = {
2312
2393
  fetchSource?: 'cache' | 'network' | 'rendered';
2313
2394
  cacheState?: 'hit' | 'miss' | 'bypass';
2314
2395
  fetchDiagnostics?: PageFetchDiagnostics;
2396
+ auditScope?: 'full' | 'status';
2397
+ accessBlock?: AccessBlockEvidence;
2315
2398
  blocked?: boolean;
2316
2399
  contentAuditAllowed?: boolean;
2317
2400
  crawlDepth?: number;
@@ -2474,6 +2557,8 @@ type CrawlResponseObservation = {
2474
2557
  contentType?: string;
2475
2558
  durationMs?: number;
2476
2559
  redirectChain?: PageFetchDiagnostics['redirectChain'];
2560
+ accessBlock?: AccessBlockEvidence;
2561
+ robotsTxt?: NonNullable<CrawlPageSnapshot['robotsTxt']>;
2477
2562
  } & ({
2478
2563
  extraction: 'complete' | 'not-applicable' | 'unknown-media-type';
2479
2564
  } | {
@@ -2739,13 +2824,24 @@ type LatestCrawlSummaryRow = CrawlRunRow & {
2739
2824
  top_recommendation_severity?: string | null;
2740
2825
  };
2741
2826
  //#endregion
2827
+ //#region packages/core/src/fetch/crawler-identity.d.ts
2828
+ declare const SEO_CRAWLER_TOKEN = "SEO-Skill";
2829
+ declare const SEO_CRAWLER_USER_AGENT: string;
2830
+ declare const SEO_CRAWLER_IDENTITY: CrawlerIdentity;
2831
+ //#endregion
2742
2832
  //#region packages/core/src/fetch/http-client.d.ts
2743
2833
  type HttpProfile = 'browser' | 'bot';
2834
+ declare class ResponseSizeLimitError extends Error {
2835
+ readonly maxBytes: number;
2836
+ constructor(maxBytes: number, label?: string);
2837
+ }
2838
+ /** @deprecated Use SEO_CRAWLER_USER_AGENT. */
2744
2839
  declare const BROWSER_USER_AGENT: string;
2745
2840
  declare function requestHeaders(profile: HttpProfile): Headers;
2746
2841
  declare function publicHttpFetch(url: string, input?: RequestInit$1 & {
2747
2842
  profile?: HttpProfile;
2748
2843
  }): Promise<import("undici").Response>;
2844
+ declare function readBoundedResponseText(response: Awaited<ReturnType<typeof publicHttpFetch>>, maxBytes: number, label?: string): Promise<string>;
2749
2845
  //#endregion
2750
2846
  //#region packages/core/src/analyze/crawler/agent-discovery-types.d.ts
2751
2847
  type AgentReadinessProfile = 'content' | 'api' | 'application' | 'commerce';
@@ -2808,6 +2904,34 @@ type AgentSkillObservation = {
2808
2904
  cors?: string;
2809
2905
  error?: string;
2810
2906
  };
2907
+ type AgentEndpointObservation = {
2908
+ id: string;
2909
+ url: string;
2910
+ status?: number;
2911
+ exists: boolean;
2912
+ contentType?: string;
2913
+ validJson?: boolean;
2914
+ presentFields?: string[];
2915
+ missingFields?: string[];
2916
+ error?: string;
2917
+ };
2918
+ type AgentLinkHeaderEntry = {
2919
+ url: string;
2920
+ rel: string[];
2921
+ type?: string;
2922
+ };
2923
+ type AgentLinkHeaderObservation = {
2924
+ url: string;
2925
+ status?: number;
2926
+ entries: AgentLinkHeaderEntry[];
2927
+ registeredRels: string[];
2928
+ emergingRels: string[];
2929
+ error?: string;
2930
+ };
2931
+ type AgentEndpointDiscovery = {
2932
+ linkHeader: AgentLinkHeaderObservation;
2933
+ endpoints: AgentEndpointObservation[];
2934
+ };
2811
2935
  type LlmsTxtLinkObservation = {
2812
2936
  label: string;
2813
2937
  url: string;
@@ -2887,6 +3011,7 @@ type CrawlAgentDiscovery = {
2887
3011
  missingMarkdownPages: number;
2888
3012
  consistent: boolean | null;
2889
3013
  };
3014
+ endpointDiscovery?: AgentEndpointDiscovery;
2890
3015
  protocolVariants: {
2891
3016
  http: {
2892
3017
  url: string;
@@ -2908,6 +3033,23 @@ type CrawlAgentDiscovery = {
2908
3033
  };
2909
3034
  //#endregion
2910
3035
  //#region packages/core/src/analyze/crawler/agent-discovery.d.ts
3036
+ declare function linkEntries(value: string | undefined, base: string): {
3037
+ url: string;
3038
+ rel: string[];
3039
+ type: string;
3040
+ }[];
3041
+ declare function fetchText(input: {
3042
+ url: string;
3043
+ timeoutMs: number;
3044
+ fetch: typeof publicHttpFetch;
3045
+ signal?: AbortSignal;
3046
+ redirect?: 'follow' | 'manual';
3047
+ accept?: string;
3048
+ }): Promise<{
3049
+ response: import("undici").Response;
3050
+ body: string;
3051
+ }>;
3052
+ declare function safeError(error: unknown): string;
2911
3053
  declare function collectAgentDiscovery(input: {
2912
3054
  startUrl: string;
2913
3055
  pages: CrawlPageSnapshot[];
@@ -2918,7 +3060,7 @@ declare function collectAgentDiscovery(input: {
2918
3060
  }): Promise<CrawlAgentDiscovery>;
2919
3061
  //#endregion
2920
3062
  //#region packages/core/src/analyze/crawler/crawl-skip-reasons.d.ts
2921
- declare const CRAWL_SKIP_REASONS: readonly ["asset-url", "configured-exclusion", "duplicate-normalization", "invalid-url", "off-origin", "origin-backpressure", "queue-safety-limit", "robots-disallowed", "robots-uncertain", "legacy-unclassified"];
3063
+ declare const CRAWL_SKIP_REASONS: readonly ["asset-url", "configured-exclusion", "duplicate-normalization", "invalid-url", "memory-pressure", "off-origin", "origin-backpressure", "queue-safety-limit", "robots-disallowed", "robots-uncertain", "legacy-unclassified"];
2922
3064
  type CrawlSkipReason = (typeof CRAWL_SKIP_REASONS)[number];
2923
3065
  type CrawlSkipImpact = 'coverage-affecting' | 'non-impacting';
2924
3066
  type CrawlSkipReasonCount = {
@@ -2943,10 +3085,17 @@ declare function crawlSkipReasonCountsFromRecord(input?: Partial<Record<CrawlSki
2943
3085
  //#endregion
2944
3086
  //#region packages/core/src/analyze/crawler/report.d.ts
2945
3087
  type CrawlMode = 'site' | 'page' | 'list' | 'sitemap';
3088
+ type CrawlStrategy = 'full' | 'health';
3089
+ declare const MAX_CRAWL_PAGES = 10000;
3090
+ declare const MAX_CRAWL_DEPTH = 64;
3091
+ declare const MAX_CRAWL_CONCURRENCY = 16;
3092
+ declare const MAX_CRAWL_TIMEOUT_MS = 120000;
2946
3093
  type CrawlFetchRateConfig = FetchRateControls;
2947
3094
  type CrawlConfig = {
2948
3095
  url: string;
2949
3096
  mode: CrawlMode;
3097
+ strategy: CrawlStrategy;
3098
+ sitemapUrl?: string;
2950
3099
  urls: string[];
2951
3100
  maxPages: number;
2952
3101
  maxDepth: number;
@@ -3046,6 +3195,7 @@ type CrawlAiSignals = {
3046
3195
  status?: number;
3047
3196
  error?: string;
3048
3197
  sitemapUrls: string[];
3198
+ contentSignals?: string[];
3049
3199
  botAccess: CrawlAiBotAccess[];
3050
3200
  };
3051
3201
  llmsTxt?: {
@@ -3060,7 +3210,7 @@ type CrawlSitemapDiscovery = {
3060
3210
  urlsReturned: number;
3061
3211
  roots: Array<{
3062
3212
  url: string;
3063
- source: 'robots-txt' | 'default-path';
3213
+ source: 'explicit' | 'robots-txt' | 'default-path';
3064
3214
  dataStatus: 'complete' | 'partial' | 'unavailable';
3065
3215
  urlsReturned: number;
3066
3216
  sitemapsFetched: number;
@@ -3121,6 +3271,7 @@ type CrawlReportDataSources = {
3121
3271
  };
3122
3272
  type CrawlReportSummary = {
3123
3273
  totalPages: number;
3274
+ statusOnlyPages: number;
3124
3275
  indexablePages: number;
3125
3276
  nonIndexablePages: number;
3126
3277
  statusErrors: number;
@@ -3147,6 +3298,17 @@ type CrawlReportSummary = {
3147
3298
  byStatus: Record<string, number>;
3148
3299
  byCategory: Record<string, number>;
3149
3300
  };
3301
+ type CrawlAccessSummary = {
3302
+ crawler: CrawlerIdentity;
3303
+ blockedRequests: number;
3304
+ providers: Partial<Record<AccessBlockEvidence['provider'], number>>;
3305
+ samples: Array<{
3306
+ url: string;
3307
+ evidence: AccessBlockEvidence;
3308
+ }>;
3309
+ sampleLimit: number;
3310
+ truncated: boolean;
3311
+ };
3150
3312
  type CrawlReport = {
3151
3313
  id: string;
3152
3314
  definitionId: string;
@@ -3157,6 +3319,7 @@ type CrawlReport = {
3157
3319
  status: 'completed' | 'partial' | 'failed';
3158
3320
  configHash: string;
3159
3321
  config: CrawlConfig;
3322
+ access: CrawlAccessSummary;
3160
3323
  summary: CrawlReportSummary;
3161
3324
  requestEvidenceStatus: 'available' | 'partial' | 'unavailable';
3162
3325
  requests: CrawlRequestObservation[];
@@ -3172,6 +3335,7 @@ type CrawlReport = {
3172
3335
  caveats: string[];
3173
3336
  };
3174
3337
  declare function normalizeCrawlConfig(input: CrawlConfigInput): CrawlConfig;
3338
+ declare function assertCrawlConfigLimits(config: CrawlConfig): CrawlConfig;
3175
3339
  declare function crawlConfigHash(config: CrawlConfigInput): string;
3176
3340
  declare function crawlDefinitionId(input: {
3177
3341
  config: CrawlConfigInput;
@@ -3518,6 +3682,11 @@ declare function auditCrawlPages(pages: CrawlPageSnapshot[], opts?: {
3518
3682
  //#endregion
3519
3683
  //#region packages/core/src/analyze/crawler/report-store.d.ts
3520
3684
  declare const CRAWL_REPORT_STORAGE_VERSION = 6;
3685
+ declare const AUTOMATIC_BASELINE_SITE_RETENTION = 2;
3686
+ declare const AUTOMATIC_BASELINE_TOTAL_RETENTION = 50;
3687
+ type CrawlReportSaveOptions = {
3688
+ retention?: 'saved' | 'baseline';
3689
+ };
3521
3690
  type CrawlReportMeta = {
3522
3691
  id: string;
3523
3692
  configHash: string;
@@ -3540,7 +3709,7 @@ type CrawlReportStorageEnvelope = {
3540
3709
  report: CrawlReport;
3541
3710
  };
3542
3711
  type CrawlReportStoreAdapter = {
3543
- save: (report: CrawlReport) => CrawlReportMeta;
3712
+ save: (report: CrawlReport, options?: CrawlReportSaveOptions) => CrawlReportMeta;
3544
3713
  list: (input?: {
3545
3714
  site?: string;
3546
3715
  limit?: number;
@@ -3551,7 +3720,7 @@ type CrawlReportStoreAdapter = {
3551
3720
  };
3552
3721
  declare const sqliteCrawlReportStore: CrawlReportStoreAdapter;
3553
3722
  declare const crawlReportStore: CrawlReportStoreAdapter;
3554
- declare function saveCrawlReport(report: CrawlReport, store?: CrawlReportStoreAdapter): CrawlReportMeta;
3723
+ declare function saveCrawlReport(report: CrawlReport, store?: CrawlReportStoreAdapter, options?: CrawlReportSaveOptions): CrawlReportMeta;
3555
3724
  declare function listCrawlReports(input?: {
3556
3725
  site?: string;
3557
3726
  limit?: number;
@@ -3568,6 +3737,7 @@ type CrawlOneResult = {
3568
3737
  warning?: string;
3569
3738
  };
3570
3739
  declare function crawlOne(url: string, opts?: FetchPageOptions): Promise<CrawlOneResult>;
3740
+ declare function crawlStatusOnly(url: string, opts?: FetchPageOptions): Promise<CrawlOneResult>;
3571
3741
  //#endregion
3572
3742
  //#region packages/core/src/analyze/workflows/analytics-value.d.ts
3573
3743
  type LandingPageValue = {
@@ -3602,6 +3772,7 @@ declare function fetchLandingPageValues(input: {
3602
3772
  //#region packages/core/src/analyze/crawler/site-crawl-dependencies.d.ts
3603
3773
  type ResolvedCrawlSiteDependencies = {
3604
3774
  fetchPage: typeof crawlOne;
3775
+ fetchStatusPage: typeof crawlStatusOnly;
3605
3776
  fetchSitemapUrls: typeof fetchSitemapUrls;
3606
3777
  fetch: typeof publicHttpFetch;
3607
3778
  queryPageMetrics: typeof queryPageMetrics;
@@ -3614,6 +3785,8 @@ type ResolvedCrawlSiteDependencies = {
3614
3785
  landingValueForUrl: typeof landingValueForUrl;
3615
3786
  collectAgentDiscovery: typeof collectAgentDiscovery;
3616
3787
  now: () => Date;
3788
+ memoryUsage: () => Pick<NodeJS.MemoryUsage, 'rss' | 'heapUsed' | 'external'>;
3789
+ totalMemory: () => number;
3617
3790
  };
3618
3791
  type CrawlSiteDependencies = Partial<ResolvedCrawlSiteDependencies>;
3619
3792
  //#endregion
@@ -3726,10 +3899,11 @@ declare function topFixes(report: CrawlReport, filters?: TopFixFilters): TopFix[
3726
3899
  declare function reviewObservations(report: CrawlReport, filters?: Omit<TopFixFilters, 'recommendation'>): TopFix[];
3727
3900
  //#endregion
3728
3901
  //#region packages/core/src/analyze/crawler/export.d.ts
3729
- type CrawlOutputFormat = 'pretty' | 'json' | 'csv' | 'html' | 'markdown';
3902
+ type CrawlOutputFormat = 'pretty' | 'json' | 'csv' | 'html' | 'markdown' | 'junit';
3730
3903
  declare function renderCrawlCsv(report: CrawlReport): string;
3731
3904
  declare function renderCrawlPagesCsv(report: CrawlReport): string;
3732
3905
  declare function renderCrawlPretty(report: CrawlReport, fixes?: TopFix[]): string;
3906
+ declare function renderCrawlJunit(report: CrawlReport): string;
3733
3907
  declare function renderCrawlHtml(report: CrawlReport, fixes?: TopFix[]): string;
3734
3908
  declare function renderCrawlMarkdownTickets(report: CrawlReport, fixes?: TopFix[]): string;
3735
3909
  //#endregion
@@ -3901,6 +4075,16 @@ type GeneratedLlmsTxt = {
3901
4075
  includedUrls: number;
3902
4076
  estimatedTokens: number;
3903
4077
  sections: Record<string, number>;
4078
+ source: {
4079
+ reportId: string;
4080
+ status: CrawlReport['status'];
4081
+ crawledUrls: number;
4082
+ discoveredUrls: number;
4083
+ sitemapUrlsReturned?: number;
4084
+ warnings: string[];
4085
+ warningCount: number;
4086
+ warningsTruncated: boolean;
4087
+ };
3904
4088
  };
3905
4089
  declare function auditLlmsTxt(report: CrawlReport): LlmsAuditReport;
3906
4090
  declare function generateLlmsTxt(report: CrawlReport, options?: GenerateLlmsTxtOptions): GeneratedLlmsTxt;
@@ -4088,6 +4272,34 @@ declare const crawlPageSnapshotSchema: z.ZodObject<{
4088
4272
  consecutiveErrors: z.ZodNumber;
4089
4273
  recentP95Ms: z.ZodOptional<z.ZodNumber>;
4090
4274
  }, z.core.$strip>>;
4275
+ accessBlock: z.ZodOptional<z.ZodObject<{
4276
+ provider: z.ZodEnum<{
4277
+ unknown: "unknown";
4278
+ cloudflare: "cloudflare";
4279
+ }>;
4280
+ kind: z.ZodEnum<{
4281
+ challenge: "challenge";
4282
+ firewall: "firewall";
4283
+ "rate-limit": "rate-limit";
4284
+ authentication: "authentication";
4285
+ }>;
4286
+ status: z.ZodNumber;
4287
+ crawler: z.ZodObject<{
4288
+ name: z.ZodString;
4289
+ robotsToken: z.ZodString;
4290
+ version: z.ZodString;
4291
+ userAgent: z.ZodString;
4292
+ documentationUrl: z.ZodString;
4293
+ }, z.core.$strip>;
4294
+ indicators: z.ZodArray<z.ZodString>;
4295
+ requestId: z.ZodOptional<z.ZodString>;
4296
+ guidance: z.ZodObject<{
4297
+ summary: z.ZodString;
4298
+ recommendedAction: z.ZodString;
4299
+ securityNote: z.ZodString;
4300
+ documentationUrl: z.ZodOptional<z.ZodString>;
4301
+ }, z.core.$strip>;
4302
+ }, z.core.$strip>>;
4091
4303
  robotsTxt: z.ZodOptional<z.ZodObject<{
4092
4304
  url: z.ZodString;
4093
4305
  cache: z.ZodEnum<{
@@ -4272,6 +4484,38 @@ declare const crawlPageSnapshotSchema: z.ZodObject<{
4272
4484
  }, z.core.$strip>>;
4273
4485
  }, z.core.$strip>>;
4274
4486
  blocked: z.ZodOptional<z.ZodBoolean>;
4487
+ auditScope: z.ZodOptional<z.ZodEnum<{
4488
+ status: "status";
4489
+ full: "full";
4490
+ }>>;
4491
+ accessBlock: z.ZodOptional<z.ZodObject<{
4492
+ provider: z.ZodEnum<{
4493
+ unknown: "unknown";
4494
+ cloudflare: "cloudflare";
4495
+ }>;
4496
+ kind: z.ZodEnum<{
4497
+ challenge: "challenge";
4498
+ firewall: "firewall";
4499
+ "rate-limit": "rate-limit";
4500
+ authentication: "authentication";
4501
+ }>;
4502
+ status: z.ZodNumber;
4503
+ crawler: z.ZodObject<{
4504
+ name: z.ZodString;
4505
+ robotsToken: z.ZodString;
4506
+ version: z.ZodString;
4507
+ userAgent: z.ZodString;
4508
+ documentationUrl: z.ZodString;
4509
+ }, z.core.$strip>;
4510
+ indicators: z.ZodArray<z.ZodString>;
4511
+ requestId: z.ZodOptional<z.ZodString>;
4512
+ guidance: z.ZodObject<{
4513
+ summary: z.ZodString;
4514
+ recommendedAction: z.ZodString;
4515
+ securityNote: z.ZodString;
4516
+ documentationUrl: z.ZodOptional<z.ZodString>;
4517
+ }, z.core.$strip>;
4518
+ }, z.core.$strip>>;
4275
4519
  contentAuditAllowed: z.ZodOptional<z.ZodBoolean>;
4276
4520
  crawlDepth: z.ZodOptional<z.ZodNumber>;
4277
4521
  error: z.ZodOptional<z.ZodString>;
@@ -4344,10 +4588,12 @@ declare const crawlPageSnapshotSchema: z.ZodObject<{
4344
4588
  wordCount: z.ZodNumber;
4345
4589
  contentExtraction: z.ZodOptional<z.ZodObject<{
4346
4590
  requested: z.ZodEnum<{
4591
+ crawler: "crawler";
4347
4592
  defuddle: "defuddle";
4348
4593
  readability: "readability";
4349
4594
  }>;
4350
4595
  used: z.ZodEnum<{
4596
+ crawler: "crawler";
4351
4597
  defuddle: "defuddle";
4352
4598
  readability: "readability";
4353
4599
  }>;
@@ -4575,6 +4821,48 @@ declare const crawlRequestObservationSchema: z.ZodUnion<readonly [z.ZodObject<{
4575
4821
  status: z.ZodNumber;
4576
4822
  location: z.ZodOptional<z.ZodString>;
4577
4823
  }, z.core.$strip>>>;
4824
+ accessBlock: z.ZodOptional<z.ZodObject<{
4825
+ provider: z.ZodEnum<{
4826
+ unknown: "unknown";
4827
+ cloudflare: "cloudflare";
4828
+ }>;
4829
+ kind: z.ZodEnum<{
4830
+ challenge: "challenge";
4831
+ firewall: "firewall";
4832
+ "rate-limit": "rate-limit";
4833
+ authentication: "authentication";
4834
+ }>;
4835
+ status: z.ZodNumber;
4836
+ crawler: z.ZodObject<{
4837
+ name: z.ZodString;
4838
+ robotsToken: z.ZodString;
4839
+ version: z.ZodString;
4840
+ userAgent: z.ZodString;
4841
+ documentationUrl: z.ZodString;
4842
+ }, z.core.$strip>;
4843
+ indicators: z.ZodArray<z.ZodString>;
4844
+ requestId: z.ZodOptional<z.ZodString>;
4845
+ guidance: z.ZodObject<{
4846
+ summary: z.ZodString;
4847
+ recommendedAction: z.ZodString;
4848
+ securityNote: z.ZodString;
4849
+ documentationUrl: z.ZodOptional<z.ZodString>;
4850
+ }, z.core.$strip>;
4851
+ }, z.core.$strip>>;
4852
+ robotsTxt: z.ZodOptional<z.ZodObject<{
4853
+ url: z.ZodString;
4854
+ allowed: z.ZodNullable<z.ZodBoolean>;
4855
+ availability: z.ZodEnum<{
4856
+ available: "available";
4857
+ absent: "absent";
4858
+ "access-blocked": "access-blocked";
4859
+ "rate-limited": "rate-limited";
4860
+ unreachable: "unreachable";
4861
+ }>;
4862
+ status: z.ZodOptional<z.ZodNumber>;
4863
+ error: z.ZodOptional<z.ZodString>;
4864
+ matchedLine: z.ZodOptional<z.ZodString>;
4865
+ }, z.core.$strip>>;
4578
4866
  extraction: z.ZodEnum<{
4579
4867
  complete: "complete";
4580
4868
  "not-applicable": "not-applicable";
@@ -4592,6 +4880,48 @@ declare const crawlRequestObservationSchema: z.ZodUnion<readonly [z.ZodObject<{
4592
4880
  status: z.ZodNumber;
4593
4881
  location: z.ZodOptional<z.ZodString>;
4594
4882
  }, z.core.$strip>>>;
4883
+ accessBlock: z.ZodOptional<z.ZodObject<{
4884
+ provider: z.ZodEnum<{
4885
+ unknown: "unknown";
4886
+ cloudflare: "cloudflare";
4887
+ }>;
4888
+ kind: z.ZodEnum<{
4889
+ challenge: "challenge";
4890
+ firewall: "firewall";
4891
+ "rate-limit": "rate-limit";
4892
+ authentication: "authentication";
4893
+ }>;
4894
+ status: z.ZodNumber;
4895
+ crawler: z.ZodObject<{
4896
+ name: z.ZodString;
4897
+ robotsToken: z.ZodString;
4898
+ version: z.ZodString;
4899
+ userAgent: z.ZodString;
4900
+ documentationUrl: z.ZodString;
4901
+ }, z.core.$strip>;
4902
+ indicators: z.ZodArray<z.ZodString>;
4903
+ requestId: z.ZodOptional<z.ZodString>;
4904
+ guidance: z.ZodObject<{
4905
+ summary: z.ZodString;
4906
+ recommendedAction: z.ZodString;
4907
+ securityNote: z.ZodString;
4908
+ documentationUrl: z.ZodOptional<z.ZodString>;
4909
+ }, z.core.$strip>;
4910
+ }, z.core.$strip>>;
4911
+ robotsTxt: z.ZodOptional<z.ZodObject<{
4912
+ url: z.ZodString;
4913
+ allowed: z.ZodNullable<z.ZodBoolean>;
4914
+ availability: z.ZodEnum<{
4915
+ available: "available";
4916
+ absent: "absent";
4917
+ "access-blocked": "access-blocked";
4918
+ "rate-limited": "rate-limited";
4919
+ unreachable: "unreachable";
4920
+ }>;
4921
+ status: z.ZodOptional<z.ZodNumber>;
4922
+ error: z.ZodOptional<z.ZodString>;
4923
+ matchedLine: z.ZodOptional<z.ZodString>;
4924
+ }, z.core.$strip>>;
4595
4925
  extraction: z.ZodLiteral<"failed">;
4596
4926
  extractionError: z.ZodString;
4597
4927
  }, z.core.$strip>, z.ZodObject<{
@@ -4773,6 +5103,11 @@ declare const crawlConfigSchema: z.ZodObject<{
4773
5103
  list: "list";
4774
5104
  sitemap: "sitemap";
4775
5105
  }>;
5106
+ strategy: z.ZodEnum<{
5107
+ full: "full";
5108
+ health: "health";
5109
+ }>;
5110
+ sitemapUrl: z.ZodOptional<z.ZodString>;
4776
5111
  urls: z.ZodArray<z.ZodString>;
4777
5112
  maxPages: z.ZodNumber;
4778
5113
  maxDepth: z.ZodNumber;
@@ -4807,6 +5142,7 @@ declare const crawlConfigSchema: z.ZodObject<{
4807
5142
  }, z.core.$strip>;
4808
5143
  declare const crawlReportSummarySchema: z.ZodObject<{
4809
5144
  totalPages: z.ZodNumber;
5145
+ statusOnlyPages: z.ZodNumber;
4810
5146
  indexablePages: z.ZodNumber;
4811
5147
  nonIndexablePages: z.ZodNumber;
4812
5148
  statusErrors: z.ZodNumber;
@@ -4820,6 +5156,7 @@ declare const crawlReportSummarySchema: z.ZodObject<{
4820
5156
  "configured-exclusion": "configured-exclusion";
4821
5157
  "duplicate-normalization": "duplicate-normalization";
4822
5158
  "invalid-url": "invalid-url";
5159
+ "memory-pressure": "memory-pressure";
4823
5160
  "off-origin": "off-origin";
4824
5161
  "origin-backpressure": "origin-backpressure";
4825
5162
  "queue-safety-limit": "queue-safety-limit";
@@ -4875,6 +5212,11 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
4875
5212
  list: "list";
4876
5213
  sitemap: "sitemap";
4877
5214
  }>;
5215
+ strategy: z.ZodEnum<{
5216
+ full: "full";
5217
+ health: "health";
5218
+ }>;
5219
+ sitemapUrl: z.ZodOptional<z.ZodString>;
4878
5220
  urls: z.ZodArray<z.ZodString>;
4879
5221
  maxPages: z.ZodNumber;
4880
5222
  maxDepth: z.ZodNumber;
@@ -4907,8 +5249,56 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
4907
5249
  }, z.core.$strip>>;
4908
5250
  }, z.core.$strip>;
4909
5251
  }, z.core.$strip>;
5252
+ access: z.ZodOptional<z.ZodObject<{
5253
+ crawler: z.ZodObject<{
5254
+ name: z.ZodString;
5255
+ robotsToken: z.ZodString;
5256
+ version: z.ZodString;
5257
+ userAgent: z.ZodString;
5258
+ documentationUrl: z.ZodString;
5259
+ }, z.core.$strip>;
5260
+ blockedRequests: z.ZodNumber;
5261
+ providers: z.ZodRecord<z.ZodEnum<{
5262
+ unknown: "unknown";
5263
+ cloudflare: "cloudflare";
5264
+ }> & z.core.$partial, z.ZodNumber>;
5265
+ samples: z.ZodArray<z.ZodObject<{
5266
+ url: z.ZodString;
5267
+ evidence: z.ZodObject<{
5268
+ provider: z.ZodEnum<{
5269
+ unknown: "unknown";
5270
+ cloudflare: "cloudflare";
5271
+ }>;
5272
+ kind: z.ZodEnum<{
5273
+ challenge: "challenge";
5274
+ firewall: "firewall";
5275
+ "rate-limit": "rate-limit";
5276
+ authentication: "authentication";
5277
+ }>;
5278
+ status: z.ZodNumber;
5279
+ crawler: z.ZodObject<{
5280
+ name: z.ZodString;
5281
+ robotsToken: z.ZodString;
5282
+ version: z.ZodString;
5283
+ userAgent: z.ZodString;
5284
+ documentationUrl: z.ZodString;
5285
+ }, z.core.$strip>;
5286
+ indicators: z.ZodArray<z.ZodString>;
5287
+ requestId: z.ZodOptional<z.ZodString>;
5288
+ guidance: z.ZodObject<{
5289
+ summary: z.ZodString;
5290
+ recommendedAction: z.ZodString;
5291
+ securityNote: z.ZodString;
5292
+ documentationUrl: z.ZodOptional<z.ZodString>;
5293
+ }, z.core.$strip>;
5294
+ }, z.core.$strip>;
5295
+ }, z.core.$strip>>;
5296
+ sampleLimit: z.ZodNumber;
5297
+ truncated: z.ZodBoolean;
5298
+ }, z.core.$strip>>;
4910
5299
  summary: z.ZodObject<{
4911
5300
  totalPages: z.ZodNumber;
5301
+ statusOnlyPages: z.ZodNumber;
4912
5302
  indexablePages: z.ZodNumber;
4913
5303
  nonIndexablePages: z.ZodNumber;
4914
5304
  statusErrors: z.ZodNumber;
@@ -4922,6 +5312,7 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
4922
5312
  "configured-exclusion": "configured-exclusion";
4923
5313
  "duplicate-normalization": "duplicate-normalization";
4924
5314
  "invalid-url": "invalid-url";
5315
+ "memory-pressure": "memory-pressure";
4925
5316
  "off-origin": "off-origin";
4926
5317
  "origin-backpressure": "origin-backpressure";
4927
5318
  "queue-safety-limit": "queue-safety-limit";
@@ -5012,6 +5403,34 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
5012
5403
  consecutiveErrors: z.ZodNumber;
5013
5404
  recentP95Ms: z.ZodOptional<z.ZodNumber>;
5014
5405
  }, z.core.$strip>>;
5406
+ accessBlock: z.ZodOptional<z.ZodObject<{
5407
+ provider: z.ZodEnum<{
5408
+ unknown: "unknown";
5409
+ cloudflare: "cloudflare";
5410
+ }>;
5411
+ kind: z.ZodEnum<{
5412
+ challenge: "challenge";
5413
+ firewall: "firewall";
5414
+ "rate-limit": "rate-limit";
5415
+ authentication: "authentication";
5416
+ }>;
5417
+ status: z.ZodNumber;
5418
+ crawler: z.ZodObject<{
5419
+ name: z.ZodString;
5420
+ robotsToken: z.ZodString;
5421
+ version: z.ZodString;
5422
+ userAgent: z.ZodString;
5423
+ documentationUrl: z.ZodString;
5424
+ }, z.core.$strip>;
5425
+ indicators: z.ZodArray<z.ZodString>;
5426
+ requestId: z.ZodOptional<z.ZodString>;
5427
+ guidance: z.ZodObject<{
5428
+ summary: z.ZodString;
5429
+ recommendedAction: z.ZodString;
5430
+ securityNote: z.ZodString;
5431
+ documentationUrl: z.ZodOptional<z.ZodString>;
5432
+ }, z.core.$strip>;
5433
+ }, z.core.$strip>>;
5015
5434
  robotsTxt: z.ZodOptional<z.ZodObject<{
5016
5435
  url: z.ZodString;
5017
5436
  cache: z.ZodEnum<{
@@ -5196,6 +5615,38 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
5196
5615
  }, z.core.$strip>>;
5197
5616
  }, z.core.$strip>>;
5198
5617
  blocked: z.ZodOptional<z.ZodBoolean>;
5618
+ auditScope: z.ZodOptional<z.ZodEnum<{
5619
+ status: "status";
5620
+ full: "full";
5621
+ }>>;
5622
+ accessBlock: z.ZodOptional<z.ZodObject<{
5623
+ provider: z.ZodEnum<{
5624
+ unknown: "unknown";
5625
+ cloudflare: "cloudflare";
5626
+ }>;
5627
+ kind: z.ZodEnum<{
5628
+ challenge: "challenge";
5629
+ firewall: "firewall";
5630
+ "rate-limit": "rate-limit";
5631
+ authentication: "authentication";
5632
+ }>;
5633
+ status: z.ZodNumber;
5634
+ crawler: z.ZodObject<{
5635
+ name: z.ZodString;
5636
+ robotsToken: z.ZodString;
5637
+ version: z.ZodString;
5638
+ userAgent: z.ZodString;
5639
+ documentationUrl: z.ZodString;
5640
+ }, z.core.$strip>;
5641
+ indicators: z.ZodArray<z.ZodString>;
5642
+ requestId: z.ZodOptional<z.ZodString>;
5643
+ guidance: z.ZodObject<{
5644
+ summary: z.ZodString;
5645
+ recommendedAction: z.ZodString;
5646
+ securityNote: z.ZodString;
5647
+ documentationUrl: z.ZodOptional<z.ZodString>;
5648
+ }, z.core.$strip>;
5649
+ }, z.core.$strip>>;
5199
5650
  contentAuditAllowed: z.ZodOptional<z.ZodBoolean>;
5200
5651
  crawlDepth: z.ZodOptional<z.ZodNumber>;
5201
5652
  error: z.ZodOptional<z.ZodString>;
@@ -5268,10 +5719,12 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
5268
5719
  wordCount: z.ZodNumber;
5269
5720
  contentExtraction: z.ZodOptional<z.ZodObject<{
5270
5721
  requested: z.ZodEnum<{
5722
+ crawler: "crawler";
5271
5723
  defuddle: "defuddle";
5272
5724
  readability: "readability";
5273
5725
  }>;
5274
5726
  used: z.ZodEnum<{
5727
+ crawler: "crawler";
5275
5728
  defuddle: "defuddle";
5276
5729
  readability: "readability";
5277
5730
  }>;
@@ -5617,6 +6070,7 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
5617
6070
  status: z.ZodOptional<z.ZodNumber>;
5618
6071
  error: z.ZodOptional<z.ZodString>;
5619
6072
  sitemapUrls: z.ZodArray<z.ZodString>;
6073
+ contentSignals: z.ZodOptional<z.ZodArray<z.ZodString>>;
5620
6074
  botAccess: z.ZodArray<z.ZodObject<{
5621
6075
  userAgent: z.ZodString;
5622
6076
  allowed: z.ZodNullable<z.ZodBoolean>;
@@ -5647,6 +6101,7 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
5647
6101
  roots: z.ZodArray<z.ZodObject<{
5648
6102
  url: z.ZodString;
5649
6103
  source: z.ZodEnum<{
6104
+ explicit: "explicit";
5650
6105
  "robots-txt": "robots-txt";
5651
6106
  "default-path": "default-path";
5652
6107
  }>;
@@ -5907,6 +6362,31 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
5907
6362
  missingMarkdownPages: z.ZodNumber;
5908
6363
  consistent: z.ZodNullable<z.ZodBoolean>;
5909
6364
  }, z.core.$strip>;
6365
+ endpointDiscovery: z.ZodOptional<z.ZodObject<{
6366
+ linkHeader: z.ZodObject<{
6367
+ url: z.ZodString;
6368
+ status: z.ZodOptional<z.ZodNumber>;
6369
+ entries: z.ZodArray<z.ZodObject<{
6370
+ url: z.ZodString;
6371
+ rel: z.ZodArray<z.ZodString>;
6372
+ type: z.ZodOptional<z.ZodString>;
6373
+ }, z.core.$strip>>;
6374
+ registeredRels: z.ZodArray<z.ZodString>;
6375
+ emergingRels: z.ZodArray<z.ZodString>;
6376
+ error: z.ZodOptional<z.ZodString>;
6377
+ }, z.core.$strip>;
6378
+ endpoints: z.ZodArray<z.ZodObject<{
6379
+ id: z.ZodString;
6380
+ url: z.ZodString;
6381
+ status: z.ZodOptional<z.ZodNumber>;
6382
+ exists: z.ZodBoolean;
6383
+ contentType: z.ZodOptional<z.ZodString>;
6384
+ validJson: z.ZodOptional<z.ZodBoolean>;
6385
+ presentFields: z.ZodOptional<z.ZodArray<z.ZodString>>;
6386
+ missingFields: z.ZodOptional<z.ZodArray<z.ZodString>>;
6387
+ error: z.ZodOptional<z.ZodString>;
6388
+ }, z.core.$strip>>;
6389
+ }, z.core.$strip>>;
5910
6390
  protocolVariants: z.ZodObject<{
5911
6391
  http: z.ZodObject<{
5912
6392
  url: z.ZodString;
@@ -5941,6 +6421,48 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
5941
6421
  status: z.ZodNumber;
5942
6422
  location: z.ZodOptional<z.ZodString>;
5943
6423
  }, z.core.$strip>>>;
6424
+ accessBlock: z.ZodOptional<z.ZodObject<{
6425
+ provider: z.ZodEnum<{
6426
+ unknown: "unknown";
6427
+ cloudflare: "cloudflare";
6428
+ }>;
6429
+ kind: z.ZodEnum<{
6430
+ challenge: "challenge";
6431
+ firewall: "firewall";
6432
+ "rate-limit": "rate-limit";
6433
+ authentication: "authentication";
6434
+ }>;
6435
+ status: z.ZodNumber;
6436
+ crawler: z.ZodObject<{
6437
+ name: z.ZodString;
6438
+ robotsToken: z.ZodString;
6439
+ version: z.ZodString;
6440
+ userAgent: z.ZodString;
6441
+ documentationUrl: z.ZodString;
6442
+ }, z.core.$strip>;
6443
+ indicators: z.ZodArray<z.ZodString>;
6444
+ requestId: z.ZodOptional<z.ZodString>;
6445
+ guidance: z.ZodObject<{
6446
+ summary: z.ZodString;
6447
+ recommendedAction: z.ZodString;
6448
+ securityNote: z.ZodString;
6449
+ documentationUrl: z.ZodOptional<z.ZodString>;
6450
+ }, z.core.$strip>;
6451
+ }, z.core.$strip>>;
6452
+ robotsTxt: z.ZodOptional<z.ZodObject<{
6453
+ url: z.ZodString;
6454
+ allowed: z.ZodNullable<z.ZodBoolean>;
6455
+ availability: z.ZodEnum<{
6456
+ available: "available";
6457
+ absent: "absent";
6458
+ "access-blocked": "access-blocked";
6459
+ "rate-limited": "rate-limited";
6460
+ unreachable: "unreachable";
6461
+ }>;
6462
+ status: z.ZodOptional<z.ZodNumber>;
6463
+ error: z.ZodOptional<z.ZodString>;
6464
+ matchedLine: z.ZodOptional<z.ZodString>;
6465
+ }, z.core.$strip>>;
5944
6466
  extraction: z.ZodEnum<{
5945
6467
  complete: "complete";
5946
6468
  "not-applicable": "not-applicable";
@@ -5958,6 +6480,48 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
5958
6480
  status: z.ZodNumber;
5959
6481
  location: z.ZodOptional<z.ZodString>;
5960
6482
  }, z.core.$strip>>>;
6483
+ accessBlock: z.ZodOptional<z.ZodObject<{
6484
+ provider: z.ZodEnum<{
6485
+ unknown: "unknown";
6486
+ cloudflare: "cloudflare";
6487
+ }>;
6488
+ kind: z.ZodEnum<{
6489
+ challenge: "challenge";
6490
+ firewall: "firewall";
6491
+ "rate-limit": "rate-limit";
6492
+ authentication: "authentication";
6493
+ }>;
6494
+ status: z.ZodNumber;
6495
+ crawler: z.ZodObject<{
6496
+ name: z.ZodString;
6497
+ robotsToken: z.ZodString;
6498
+ version: z.ZodString;
6499
+ userAgent: z.ZodString;
6500
+ documentationUrl: z.ZodString;
6501
+ }, z.core.$strip>;
6502
+ indicators: z.ZodArray<z.ZodString>;
6503
+ requestId: z.ZodOptional<z.ZodString>;
6504
+ guidance: z.ZodObject<{
6505
+ summary: z.ZodString;
6506
+ recommendedAction: z.ZodString;
6507
+ securityNote: z.ZodString;
6508
+ documentationUrl: z.ZodOptional<z.ZodString>;
6509
+ }, z.core.$strip>;
6510
+ }, z.core.$strip>>;
6511
+ robotsTxt: z.ZodOptional<z.ZodObject<{
6512
+ url: z.ZodString;
6513
+ allowed: z.ZodNullable<z.ZodBoolean>;
6514
+ availability: z.ZodEnum<{
6515
+ available: "available";
6516
+ absent: "absent";
6517
+ "access-blocked": "access-blocked";
6518
+ "rate-limited": "rate-limited";
6519
+ unreachable: "unreachable";
6520
+ }>;
6521
+ status: z.ZodOptional<z.ZodNumber>;
6522
+ error: z.ZodOptional<z.ZodString>;
6523
+ matchedLine: z.ZodOptional<z.ZodString>;
6524
+ }, z.core.$strip>>;
5961
6525
  extraction: z.ZodLiteral<"failed">;
5962
6526
  extractionError: z.ZodString;
5963
6527
  }, z.core.$strip>, z.ZodObject<{
@@ -6026,6 +6590,11 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
6026
6590
  list: "list";
6027
6591
  sitemap: "sitemap";
6028
6592
  }>;
6593
+ strategy: z.ZodEnum<{
6594
+ full: "full";
6595
+ health: "health";
6596
+ }>;
6597
+ sitemapUrl: z.ZodOptional<z.ZodString>;
6029
6598
  urls: z.ZodArray<z.ZodString>;
6030
6599
  maxPages: z.ZodNumber;
6031
6600
  maxDepth: z.ZodNumber;
@@ -6058,8 +6627,56 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
6058
6627
  }, z.core.$strip>>;
6059
6628
  }, z.core.$strip>;
6060
6629
  }, z.core.$strip>;
6630
+ access: z.ZodOptional<z.ZodObject<{
6631
+ crawler: z.ZodObject<{
6632
+ name: z.ZodString;
6633
+ robotsToken: z.ZodString;
6634
+ version: z.ZodString;
6635
+ userAgent: z.ZodString;
6636
+ documentationUrl: z.ZodString;
6637
+ }, z.core.$strip>;
6638
+ blockedRequests: z.ZodNumber;
6639
+ providers: z.ZodRecord<z.ZodEnum<{
6640
+ unknown: "unknown";
6641
+ cloudflare: "cloudflare";
6642
+ }> & z.core.$partial, z.ZodNumber>;
6643
+ samples: z.ZodArray<z.ZodObject<{
6644
+ url: z.ZodString;
6645
+ evidence: z.ZodObject<{
6646
+ provider: z.ZodEnum<{
6647
+ unknown: "unknown";
6648
+ cloudflare: "cloudflare";
6649
+ }>;
6650
+ kind: z.ZodEnum<{
6651
+ challenge: "challenge";
6652
+ firewall: "firewall";
6653
+ "rate-limit": "rate-limit";
6654
+ authentication: "authentication";
6655
+ }>;
6656
+ status: z.ZodNumber;
6657
+ crawler: z.ZodObject<{
6658
+ name: z.ZodString;
6659
+ robotsToken: z.ZodString;
6660
+ version: z.ZodString;
6661
+ userAgent: z.ZodString;
6662
+ documentationUrl: z.ZodString;
6663
+ }, z.core.$strip>;
6664
+ indicators: z.ZodArray<z.ZodString>;
6665
+ requestId: z.ZodOptional<z.ZodString>;
6666
+ guidance: z.ZodObject<{
6667
+ summary: z.ZodString;
6668
+ recommendedAction: z.ZodString;
6669
+ securityNote: z.ZodString;
6670
+ documentationUrl: z.ZodOptional<z.ZodString>;
6671
+ }, z.core.$strip>;
6672
+ }, z.core.$strip>;
6673
+ }, z.core.$strip>>;
6674
+ sampleLimit: z.ZodNumber;
6675
+ truncated: z.ZodBoolean;
6676
+ }, z.core.$strip>>;
6061
6677
  summary: z.ZodObject<{
6062
6678
  totalPages: z.ZodNumber;
6679
+ statusOnlyPages: z.ZodNumber;
6063
6680
  indexablePages: z.ZodNumber;
6064
6681
  nonIndexablePages: z.ZodNumber;
6065
6682
  statusErrors: z.ZodNumber;
@@ -6073,6 +6690,7 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
6073
6690
  "configured-exclusion": "configured-exclusion";
6074
6691
  "duplicate-normalization": "duplicate-normalization";
6075
6692
  "invalid-url": "invalid-url";
6693
+ "memory-pressure": "memory-pressure";
6076
6694
  "off-origin": "off-origin";
6077
6695
  "origin-backpressure": "origin-backpressure";
6078
6696
  "queue-safety-limit": "queue-safety-limit";
@@ -6163,6 +6781,34 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
6163
6781
  consecutiveErrors: z.ZodNumber;
6164
6782
  recentP95Ms: z.ZodOptional<z.ZodNumber>;
6165
6783
  }, z.core.$strip>>;
6784
+ accessBlock: z.ZodOptional<z.ZodObject<{
6785
+ provider: z.ZodEnum<{
6786
+ unknown: "unknown";
6787
+ cloudflare: "cloudflare";
6788
+ }>;
6789
+ kind: z.ZodEnum<{
6790
+ challenge: "challenge";
6791
+ firewall: "firewall";
6792
+ "rate-limit": "rate-limit";
6793
+ authentication: "authentication";
6794
+ }>;
6795
+ status: z.ZodNumber;
6796
+ crawler: z.ZodObject<{
6797
+ name: z.ZodString;
6798
+ robotsToken: z.ZodString;
6799
+ version: z.ZodString;
6800
+ userAgent: z.ZodString;
6801
+ documentationUrl: z.ZodString;
6802
+ }, z.core.$strip>;
6803
+ indicators: z.ZodArray<z.ZodString>;
6804
+ requestId: z.ZodOptional<z.ZodString>;
6805
+ guidance: z.ZodObject<{
6806
+ summary: z.ZodString;
6807
+ recommendedAction: z.ZodString;
6808
+ securityNote: z.ZodString;
6809
+ documentationUrl: z.ZodOptional<z.ZodString>;
6810
+ }, z.core.$strip>;
6811
+ }, z.core.$strip>>;
6166
6812
  robotsTxt: z.ZodOptional<z.ZodObject<{
6167
6813
  url: z.ZodString;
6168
6814
  cache: z.ZodEnum<{
@@ -6347,14 +6993,46 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
6347
6993
  }, z.core.$strip>>;
6348
6994
  }, z.core.$strip>>;
6349
6995
  blocked: z.ZodOptional<z.ZodBoolean>;
6350
- contentAuditAllowed: z.ZodOptional<z.ZodBoolean>;
6351
- crawlDepth: z.ZodOptional<z.ZodNumber>;
6352
- error: z.ZodOptional<z.ZodString>;
6353
- robotsTxt: z.ZodOptional<z.ZodObject<{
6354
- url: z.ZodString;
6355
- allowed: z.ZodNullable<z.ZodBoolean>;
6356
- availability: z.ZodEnum<{
6357
- available: "available";
6996
+ auditScope: z.ZodOptional<z.ZodEnum<{
6997
+ status: "status";
6998
+ full: "full";
6999
+ }>>;
7000
+ accessBlock: z.ZodOptional<z.ZodObject<{
7001
+ provider: z.ZodEnum<{
7002
+ unknown: "unknown";
7003
+ cloudflare: "cloudflare";
7004
+ }>;
7005
+ kind: z.ZodEnum<{
7006
+ challenge: "challenge";
7007
+ firewall: "firewall";
7008
+ "rate-limit": "rate-limit";
7009
+ authentication: "authentication";
7010
+ }>;
7011
+ status: z.ZodNumber;
7012
+ crawler: z.ZodObject<{
7013
+ name: z.ZodString;
7014
+ robotsToken: z.ZodString;
7015
+ version: z.ZodString;
7016
+ userAgent: z.ZodString;
7017
+ documentationUrl: z.ZodString;
7018
+ }, z.core.$strip>;
7019
+ indicators: z.ZodArray<z.ZodString>;
7020
+ requestId: z.ZodOptional<z.ZodString>;
7021
+ guidance: z.ZodObject<{
7022
+ summary: z.ZodString;
7023
+ recommendedAction: z.ZodString;
7024
+ securityNote: z.ZodString;
7025
+ documentationUrl: z.ZodOptional<z.ZodString>;
7026
+ }, z.core.$strip>;
7027
+ }, z.core.$strip>>;
7028
+ contentAuditAllowed: z.ZodOptional<z.ZodBoolean>;
7029
+ crawlDepth: z.ZodOptional<z.ZodNumber>;
7030
+ error: z.ZodOptional<z.ZodString>;
7031
+ robotsTxt: z.ZodOptional<z.ZodObject<{
7032
+ url: z.ZodString;
7033
+ allowed: z.ZodNullable<z.ZodBoolean>;
7034
+ availability: z.ZodEnum<{
7035
+ available: "available";
6358
7036
  absent: "absent";
6359
7037
  "access-blocked": "access-blocked";
6360
7038
  "rate-limited": "rate-limited";
@@ -6419,10 +7097,12 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
6419
7097
  wordCount: z.ZodNumber;
6420
7098
  contentExtraction: z.ZodOptional<z.ZodObject<{
6421
7099
  requested: z.ZodEnum<{
7100
+ crawler: "crawler";
6422
7101
  defuddle: "defuddle";
6423
7102
  readability: "readability";
6424
7103
  }>;
6425
7104
  used: z.ZodEnum<{
7105
+ crawler: "crawler";
6426
7106
  defuddle: "defuddle";
6427
7107
  readability: "readability";
6428
7108
  }>;
@@ -6768,6 +7448,7 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
6768
7448
  status: z.ZodOptional<z.ZodNumber>;
6769
7449
  error: z.ZodOptional<z.ZodString>;
6770
7450
  sitemapUrls: z.ZodArray<z.ZodString>;
7451
+ contentSignals: z.ZodOptional<z.ZodArray<z.ZodString>>;
6771
7452
  botAccess: z.ZodArray<z.ZodObject<{
6772
7453
  userAgent: z.ZodString;
6773
7454
  allowed: z.ZodNullable<z.ZodBoolean>;
@@ -6798,6 +7479,7 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
6798
7479
  roots: z.ZodArray<z.ZodObject<{
6799
7480
  url: z.ZodString;
6800
7481
  source: z.ZodEnum<{
7482
+ explicit: "explicit";
6801
7483
  "robots-txt": "robots-txt";
6802
7484
  "default-path": "default-path";
6803
7485
  }>;
@@ -7058,6 +7740,31 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
7058
7740
  missingMarkdownPages: z.ZodNumber;
7059
7741
  consistent: z.ZodNullable<z.ZodBoolean>;
7060
7742
  }, z.core.$strip>;
7743
+ endpointDiscovery: z.ZodOptional<z.ZodObject<{
7744
+ linkHeader: z.ZodObject<{
7745
+ url: z.ZodString;
7746
+ status: z.ZodOptional<z.ZodNumber>;
7747
+ entries: z.ZodArray<z.ZodObject<{
7748
+ url: z.ZodString;
7749
+ rel: z.ZodArray<z.ZodString>;
7750
+ type: z.ZodOptional<z.ZodString>;
7751
+ }, z.core.$strip>>;
7752
+ registeredRels: z.ZodArray<z.ZodString>;
7753
+ emergingRels: z.ZodArray<z.ZodString>;
7754
+ error: z.ZodOptional<z.ZodString>;
7755
+ }, z.core.$strip>;
7756
+ endpoints: z.ZodArray<z.ZodObject<{
7757
+ id: z.ZodString;
7758
+ url: z.ZodString;
7759
+ status: z.ZodOptional<z.ZodNumber>;
7760
+ exists: z.ZodBoolean;
7761
+ contentType: z.ZodOptional<z.ZodString>;
7762
+ validJson: z.ZodOptional<z.ZodBoolean>;
7763
+ presentFields: z.ZodOptional<z.ZodArray<z.ZodString>>;
7764
+ missingFields: z.ZodOptional<z.ZodArray<z.ZodString>>;
7765
+ error: z.ZodOptional<z.ZodString>;
7766
+ }, z.core.$strip>>;
7767
+ }, z.core.$strip>>;
7061
7768
  protocolVariants: z.ZodObject<{
7062
7769
  http: z.ZodObject<{
7063
7770
  url: z.ZodString;
@@ -7092,6 +7799,48 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
7092
7799
  status: z.ZodNumber;
7093
7800
  location: z.ZodOptional<z.ZodString>;
7094
7801
  }, z.core.$strip>>>;
7802
+ accessBlock: z.ZodOptional<z.ZodObject<{
7803
+ provider: z.ZodEnum<{
7804
+ unknown: "unknown";
7805
+ cloudflare: "cloudflare";
7806
+ }>;
7807
+ kind: z.ZodEnum<{
7808
+ challenge: "challenge";
7809
+ firewall: "firewall";
7810
+ "rate-limit": "rate-limit";
7811
+ authentication: "authentication";
7812
+ }>;
7813
+ status: z.ZodNumber;
7814
+ crawler: z.ZodObject<{
7815
+ name: z.ZodString;
7816
+ robotsToken: z.ZodString;
7817
+ version: z.ZodString;
7818
+ userAgent: z.ZodString;
7819
+ documentationUrl: z.ZodString;
7820
+ }, z.core.$strip>;
7821
+ indicators: z.ZodArray<z.ZodString>;
7822
+ requestId: z.ZodOptional<z.ZodString>;
7823
+ guidance: z.ZodObject<{
7824
+ summary: z.ZodString;
7825
+ recommendedAction: z.ZodString;
7826
+ securityNote: z.ZodString;
7827
+ documentationUrl: z.ZodOptional<z.ZodString>;
7828
+ }, z.core.$strip>;
7829
+ }, z.core.$strip>>;
7830
+ robotsTxt: z.ZodOptional<z.ZodObject<{
7831
+ url: z.ZodString;
7832
+ allowed: z.ZodNullable<z.ZodBoolean>;
7833
+ availability: z.ZodEnum<{
7834
+ available: "available";
7835
+ absent: "absent";
7836
+ "access-blocked": "access-blocked";
7837
+ "rate-limited": "rate-limited";
7838
+ unreachable: "unreachable";
7839
+ }>;
7840
+ status: z.ZodOptional<z.ZodNumber>;
7841
+ error: z.ZodOptional<z.ZodString>;
7842
+ matchedLine: z.ZodOptional<z.ZodString>;
7843
+ }, z.core.$strip>>;
7095
7844
  extraction: z.ZodEnum<{
7096
7845
  complete: "complete";
7097
7846
  "not-applicable": "not-applicable";
@@ -7109,6 +7858,48 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
7109
7858
  status: z.ZodNumber;
7110
7859
  location: z.ZodOptional<z.ZodString>;
7111
7860
  }, z.core.$strip>>>;
7861
+ accessBlock: z.ZodOptional<z.ZodObject<{
7862
+ provider: z.ZodEnum<{
7863
+ unknown: "unknown";
7864
+ cloudflare: "cloudflare";
7865
+ }>;
7866
+ kind: z.ZodEnum<{
7867
+ challenge: "challenge";
7868
+ firewall: "firewall";
7869
+ "rate-limit": "rate-limit";
7870
+ authentication: "authentication";
7871
+ }>;
7872
+ status: z.ZodNumber;
7873
+ crawler: z.ZodObject<{
7874
+ name: z.ZodString;
7875
+ robotsToken: z.ZodString;
7876
+ version: z.ZodString;
7877
+ userAgent: z.ZodString;
7878
+ documentationUrl: z.ZodString;
7879
+ }, z.core.$strip>;
7880
+ indicators: z.ZodArray<z.ZodString>;
7881
+ requestId: z.ZodOptional<z.ZodString>;
7882
+ guidance: z.ZodObject<{
7883
+ summary: z.ZodString;
7884
+ recommendedAction: z.ZodString;
7885
+ securityNote: z.ZodString;
7886
+ documentationUrl: z.ZodOptional<z.ZodString>;
7887
+ }, z.core.$strip>;
7888
+ }, z.core.$strip>>;
7889
+ robotsTxt: z.ZodOptional<z.ZodObject<{
7890
+ url: z.ZodString;
7891
+ allowed: z.ZodNullable<z.ZodBoolean>;
7892
+ availability: z.ZodEnum<{
7893
+ available: "available";
7894
+ absent: "absent";
7895
+ "access-blocked": "access-blocked";
7896
+ "rate-limited": "rate-limited";
7897
+ unreachable: "unreachable";
7898
+ }>;
7899
+ status: z.ZodOptional<z.ZodNumber>;
7900
+ error: z.ZodOptional<z.ZodString>;
7901
+ matchedLine: z.ZodOptional<z.ZodString>;
7902
+ }, z.core.$strip>>;
7112
7903
  extraction: z.ZodLiteral<"failed">;
7113
7904
  extractionError: z.ZodString;
7114
7905
  }, z.core.$strip>, z.ZodObject<{
@@ -7177,6 +7968,11 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
7177
7968
  list: "list";
7178
7969
  sitemap: "sitemap";
7179
7970
  }>;
7971
+ strategy: z.ZodEnum<{
7972
+ full: "full";
7973
+ health: "health";
7974
+ }>;
7975
+ sitemapUrl: z.ZodOptional<z.ZodString>;
7180
7976
  urls: z.ZodArray<z.ZodString>;
7181
7977
  maxPages: z.ZodNumber;
7182
7978
  maxDepth: z.ZodNumber;
@@ -7209,8 +8005,56 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
7209
8005
  }, z.core.$strip>>;
7210
8006
  }, z.core.$strip>;
7211
8007
  }, z.core.$strip>;
8008
+ access: z.ZodOptional<z.ZodObject<{
8009
+ crawler: z.ZodObject<{
8010
+ name: z.ZodString;
8011
+ robotsToken: z.ZodString;
8012
+ version: z.ZodString;
8013
+ userAgent: z.ZodString;
8014
+ documentationUrl: z.ZodString;
8015
+ }, z.core.$strip>;
8016
+ blockedRequests: z.ZodNumber;
8017
+ providers: z.ZodRecord<z.ZodEnum<{
8018
+ unknown: "unknown";
8019
+ cloudflare: "cloudflare";
8020
+ }> & z.core.$partial, z.ZodNumber>;
8021
+ samples: z.ZodArray<z.ZodObject<{
8022
+ url: z.ZodString;
8023
+ evidence: z.ZodObject<{
8024
+ provider: z.ZodEnum<{
8025
+ unknown: "unknown";
8026
+ cloudflare: "cloudflare";
8027
+ }>;
8028
+ kind: z.ZodEnum<{
8029
+ challenge: "challenge";
8030
+ firewall: "firewall";
8031
+ "rate-limit": "rate-limit";
8032
+ authentication: "authentication";
8033
+ }>;
8034
+ status: z.ZodNumber;
8035
+ crawler: z.ZodObject<{
8036
+ name: z.ZodString;
8037
+ robotsToken: z.ZodString;
8038
+ version: z.ZodString;
8039
+ userAgent: z.ZodString;
8040
+ documentationUrl: z.ZodString;
8041
+ }, z.core.$strip>;
8042
+ indicators: z.ZodArray<z.ZodString>;
8043
+ requestId: z.ZodOptional<z.ZodString>;
8044
+ guidance: z.ZodObject<{
8045
+ summary: z.ZodString;
8046
+ recommendedAction: z.ZodString;
8047
+ securityNote: z.ZodString;
8048
+ documentationUrl: z.ZodOptional<z.ZodString>;
8049
+ }, z.core.$strip>;
8050
+ }, z.core.$strip>;
8051
+ }, z.core.$strip>>;
8052
+ sampleLimit: z.ZodNumber;
8053
+ truncated: z.ZodBoolean;
8054
+ }, z.core.$strip>>;
7212
8055
  summary: z.ZodObject<{
7213
8056
  totalPages: z.ZodNumber;
8057
+ statusOnlyPages: z.ZodNumber;
7214
8058
  indexablePages: z.ZodNumber;
7215
8059
  nonIndexablePages: z.ZodNumber;
7216
8060
  statusErrors: z.ZodNumber;
@@ -7224,6 +8068,7 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
7224
8068
  "configured-exclusion": "configured-exclusion";
7225
8069
  "duplicate-normalization": "duplicate-normalization";
7226
8070
  "invalid-url": "invalid-url";
8071
+ "memory-pressure": "memory-pressure";
7227
8072
  "off-origin": "off-origin";
7228
8073
  "origin-backpressure": "origin-backpressure";
7229
8074
  "queue-safety-limit": "queue-safety-limit";
@@ -7314,6 +8159,34 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
7314
8159
  consecutiveErrors: z.ZodNumber;
7315
8160
  recentP95Ms: z.ZodOptional<z.ZodNumber>;
7316
8161
  }, z.core.$strip>>;
8162
+ accessBlock: z.ZodOptional<z.ZodObject<{
8163
+ provider: z.ZodEnum<{
8164
+ unknown: "unknown";
8165
+ cloudflare: "cloudflare";
8166
+ }>;
8167
+ kind: z.ZodEnum<{
8168
+ challenge: "challenge";
8169
+ firewall: "firewall";
8170
+ "rate-limit": "rate-limit";
8171
+ authentication: "authentication";
8172
+ }>;
8173
+ status: z.ZodNumber;
8174
+ crawler: z.ZodObject<{
8175
+ name: z.ZodString;
8176
+ robotsToken: z.ZodString;
8177
+ version: z.ZodString;
8178
+ userAgent: z.ZodString;
8179
+ documentationUrl: z.ZodString;
8180
+ }, z.core.$strip>;
8181
+ indicators: z.ZodArray<z.ZodString>;
8182
+ requestId: z.ZodOptional<z.ZodString>;
8183
+ guidance: z.ZodObject<{
8184
+ summary: z.ZodString;
8185
+ recommendedAction: z.ZodString;
8186
+ securityNote: z.ZodString;
8187
+ documentationUrl: z.ZodOptional<z.ZodString>;
8188
+ }, z.core.$strip>;
8189
+ }, z.core.$strip>>;
7317
8190
  robotsTxt: z.ZodOptional<z.ZodObject<{
7318
8191
  url: z.ZodString;
7319
8192
  cache: z.ZodEnum<{
@@ -7498,6 +8371,38 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
7498
8371
  }, z.core.$strip>>;
7499
8372
  }, z.core.$strip>>;
7500
8373
  blocked: z.ZodOptional<z.ZodBoolean>;
8374
+ auditScope: z.ZodOptional<z.ZodEnum<{
8375
+ status: "status";
8376
+ full: "full";
8377
+ }>>;
8378
+ accessBlock: z.ZodOptional<z.ZodObject<{
8379
+ provider: z.ZodEnum<{
8380
+ unknown: "unknown";
8381
+ cloudflare: "cloudflare";
8382
+ }>;
8383
+ kind: z.ZodEnum<{
8384
+ challenge: "challenge";
8385
+ firewall: "firewall";
8386
+ "rate-limit": "rate-limit";
8387
+ authentication: "authentication";
8388
+ }>;
8389
+ status: z.ZodNumber;
8390
+ crawler: z.ZodObject<{
8391
+ name: z.ZodString;
8392
+ robotsToken: z.ZodString;
8393
+ version: z.ZodString;
8394
+ userAgent: z.ZodString;
8395
+ documentationUrl: z.ZodString;
8396
+ }, z.core.$strip>;
8397
+ indicators: z.ZodArray<z.ZodString>;
8398
+ requestId: z.ZodOptional<z.ZodString>;
8399
+ guidance: z.ZodObject<{
8400
+ summary: z.ZodString;
8401
+ recommendedAction: z.ZodString;
8402
+ securityNote: z.ZodString;
8403
+ documentationUrl: z.ZodOptional<z.ZodString>;
8404
+ }, z.core.$strip>;
8405
+ }, z.core.$strip>>;
7501
8406
  contentAuditAllowed: z.ZodOptional<z.ZodBoolean>;
7502
8407
  crawlDepth: z.ZodOptional<z.ZodNumber>;
7503
8408
  error: z.ZodOptional<z.ZodString>;
@@ -7570,10 +8475,12 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
7570
8475
  wordCount: z.ZodNumber;
7571
8476
  contentExtraction: z.ZodOptional<z.ZodObject<{
7572
8477
  requested: z.ZodEnum<{
8478
+ crawler: "crawler";
7573
8479
  defuddle: "defuddle";
7574
8480
  readability: "readability";
7575
8481
  }>;
7576
8482
  used: z.ZodEnum<{
8483
+ crawler: "crawler";
7577
8484
  defuddle: "defuddle";
7578
8485
  readability: "readability";
7579
8486
  }>;
@@ -7919,6 +8826,7 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
7919
8826
  status: z.ZodOptional<z.ZodNumber>;
7920
8827
  error: z.ZodOptional<z.ZodString>;
7921
8828
  sitemapUrls: z.ZodArray<z.ZodString>;
8829
+ contentSignals: z.ZodOptional<z.ZodArray<z.ZodString>>;
7922
8830
  botAccess: z.ZodArray<z.ZodObject<{
7923
8831
  userAgent: z.ZodString;
7924
8832
  allowed: z.ZodNullable<z.ZodBoolean>;
@@ -7949,6 +8857,7 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
7949
8857
  roots: z.ZodArray<z.ZodObject<{
7950
8858
  url: z.ZodString;
7951
8859
  source: z.ZodEnum<{
8860
+ explicit: "explicit";
7952
8861
  "robots-txt": "robots-txt";
7953
8862
  "default-path": "default-path";
7954
8863
  }>;
@@ -8209,6 +9118,31 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
8209
9118
  missingMarkdownPages: z.ZodNumber;
8210
9119
  consistent: z.ZodNullable<z.ZodBoolean>;
8211
9120
  }, z.core.$strip>;
9121
+ endpointDiscovery: z.ZodOptional<z.ZodObject<{
9122
+ linkHeader: z.ZodObject<{
9123
+ url: z.ZodString;
9124
+ status: z.ZodOptional<z.ZodNumber>;
9125
+ entries: z.ZodArray<z.ZodObject<{
9126
+ url: z.ZodString;
9127
+ rel: z.ZodArray<z.ZodString>;
9128
+ type: z.ZodOptional<z.ZodString>;
9129
+ }, z.core.$strip>>;
9130
+ registeredRels: z.ZodArray<z.ZodString>;
9131
+ emergingRels: z.ZodArray<z.ZodString>;
9132
+ error: z.ZodOptional<z.ZodString>;
9133
+ }, z.core.$strip>;
9134
+ endpoints: z.ZodArray<z.ZodObject<{
9135
+ id: z.ZodString;
9136
+ url: z.ZodString;
9137
+ status: z.ZodOptional<z.ZodNumber>;
9138
+ exists: z.ZodBoolean;
9139
+ contentType: z.ZodOptional<z.ZodString>;
9140
+ validJson: z.ZodOptional<z.ZodBoolean>;
9141
+ presentFields: z.ZodOptional<z.ZodArray<z.ZodString>>;
9142
+ missingFields: z.ZodOptional<z.ZodArray<z.ZodString>>;
9143
+ error: z.ZodOptional<z.ZodString>;
9144
+ }, z.core.$strip>>;
9145
+ }, z.core.$strip>>;
8212
9146
  protocolVariants: z.ZodObject<{
8213
9147
  http: z.ZodObject<{
8214
9148
  url: z.ZodString;
@@ -8243,6 +9177,48 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
8243
9177
  status: z.ZodNumber;
8244
9178
  location: z.ZodOptional<z.ZodString>;
8245
9179
  }, z.core.$strip>>>;
9180
+ accessBlock: z.ZodOptional<z.ZodObject<{
9181
+ provider: z.ZodEnum<{
9182
+ unknown: "unknown";
9183
+ cloudflare: "cloudflare";
9184
+ }>;
9185
+ kind: z.ZodEnum<{
9186
+ challenge: "challenge";
9187
+ firewall: "firewall";
9188
+ "rate-limit": "rate-limit";
9189
+ authentication: "authentication";
9190
+ }>;
9191
+ status: z.ZodNumber;
9192
+ crawler: z.ZodObject<{
9193
+ name: z.ZodString;
9194
+ robotsToken: z.ZodString;
9195
+ version: z.ZodString;
9196
+ userAgent: z.ZodString;
9197
+ documentationUrl: z.ZodString;
9198
+ }, z.core.$strip>;
9199
+ indicators: z.ZodArray<z.ZodString>;
9200
+ requestId: z.ZodOptional<z.ZodString>;
9201
+ guidance: z.ZodObject<{
9202
+ summary: z.ZodString;
9203
+ recommendedAction: z.ZodString;
9204
+ securityNote: z.ZodString;
9205
+ documentationUrl: z.ZodOptional<z.ZodString>;
9206
+ }, z.core.$strip>;
9207
+ }, z.core.$strip>>;
9208
+ robotsTxt: z.ZodOptional<z.ZodObject<{
9209
+ url: z.ZodString;
9210
+ allowed: z.ZodNullable<z.ZodBoolean>;
9211
+ availability: z.ZodEnum<{
9212
+ available: "available";
9213
+ absent: "absent";
9214
+ "access-blocked": "access-blocked";
9215
+ "rate-limited": "rate-limited";
9216
+ unreachable: "unreachable";
9217
+ }>;
9218
+ status: z.ZodOptional<z.ZodNumber>;
9219
+ error: z.ZodOptional<z.ZodString>;
9220
+ matchedLine: z.ZodOptional<z.ZodString>;
9221
+ }, z.core.$strip>>;
8246
9222
  extraction: z.ZodEnum<{
8247
9223
  complete: "complete";
8248
9224
  "not-applicable": "not-applicable";
@@ -8260,6 +9236,48 @@ declare const crawlReportSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
8260
9236
  status: z.ZodNumber;
8261
9237
  location: z.ZodOptional<z.ZodString>;
8262
9238
  }, z.core.$strip>>>;
9239
+ accessBlock: z.ZodOptional<z.ZodObject<{
9240
+ provider: z.ZodEnum<{
9241
+ unknown: "unknown";
9242
+ cloudflare: "cloudflare";
9243
+ }>;
9244
+ kind: z.ZodEnum<{
9245
+ challenge: "challenge";
9246
+ firewall: "firewall";
9247
+ "rate-limit": "rate-limit";
9248
+ authentication: "authentication";
9249
+ }>;
9250
+ status: z.ZodNumber;
9251
+ crawler: z.ZodObject<{
9252
+ name: z.ZodString;
9253
+ robotsToken: z.ZodString;
9254
+ version: z.ZodString;
9255
+ userAgent: z.ZodString;
9256
+ documentationUrl: z.ZodString;
9257
+ }, z.core.$strip>;
9258
+ indicators: z.ZodArray<z.ZodString>;
9259
+ requestId: z.ZodOptional<z.ZodString>;
9260
+ guidance: z.ZodObject<{
9261
+ summary: z.ZodString;
9262
+ recommendedAction: z.ZodString;
9263
+ securityNote: z.ZodString;
9264
+ documentationUrl: z.ZodOptional<z.ZodString>;
9265
+ }, z.core.$strip>;
9266
+ }, z.core.$strip>>;
9267
+ robotsTxt: z.ZodOptional<z.ZodObject<{
9268
+ url: z.ZodString;
9269
+ allowed: z.ZodNullable<z.ZodBoolean>;
9270
+ availability: z.ZodEnum<{
9271
+ available: "available";
9272
+ absent: "absent";
9273
+ "access-blocked": "access-blocked";
9274
+ "rate-limited": "rate-limited";
9275
+ unreachable: "unreachable";
9276
+ }>;
9277
+ status: z.ZodOptional<z.ZodNumber>;
9278
+ error: z.ZodOptional<z.ZodString>;
9279
+ matchedLine: z.ZodOptional<z.ZodString>;
9280
+ }, z.core.$strip>>;
8263
9281
  extraction: z.ZodLiteral<"failed">;
8264
9282
  extractionError: z.ZodString;
8265
9283
  }, z.core.$strip>, z.ZodObject<{
@@ -8330,6 +9348,11 @@ declare const crawlerSchemas: {
8330
9348
  list: "list";
8331
9349
  sitemap: "sitemap";
8332
9350
  }>;
9351
+ strategy: z.ZodEnum<{
9352
+ full: "full";
9353
+ health: "health";
9354
+ }>;
9355
+ sitemapUrl: z.ZodOptional<z.ZodString>;
8333
9356
  urls: z.ZodArray<z.ZodString>;
8334
9357
  maxPages: z.ZodNumber;
8335
9358
  maxDepth: z.ZodNumber;
@@ -8362,8 +9385,56 @@ declare const crawlerSchemas: {
8362
9385
  }, z.core.$strip>>;
8363
9386
  }, z.core.$strip>;
8364
9387
  }, z.core.$strip>;
9388
+ access: z.ZodOptional<z.ZodObject<{
9389
+ crawler: z.ZodObject<{
9390
+ name: z.ZodString;
9391
+ robotsToken: z.ZodString;
9392
+ version: z.ZodString;
9393
+ userAgent: z.ZodString;
9394
+ documentationUrl: z.ZodString;
9395
+ }, z.core.$strip>;
9396
+ blockedRequests: z.ZodNumber;
9397
+ providers: z.ZodRecord<z.ZodEnum<{
9398
+ unknown: "unknown";
9399
+ cloudflare: "cloudflare";
9400
+ }> & z.core.$partial, z.ZodNumber>;
9401
+ samples: z.ZodArray<z.ZodObject<{
9402
+ url: z.ZodString;
9403
+ evidence: z.ZodObject<{
9404
+ provider: z.ZodEnum<{
9405
+ unknown: "unknown";
9406
+ cloudflare: "cloudflare";
9407
+ }>;
9408
+ kind: z.ZodEnum<{
9409
+ challenge: "challenge";
9410
+ firewall: "firewall";
9411
+ "rate-limit": "rate-limit";
9412
+ authentication: "authentication";
9413
+ }>;
9414
+ status: z.ZodNumber;
9415
+ crawler: z.ZodObject<{
9416
+ name: z.ZodString;
9417
+ robotsToken: z.ZodString;
9418
+ version: z.ZodString;
9419
+ userAgent: z.ZodString;
9420
+ documentationUrl: z.ZodString;
9421
+ }, z.core.$strip>;
9422
+ indicators: z.ZodArray<z.ZodString>;
9423
+ requestId: z.ZodOptional<z.ZodString>;
9424
+ guidance: z.ZodObject<{
9425
+ summary: z.ZodString;
9426
+ recommendedAction: z.ZodString;
9427
+ securityNote: z.ZodString;
9428
+ documentationUrl: z.ZodOptional<z.ZodString>;
9429
+ }, z.core.$strip>;
9430
+ }, z.core.$strip>;
9431
+ }, z.core.$strip>>;
9432
+ sampleLimit: z.ZodNumber;
9433
+ truncated: z.ZodBoolean;
9434
+ }, z.core.$strip>>;
8365
9435
  summary: z.ZodObject<{
8366
9436
  totalPages: z.ZodNumber;
9437
+ statusOnlyPages: z.ZodNumber;
8367
9438
  indexablePages: z.ZodNumber;
8368
9439
  nonIndexablePages: z.ZodNumber;
8369
9440
  statusErrors: z.ZodNumber;
@@ -8377,6 +9448,7 @@ declare const crawlerSchemas: {
8377
9448
  "configured-exclusion": "configured-exclusion";
8378
9449
  "duplicate-normalization": "duplicate-normalization";
8379
9450
  "invalid-url": "invalid-url";
9451
+ "memory-pressure": "memory-pressure";
8380
9452
  "off-origin": "off-origin";
8381
9453
  "origin-backpressure": "origin-backpressure";
8382
9454
  "queue-safety-limit": "queue-safety-limit";
@@ -8467,6 +9539,34 @@ declare const crawlerSchemas: {
8467
9539
  consecutiveErrors: z.ZodNumber;
8468
9540
  recentP95Ms: z.ZodOptional<z.ZodNumber>;
8469
9541
  }, z.core.$strip>>;
9542
+ accessBlock: z.ZodOptional<z.ZodObject<{
9543
+ provider: z.ZodEnum<{
9544
+ unknown: "unknown";
9545
+ cloudflare: "cloudflare";
9546
+ }>;
9547
+ kind: z.ZodEnum<{
9548
+ challenge: "challenge";
9549
+ firewall: "firewall";
9550
+ "rate-limit": "rate-limit";
9551
+ authentication: "authentication";
9552
+ }>;
9553
+ status: z.ZodNumber;
9554
+ crawler: z.ZodObject<{
9555
+ name: z.ZodString;
9556
+ robotsToken: z.ZodString;
9557
+ version: z.ZodString;
9558
+ userAgent: z.ZodString;
9559
+ documentationUrl: z.ZodString;
9560
+ }, z.core.$strip>;
9561
+ indicators: z.ZodArray<z.ZodString>;
9562
+ requestId: z.ZodOptional<z.ZodString>;
9563
+ guidance: z.ZodObject<{
9564
+ summary: z.ZodString;
9565
+ recommendedAction: z.ZodString;
9566
+ securityNote: z.ZodString;
9567
+ documentationUrl: z.ZodOptional<z.ZodString>;
9568
+ }, z.core.$strip>;
9569
+ }, z.core.$strip>>;
8470
9570
  robotsTxt: z.ZodOptional<z.ZodObject<{
8471
9571
  url: z.ZodString;
8472
9572
  cache: z.ZodEnum<{
@@ -8651,6 +9751,38 @@ declare const crawlerSchemas: {
8651
9751
  }, z.core.$strip>>;
8652
9752
  }, z.core.$strip>>;
8653
9753
  blocked: z.ZodOptional<z.ZodBoolean>;
9754
+ auditScope: z.ZodOptional<z.ZodEnum<{
9755
+ status: "status";
9756
+ full: "full";
9757
+ }>>;
9758
+ accessBlock: z.ZodOptional<z.ZodObject<{
9759
+ provider: z.ZodEnum<{
9760
+ unknown: "unknown";
9761
+ cloudflare: "cloudflare";
9762
+ }>;
9763
+ kind: z.ZodEnum<{
9764
+ challenge: "challenge";
9765
+ firewall: "firewall";
9766
+ "rate-limit": "rate-limit";
9767
+ authentication: "authentication";
9768
+ }>;
9769
+ status: z.ZodNumber;
9770
+ crawler: z.ZodObject<{
9771
+ name: z.ZodString;
9772
+ robotsToken: z.ZodString;
9773
+ version: z.ZodString;
9774
+ userAgent: z.ZodString;
9775
+ documentationUrl: z.ZodString;
9776
+ }, z.core.$strip>;
9777
+ indicators: z.ZodArray<z.ZodString>;
9778
+ requestId: z.ZodOptional<z.ZodString>;
9779
+ guidance: z.ZodObject<{
9780
+ summary: z.ZodString;
9781
+ recommendedAction: z.ZodString;
9782
+ securityNote: z.ZodString;
9783
+ documentationUrl: z.ZodOptional<z.ZodString>;
9784
+ }, z.core.$strip>;
9785
+ }, z.core.$strip>>;
8654
9786
  contentAuditAllowed: z.ZodOptional<z.ZodBoolean>;
8655
9787
  crawlDepth: z.ZodOptional<z.ZodNumber>;
8656
9788
  error: z.ZodOptional<z.ZodString>;
@@ -8723,10 +9855,12 @@ declare const crawlerSchemas: {
8723
9855
  wordCount: z.ZodNumber;
8724
9856
  contentExtraction: z.ZodOptional<z.ZodObject<{
8725
9857
  requested: z.ZodEnum<{
9858
+ crawler: "crawler";
8726
9859
  defuddle: "defuddle";
8727
9860
  readability: "readability";
8728
9861
  }>;
8729
9862
  used: z.ZodEnum<{
9863
+ crawler: "crawler";
8730
9864
  defuddle: "defuddle";
8731
9865
  readability: "readability";
8732
9866
  }>;
@@ -9072,6 +10206,7 @@ declare const crawlerSchemas: {
9072
10206
  status: z.ZodOptional<z.ZodNumber>;
9073
10207
  error: z.ZodOptional<z.ZodString>;
9074
10208
  sitemapUrls: z.ZodArray<z.ZodString>;
10209
+ contentSignals: z.ZodOptional<z.ZodArray<z.ZodString>>;
9075
10210
  botAccess: z.ZodArray<z.ZodObject<{
9076
10211
  userAgent: z.ZodString;
9077
10212
  allowed: z.ZodNullable<z.ZodBoolean>;
@@ -9102,6 +10237,7 @@ declare const crawlerSchemas: {
9102
10237
  roots: z.ZodArray<z.ZodObject<{
9103
10238
  url: z.ZodString;
9104
10239
  source: z.ZodEnum<{
10240
+ explicit: "explicit";
9105
10241
  "robots-txt": "robots-txt";
9106
10242
  "default-path": "default-path";
9107
10243
  }>;
@@ -9362,6 +10498,31 @@ declare const crawlerSchemas: {
9362
10498
  missingMarkdownPages: z.ZodNumber;
9363
10499
  consistent: z.ZodNullable<z.ZodBoolean>;
9364
10500
  }, z.core.$strip>;
10501
+ endpointDiscovery: z.ZodOptional<z.ZodObject<{
10502
+ linkHeader: z.ZodObject<{
10503
+ url: z.ZodString;
10504
+ status: z.ZodOptional<z.ZodNumber>;
10505
+ entries: z.ZodArray<z.ZodObject<{
10506
+ url: z.ZodString;
10507
+ rel: z.ZodArray<z.ZodString>;
10508
+ type: z.ZodOptional<z.ZodString>;
10509
+ }, z.core.$strip>>;
10510
+ registeredRels: z.ZodArray<z.ZodString>;
10511
+ emergingRels: z.ZodArray<z.ZodString>;
10512
+ error: z.ZodOptional<z.ZodString>;
10513
+ }, z.core.$strip>;
10514
+ endpoints: z.ZodArray<z.ZodObject<{
10515
+ id: z.ZodString;
10516
+ url: z.ZodString;
10517
+ status: z.ZodOptional<z.ZodNumber>;
10518
+ exists: z.ZodBoolean;
10519
+ contentType: z.ZodOptional<z.ZodString>;
10520
+ validJson: z.ZodOptional<z.ZodBoolean>;
10521
+ presentFields: z.ZodOptional<z.ZodArray<z.ZodString>>;
10522
+ missingFields: z.ZodOptional<z.ZodArray<z.ZodString>>;
10523
+ error: z.ZodOptional<z.ZodString>;
10524
+ }, z.core.$strip>>;
10525
+ }, z.core.$strip>>;
9365
10526
  protocolVariants: z.ZodObject<{
9366
10527
  http: z.ZodObject<{
9367
10528
  url: z.ZodString;
@@ -9396,6 +10557,48 @@ declare const crawlerSchemas: {
9396
10557
  status: z.ZodNumber;
9397
10558
  location: z.ZodOptional<z.ZodString>;
9398
10559
  }, z.core.$strip>>>;
10560
+ accessBlock: z.ZodOptional<z.ZodObject<{
10561
+ provider: z.ZodEnum<{
10562
+ unknown: "unknown";
10563
+ cloudflare: "cloudflare";
10564
+ }>;
10565
+ kind: z.ZodEnum<{
10566
+ challenge: "challenge";
10567
+ firewall: "firewall";
10568
+ "rate-limit": "rate-limit";
10569
+ authentication: "authentication";
10570
+ }>;
10571
+ status: z.ZodNumber;
10572
+ crawler: z.ZodObject<{
10573
+ name: z.ZodString;
10574
+ robotsToken: z.ZodString;
10575
+ version: z.ZodString;
10576
+ userAgent: z.ZodString;
10577
+ documentationUrl: z.ZodString;
10578
+ }, z.core.$strip>;
10579
+ indicators: z.ZodArray<z.ZodString>;
10580
+ requestId: z.ZodOptional<z.ZodString>;
10581
+ guidance: z.ZodObject<{
10582
+ summary: z.ZodString;
10583
+ recommendedAction: z.ZodString;
10584
+ securityNote: z.ZodString;
10585
+ documentationUrl: z.ZodOptional<z.ZodString>;
10586
+ }, z.core.$strip>;
10587
+ }, z.core.$strip>>;
10588
+ robotsTxt: z.ZodOptional<z.ZodObject<{
10589
+ url: z.ZodString;
10590
+ allowed: z.ZodNullable<z.ZodBoolean>;
10591
+ availability: z.ZodEnum<{
10592
+ available: "available";
10593
+ absent: "absent";
10594
+ "access-blocked": "access-blocked";
10595
+ "rate-limited": "rate-limited";
10596
+ unreachable: "unreachable";
10597
+ }>;
10598
+ status: z.ZodOptional<z.ZodNumber>;
10599
+ error: z.ZodOptional<z.ZodString>;
10600
+ matchedLine: z.ZodOptional<z.ZodString>;
10601
+ }, z.core.$strip>>;
9399
10602
  extraction: z.ZodEnum<{
9400
10603
  complete: "complete";
9401
10604
  "not-applicable": "not-applicable";
@@ -9413,6 +10616,48 @@ declare const crawlerSchemas: {
9413
10616
  status: z.ZodNumber;
9414
10617
  location: z.ZodOptional<z.ZodString>;
9415
10618
  }, z.core.$strip>>>;
10619
+ accessBlock: z.ZodOptional<z.ZodObject<{
10620
+ provider: z.ZodEnum<{
10621
+ unknown: "unknown";
10622
+ cloudflare: "cloudflare";
10623
+ }>;
10624
+ kind: z.ZodEnum<{
10625
+ challenge: "challenge";
10626
+ firewall: "firewall";
10627
+ "rate-limit": "rate-limit";
10628
+ authentication: "authentication";
10629
+ }>;
10630
+ status: z.ZodNumber;
10631
+ crawler: z.ZodObject<{
10632
+ name: z.ZodString;
10633
+ robotsToken: z.ZodString;
10634
+ version: z.ZodString;
10635
+ userAgent: z.ZodString;
10636
+ documentationUrl: z.ZodString;
10637
+ }, z.core.$strip>;
10638
+ indicators: z.ZodArray<z.ZodString>;
10639
+ requestId: z.ZodOptional<z.ZodString>;
10640
+ guidance: z.ZodObject<{
10641
+ summary: z.ZodString;
10642
+ recommendedAction: z.ZodString;
10643
+ securityNote: z.ZodString;
10644
+ documentationUrl: z.ZodOptional<z.ZodString>;
10645
+ }, z.core.$strip>;
10646
+ }, z.core.$strip>>;
10647
+ robotsTxt: z.ZodOptional<z.ZodObject<{
10648
+ url: z.ZodString;
10649
+ allowed: z.ZodNullable<z.ZodBoolean>;
10650
+ availability: z.ZodEnum<{
10651
+ available: "available";
10652
+ absent: "absent";
10653
+ "access-blocked": "access-blocked";
10654
+ "rate-limited": "rate-limited";
10655
+ unreachable: "unreachable";
10656
+ }>;
10657
+ status: z.ZodOptional<z.ZodNumber>;
10658
+ error: z.ZodOptional<z.ZodString>;
10659
+ matchedLine: z.ZodOptional<z.ZodString>;
10660
+ }, z.core.$strip>>;
9416
10661
  extraction: z.ZodLiteral<"failed">;
9417
10662
  extractionError: z.ZodString;
9418
10663
  }, z.core.$strip>, z.ZodObject<{
@@ -9481,6 +10726,11 @@ declare const crawlerSchemas: {
9481
10726
  list: "list";
9482
10727
  sitemap: "sitemap";
9483
10728
  }>;
10729
+ strategy: z.ZodEnum<{
10730
+ full: "full";
10731
+ health: "health";
10732
+ }>;
10733
+ sitemapUrl: z.ZodOptional<z.ZodString>;
9484
10734
  urls: z.ZodArray<z.ZodString>;
9485
10735
  maxPages: z.ZodNumber;
9486
10736
  maxDepth: z.ZodNumber;
@@ -9513,8 +10763,56 @@ declare const crawlerSchemas: {
9513
10763
  }, z.core.$strip>>;
9514
10764
  }, z.core.$strip>;
9515
10765
  }, z.core.$strip>;
10766
+ access: z.ZodOptional<z.ZodObject<{
10767
+ crawler: z.ZodObject<{
10768
+ name: z.ZodString;
10769
+ robotsToken: z.ZodString;
10770
+ version: z.ZodString;
10771
+ userAgent: z.ZodString;
10772
+ documentationUrl: z.ZodString;
10773
+ }, z.core.$strip>;
10774
+ blockedRequests: z.ZodNumber;
10775
+ providers: z.ZodRecord<z.ZodEnum<{
10776
+ unknown: "unknown";
10777
+ cloudflare: "cloudflare";
10778
+ }> & z.core.$partial, z.ZodNumber>;
10779
+ samples: z.ZodArray<z.ZodObject<{
10780
+ url: z.ZodString;
10781
+ evidence: z.ZodObject<{
10782
+ provider: z.ZodEnum<{
10783
+ unknown: "unknown";
10784
+ cloudflare: "cloudflare";
10785
+ }>;
10786
+ kind: z.ZodEnum<{
10787
+ challenge: "challenge";
10788
+ firewall: "firewall";
10789
+ "rate-limit": "rate-limit";
10790
+ authentication: "authentication";
10791
+ }>;
10792
+ status: z.ZodNumber;
10793
+ crawler: z.ZodObject<{
10794
+ name: z.ZodString;
10795
+ robotsToken: z.ZodString;
10796
+ version: z.ZodString;
10797
+ userAgent: z.ZodString;
10798
+ documentationUrl: z.ZodString;
10799
+ }, z.core.$strip>;
10800
+ indicators: z.ZodArray<z.ZodString>;
10801
+ requestId: z.ZodOptional<z.ZodString>;
10802
+ guidance: z.ZodObject<{
10803
+ summary: z.ZodString;
10804
+ recommendedAction: z.ZodString;
10805
+ securityNote: z.ZodString;
10806
+ documentationUrl: z.ZodOptional<z.ZodString>;
10807
+ }, z.core.$strip>;
10808
+ }, z.core.$strip>;
10809
+ }, z.core.$strip>>;
10810
+ sampleLimit: z.ZodNumber;
10811
+ truncated: z.ZodBoolean;
10812
+ }, z.core.$strip>>;
9516
10813
  summary: z.ZodObject<{
9517
10814
  totalPages: z.ZodNumber;
10815
+ statusOnlyPages: z.ZodNumber;
9518
10816
  indexablePages: z.ZodNumber;
9519
10817
  nonIndexablePages: z.ZodNumber;
9520
10818
  statusErrors: z.ZodNumber;
@@ -9528,6 +10826,7 @@ declare const crawlerSchemas: {
9528
10826
  "configured-exclusion": "configured-exclusion";
9529
10827
  "duplicate-normalization": "duplicate-normalization";
9530
10828
  "invalid-url": "invalid-url";
10829
+ "memory-pressure": "memory-pressure";
9531
10830
  "off-origin": "off-origin";
9532
10831
  "origin-backpressure": "origin-backpressure";
9533
10832
  "queue-safety-limit": "queue-safety-limit";
@@ -9618,6 +10917,34 @@ declare const crawlerSchemas: {
9618
10917
  consecutiveErrors: z.ZodNumber;
9619
10918
  recentP95Ms: z.ZodOptional<z.ZodNumber>;
9620
10919
  }, z.core.$strip>>;
10920
+ accessBlock: z.ZodOptional<z.ZodObject<{
10921
+ provider: z.ZodEnum<{
10922
+ unknown: "unknown";
10923
+ cloudflare: "cloudflare";
10924
+ }>;
10925
+ kind: z.ZodEnum<{
10926
+ challenge: "challenge";
10927
+ firewall: "firewall";
10928
+ "rate-limit": "rate-limit";
10929
+ authentication: "authentication";
10930
+ }>;
10931
+ status: z.ZodNumber;
10932
+ crawler: z.ZodObject<{
10933
+ name: z.ZodString;
10934
+ robotsToken: z.ZodString;
10935
+ version: z.ZodString;
10936
+ userAgent: z.ZodString;
10937
+ documentationUrl: z.ZodString;
10938
+ }, z.core.$strip>;
10939
+ indicators: z.ZodArray<z.ZodString>;
10940
+ requestId: z.ZodOptional<z.ZodString>;
10941
+ guidance: z.ZodObject<{
10942
+ summary: z.ZodString;
10943
+ recommendedAction: z.ZodString;
10944
+ securityNote: z.ZodString;
10945
+ documentationUrl: z.ZodOptional<z.ZodString>;
10946
+ }, z.core.$strip>;
10947
+ }, z.core.$strip>>;
9621
10948
  robotsTxt: z.ZodOptional<z.ZodObject<{
9622
10949
  url: z.ZodString;
9623
10950
  cache: z.ZodEnum<{
@@ -9802,6 +11129,38 @@ declare const crawlerSchemas: {
9802
11129
  }, z.core.$strip>>;
9803
11130
  }, z.core.$strip>>;
9804
11131
  blocked: z.ZodOptional<z.ZodBoolean>;
11132
+ auditScope: z.ZodOptional<z.ZodEnum<{
11133
+ status: "status";
11134
+ full: "full";
11135
+ }>>;
11136
+ accessBlock: z.ZodOptional<z.ZodObject<{
11137
+ provider: z.ZodEnum<{
11138
+ unknown: "unknown";
11139
+ cloudflare: "cloudflare";
11140
+ }>;
11141
+ kind: z.ZodEnum<{
11142
+ challenge: "challenge";
11143
+ firewall: "firewall";
11144
+ "rate-limit": "rate-limit";
11145
+ authentication: "authentication";
11146
+ }>;
11147
+ status: z.ZodNumber;
11148
+ crawler: z.ZodObject<{
11149
+ name: z.ZodString;
11150
+ robotsToken: z.ZodString;
11151
+ version: z.ZodString;
11152
+ userAgent: z.ZodString;
11153
+ documentationUrl: z.ZodString;
11154
+ }, z.core.$strip>;
11155
+ indicators: z.ZodArray<z.ZodString>;
11156
+ requestId: z.ZodOptional<z.ZodString>;
11157
+ guidance: z.ZodObject<{
11158
+ summary: z.ZodString;
11159
+ recommendedAction: z.ZodString;
11160
+ securityNote: z.ZodString;
11161
+ documentationUrl: z.ZodOptional<z.ZodString>;
11162
+ }, z.core.$strip>;
11163
+ }, z.core.$strip>>;
9805
11164
  contentAuditAllowed: z.ZodOptional<z.ZodBoolean>;
9806
11165
  crawlDepth: z.ZodOptional<z.ZodNumber>;
9807
11166
  error: z.ZodOptional<z.ZodString>;
@@ -9874,10 +11233,12 @@ declare const crawlerSchemas: {
9874
11233
  wordCount: z.ZodNumber;
9875
11234
  contentExtraction: z.ZodOptional<z.ZodObject<{
9876
11235
  requested: z.ZodEnum<{
11236
+ crawler: "crawler";
9877
11237
  defuddle: "defuddle";
9878
11238
  readability: "readability";
9879
11239
  }>;
9880
11240
  used: z.ZodEnum<{
11241
+ crawler: "crawler";
9881
11242
  defuddle: "defuddle";
9882
11243
  readability: "readability";
9883
11244
  }>;
@@ -10223,6 +11584,7 @@ declare const crawlerSchemas: {
10223
11584
  status: z.ZodOptional<z.ZodNumber>;
10224
11585
  error: z.ZodOptional<z.ZodString>;
10225
11586
  sitemapUrls: z.ZodArray<z.ZodString>;
11587
+ contentSignals: z.ZodOptional<z.ZodArray<z.ZodString>>;
10226
11588
  botAccess: z.ZodArray<z.ZodObject<{
10227
11589
  userAgent: z.ZodString;
10228
11590
  allowed: z.ZodNullable<z.ZodBoolean>;
@@ -10253,6 +11615,7 @@ declare const crawlerSchemas: {
10253
11615
  roots: z.ZodArray<z.ZodObject<{
10254
11616
  url: z.ZodString;
10255
11617
  source: z.ZodEnum<{
11618
+ explicit: "explicit";
10256
11619
  "robots-txt": "robots-txt";
10257
11620
  "default-path": "default-path";
10258
11621
  }>;
@@ -10513,6 +11876,31 @@ declare const crawlerSchemas: {
10513
11876
  missingMarkdownPages: z.ZodNumber;
10514
11877
  consistent: z.ZodNullable<z.ZodBoolean>;
10515
11878
  }, z.core.$strip>;
11879
+ endpointDiscovery: z.ZodOptional<z.ZodObject<{
11880
+ linkHeader: z.ZodObject<{
11881
+ url: z.ZodString;
11882
+ status: z.ZodOptional<z.ZodNumber>;
11883
+ entries: z.ZodArray<z.ZodObject<{
11884
+ url: z.ZodString;
11885
+ rel: z.ZodArray<z.ZodString>;
11886
+ type: z.ZodOptional<z.ZodString>;
11887
+ }, z.core.$strip>>;
11888
+ registeredRels: z.ZodArray<z.ZodString>;
11889
+ emergingRels: z.ZodArray<z.ZodString>;
11890
+ error: z.ZodOptional<z.ZodString>;
11891
+ }, z.core.$strip>;
11892
+ endpoints: z.ZodArray<z.ZodObject<{
11893
+ id: z.ZodString;
11894
+ url: z.ZodString;
11895
+ status: z.ZodOptional<z.ZodNumber>;
11896
+ exists: z.ZodBoolean;
11897
+ contentType: z.ZodOptional<z.ZodString>;
11898
+ validJson: z.ZodOptional<z.ZodBoolean>;
11899
+ presentFields: z.ZodOptional<z.ZodArray<z.ZodString>>;
11900
+ missingFields: z.ZodOptional<z.ZodArray<z.ZodString>>;
11901
+ error: z.ZodOptional<z.ZodString>;
11902
+ }, z.core.$strip>>;
11903
+ }, z.core.$strip>>;
10516
11904
  protocolVariants: z.ZodObject<{
10517
11905
  http: z.ZodObject<{
10518
11906
  url: z.ZodString;
@@ -10547,6 +11935,48 @@ declare const crawlerSchemas: {
10547
11935
  status: z.ZodNumber;
10548
11936
  location: z.ZodOptional<z.ZodString>;
10549
11937
  }, z.core.$strip>>>;
11938
+ accessBlock: z.ZodOptional<z.ZodObject<{
11939
+ provider: z.ZodEnum<{
11940
+ unknown: "unknown";
11941
+ cloudflare: "cloudflare";
11942
+ }>;
11943
+ kind: z.ZodEnum<{
11944
+ challenge: "challenge";
11945
+ firewall: "firewall";
11946
+ "rate-limit": "rate-limit";
11947
+ authentication: "authentication";
11948
+ }>;
11949
+ status: z.ZodNumber;
11950
+ crawler: z.ZodObject<{
11951
+ name: z.ZodString;
11952
+ robotsToken: z.ZodString;
11953
+ version: z.ZodString;
11954
+ userAgent: z.ZodString;
11955
+ documentationUrl: z.ZodString;
11956
+ }, z.core.$strip>;
11957
+ indicators: z.ZodArray<z.ZodString>;
11958
+ requestId: z.ZodOptional<z.ZodString>;
11959
+ guidance: z.ZodObject<{
11960
+ summary: z.ZodString;
11961
+ recommendedAction: z.ZodString;
11962
+ securityNote: z.ZodString;
11963
+ documentationUrl: z.ZodOptional<z.ZodString>;
11964
+ }, z.core.$strip>;
11965
+ }, z.core.$strip>>;
11966
+ robotsTxt: z.ZodOptional<z.ZodObject<{
11967
+ url: z.ZodString;
11968
+ allowed: z.ZodNullable<z.ZodBoolean>;
11969
+ availability: z.ZodEnum<{
11970
+ available: "available";
11971
+ absent: "absent";
11972
+ "access-blocked": "access-blocked";
11973
+ "rate-limited": "rate-limited";
11974
+ unreachable: "unreachable";
11975
+ }>;
11976
+ status: z.ZodOptional<z.ZodNumber>;
11977
+ error: z.ZodOptional<z.ZodString>;
11978
+ matchedLine: z.ZodOptional<z.ZodString>;
11979
+ }, z.core.$strip>>;
10550
11980
  extraction: z.ZodEnum<{
10551
11981
  complete: "complete";
10552
11982
  "not-applicable": "not-applicable";
@@ -10564,6 +11994,48 @@ declare const crawlerSchemas: {
10564
11994
  status: z.ZodNumber;
10565
11995
  location: z.ZodOptional<z.ZodString>;
10566
11996
  }, z.core.$strip>>>;
11997
+ accessBlock: z.ZodOptional<z.ZodObject<{
11998
+ provider: z.ZodEnum<{
11999
+ unknown: "unknown";
12000
+ cloudflare: "cloudflare";
12001
+ }>;
12002
+ kind: z.ZodEnum<{
12003
+ challenge: "challenge";
12004
+ firewall: "firewall";
12005
+ "rate-limit": "rate-limit";
12006
+ authentication: "authentication";
12007
+ }>;
12008
+ status: z.ZodNumber;
12009
+ crawler: z.ZodObject<{
12010
+ name: z.ZodString;
12011
+ robotsToken: z.ZodString;
12012
+ version: z.ZodString;
12013
+ userAgent: z.ZodString;
12014
+ documentationUrl: z.ZodString;
12015
+ }, z.core.$strip>;
12016
+ indicators: z.ZodArray<z.ZodString>;
12017
+ requestId: z.ZodOptional<z.ZodString>;
12018
+ guidance: z.ZodObject<{
12019
+ summary: z.ZodString;
12020
+ recommendedAction: z.ZodString;
12021
+ securityNote: z.ZodString;
12022
+ documentationUrl: z.ZodOptional<z.ZodString>;
12023
+ }, z.core.$strip>;
12024
+ }, z.core.$strip>>;
12025
+ robotsTxt: z.ZodOptional<z.ZodObject<{
12026
+ url: z.ZodString;
12027
+ allowed: z.ZodNullable<z.ZodBoolean>;
12028
+ availability: z.ZodEnum<{
12029
+ available: "available";
12030
+ absent: "absent";
12031
+ "access-blocked": "access-blocked";
12032
+ "rate-limited": "rate-limited";
12033
+ unreachable: "unreachable";
12034
+ }>;
12035
+ status: z.ZodOptional<z.ZodNumber>;
12036
+ error: z.ZodOptional<z.ZodString>;
12037
+ matchedLine: z.ZodOptional<z.ZodString>;
12038
+ }, z.core.$strip>>;
10567
12039
  extraction: z.ZodLiteral<"failed">;
10568
12040
  extractionError: z.ZodString;
10569
12041
  }, z.core.$strip>, z.ZodObject<{
@@ -10632,6 +12104,11 @@ declare const crawlerSchemas: {
10632
12104
  list: "list";
10633
12105
  sitemap: "sitemap";
10634
12106
  }>;
12107
+ strategy: z.ZodEnum<{
12108
+ full: "full";
12109
+ health: "health";
12110
+ }>;
12111
+ sitemapUrl: z.ZodOptional<z.ZodString>;
10635
12112
  urls: z.ZodArray<z.ZodString>;
10636
12113
  maxPages: z.ZodNumber;
10637
12114
  maxDepth: z.ZodNumber;
@@ -10664,8 +12141,56 @@ declare const crawlerSchemas: {
10664
12141
  }, z.core.$strip>>;
10665
12142
  }, z.core.$strip>;
10666
12143
  }, z.core.$strip>;
12144
+ access: z.ZodOptional<z.ZodObject<{
12145
+ crawler: z.ZodObject<{
12146
+ name: z.ZodString;
12147
+ robotsToken: z.ZodString;
12148
+ version: z.ZodString;
12149
+ userAgent: z.ZodString;
12150
+ documentationUrl: z.ZodString;
12151
+ }, z.core.$strip>;
12152
+ blockedRequests: z.ZodNumber;
12153
+ providers: z.ZodRecord<z.ZodEnum<{
12154
+ unknown: "unknown";
12155
+ cloudflare: "cloudflare";
12156
+ }> & z.core.$partial, z.ZodNumber>;
12157
+ samples: z.ZodArray<z.ZodObject<{
12158
+ url: z.ZodString;
12159
+ evidence: z.ZodObject<{
12160
+ provider: z.ZodEnum<{
12161
+ unknown: "unknown";
12162
+ cloudflare: "cloudflare";
12163
+ }>;
12164
+ kind: z.ZodEnum<{
12165
+ challenge: "challenge";
12166
+ firewall: "firewall";
12167
+ "rate-limit": "rate-limit";
12168
+ authentication: "authentication";
12169
+ }>;
12170
+ status: z.ZodNumber;
12171
+ crawler: z.ZodObject<{
12172
+ name: z.ZodString;
12173
+ robotsToken: z.ZodString;
12174
+ version: z.ZodString;
12175
+ userAgent: z.ZodString;
12176
+ documentationUrl: z.ZodString;
12177
+ }, z.core.$strip>;
12178
+ indicators: z.ZodArray<z.ZodString>;
12179
+ requestId: z.ZodOptional<z.ZodString>;
12180
+ guidance: z.ZodObject<{
12181
+ summary: z.ZodString;
12182
+ recommendedAction: z.ZodString;
12183
+ securityNote: z.ZodString;
12184
+ documentationUrl: z.ZodOptional<z.ZodString>;
12185
+ }, z.core.$strip>;
12186
+ }, z.core.$strip>;
12187
+ }, z.core.$strip>>;
12188
+ sampleLimit: z.ZodNumber;
12189
+ truncated: z.ZodBoolean;
12190
+ }, z.core.$strip>>;
10667
12191
  summary: z.ZodObject<{
10668
12192
  totalPages: z.ZodNumber;
12193
+ statusOnlyPages: z.ZodNumber;
10669
12194
  indexablePages: z.ZodNumber;
10670
12195
  nonIndexablePages: z.ZodNumber;
10671
12196
  statusErrors: z.ZodNumber;
@@ -10679,6 +12204,7 @@ declare const crawlerSchemas: {
10679
12204
  "configured-exclusion": "configured-exclusion";
10680
12205
  "duplicate-normalization": "duplicate-normalization";
10681
12206
  "invalid-url": "invalid-url";
12207
+ "memory-pressure": "memory-pressure";
10682
12208
  "off-origin": "off-origin";
10683
12209
  "origin-backpressure": "origin-backpressure";
10684
12210
  "queue-safety-limit": "queue-safety-limit";
@@ -10769,6 +12295,34 @@ declare const crawlerSchemas: {
10769
12295
  consecutiveErrors: z.ZodNumber;
10770
12296
  recentP95Ms: z.ZodOptional<z.ZodNumber>;
10771
12297
  }, z.core.$strip>>;
12298
+ accessBlock: z.ZodOptional<z.ZodObject<{
12299
+ provider: z.ZodEnum<{
12300
+ unknown: "unknown";
12301
+ cloudflare: "cloudflare";
12302
+ }>;
12303
+ kind: z.ZodEnum<{
12304
+ challenge: "challenge";
12305
+ firewall: "firewall";
12306
+ "rate-limit": "rate-limit";
12307
+ authentication: "authentication";
12308
+ }>;
12309
+ status: z.ZodNumber;
12310
+ crawler: z.ZodObject<{
12311
+ name: z.ZodString;
12312
+ robotsToken: z.ZodString;
12313
+ version: z.ZodString;
12314
+ userAgent: z.ZodString;
12315
+ documentationUrl: z.ZodString;
12316
+ }, z.core.$strip>;
12317
+ indicators: z.ZodArray<z.ZodString>;
12318
+ requestId: z.ZodOptional<z.ZodString>;
12319
+ guidance: z.ZodObject<{
12320
+ summary: z.ZodString;
12321
+ recommendedAction: z.ZodString;
12322
+ securityNote: z.ZodString;
12323
+ documentationUrl: z.ZodOptional<z.ZodString>;
12324
+ }, z.core.$strip>;
12325
+ }, z.core.$strip>>;
10772
12326
  robotsTxt: z.ZodOptional<z.ZodObject<{
10773
12327
  url: z.ZodString;
10774
12328
  cache: z.ZodEnum<{
@@ -10953,6 +12507,38 @@ declare const crawlerSchemas: {
10953
12507
  }, z.core.$strip>>;
10954
12508
  }, z.core.$strip>>;
10955
12509
  blocked: z.ZodOptional<z.ZodBoolean>;
12510
+ auditScope: z.ZodOptional<z.ZodEnum<{
12511
+ status: "status";
12512
+ full: "full";
12513
+ }>>;
12514
+ accessBlock: z.ZodOptional<z.ZodObject<{
12515
+ provider: z.ZodEnum<{
12516
+ unknown: "unknown";
12517
+ cloudflare: "cloudflare";
12518
+ }>;
12519
+ kind: z.ZodEnum<{
12520
+ challenge: "challenge";
12521
+ firewall: "firewall";
12522
+ "rate-limit": "rate-limit";
12523
+ authentication: "authentication";
12524
+ }>;
12525
+ status: z.ZodNumber;
12526
+ crawler: z.ZodObject<{
12527
+ name: z.ZodString;
12528
+ robotsToken: z.ZodString;
12529
+ version: z.ZodString;
12530
+ userAgent: z.ZodString;
12531
+ documentationUrl: z.ZodString;
12532
+ }, z.core.$strip>;
12533
+ indicators: z.ZodArray<z.ZodString>;
12534
+ requestId: z.ZodOptional<z.ZodString>;
12535
+ guidance: z.ZodObject<{
12536
+ summary: z.ZodString;
12537
+ recommendedAction: z.ZodString;
12538
+ securityNote: z.ZodString;
12539
+ documentationUrl: z.ZodOptional<z.ZodString>;
12540
+ }, z.core.$strip>;
12541
+ }, z.core.$strip>>;
10956
12542
  contentAuditAllowed: z.ZodOptional<z.ZodBoolean>;
10957
12543
  crawlDepth: z.ZodOptional<z.ZodNumber>;
10958
12544
  error: z.ZodOptional<z.ZodString>;
@@ -11025,10 +12611,12 @@ declare const crawlerSchemas: {
11025
12611
  wordCount: z.ZodNumber;
11026
12612
  contentExtraction: z.ZodOptional<z.ZodObject<{
11027
12613
  requested: z.ZodEnum<{
12614
+ crawler: "crawler";
11028
12615
  defuddle: "defuddle";
11029
12616
  readability: "readability";
11030
12617
  }>;
11031
12618
  used: z.ZodEnum<{
12619
+ crawler: "crawler";
11032
12620
  defuddle: "defuddle";
11033
12621
  readability: "readability";
11034
12622
  }>;
@@ -11374,6 +12962,7 @@ declare const crawlerSchemas: {
11374
12962
  status: z.ZodOptional<z.ZodNumber>;
11375
12963
  error: z.ZodOptional<z.ZodString>;
11376
12964
  sitemapUrls: z.ZodArray<z.ZodString>;
12965
+ contentSignals: z.ZodOptional<z.ZodArray<z.ZodString>>;
11377
12966
  botAccess: z.ZodArray<z.ZodObject<{
11378
12967
  userAgent: z.ZodString;
11379
12968
  allowed: z.ZodNullable<z.ZodBoolean>;
@@ -11404,6 +12993,7 @@ declare const crawlerSchemas: {
11404
12993
  roots: z.ZodArray<z.ZodObject<{
11405
12994
  url: z.ZodString;
11406
12995
  source: z.ZodEnum<{
12996
+ explicit: "explicit";
11407
12997
  "robots-txt": "robots-txt";
11408
12998
  "default-path": "default-path";
11409
12999
  }>;
@@ -11664,6 +13254,31 @@ declare const crawlerSchemas: {
11664
13254
  missingMarkdownPages: z.ZodNumber;
11665
13255
  consistent: z.ZodNullable<z.ZodBoolean>;
11666
13256
  }, z.core.$strip>;
13257
+ endpointDiscovery: z.ZodOptional<z.ZodObject<{
13258
+ linkHeader: z.ZodObject<{
13259
+ url: z.ZodString;
13260
+ status: z.ZodOptional<z.ZodNumber>;
13261
+ entries: z.ZodArray<z.ZodObject<{
13262
+ url: z.ZodString;
13263
+ rel: z.ZodArray<z.ZodString>;
13264
+ type: z.ZodOptional<z.ZodString>;
13265
+ }, z.core.$strip>>;
13266
+ registeredRels: z.ZodArray<z.ZodString>;
13267
+ emergingRels: z.ZodArray<z.ZodString>;
13268
+ error: z.ZodOptional<z.ZodString>;
13269
+ }, z.core.$strip>;
13270
+ endpoints: z.ZodArray<z.ZodObject<{
13271
+ id: z.ZodString;
13272
+ url: z.ZodString;
13273
+ status: z.ZodOptional<z.ZodNumber>;
13274
+ exists: z.ZodBoolean;
13275
+ contentType: z.ZodOptional<z.ZodString>;
13276
+ validJson: z.ZodOptional<z.ZodBoolean>;
13277
+ presentFields: z.ZodOptional<z.ZodArray<z.ZodString>>;
13278
+ missingFields: z.ZodOptional<z.ZodArray<z.ZodString>>;
13279
+ error: z.ZodOptional<z.ZodString>;
13280
+ }, z.core.$strip>>;
13281
+ }, z.core.$strip>>;
11667
13282
  protocolVariants: z.ZodObject<{
11668
13283
  http: z.ZodObject<{
11669
13284
  url: z.ZodString;
@@ -11698,6 +13313,48 @@ declare const crawlerSchemas: {
11698
13313
  status: z.ZodNumber;
11699
13314
  location: z.ZodOptional<z.ZodString>;
11700
13315
  }, z.core.$strip>>>;
13316
+ accessBlock: z.ZodOptional<z.ZodObject<{
13317
+ provider: z.ZodEnum<{
13318
+ unknown: "unknown";
13319
+ cloudflare: "cloudflare";
13320
+ }>;
13321
+ kind: z.ZodEnum<{
13322
+ challenge: "challenge";
13323
+ firewall: "firewall";
13324
+ "rate-limit": "rate-limit";
13325
+ authentication: "authentication";
13326
+ }>;
13327
+ status: z.ZodNumber;
13328
+ crawler: z.ZodObject<{
13329
+ name: z.ZodString;
13330
+ robotsToken: z.ZodString;
13331
+ version: z.ZodString;
13332
+ userAgent: z.ZodString;
13333
+ documentationUrl: z.ZodString;
13334
+ }, z.core.$strip>;
13335
+ indicators: z.ZodArray<z.ZodString>;
13336
+ requestId: z.ZodOptional<z.ZodString>;
13337
+ guidance: z.ZodObject<{
13338
+ summary: z.ZodString;
13339
+ recommendedAction: z.ZodString;
13340
+ securityNote: z.ZodString;
13341
+ documentationUrl: z.ZodOptional<z.ZodString>;
13342
+ }, z.core.$strip>;
13343
+ }, z.core.$strip>>;
13344
+ robotsTxt: z.ZodOptional<z.ZodObject<{
13345
+ url: z.ZodString;
13346
+ allowed: z.ZodNullable<z.ZodBoolean>;
13347
+ availability: z.ZodEnum<{
13348
+ available: "available";
13349
+ absent: "absent";
13350
+ "access-blocked": "access-blocked";
13351
+ "rate-limited": "rate-limited";
13352
+ unreachable: "unreachable";
13353
+ }>;
13354
+ status: z.ZodOptional<z.ZodNumber>;
13355
+ error: z.ZodOptional<z.ZodString>;
13356
+ matchedLine: z.ZodOptional<z.ZodString>;
13357
+ }, z.core.$strip>>;
11701
13358
  extraction: z.ZodEnum<{
11702
13359
  complete: "complete";
11703
13360
  "not-applicable": "not-applicable";
@@ -11715,6 +13372,48 @@ declare const crawlerSchemas: {
11715
13372
  status: z.ZodNumber;
11716
13373
  location: z.ZodOptional<z.ZodString>;
11717
13374
  }, z.core.$strip>>>;
13375
+ accessBlock: z.ZodOptional<z.ZodObject<{
13376
+ provider: z.ZodEnum<{
13377
+ unknown: "unknown";
13378
+ cloudflare: "cloudflare";
13379
+ }>;
13380
+ kind: z.ZodEnum<{
13381
+ challenge: "challenge";
13382
+ firewall: "firewall";
13383
+ "rate-limit": "rate-limit";
13384
+ authentication: "authentication";
13385
+ }>;
13386
+ status: z.ZodNumber;
13387
+ crawler: z.ZodObject<{
13388
+ name: z.ZodString;
13389
+ robotsToken: z.ZodString;
13390
+ version: z.ZodString;
13391
+ userAgent: z.ZodString;
13392
+ documentationUrl: z.ZodString;
13393
+ }, z.core.$strip>;
13394
+ indicators: z.ZodArray<z.ZodString>;
13395
+ requestId: z.ZodOptional<z.ZodString>;
13396
+ guidance: z.ZodObject<{
13397
+ summary: z.ZodString;
13398
+ recommendedAction: z.ZodString;
13399
+ securityNote: z.ZodString;
13400
+ documentationUrl: z.ZodOptional<z.ZodString>;
13401
+ }, z.core.$strip>;
13402
+ }, z.core.$strip>>;
13403
+ robotsTxt: z.ZodOptional<z.ZodObject<{
13404
+ url: z.ZodString;
13405
+ allowed: z.ZodNullable<z.ZodBoolean>;
13406
+ availability: z.ZodEnum<{
13407
+ available: "available";
13408
+ absent: "absent";
13409
+ "access-blocked": "access-blocked";
13410
+ "rate-limited": "rate-limited";
13411
+ unreachable: "unreachable";
13412
+ }>;
13413
+ status: z.ZodOptional<z.ZodNumber>;
13414
+ error: z.ZodOptional<z.ZodString>;
13415
+ matchedLine: z.ZodOptional<z.ZodString>;
13416
+ }, z.core.$strip>>;
11718
13417
  extraction: z.ZodLiteral<"failed">;
11719
13418
  extractionError: z.ZodString;
11720
13419
  }, z.core.$strip>, z.ZodObject<{
@@ -11904,6 +13603,48 @@ declare const crawlerSchemas: {
11904
13603
  status: z.ZodNumber;
11905
13604
  location: z.ZodOptional<z.ZodString>;
11906
13605
  }, z.core.$strip>>>;
13606
+ accessBlock: z.ZodOptional<z.ZodObject<{
13607
+ provider: z.ZodEnum<{
13608
+ unknown: "unknown";
13609
+ cloudflare: "cloudflare";
13610
+ }>;
13611
+ kind: z.ZodEnum<{
13612
+ challenge: "challenge";
13613
+ firewall: "firewall";
13614
+ "rate-limit": "rate-limit";
13615
+ authentication: "authentication";
13616
+ }>;
13617
+ status: z.ZodNumber;
13618
+ crawler: z.ZodObject<{
13619
+ name: z.ZodString;
13620
+ robotsToken: z.ZodString;
13621
+ version: z.ZodString;
13622
+ userAgent: z.ZodString;
13623
+ documentationUrl: z.ZodString;
13624
+ }, z.core.$strip>;
13625
+ indicators: z.ZodArray<z.ZodString>;
13626
+ requestId: z.ZodOptional<z.ZodString>;
13627
+ guidance: z.ZodObject<{
13628
+ summary: z.ZodString;
13629
+ recommendedAction: z.ZodString;
13630
+ securityNote: z.ZodString;
13631
+ documentationUrl: z.ZodOptional<z.ZodString>;
13632
+ }, z.core.$strip>;
13633
+ }, z.core.$strip>>;
13634
+ robotsTxt: z.ZodOptional<z.ZodObject<{
13635
+ url: z.ZodString;
13636
+ allowed: z.ZodNullable<z.ZodBoolean>;
13637
+ availability: z.ZodEnum<{
13638
+ available: "available";
13639
+ absent: "absent";
13640
+ "access-blocked": "access-blocked";
13641
+ "rate-limited": "rate-limited";
13642
+ unreachable: "unreachable";
13643
+ }>;
13644
+ status: z.ZodOptional<z.ZodNumber>;
13645
+ error: z.ZodOptional<z.ZodString>;
13646
+ matchedLine: z.ZodOptional<z.ZodString>;
13647
+ }, z.core.$strip>>;
11907
13648
  extraction: z.ZodEnum<{
11908
13649
  complete: "complete";
11909
13650
  "not-applicable": "not-applicable";
@@ -11921,6 +13662,48 @@ declare const crawlerSchemas: {
11921
13662
  status: z.ZodNumber;
11922
13663
  location: z.ZodOptional<z.ZodString>;
11923
13664
  }, z.core.$strip>>>;
13665
+ accessBlock: z.ZodOptional<z.ZodObject<{
13666
+ provider: z.ZodEnum<{
13667
+ unknown: "unknown";
13668
+ cloudflare: "cloudflare";
13669
+ }>;
13670
+ kind: z.ZodEnum<{
13671
+ challenge: "challenge";
13672
+ firewall: "firewall";
13673
+ "rate-limit": "rate-limit";
13674
+ authentication: "authentication";
13675
+ }>;
13676
+ status: z.ZodNumber;
13677
+ crawler: z.ZodObject<{
13678
+ name: z.ZodString;
13679
+ robotsToken: z.ZodString;
13680
+ version: z.ZodString;
13681
+ userAgent: z.ZodString;
13682
+ documentationUrl: z.ZodString;
13683
+ }, z.core.$strip>;
13684
+ indicators: z.ZodArray<z.ZodString>;
13685
+ requestId: z.ZodOptional<z.ZodString>;
13686
+ guidance: z.ZodObject<{
13687
+ summary: z.ZodString;
13688
+ recommendedAction: z.ZodString;
13689
+ securityNote: z.ZodString;
13690
+ documentationUrl: z.ZodOptional<z.ZodString>;
13691
+ }, z.core.$strip>;
13692
+ }, z.core.$strip>>;
13693
+ robotsTxt: z.ZodOptional<z.ZodObject<{
13694
+ url: z.ZodString;
13695
+ allowed: z.ZodNullable<z.ZodBoolean>;
13696
+ availability: z.ZodEnum<{
13697
+ available: "available";
13698
+ absent: "absent";
13699
+ "access-blocked": "access-blocked";
13700
+ "rate-limited": "rate-limited";
13701
+ unreachable: "unreachable";
13702
+ }>;
13703
+ status: z.ZodOptional<z.ZodNumber>;
13704
+ error: z.ZodOptional<z.ZodString>;
13705
+ matchedLine: z.ZodOptional<z.ZodString>;
13706
+ }, z.core.$strip>>;
11924
13707
  extraction: z.ZodLiteral<"failed">;
11925
13708
  extractionError: z.ZodString;
11926
13709
  }, z.core.$strip>, z.ZodObject<{
@@ -12024,6 +13807,34 @@ declare const crawlerSchemas: {
12024
13807
  consecutiveErrors: z.ZodNumber;
12025
13808
  recentP95Ms: z.ZodOptional<z.ZodNumber>;
12026
13809
  }, z.core.$strip>>;
13810
+ accessBlock: z.ZodOptional<z.ZodObject<{
13811
+ provider: z.ZodEnum<{
13812
+ unknown: "unknown";
13813
+ cloudflare: "cloudflare";
13814
+ }>;
13815
+ kind: z.ZodEnum<{
13816
+ challenge: "challenge";
13817
+ firewall: "firewall";
13818
+ "rate-limit": "rate-limit";
13819
+ authentication: "authentication";
13820
+ }>;
13821
+ status: z.ZodNumber;
13822
+ crawler: z.ZodObject<{
13823
+ name: z.ZodString;
13824
+ robotsToken: z.ZodString;
13825
+ version: z.ZodString;
13826
+ userAgent: z.ZodString;
13827
+ documentationUrl: z.ZodString;
13828
+ }, z.core.$strip>;
13829
+ indicators: z.ZodArray<z.ZodString>;
13830
+ requestId: z.ZodOptional<z.ZodString>;
13831
+ guidance: z.ZodObject<{
13832
+ summary: z.ZodString;
13833
+ recommendedAction: z.ZodString;
13834
+ securityNote: z.ZodString;
13835
+ documentationUrl: z.ZodOptional<z.ZodString>;
13836
+ }, z.core.$strip>;
13837
+ }, z.core.$strip>>;
12027
13838
  robotsTxt: z.ZodOptional<z.ZodObject<{
12028
13839
  url: z.ZodString;
12029
13840
  cache: z.ZodEnum<{
@@ -12208,6 +14019,38 @@ declare const crawlerSchemas: {
12208
14019
  }, z.core.$strip>>;
12209
14020
  }, z.core.$strip>>;
12210
14021
  blocked: z.ZodOptional<z.ZodBoolean>;
14022
+ auditScope: z.ZodOptional<z.ZodEnum<{
14023
+ status: "status";
14024
+ full: "full";
14025
+ }>>;
14026
+ accessBlock: z.ZodOptional<z.ZodObject<{
14027
+ provider: z.ZodEnum<{
14028
+ unknown: "unknown";
14029
+ cloudflare: "cloudflare";
14030
+ }>;
14031
+ kind: z.ZodEnum<{
14032
+ challenge: "challenge";
14033
+ firewall: "firewall";
14034
+ "rate-limit": "rate-limit";
14035
+ authentication: "authentication";
14036
+ }>;
14037
+ status: z.ZodNumber;
14038
+ crawler: z.ZodObject<{
14039
+ name: z.ZodString;
14040
+ robotsToken: z.ZodString;
14041
+ version: z.ZodString;
14042
+ userAgent: z.ZodString;
14043
+ documentationUrl: z.ZodString;
14044
+ }, z.core.$strip>;
14045
+ indicators: z.ZodArray<z.ZodString>;
14046
+ requestId: z.ZodOptional<z.ZodString>;
14047
+ guidance: z.ZodObject<{
14048
+ summary: z.ZodString;
14049
+ recommendedAction: z.ZodString;
14050
+ securityNote: z.ZodString;
14051
+ documentationUrl: z.ZodOptional<z.ZodString>;
14052
+ }, z.core.$strip>;
14053
+ }, z.core.$strip>>;
12211
14054
  contentAuditAllowed: z.ZodOptional<z.ZodBoolean>;
12212
14055
  crawlDepth: z.ZodOptional<z.ZodNumber>;
12213
14056
  error: z.ZodOptional<z.ZodString>;
@@ -12280,10 +14123,12 @@ declare const crawlerSchemas: {
12280
14123
  wordCount: z.ZodNumber;
12281
14124
  contentExtraction: z.ZodOptional<z.ZodObject<{
12282
14125
  requested: z.ZodEnum<{
14126
+ crawler: "crawler";
12283
14127
  defuddle: "defuddle";
12284
14128
  readability: "readability";
12285
14129
  }>;
12286
14130
  used: z.ZodEnum<{
14131
+ crawler: "crawler";
12287
14132
  defuddle: "defuddle";
12288
14133
  readability: "readability";
12289
14134
  }>;
@@ -12522,6 +14367,11 @@ declare const crawlerJsonSchemas: {
12522
14367
  list: "list";
12523
14368
  sitemap: "sitemap";
12524
14369
  }>;
14370
+ strategy: z.ZodEnum<{
14371
+ full: "full";
14372
+ health: "health";
14373
+ }>;
14374
+ sitemapUrl: z.ZodOptional<z.ZodString>;
12525
14375
  urls: z.ZodArray<z.ZodString>;
12526
14376
  maxPages: z.ZodNumber;
12527
14377
  maxDepth: z.ZodNumber;
@@ -12554,8 +14404,56 @@ declare const crawlerJsonSchemas: {
12554
14404
  }, z.core.$strip>>;
12555
14405
  }, z.core.$strip>;
12556
14406
  }, z.core.$strip>;
14407
+ access: z.ZodOptional<z.ZodObject<{
14408
+ crawler: z.ZodObject<{
14409
+ name: z.ZodString;
14410
+ robotsToken: z.ZodString;
14411
+ version: z.ZodString;
14412
+ userAgent: z.ZodString;
14413
+ documentationUrl: z.ZodString;
14414
+ }, z.core.$strip>;
14415
+ blockedRequests: z.ZodNumber;
14416
+ providers: z.ZodRecord<z.ZodEnum<{
14417
+ unknown: "unknown";
14418
+ cloudflare: "cloudflare";
14419
+ }> & z.core.$partial, z.ZodNumber>;
14420
+ samples: z.ZodArray<z.ZodObject<{
14421
+ url: z.ZodString;
14422
+ evidence: z.ZodObject<{
14423
+ provider: z.ZodEnum<{
14424
+ unknown: "unknown";
14425
+ cloudflare: "cloudflare";
14426
+ }>;
14427
+ kind: z.ZodEnum<{
14428
+ challenge: "challenge";
14429
+ firewall: "firewall";
14430
+ "rate-limit": "rate-limit";
14431
+ authentication: "authentication";
14432
+ }>;
14433
+ status: z.ZodNumber;
14434
+ crawler: z.ZodObject<{
14435
+ name: z.ZodString;
14436
+ robotsToken: z.ZodString;
14437
+ version: z.ZodString;
14438
+ userAgent: z.ZodString;
14439
+ documentationUrl: z.ZodString;
14440
+ }, z.core.$strip>;
14441
+ indicators: z.ZodArray<z.ZodString>;
14442
+ requestId: z.ZodOptional<z.ZodString>;
14443
+ guidance: z.ZodObject<{
14444
+ summary: z.ZodString;
14445
+ recommendedAction: z.ZodString;
14446
+ securityNote: z.ZodString;
14447
+ documentationUrl: z.ZodOptional<z.ZodString>;
14448
+ }, z.core.$strip>;
14449
+ }, z.core.$strip>;
14450
+ }, z.core.$strip>>;
14451
+ sampleLimit: z.ZodNumber;
14452
+ truncated: z.ZodBoolean;
14453
+ }, z.core.$strip>>;
12557
14454
  summary: z.ZodObject<{
12558
14455
  totalPages: z.ZodNumber;
14456
+ statusOnlyPages: z.ZodNumber;
12559
14457
  indexablePages: z.ZodNumber;
12560
14458
  nonIndexablePages: z.ZodNumber;
12561
14459
  statusErrors: z.ZodNumber;
@@ -12569,6 +14467,7 @@ declare const crawlerJsonSchemas: {
12569
14467
  "configured-exclusion": "configured-exclusion";
12570
14468
  "duplicate-normalization": "duplicate-normalization";
12571
14469
  "invalid-url": "invalid-url";
14470
+ "memory-pressure": "memory-pressure";
12572
14471
  "off-origin": "off-origin";
12573
14472
  "origin-backpressure": "origin-backpressure";
12574
14473
  "queue-safety-limit": "queue-safety-limit";
@@ -12659,6 +14558,34 @@ declare const crawlerJsonSchemas: {
12659
14558
  consecutiveErrors: z.ZodNumber;
12660
14559
  recentP95Ms: z.ZodOptional<z.ZodNumber>;
12661
14560
  }, z.core.$strip>>;
14561
+ accessBlock: z.ZodOptional<z.ZodObject<{
14562
+ provider: z.ZodEnum<{
14563
+ unknown: "unknown";
14564
+ cloudflare: "cloudflare";
14565
+ }>;
14566
+ kind: z.ZodEnum<{
14567
+ challenge: "challenge";
14568
+ firewall: "firewall";
14569
+ "rate-limit": "rate-limit";
14570
+ authentication: "authentication";
14571
+ }>;
14572
+ status: z.ZodNumber;
14573
+ crawler: z.ZodObject<{
14574
+ name: z.ZodString;
14575
+ robotsToken: z.ZodString;
14576
+ version: z.ZodString;
14577
+ userAgent: z.ZodString;
14578
+ documentationUrl: z.ZodString;
14579
+ }, z.core.$strip>;
14580
+ indicators: z.ZodArray<z.ZodString>;
14581
+ requestId: z.ZodOptional<z.ZodString>;
14582
+ guidance: z.ZodObject<{
14583
+ summary: z.ZodString;
14584
+ recommendedAction: z.ZodString;
14585
+ securityNote: z.ZodString;
14586
+ documentationUrl: z.ZodOptional<z.ZodString>;
14587
+ }, z.core.$strip>;
14588
+ }, z.core.$strip>>;
12662
14589
  robotsTxt: z.ZodOptional<z.ZodObject<{
12663
14590
  url: z.ZodString;
12664
14591
  cache: z.ZodEnum<{
@@ -12843,6 +14770,38 @@ declare const crawlerJsonSchemas: {
12843
14770
  }, z.core.$strip>>;
12844
14771
  }, z.core.$strip>>;
12845
14772
  blocked: z.ZodOptional<z.ZodBoolean>;
14773
+ auditScope: z.ZodOptional<z.ZodEnum<{
14774
+ status: "status";
14775
+ full: "full";
14776
+ }>>;
14777
+ accessBlock: z.ZodOptional<z.ZodObject<{
14778
+ provider: z.ZodEnum<{
14779
+ unknown: "unknown";
14780
+ cloudflare: "cloudflare";
14781
+ }>;
14782
+ kind: z.ZodEnum<{
14783
+ challenge: "challenge";
14784
+ firewall: "firewall";
14785
+ "rate-limit": "rate-limit";
14786
+ authentication: "authentication";
14787
+ }>;
14788
+ status: z.ZodNumber;
14789
+ crawler: z.ZodObject<{
14790
+ name: z.ZodString;
14791
+ robotsToken: z.ZodString;
14792
+ version: z.ZodString;
14793
+ userAgent: z.ZodString;
14794
+ documentationUrl: z.ZodString;
14795
+ }, z.core.$strip>;
14796
+ indicators: z.ZodArray<z.ZodString>;
14797
+ requestId: z.ZodOptional<z.ZodString>;
14798
+ guidance: z.ZodObject<{
14799
+ summary: z.ZodString;
14800
+ recommendedAction: z.ZodString;
14801
+ securityNote: z.ZodString;
14802
+ documentationUrl: z.ZodOptional<z.ZodString>;
14803
+ }, z.core.$strip>;
14804
+ }, z.core.$strip>>;
12846
14805
  contentAuditAllowed: z.ZodOptional<z.ZodBoolean>;
12847
14806
  crawlDepth: z.ZodOptional<z.ZodNumber>;
12848
14807
  error: z.ZodOptional<z.ZodString>;
@@ -12915,10 +14874,12 @@ declare const crawlerJsonSchemas: {
12915
14874
  wordCount: z.ZodNumber;
12916
14875
  contentExtraction: z.ZodOptional<z.ZodObject<{
12917
14876
  requested: z.ZodEnum<{
14877
+ crawler: "crawler";
12918
14878
  defuddle: "defuddle";
12919
14879
  readability: "readability";
12920
14880
  }>;
12921
14881
  used: z.ZodEnum<{
14882
+ crawler: "crawler";
12922
14883
  defuddle: "defuddle";
12923
14884
  readability: "readability";
12924
14885
  }>;
@@ -13264,6 +15225,7 @@ declare const crawlerJsonSchemas: {
13264
15225
  status: z.ZodOptional<z.ZodNumber>;
13265
15226
  error: z.ZodOptional<z.ZodString>;
13266
15227
  sitemapUrls: z.ZodArray<z.ZodString>;
15228
+ contentSignals: z.ZodOptional<z.ZodArray<z.ZodString>>;
13267
15229
  botAccess: z.ZodArray<z.ZodObject<{
13268
15230
  userAgent: z.ZodString;
13269
15231
  allowed: z.ZodNullable<z.ZodBoolean>;
@@ -13294,6 +15256,7 @@ declare const crawlerJsonSchemas: {
13294
15256
  roots: z.ZodArray<z.ZodObject<{
13295
15257
  url: z.ZodString;
13296
15258
  source: z.ZodEnum<{
15259
+ explicit: "explicit";
13297
15260
  "robots-txt": "robots-txt";
13298
15261
  "default-path": "default-path";
13299
15262
  }>;
@@ -13554,6 +15517,31 @@ declare const crawlerJsonSchemas: {
13554
15517
  missingMarkdownPages: z.ZodNumber;
13555
15518
  consistent: z.ZodNullable<z.ZodBoolean>;
13556
15519
  }, z.core.$strip>;
15520
+ endpointDiscovery: z.ZodOptional<z.ZodObject<{
15521
+ linkHeader: z.ZodObject<{
15522
+ url: z.ZodString;
15523
+ status: z.ZodOptional<z.ZodNumber>;
15524
+ entries: z.ZodArray<z.ZodObject<{
15525
+ url: z.ZodString;
15526
+ rel: z.ZodArray<z.ZodString>;
15527
+ type: z.ZodOptional<z.ZodString>;
15528
+ }, z.core.$strip>>;
15529
+ registeredRels: z.ZodArray<z.ZodString>;
15530
+ emergingRels: z.ZodArray<z.ZodString>;
15531
+ error: z.ZodOptional<z.ZodString>;
15532
+ }, z.core.$strip>;
15533
+ endpoints: z.ZodArray<z.ZodObject<{
15534
+ id: z.ZodString;
15535
+ url: z.ZodString;
15536
+ status: z.ZodOptional<z.ZodNumber>;
15537
+ exists: z.ZodBoolean;
15538
+ contentType: z.ZodOptional<z.ZodString>;
15539
+ validJson: z.ZodOptional<z.ZodBoolean>;
15540
+ presentFields: z.ZodOptional<z.ZodArray<z.ZodString>>;
15541
+ missingFields: z.ZodOptional<z.ZodArray<z.ZodString>>;
15542
+ error: z.ZodOptional<z.ZodString>;
15543
+ }, z.core.$strip>>;
15544
+ }, z.core.$strip>>;
13557
15545
  protocolVariants: z.ZodObject<{
13558
15546
  http: z.ZodObject<{
13559
15547
  url: z.ZodString;
@@ -13588,6 +15576,48 @@ declare const crawlerJsonSchemas: {
13588
15576
  status: z.ZodNumber;
13589
15577
  location: z.ZodOptional<z.ZodString>;
13590
15578
  }, z.core.$strip>>>;
15579
+ accessBlock: z.ZodOptional<z.ZodObject<{
15580
+ provider: z.ZodEnum<{
15581
+ unknown: "unknown";
15582
+ cloudflare: "cloudflare";
15583
+ }>;
15584
+ kind: z.ZodEnum<{
15585
+ challenge: "challenge";
15586
+ firewall: "firewall";
15587
+ "rate-limit": "rate-limit";
15588
+ authentication: "authentication";
15589
+ }>;
15590
+ status: z.ZodNumber;
15591
+ crawler: z.ZodObject<{
15592
+ name: z.ZodString;
15593
+ robotsToken: z.ZodString;
15594
+ version: z.ZodString;
15595
+ userAgent: z.ZodString;
15596
+ documentationUrl: z.ZodString;
15597
+ }, z.core.$strip>;
15598
+ indicators: z.ZodArray<z.ZodString>;
15599
+ requestId: z.ZodOptional<z.ZodString>;
15600
+ guidance: z.ZodObject<{
15601
+ summary: z.ZodString;
15602
+ recommendedAction: z.ZodString;
15603
+ securityNote: z.ZodString;
15604
+ documentationUrl: z.ZodOptional<z.ZodString>;
15605
+ }, z.core.$strip>;
15606
+ }, z.core.$strip>>;
15607
+ robotsTxt: z.ZodOptional<z.ZodObject<{
15608
+ url: z.ZodString;
15609
+ allowed: z.ZodNullable<z.ZodBoolean>;
15610
+ availability: z.ZodEnum<{
15611
+ available: "available";
15612
+ absent: "absent";
15613
+ "access-blocked": "access-blocked";
15614
+ "rate-limited": "rate-limited";
15615
+ unreachable: "unreachable";
15616
+ }>;
15617
+ status: z.ZodOptional<z.ZodNumber>;
15618
+ error: z.ZodOptional<z.ZodString>;
15619
+ matchedLine: z.ZodOptional<z.ZodString>;
15620
+ }, z.core.$strip>>;
13591
15621
  extraction: z.ZodEnum<{
13592
15622
  complete: "complete";
13593
15623
  "not-applicable": "not-applicable";
@@ -13605,6 +15635,48 @@ declare const crawlerJsonSchemas: {
13605
15635
  status: z.ZodNumber;
13606
15636
  location: z.ZodOptional<z.ZodString>;
13607
15637
  }, z.core.$strip>>>;
15638
+ accessBlock: z.ZodOptional<z.ZodObject<{
15639
+ provider: z.ZodEnum<{
15640
+ unknown: "unknown";
15641
+ cloudflare: "cloudflare";
15642
+ }>;
15643
+ kind: z.ZodEnum<{
15644
+ challenge: "challenge";
15645
+ firewall: "firewall";
15646
+ "rate-limit": "rate-limit";
15647
+ authentication: "authentication";
15648
+ }>;
15649
+ status: z.ZodNumber;
15650
+ crawler: z.ZodObject<{
15651
+ name: z.ZodString;
15652
+ robotsToken: z.ZodString;
15653
+ version: z.ZodString;
15654
+ userAgent: z.ZodString;
15655
+ documentationUrl: z.ZodString;
15656
+ }, z.core.$strip>;
15657
+ indicators: z.ZodArray<z.ZodString>;
15658
+ requestId: z.ZodOptional<z.ZodString>;
15659
+ guidance: z.ZodObject<{
15660
+ summary: z.ZodString;
15661
+ recommendedAction: z.ZodString;
15662
+ securityNote: z.ZodString;
15663
+ documentationUrl: z.ZodOptional<z.ZodString>;
15664
+ }, z.core.$strip>;
15665
+ }, z.core.$strip>>;
15666
+ robotsTxt: z.ZodOptional<z.ZodObject<{
15667
+ url: z.ZodString;
15668
+ allowed: z.ZodNullable<z.ZodBoolean>;
15669
+ availability: z.ZodEnum<{
15670
+ available: "available";
15671
+ absent: "absent";
15672
+ "access-blocked": "access-blocked";
15673
+ "rate-limited": "rate-limited";
15674
+ unreachable: "unreachable";
15675
+ }>;
15676
+ status: z.ZodOptional<z.ZodNumber>;
15677
+ error: z.ZodOptional<z.ZodString>;
15678
+ matchedLine: z.ZodOptional<z.ZodString>;
15679
+ }, z.core.$strip>>;
13608
15680
  extraction: z.ZodLiteral<"failed">;
13609
15681
  extractionError: z.ZodString;
13610
15682
  }, z.core.$strip>, z.ZodObject<{
@@ -13673,6 +15745,11 @@ declare const crawlerJsonSchemas: {
13673
15745
  list: "list";
13674
15746
  sitemap: "sitemap";
13675
15747
  }>;
15748
+ strategy: z.ZodEnum<{
15749
+ full: "full";
15750
+ health: "health";
15751
+ }>;
15752
+ sitemapUrl: z.ZodOptional<z.ZodString>;
13676
15753
  urls: z.ZodArray<z.ZodString>;
13677
15754
  maxPages: z.ZodNumber;
13678
15755
  maxDepth: z.ZodNumber;
@@ -13705,8 +15782,56 @@ declare const crawlerJsonSchemas: {
13705
15782
  }, z.core.$strip>>;
13706
15783
  }, z.core.$strip>;
13707
15784
  }, z.core.$strip>;
15785
+ access: z.ZodOptional<z.ZodObject<{
15786
+ crawler: z.ZodObject<{
15787
+ name: z.ZodString;
15788
+ robotsToken: z.ZodString;
15789
+ version: z.ZodString;
15790
+ userAgent: z.ZodString;
15791
+ documentationUrl: z.ZodString;
15792
+ }, z.core.$strip>;
15793
+ blockedRequests: z.ZodNumber;
15794
+ providers: z.ZodRecord<z.ZodEnum<{
15795
+ unknown: "unknown";
15796
+ cloudflare: "cloudflare";
15797
+ }> & z.core.$partial, z.ZodNumber>;
15798
+ samples: z.ZodArray<z.ZodObject<{
15799
+ url: z.ZodString;
15800
+ evidence: z.ZodObject<{
15801
+ provider: z.ZodEnum<{
15802
+ unknown: "unknown";
15803
+ cloudflare: "cloudflare";
15804
+ }>;
15805
+ kind: z.ZodEnum<{
15806
+ challenge: "challenge";
15807
+ firewall: "firewall";
15808
+ "rate-limit": "rate-limit";
15809
+ authentication: "authentication";
15810
+ }>;
15811
+ status: z.ZodNumber;
15812
+ crawler: z.ZodObject<{
15813
+ name: z.ZodString;
15814
+ robotsToken: z.ZodString;
15815
+ version: z.ZodString;
15816
+ userAgent: z.ZodString;
15817
+ documentationUrl: z.ZodString;
15818
+ }, z.core.$strip>;
15819
+ indicators: z.ZodArray<z.ZodString>;
15820
+ requestId: z.ZodOptional<z.ZodString>;
15821
+ guidance: z.ZodObject<{
15822
+ summary: z.ZodString;
15823
+ recommendedAction: z.ZodString;
15824
+ securityNote: z.ZodString;
15825
+ documentationUrl: z.ZodOptional<z.ZodString>;
15826
+ }, z.core.$strip>;
15827
+ }, z.core.$strip>;
15828
+ }, z.core.$strip>>;
15829
+ sampleLimit: z.ZodNumber;
15830
+ truncated: z.ZodBoolean;
15831
+ }, z.core.$strip>>;
13708
15832
  summary: z.ZodObject<{
13709
15833
  totalPages: z.ZodNumber;
15834
+ statusOnlyPages: z.ZodNumber;
13710
15835
  indexablePages: z.ZodNumber;
13711
15836
  nonIndexablePages: z.ZodNumber;
13712
15837
  statusErrors: z.ZodNumber;
@@ -13720,6 +15845,7 @@ declare const crawlerJsonSchemas: {
13720
15845
  "configured-exclusion": "configured-exclusion";
13721
15846
  "duplicate-normalization": "duplicate-normalization";
13722
15847
  "invalid-url": "invalid-url";
15848
+ "memory-pressure": "memory-pressure";
13723
15849
  "off-origin": "off-origin";
13724
15850
  "origin-backpressure": "origin-backpressure";
13725
15851
  "queue-safety-limit": "queue-safety-limit";
@@ -13810,6 +15936,34 @@ declare const crawlerJsonSchemas: {
13810
15936
  consecutiveErrors: z.ZodNumber;
13811
15937
  recentP95Ms: z.ZodOptional<z.ZodNumber>;
13812
15938
  }, z.core.$strip>>;
15939
+ accessBlock: z.ZodOptional<z.ZodObject<{
15940
+ provider: z.ZodEnum<{
15941
+ unknown: "unknown";
15942
+ cloudflare: "cloudflare";
15943
+ }>;
15944
+ kind: z.ZodEnum<{
15945
+ challenge: "challenge";
15946
+ firewall: "firewall";
15947
+ "rate-limit": "rate-limit";
15948
+ authentication: "authentication";
15949
+ }>;
15950
+ status: z.ZodNumber;
15951
+ crawler: z.ZodObject<{
15952
+ name: z.ZodString;
15953
+ robotsToken: z.ZodString;
15954
+ version: z.ZodString;
15955
+ userAgent: z.ZodString;
15956
+ documentationUrl: z.ZodString;
15957
+ }, z.core.$strip>;
15958
+ indicators: z.ZodArray<z.ZodString>;
15959
+ requestId: z.ZodOptional<z.ZodString>;
15960
+ guidance: z.ZodObject<{
15961
+ summary: z.ZodString;
15962
+ recommendedAction: z.ZodString;
15963
+ securityNote: z.ZodString;
15964
+ documentationUrl: z.ZodOptional<z.ZodString>;
15965
+ }, z.core.$strip>;
15966
+ }, z.core.$strip>>;
13813
15967
  robotsTxt: z.ZodOptional<z.ZodObject<{
13814
15968
  url: z.ZodString;
13815
15969
  cache: z.ZodEnum<{
@@ -13994,6 +16148,38 @@ declare const crawlerJsonSchemas: {
13994
16148
  }, z.core.$strip>>;
13995
16149
  }, z.core.$strip>>;
13996
16150
  blocked: z.ZodOptional<z.ZodBoolean>;
16151
+ auditScope: z.ZodOptional<z.ZodEnum<{
16152
+ status: "status";
16153
+ full: "full";
16154
+ }>>;
16155
+ accessBlock: z.ZodOptional<z.ZodObject<{
16156
+ provider: z.ZodEnum<{
16157
+ unknown: "unknown";
16158
+ cloudflare: "cloudflare";
16159
+ }>;
16160
+ kind: z.ZodEnum<{
16161
+ challenge: "challenge";
16162
+ firewall: "firewall";
16163
+ "rate-limit": "rate-limit";
16164
+ authentication: "authentication";
16165
+ }>;
16166
+ status: z.ZodNumber;
16167
+ crawler: z.ZodObject<{
16168
+ name: z.ZodString;
16169
+ robotsToken: z.ZodString;
16170
+ version: z.ZodString;
16171
+ userAgent: z.ZodString;
16172
+ documentationUrl: z.ZodString;
16173
+ }, z.core.$strip>;
16174
+ indicators: z.ZodArray<z.ZodString>;
16175
+ requestId: z.ZodOptional<z.ZodString>;
16176
+ guidance: z.ZodObject<{
16177
+ summary: z.ZodString;
16178
+ recommendedAction: z.ZodString;
16179
+ securityNote: z.ZodString;
16180
+ documentationUrl: z.ZodOptional<z.ZodString>;
16181
+ }, z.core.$strip>;
16182
+ }, z.core.$strip>>;
13997
16183
  contentAuditAllowed: z.ZodOptional<z.ZodBoolean>;
13998
16184
  crawlDepth: z.ZodOptional<z.ZodNumber>;
13999
16185
  error: z.ZodOptional<z.ZodString>;
@@ -14066,10 +16252,12 @@ declare const crawlerJsonSchemas: {
14066
16252
  wordCount: z.ZodNumber;
14067
16253
  contentExtraction: z.ZodOptional<z.ZodObject<{
14068
16254
  requested: z.ZodEnum<{
16255
+ crawler: "crawler";
14069
16256
  defuddle: "defuddle";
14070
16257
  readability: "readability";
14071
16258
  }>;
14072
16259
  used: z.ZodEnum<{
16260
+ crawler: "crawler";
14073
16261
  defuddle: "defuddle";
14074
16262
  readability: "readability";
14075
16263
  }>;
@@ -14415,6 +16603,7 @@ declare const crawlerJsonSchemas: {
14415
16603
  status: z.ZodOptional<z.ZodNumber>;
14416
16604
  error: z.ZodOptional<z.ZodString>;
14417
16605
  sitemapUrls: z.ZodArray<z.ZodString>;
16606
+ contentSignals: z.ZodOptional<z.ZodArray<z.ZodString>>;
14418
16607
  botAccess: z.ZodArray<z.ZodObject<{
14419
16608
  userAgent: z.ZodString;
14420
16609
  allowed: z.ZodNullable<z.ZodBoolean>;
@@ -14445,6 +16634,7 @@ declare const crawlerJsonSchemas: {
14445
16634
  roots: z.ZodArray<z.ZodObject<{
14446
16635
  url: z.ZodString;
14447
16636
  source: z.ZodEnum<{
16637
+ explicit: "explicit";
14448
16638
  "robots-txt": "robots-txt";
14449
16639
  "default-path": "default-path";
14450
16640
  }>;
@@ -14705,6 +16895,31 @@ declare const crawlerJsonSchemas: {
14705
16895
  missingMarkdownPages: z.ZodNumber;
14706
16896
  consistent: z.ZodNullable<z.ZodBoolean>;
14707
16897
  }, z.core.$strip>;
16898
+ endpointDiscovery: z.ZodOptional<z.ZodObject<{
16899
+ linkHeader: z.ZodObject<{
16900
+ url: z.ZodString;
16901
+ status: z.ZodOptional<z.ZodNumber>;
16902
+ entries: z.ZodArray<z.ZodObject<{
16903
+ url: z.ZodString;
16904
+ rel: z.ZodArray<z.ZodString>;
16905
+ type: z.ZodOptional<z.ZodString>;
16906
+ }, z.core.$strip>>;
16907
+ registeredRels: z.ZodArray<z.ZodString>;
16908
+ emergingRels: z.ZodArray<z.ZodString>;
16909
+ error: z.ZodOptional<z.ZodString>;
16910
+ }, z.core.$strip>;
16911
+ endpoints: z.ZodArray<z.ZodObject<{
16912
+ id: z.ZodString;
16913
+ url: z.ZodString;
16914
+ status: z.ZodOptional<z.ZodNumber>;
16915
+ exists: z.ZodBoolean;
16916
+ contentType: z.ZodOptional<z.ZodString>;
16917
+ validJson: z.ZodOptional<z.ZodBoolean>;
16918
+ presentFields: z.ZodOptional<z.ZodArray<z.ZodString>>;
16919
+ missingFields: z.ZodOptional<z.ZodArray<z.ZodString>>;
16920
+ error: z.ZodOptional<z.ZodString>;
16921
+ }, z.core.$strip>>;
16922
+ }, z.core.$strip>>;
14708
16923
  protocolVariants: z.ZodObject<{
14709
16924
  http: z.ZodObject<{
14710
16925
  url: z.ZodString;
@@ -14739,6 +16954,48 @@ declare const crawlerJsonSchemas: {
14739
16954
  status: z.ZodNumber;
14740
16955
  location: z.ZodOptional<z.ZodString>;
14741
16956
  }, z.core.$strip>>>;
16957
+ accessBlock: z.ZodOptional<z.ZodObject<{
16958
+ provider: z.ZodEnum<{
16959
+ unknown: "unknown";
16960
+ cloudflare: "cloudflare";
16961
+ }>;
16962
+ kind: z.ZodEnum<{
16963
+ challenge: "challenge";
16964
+ firewall: "firewall";
16965
+ "rate-limit": "rate-limit";
16966
+ authentication: "authentication";
16967
+ }>;
16968
+ status: z.ZodNumber;
16969
+ crawler: z.ZodObject<{
16970
+ name: z.ZodString;
16971
+ robotsToken: z.ZodString;
16972
+ version: z.ZodString;
16973
+ userAgent: z.ZodString;
16974
+ documentationUrl: z.ZodString;
16975
+ }, z.core.$strip>;
16976
+ indicators: z.ZodArray<z.ZodString>;
16977
+ requestId: z.ZodOptional<z.ZodString>;
16978
+ guidance: z.ZodObject<{
16979
+ summary: z.ZodString;
16980
+ recommendedAction: z.ZodString;
16981
+ securityNote: z.ZodString;
16982
+ documentationUrl: z.ZodOptional<z.ZodString>;
16983
+ }, z.core.$strip>;
16984
+ }, z.core.$strip>>;
16985
+ robotsTxt: z.ZodOptional<z.ZodObject<{
16986
+ url: z.ZodString;
16987
+ allowed: z.ZodNullable<z.ZodBoolean>;
16988
+ availability: z.ZodEnum<{
16989
+ available: "available";
16990
+ absent: "absent";
16991
+ "access-blocked": "access-blocked";
16992
+ "rate-limited": "rate-limited";
16993
+ unreachable: "unreachable";
16994
+ }>;
16995
+ status: z.ZodOptional<z.ZodNumber>;
16996
+ error: z.ZodOptional<z.ZodString>;
16997
+ matchedLine: z.ZodOptional<z.ZodString>;
16998
+ }, z.core.$strip>>;
14742
16999
  extraction: z.ZodEnum<{
14743
17000
  complete: "complete";
14744
17001
  "not-applicable": "not-applicable";
@@ -14756,6 +17013,48 @@ declare const crawlerJsonSchemas: {
14756
17013
  status: z.ZodNumber;
14757
17014
  location: z.ZodOptional<z.ZodString>;
14758
17015
  }, z.core.$strip>>>;
17016
+ accessBlock: z.ZodOptional<z.ZodObject<{
17017
+ provider: z.ZodEnum<{
17018
+ unknown: "unknown";
17019
+ cloudflare: "cloudflare";
17020
+ }>;
17021
+ kind: z.ZodEnum<{
17022
+ challenge: "challenge";
17023
+ firewall: "firewall";
17024
+ "rate-limit": "rate-limit";
17025
+ authentication: "authentication";
17026
+ }>;
17027
+ status: z.ZodNumber;
17028
+ crawler: z.ZodObject<{
17029
+ name: z.ZodString;
17030
+ robotsToken: z.ZodString;
17031
+ version: z.ZodString;
17032
+ userAgent: z.ZodString;
17033
+ documentationUrl: z.ZodString;
17034
+ }, z.core.$strip>;
17035
+ indicators: z.ZodArray<z.ZodString>;
17036
+ requestId: z.ZodOptional<z.ZodString>;
17037
+ guidance: z.ZodObject<{
17038
+ summary: z.ZodString;
17039
+ recommendedAction: z.ZodString;
17040
+ securityNote: z.ZodString;
17041
+ documentationUrl: z.ZodOptional<z.ZodString>;
17042
+ }, z.core.$strip>;
17043
+ }, z.core.$strip>>;
17044
+ robotsTxt: z.ZodOptional<z.ZodObject<{
17045
+ url: z.ZodString;
17046
+ allowed: z.ZodNullable<z.ZodBoolean>;
17047
+ availability: z.ZodEnum<{
17048
+ available: "available";
17049
+ absent: "absent";
17050
+ "access-blocked": "access-blocked";
17051
+ "rate-limited": "rate-limited";
17052
+ unreachable: "unreachable";
17053
+ }>;
17054
+ status: z.ZodOptional<z.ZodNumber>;
17055
+ error: z.ZodOptional<z.ZodString>;
17056
+ matchedLine: z.ZodOptional<z.ZodString>;
17057
+ }, z.core.$strip>>;
14759
17058
  extraction: z.ZodLiteral<"failed">;
14760
17059
  extractionError: z.ZodString;
14761
17060
  }, z.core.$strip>, z.ZodObject<{
@@ -14824,6 +17123,11 @@ declare const crawlerJsonSchemas: {
14824
17123
  list: "list";
14825
17124
  sitemap: "sitemap";
14826
17125
  }>;
17126
+ strategy: z.ZodEnum<{
17127
+ full: "full";
17128
+ health: "health";
17129
+ }>;
17130
+ sitemapUrl: z.ZodOptional<z.ZodString>;
14827
17131
  urls: z.ZodArray<z.ZodString>;
14828
17132
  maxPages: z.ZodNumber;
14829
17133
  maxDepth: z.ZodNumber;
@@ -14856,8 +17160,56 @@ declare const crawlerJsonSchemas: {
14856
17160
  }, z.core.$strip>>;
14857
17161
  }, z.core.$strip>;
14858
17162
  }, z.core.$strip>;
17163
+ access: z.ZodOptional<z.ZodObject<{
17164
+ crawler: z.ZodObject<{
17165
+ name: z.ZodString;
17166
+ robotsToken: z.ZodString;
17167
+ version: z.ZodString;
17168
+ userAgent: z.ZodString;
17169
+ documentationUrl: z.ZodString;
17170
+ }, z.core.$strip>;
17171
+ blockedRequests: z.ZodNumber;
17172
+ providers: z.ZodRecord<z.ZodEnum<{
17173
+ unknown: "unknown";
17174
+ cloudflare: "cloudflare";
17175
+ }> & z.core.$partial, z.ZodNumber>;
17176
+ samples: z.ZodArray<z.ZodObject<{
17177
+ url: z.ZodString;
17178
+ evidence: z.ZodObject<{
17179
+ provider: z.ZodEnum<{
17180
+ unknown: "unknown";
17181
+ cloudflare: "cloudflare";
17182
+ }>;
17183
+ kind: z.ZodEnum<{
17184
+ challenge: "challenge";
17185
+ firewall: "firewall";
17186
+ "rate-limit": "rate-limit";
17187
+ authentication: "authentication";
17188
+ }>;
17189
+ status: z.ZodNumber;
17190
+ crawler: z.ZodObject<{
17191
+ name: z.ZodString;
17192
+ robotsToken: z.ZodString;
17193
+ version: z.ZodString;
17194
+ userAgent: z.ZodString;
17195
+ documentationUrl: z.ZodString;
17196
+ }, z.core.$strip>;
17197
+ indicators: z.ZodArray<z.ZodString>;
17198
+ requestId: z.ZodOptional<z.ZodString>;
17199
+ guidance: z.ZodObject<{
17200
+ summary: z.ZodString;
17201
+ recommendedAction: z.ZodString;
17202
+ securityNote: z.ZodString;
17203
+ documentationUrl: z.ZodOptional<z.ZodString>;
17204
+ }, z.core.$strip>;
17205
+ }, z.core.$strip>;
17206
+ }, z.core.$strip>>;
17207
+ sampleLimit: z.ZodNumber;
17208
+ truncated: z.ZodBoolean;
17209
+ }, z.core.$strip>>;
14859
17210
  summary: z.ZodObject<{
14860
17211
  totalPages: z.ZodNumber;
17212
+ statusOnlyPages: z.ZodNumber;
14861
17213
  indexablePages: z.ZodNumber;
14862
17214
  nonIndexablePages: z.ZodNumber;
14863
17215
  statusErrors: z.ZodNumber;
@@ -14871,6 +17223,7 @@ declare const crawlerJsonSchemas: {
14871
17223
  "configured-exclusion": "configured-exclusion";
14872
17224
  "duplicate-normalization": "duplicate-normalization";
14873
17225
  "invalid-url": "invalid-url";
17226
+ "memory-pressure": "memory-pressure";
14874
17227
  "off-origin": "off-origin";
14875
17228
  "origin-backpressure": "origin-backpressure";
14876
17229
  "queue-safety-limit": "queue-safety-limit";
@@ -14961,6 +17314,34 @@ declare const crawlerJsonSchemas: {
14961
17314
  consecutiveErrors: z.ZodNumber;
14962
17315
  recentP95Ms: z.ZodOptional<z.ZodNumber>;
14963
17316
  }, z.core.$strip>>;
17317
+ accessBlock: z.ZodOptional<z.ZodObject<{
17318
+ provider: z.ZodEnum<{
17319
+ unknown: "unknown";
17320
+ cloudflare: "cloudflare";
17321
+ }>;
17322
+ kind: z.ZodEnum<{
17323
+ challenge: "challenge";
17324
+ firewall: "firewall";
17325
+ "rate-limit": "rate-limit";
17326
+ authentication: "authentication";
17327
+ }>;
17328
+ status: z.ZodNumber;
17329
+ crawler: z.ZodObject<{
17330
+ name: z.ZodString;
17331
+ robotsToken: z.ZodString;
17332
+ version: z.ZodString;
17333
+ userAgent: z.ZodString;
17334
+ documentationUrl: z.ZodString;
17335
+ }, z.core.$strip>;
17336
+ indicators: z.ZodArray<z.ZodString>;
17337
+ requestId: z.ZodOptional<z.ZodString>;
17338
+ guidance: z.ZodObject<{
17339
+ summary: z.ZodString;
17340
+ recommendedAction: z.ZodString;
17341
+ securityNote: z.ZodString;
17342
+ documentationUrl: z.ZodOptional<z.ZodString>;
17343
+ }, z.core.$strip>;
17344
+ }, z.core.$strip>>;
14964
17345
  robotsTxt: z.ZodOptional<z.ZodObject<{
14965
17346
  url: z.ZodString;
14966
17347
  cache: z.ZodEnum<{
@@ -15145,6 +17526,38 @@ declare const crawlerJsonSchemas: {
15145
17526
  }, z.core.$strip>>;
15146
17527
  }, z.core.$strip>>;
15147
17528
  blocked: z.ZodOptional<z.ZodBoolean>;
17529
+ auditScope: z.ZodOptional<z.ZodEnum<{
17530
+ status: "status";
17531
+ full: "full";
17532
+ }>>;
17533
+ accessBlock: z.ZodOptional<z.ZodObject<{
17534
+ provider: z.ZodEnum<{
17535
+ unknown: "unknown";
17536
+ cloudflare: "cloudflare";
17537
+ }>;
17538
+ kind: z.ZodEnum<{
17539
+ challenge: "challenge";
17540
+ firewall: "firewall";
17541
+ "rate-limit": "rate-limit";
17542
+ authentication: "authentication";
17543
+ }>;
17544
+ status: z.ZodNumber;
17545
+ crawler: z.ZodObject<{
17546
+ name: z.ZodString;
17547
+ robotsToken: z.ZodString;
17548
+ version: z.ZodString;
17549
+ userAgent: z.ZodString;
17550
+ documentationUrl: z.ZodString;
17551
+ }, z.core.$strip>;
17552
+ indicators: z.ZodArray<z.ZodString>;
17553
+ requestId: z.ZodOptional<z.ZodString>;
17554
+ guidance: z.ZodObject<{
17555
+ summary: z.ZodString;
17556
+ recommendedAction: z.ZodString;
17557
+ securityNote: z.ZodString;
17558
+ documentationUrl: z.ZodOptional<z.ZodString>;
17559
+ }, z.core.$strip>;
17560
+ }, z.core.$strip>>;
15148
17561
  contentAuditAllowed: z.ZodOptional<z.ZodBoolean>;
15149
17562
  crawlDepth: z.ZodOptional<z.ZodNumber>;
15150
17563
  error: z.ZodOptional<z.ZodString>;
@@ -15217,10 +17630,12 @@ declare const crawlerJsonSchemas: {
15217
17630
  wordCount: z.ZodNumber;
15218
17631
  contentExtraction: z.ZodOptional<z.ZodObject<{
15219
17632
  requested: z.ZodEnum<{
17633
+ crawler: "crawler";
15220
17634
  defuddle: "defuddle";
15221
17635
  readability: "readability";
15222
17636
  }>;
15223
17637
  used: z.ZodEnum<{
17638
+ crawler: "crawler";
15224
17639
  defuddle: "defuddle";
15225
17640
  readability: "readability";
15226
17641
  }>;
@@ -15566,6 +17981,7 @@ declare const crawlerJsonSchemas: {
15566
17981
  status: z.ZodOptional<z.ZodNumber>;
15567
17982
  error: z.ZodOptional<z.ZodString>;
15568
17983
  sitemapUrls: z.ZodArray<z.ZodString>;
17984
+ contentSignals: z.ZodOptional<z.ZodArray<z.ZodString>>;
15569
17985
  botAccess: z.ZodArray<z.ZodObject<{
15570
17986
  userAgent: z.ZodString;
15571
17987
  allowed: z.ZodNullable<z.ZodBoolean>;
@@ -15596,6 +18012,7 @@ declare const crawlerJsonSchemas: {
15596
18012
  roots: z.ZodArray<z.ZodObject<{
15597
18013
  url: z.ZodString;
15598
18014
  source: z.ZodEnum<{
18015
+ explicit: "explicit";
15599
18016
  "robots-txt": "robots-txt";
15600
18017
  "default-path": "default-path";
15601
18018
  }>;
@@ -15856,6 +18273,31 @@ declare const crawlerJsonSchemas: {
15856
18273
  missingMarkdownPages: z.ZodNumber;
15857
18274
  consistent: z.ZodNullable<z.ZodBoolean>;
15858
18275
  }, z.core.$strip>;
18276
+ endpointDiscovery: z.ZodOptional<z.ZodObject<{
18277
+ linkHeader: z.ZodObject<{
18278
+ url: z.ZodString;
18279
+ status: z.ZodOptional<z.ZodNumber>;
18280
+ entries: z.ZodArray<z.ZodObject<{
18281
+ url: z.ZodString;
18282
+ rel: z.ZodArray<z.ZodString>;
18283
+ type: z.ZodOptional<z.ZodString>;
18284
+ }, z.core.$strip>>;
18285
+ registeredRels: z.ZodArray<z.ZodString>;
18286
+ emergingRels: z.ZodArray<z.ZodString>;
18287
+ error: z.ZodOptional<z.ZodString>;
18288
+ }, z.core.$strip>;
18289
+ endpoints: z.ZodArray<z.ZodObject<{
18290
+ id: z.ZodString;
18291
+ url: z.ZodString;
18292
+ status: z.ZodOptional<z.ZodNumber>;
18293
+ exists: z.ZodBoolean;
18294
+ contentType: z.ZodOptional<z.ZodString>;
18295
+ validJson: z.ZodOptional<z.ZodBoolean>;
18296
+ presentFields: z.ZodOptional<z.ZodArray<z.ZodString>>;
18297
+ missingFields: z.ZodOptional<z.ZodArray<z.ZodString>>;
18298
+ error: z.ZodOptional<z.ZodString>;
18299
+ }, z.core.$strip>>;
18300
+ }, z.core.$strip>>;
15859
18301
  protocolVariants: z.ZodObject<{
15860
18302
  http: z.ZodObject<{
15861
18303
  url: z.ZodString;
@@ -15890,6 +18332,48 @@ declare const crawlerJsonSchemas: {
15890
18332
  status: z.ZodNumber;
15891
18333
  location: z.ZodOptional<z.ZodString>;
15892
18334
  }, z.core.$strip>>>;
18335
+ accessBlock: z.ZodOptional<z.ZodObject<{
18336
+ provider: z.ZodEnum<{
18337
+ unknown: "unknown";
18338
+ cloudflare: "cloudflare";
18339
+ }>;
18340
+ kind: z.ZodEnum<{
18341
+ challenge: "challenge";
18342
+ firewall: "firewall";
18343
+ "rate-limit": "rate-limit";
18344
+ authentication: "authentication";
18345
+ }>;
18346
+ status: z.ZodNumber;
18347
+ crawler: z.ZodObject<{
18348
+ name: z.ZodString;
18349
+ robotsToken: z.ZodString;
18350
+ version: z.ZodString;
18351
+ userAgent: z.ZodString;
18352
+ documentationUrl: z.ZodString;
18353
+ }, z.core.$strip>;
18354
+ indicators: z.ZodArray<z.ZodString>;
18355
+ requestId: z.ZodOptional<z.ZodString>;
18356
+ guidance: z.ZodObject<{
18357
+ summary: z.ZodString;
18358
+ recommendedAction: z.ZodString;
18359
+ securityNote: z.ZodString;
18360
+ documentationUrl: z.ZodOptional<z.ZodString>;
18361
+ }, z.core.$strip>;
18362
+ }, z.core.$strip>>;
18363
+ robotsTxt: z.ZodOptional<z.ZodObject<{
18364
+ url: z.ZodString;
18365
+ allowed: z.ZodNullable<z.ZodBoolean>;
18366
+ availability: z.ZodEnum<{
18367
+ available: "available";
18368
+ absent: "absent";
18369
+ "access-blocked": "access-blocked";
18370
+ "rate-limited": "rate-limited";
18371
+ unreachable: "unreachable";
18372
+ }>;
18373
+ status: z.ZodOptional<z.ZodNumber>;
18374
+ error: z.ZodOptional<z.ZodString>;
18375
+ matchedLine: z.ZodOptional<z.ZodString>;
18376
+ }, z.core.$strip>>;
15893
18377
  extraction: z.ZodEnum<{
15894
18378
  complete: "complete";
15895
18379
  "not-applicable": "not-applicable";
@@ -15907,6 +18391,48 @@ declare const crawlerJsonSchemas: {
15907
18391
  status: z.ZodNumber;
15908
18392
  location: z.ZodOptional<z.ZodString>;
15909
18393
  }, z.core.$strip>>>;
18394
+ accessBlock: z.ZodOptional<z.ZodObject<{
18395
+ provider: z.ZodEnum<{
18396
+ unknown: "unknown";
18397
+ cloudflare: "cloudflare";
18398
+ }>;
18399
+ kind: z.ZodEnum<{
18400
+ challenge: "challenge";
18401
+ firewall: "firewall";
18402
+ "rate-limit": "rate-limit";
18403
+ authentication: "authentication";
18404
+ }>;
18405
+ status: z.ZodNumber;
18406
+ crawler: z.ZodObject<{
18407
+ name: z.ZodString;
18408
+ robotsToken: z.ZodString;
18409
+ version: z.ZodString;
18410
+ userAgent: z.ZodString;
18411
+ documentationUrl: z.ZodString;
18412
+ }, z.core.$strip>;
18413
+ indicators: z.ZodArray<z.ZodString>;
18414
+ requestId: z.ZodOptional<z.ZodString>;
18415
+ guidance: z.ZodObject<{
18416
+ summary: z.ZodString;
18417
+ recommendedAction: z.ZodString;
18418
+ securityNote: z.ZodString;
18419
+ documentationUrl: z.ZodOptional<z.ZodString>;
18420
+ }, z.core.$strip>;
18421
+ }, z.core.$strip>>;
18422
+ robotsTxt: z.ZodOptional<z.ZodObject<{
18423
+ url: z.ZodString;
18424
+ allowed: z.ZodNullable<z.ZodBoolean>;
18425
+ availability: z.ZodEnum<{
18426
+ available: "available";
18427
+ absent: "absent";
18428
+ "access-blocked": "access-blocked";
18429
+ "rate-limited": "rate-limited";
18430
+ unreachable: "unreachable";
18431
+ }>;
18432
+ status: z.ZodOptional<z.ZodNumber>;
18433
+ error: z.ZodOptional<z.ZodString>;
18434
+ matchedLine: z.ZodOptional<z.ZodString>;
18435
+ }, z.core.$strip>>;
15910
18436
  extraction: z.ZodLiteral<"failed">;
15911
18437
  extractionError: z.ZodString;
15912
18438
  }, z.core.$strip>, z.ZodObject<{
@@ -16096,6 +18622,48 @@ declare const crawlerJsonSchemas: {
16096
18622
  status: z.ZodNumber;
16097
18623
  location: z.ZodOptional<z.ZodString>;
16098
18624
  }, z.core.$strip>>>;
18625
+ accessBlock: z.ZodOptional<z.ZodObject<{
18626
+ provider: z.ZodEnum<{
18627
+ unknown: "unknown";
18628
+ cloudflare: "cloudflare";
18629
+ }>;
18630
+ kind: z.ZodEnum<{
18631
+ challenge: "challenge";
18632
+ firewall: "firewall";
18633
+ "rate-limit": "rate-limit";
18634
+ authentication: "authentication";
18635
+ }>;
18636
+ status: z.ZodNumber;
18637
+ crawler: z.ZodObject<{
18638
+ name: z.ZodString;
18639
+ robotsToken: z.ZodString;
18640
+ version: z.ZodString;
18641
+ userAgent: z.ZodString;
18642
+ documentationUrl: z.ZodString;
18643
+ }, z.core.$strip>;
18644
+ indicators: z.ZodArray<z.ZodString>;
18645
+ requestId: z.ZodOptional<z.ZodString>;
18646
+ guidance: z.ZodObject<{
18647
+ summary: z.ZodString;
18648
+ recommendedAction: z.ZodString;
18649
+ securityNote: z.ZodString;
18650
+ documentationUrl: z.ZodOptional<z.ZodString>;
18651
+ }, z.core.$strip>;
18652
+ }, z.core.$strip>>;
18653
+ robotsTxt: z.ZodOptional<z.ZodObject<{
18654
+ url: z.ZodString;
18655
+ allowed: z.ZodNullable<z.ZodBoolean>;
18656
+ availability: z.ZodEnum<{
18657
+ available: "available";
18658
+ absent: "absent";
18659
+ "access-blocked": "access-blocked";
18660
+ "rate-limited": "rate-limited";
18661
+ unreachable: "unreachable";
18662
+ }>;
18663
+ status: z.ZodOptional<z.ZodNumber>;
18664
+ error: z.ZodOptional<z.ZodString>;
18665
+ matchedLine: z.ZodOptional<z.ZodString>;
18666
+ }, z.core.$strip>>;
16099
18667
  extraction: z.ZodEnum<{
16100
18668
  complete: "complete";
16101
18669
  "not-applicable": "not-applicable";
@@ -16113,6 +18681,48 @@ declare const crawlerJsonSchemas: {
16113
18681
  status: z.ZodNumber;
16114
18682
  location: z.ZodOptional<z.ZodString>;
16115
18683
  }, z.core.$strip>>>;
18684
+ accessBlock: z.ZodOptional<z.ZodObject<{
18685
+ provider: z.ZodEnum<{
18686
+ unknown: "unknown";
18687
+ cloudflare: "cloudflare";
18688
+ }>;
18689
+ kind: z.ZodEnum<{
18690
+ challenge: "challenge";
18691
+ firewall: "firewall";
18692
+ "rate-limit": "rate-limit";
18693
+ authentication: "authentication";
18694
+ }>;
18695
+ status: z.ZodNumber;
18696
+ crawler: z.ZodObject<{
18697
+ name: z.ZodString;
18698
+ robotsToken: z.ZodString;
18699
+ version: z.ZodString;
18700
+ userAgent: z.ZodString;
18701
+ documentationUrl: z.ZodString;
18702
+ }, z.core.$strip>;
18703
+ indicators: z.ZodArray<z.ZodString>;
18704
+ requestId: z.ZodOptional<z.ZodString>;
18705
+ guidance: z.ZodObject<{
18706
+ summary: z.ZodString;
18707
+ recommendedAction: z.ZodString;
18708
+ securityNote: z.ZodString;
18709
+ documentationUrl: z.ZodOptional<z.ZodString>;
18710
+ }, z.core.$strip>;
18711
+ }, z.core.$strip>>;
18712
+ robotsTxt: z.ZodOptional<z.ZodObject<{
18713
+ url: z.ZodString;
18714
+ allowed: z.ZodNullable<z.ZodBoolean>;
18715
+ availability: z.ZodEnum<{
18716
+ available: "available";
18717
+ absent: "absent";
18718
+ "access-blocked": "access-blocked";
18719
+ "rate-limited": "rate-limited";
18720
+ unreachable: "unreachable";
18721
+ }>;
18722
+ status: z.ZodOptional<z.ZodNumber>;
18723
+ error: z.ZodOptional<z.ZodString>;
18724
+ matchedLine: z.ZodOptional<z.ZodString>;
18725
+ }, z.core.$strip>>;
16116
18726
  extraction: z.ZodLiteral<"failed">;
16117
18727
  extractionError: z.ZodString;
16118
18728
  }, z.core.$strip>, z.ZodObject<{
@@ -16216,6 +18826,34 @@ declare const crawlerJsonSchemas: {
16216
18826
  consecutiveErrors: z.ZodNumber;
16217
18827
  recentP95Ms: z.ZodOptional<z.ZodNumber>;
16218
18828
  }, z.core.$strip>>;
18829
+ accessBlock: z.ZodOptional<z.ZodObject<{
18830
+ provider: z.ZodEnum<{
18831
+ unknown: "unknown";
18832
+ cloudflare: "cloudflare";
18833
+ }>;
18834
+ kind: z.ZodEnum<{
18835
+ challenge: "challenge";
18836
+ firewall: "firewall";
18837
+ "rate-limit": "rate-limit";
18838
+ authentication: "authentication";
18839
+ }>;
18840
+ status: z.ZodNumber;
18841
+ crawler: z.ZodObject<{
18842
+ name: z.ZodString;
18843
+ robotsToken: z.ZodString;
18844
+ version: z.ZodString;
18845
+ userAgent: z.ZodString;
18846
+ documentationUrl: z.ZodString;
18847
+ }, z.core.$strip>;
18848
+ indicators: z.ZodArray<z.ZodString>;
18849
+ requestId: z.ZodOptional<z.ZodString>;
18850
+ guidance: z.ZodObject<{
18851
+ summary: z.ZodString;
18852
+ recommendedAction: z.ZodString;
18853
+ securityNote: z.ZodString;
18854
+ documentationUrl: z.ZodOptional<z.ZodString>;
18855
+ }, z.core.$strip>;
18856
+ }, z.core.$strip>>;
16219
18857
  robotsTxt: z.ZodOptional<z.ZodObject<{
16220
18858
  url: z.ZodString;
16221
18859
  cache: z.ZodEnum<{
@@ -16400,6 +19038,38 @@ declare const crawlerJsonSchemas: {
16400
19038
  }, z.core.$strip>>;
16401
19039
  }, z.core.$strip>>;
16402
19040
  blocked: z.ZodOptional<z.ZodBoolean>;
19041
+ auditScope: z.ZodOptional<z.ZodEnum<{
19042
+ status: "status";
19043
+ full: "full";
19044
+ }>>;
19045
+ accessBlock: z.ZodOptional<z.ZodObject<{
19046
+ provider: z.ZodEnum<{
19047
+ unknown: "unknown";
19048
+ cloudflare: "cloudflare";
19049
+ }>;
19050
+ kind: z.ZodEnum<{
19051
+ challenge: "challenge";
19052
+ firewall: "firewall";
19053
+ "rate-limit": "rate-limit";
19054
+ authentication: "authentication";
19055
+ }>;
19056
+ status: z.ZodNumber;
19057
+ crawler: z.ZodObject<{
19058
+ name: z.ZodString;
19059
+ robotsToken: z.ZodString;
19060
+ version: z.ZodString;
19061
+ userAgent: z.ZodString;
19062
+ documentationUrl: z.ZodString;
19063
+ }, z.core.$strip>;
19064
+ indicators: z.ZodArray<z.ZodString>;
19065
+ requestId: z.ZodOptional<z.ZodString>;
19066
+ guidance: z.ZodObject<{
19067
+ summary: z.ZodString;
19068
+ recommendedAction: z.ZodString;
19069
+ securityNote: z.ZodString;
19070
+ documentationUrl: z.ZodOptional<z.ZodString>;
19071
+ }, z.core.$strip>;
19072
+ }, z.core.$strip>>;
16403
19073
  contentAuditAllowed: z.ZodOptional<z.ZodBoolean>;
16404
19074
  crawlDepth: z.ZodOptional<z.ZodNumber>;
16405
19075
  error: z.ZodOptional<z.ZodString>;
@@ -16472,10 +19142,12 @@ declare const crawlerJsonSchemas: {
16472
19142
  wordCount: z.ZodNumber;
16473
19143
  contentExtraction: z.ZodOptional<z.ZodObject<{
16474
19144
  requested: z.ZodEnum<{
19145
+ crawler: "crawler";
16475
19146
  defuddle: "defuddle";
16476
19147
  readability: "readability";
16477
19148
  }>;
16478
19149
  used: z.ZodEnum<{
19150
+ crawler: "crawler";
16479
19151
  defuddle: "defuddle";
16480
19152
  readability: "readability";
16481
19153
  }>;
@@ -18562,6 +21234,7 @@ declare function topCrawlRecommendations(items: CrawlDiffItem[]): Array<CrawlDif
18562
21234
  }>;
18563
21235
  //#endregion
18564
21236
  //#region packages/core/src/analyze/monitoring/crawl-store.d.ts
21237
+ declare const CRAWL_RUN_RETENTION = 20;
18565
21238
  declare function getPreviousRun(input: {
18566
21239
  site: string;
18567
21240
  startUrl: string;
@@ -18917,7 +21590,44 @@ declare function indexCoveragePlan(input: {
18917
21590
  }): Promise<IndexCoveragePlan>;
18918
21591
  declare function planIndexCoverageFromUrls(input: IndexCoveragePlanInput): IndexCoveragePlan;
18919
21592
  //#endregion
21593
+ //#region packages/core/src/storage/sqlite.d.ts
21594
+ type TransactionFunction = (...params: never[]) => unknown;
21595
+ declare class Statement {
21596
+ private readonly statement;
21597
+ constructor(statement: Libsql.Statement);
21598
+ run(...params: unknown[]): SqliteDatabase.RunResult;
21599
+ get(...params: unknown[]): unknown;
21600
+ all(...params: unknown[]): unknown[];
21601
+ }
21602
+ declare class SqliteDatabase {
21603
+ private readonly database;
21604
+ constructor(filename: string | Buffer);
21605
+ prepare(source: string): Statement;
21606
+ transaction<F extends TransactionFunction>(fn: F): Libsql.Transaction<F>;
21607
+ exec(source: string): this;
21608
+ pragma(source: string): unknown;
21609
+ close(): this;
21610
+ }
21611
+ declare namespace SqliteDatabase {
21612
+ type Database = SqliteDatabase;
21613
+ type RunResult = {
21614
+ changes: number;
21615
+ lastInsertRowid: number | bigint;
21616
+ };
21617
+ }
21618
+ //#endregion
21619
+ //#region packages/core/src/storage/database.d.ts
21620
+ declare function getDb(): SqliteDatabase.Database;
21621
+ declare function noteCacheWrite(sizeBytes?: number): void;
21622
+ declare function checkDatabaseReadiness(): {
21623
+ dbPath: string;
21624
+ };
21625
+ declare function hashKey(parts: unknown[]): string;
21626
+ declare function getCacheStats(): CacheStats;
21627
+ declare function clearCache(provider?: 'gsc' | 'google-analytics' | 'semrush' | 'http', olderThanMs?: number): number;
21628
+ //#endregion
18920
21629
  //#region packages/core/src/analyze/monitoring/index-watch.d.ts
21630
+ declare const INDEX_WATCH_ATTEMPT_RETENTION = 20;
18921
21631
  type InspectUrl$1 = (input: UrlInspectionRequest) => Promise<UrlInspectionResult>;
18922
21632
  type IndexWatchStore = {
18923
21633
  latest(rootSite: string, url: string): IndexWatchPrevious | undefined;
@@ -18928,6 +21638,7 @@ type IndexWatchDependencies = {
18928
21638
  now: () => Date;
18929
21639
  store: IndexWatchStore;
18930
21640
  };
21641
+ declare function pruneIndexWatchSnapshots(rootSite: string, url: string, database?: ReturnType<typeof getDb>): number;
18931
21642
  declare function indexWatch(input: {
18932
21643
  site: string;
18933
21644
  rootSite?: string;
@@ -19034,6 +21745,7 @@ declare function linkRecover(input: {
19034
21745
  }): Promise<LinkRecoverReport>;
19035
21746
  //#endregion
19036
21747
  //#region packages/core/src/analyze/monitoring/link-recover-store.d.ts
21748
+ declare const LINK_RECOVER_RUN_RETENTION = 20;
19037
21749
  type LinkRecoverSummary = {
19038
21750
  id: string;
19039
21751
  site: string;
@@ -20158,41 +22870,6 @@ declare function saveClient(input: ClientProfileInput): ClientProfile;
20158
22870
  declare function deleteClient(idOrName: string): boolean;
20159
22871
  declare function setDefaultClient(idOrName: string): ClientProfile;
20160
22872
  //#endregion
20161
- //#region packages/core/src/storage/sqlite.d.ts
20162
- type TransactionFunction = (...params: never[]) => unknown;
20163
- declare class Statement {
20164
- private readonly statement;
20165
- constructor(statement: Libsql.Statement);
20166
- run(...params: unknown[]): SqliteDatabase.RunResult;
20167
- get(...params: unknown[]): unknown;
20168
- all(...params: unknown[]): unknown[];
20169
- }
20170
- declare class SqliteDatabase {
20171
- private readonly database;
20172
- constructor(filename: string | Buffer);
20173
- prepare(source: string): Statement;
20174
- transaction<F extends TransactionFunction>(fn: F): Libsql.Transaction<F>;
20175
- exec(source: string): this;
20176
- pragma(source: string): unknown;
20177
- close(): this;
20178
- }
20179
- declare namespace SqliteDatabase {
20180
- type Database = SqliteDatabase;
20181
- type RunResult = {
20182
- changes: number;
20183
- lastInsertRowid: number | bigint;
20184
- };
20185
- }
20186
- //#endregion
20187
- //#region packages/core/src/storage/database.d.ts
20188
- declare function getDb(): SqliteDatabase.Database;
20189
- declare function checkDatabaseReadiness(): {
20190
- dbPath: string;
20191
- };
20192
- declare function hashKey(parts: unknown[]): string;
20193
- declare function getCacheStats(): CacheStats;
20194
- declare function clearCache(provider?: 'gsc' | 'google-analytics' | 'semrush' | 'http', olderThanMs?: number): number;
20195
- //#endregion
20196
22873
  //#region packages/core/src/doctor.d.ts
20197
22874
  type DoctorCheck = {
20198
22875
  id: string;
@@ -20553,6 +23230,23 @@ declare class SessionLedger {
20553
23230
  summary(): string;
20554
23231
  }
20555
23232
  //#endregion
23233
+ //#region packages/core/src/storage/log-retention.d.ts
23234
+ declare const LOG_MAX_FILE_BYTES: number;
23235
+ declare const LOG_MAX_TOTAL_BYTES: number;
23236
+ declare const LOG_MAX_AGE_MS: number;
23237
+ type LogPruneResult = {
23238
+ rotated: number;
23239
+ removed: number;
23240
+ sizeBytes: number;
23241
+ };
23242
+ declare function pruneLogs(options?: {
23243
+ directory?: string;
23244
+ now?: number;
23245
+ maxFileBytes?: number;
23246
+ maxTotalBytes?: number;
23247
+ maxAgeMs?: number;
23248
+ }): LogPruneResult;
23249
+ //#endregion
20556
23250
  //#region packages/core/src/telemetry.d.ts
20557
23251
  declare const TELEMETRY_ENDPOINT = "https://seoskill.dev/api/t";
20558
23252
  declare const TELEMETRY_SCHEMA_VERSION = 1;
@@ -20635,5 +23329,5 @@ declare function isoDate(daysAgo?: number): string;
20635
23329
  //#region packages/core/src/version.d.ts
20636
23330
  declare const SEO_VERSION: string;
20637
23331
  //#endregion
20638
- export { AI_REFERRAL_SOURCES, AI_REFERRAL_SOURCES_VERSION, AI_SEARCH_SCORECARD_METHODOLOGY_ID, AI_SEARCH_SCORECARD_METHODOLOGY_VERSION, AUDIT_PAGE_RULE_IDS, AffectedUrl, AffectedUrlFilters, AffectedUrlResult, AffectedUrlSelection, type AgentDiscoveryDataStatus, AgentReadinessCheck, AgentReadinessCheckStatus, type AgentReadinessProfile, AgentReadinessReport, AgentReadinessSection, type AgentRepresentationResponse, type AgentSkillObservation, AiReadinessReport, type AiReferralDataSource, type AiReferralMetrics, type AiReferralQueryEvidence, type AiReferralReport, type AiReferralSourceDefinition, AiSearchScorecard, AnalyticsMetricDelta, AnalyticsTestMetrics, type AnalyzeCannibalRowsInput, type AnalyzeDecayInput, type AnalyzeQuickWinsInput, type AnalyzeSecondPageInput, type AnalyzeStrikingDistanceInput, AppConfig, AuditPageDependencies, AuditPageReport, AuthorizedGoogleClient, BROWSER_USER_AGENT, BacklinkProvider, BoundedSitemapInventory, BrandTermCandidate, CANNIBAL_MAXIMUM_DOMINANT_SHARE, CANNIBAL_MINIMUM_PAGE_SHARE, CRAWL_REPORT_STORAGE_VERSION, CRAWL_SKIP_REASONS, CTR_DEFAULT_LIMIT, CTR_DEFAULT_MIN_IMPRESSIONS, CTR_MAX_LIMIT, CTR_MAX_MIN_IMPRESSIONS, CacheStats, type CannibalAnalysis, CannibalDependencies, type CannibalItem, type CannibalPage, type CannibalReport, CannibalReportInput, type CannibalSelection, type CannibalSuppression, type CannibalSuppressionReason, ChangeMeasurement, ChangeMeasurementAttempt, ChangeRow, ChangeScope, ClientProfile, ClientProfileInput, CommunityIntent, CommunityIntentClassification, CommunityIntentReport, ContentExtractionDiagnostics, ContentExtractor, ContentGroup, ContentGroupDimension, ContentGroupMatchType, ContentGroupRow, ContentOptimizationIntent, ContentOptimizationReport, CoverageField, type CrawlAgentDiscovery, CrawlAiBotAccess, CrawlAiResourceSignal, CrawlAiSignals, CrawlAnalyticsDataSource, CrawlConfig, CrawlConfigInput, CrawlDataSourceStatus, CrawlDataSourceWindow, CrawlDiffItem, CrawlDiffRecommendation, CrawlDiffReport, CrawlExternalLinkVerification, CrawlFetchRateConfig, CrawlImplementationQueueInput, CrawlImplementationQueueItem, CrawlImplementationQueueOutput, CrawlIssue, CrawlIssueGroup, CrawlLinkGraph, CrawlMode, CrawlOneResult, CrawlOutputFormat, CrawlPageRow, CrawlPageSnapshot, CrawlReport, CrawlReportDataSources, CrawlReportMeta, CrawlReportStorageEnvelope, CrawlReportStoreAdapter, CrawlReportSummary, CrawlRequestObservation, CrawlResponseObservation, CrawlRun, CrawlRunRow, CrawlRunStats, CrawlSearchDataSource, type CrawlSiteDependencies, CrawlSitemapDiscovery, CrawlSkipImpact, CrawlSkipReason, CrawlSkipReasonCount, CrawlSkippedUrlsByImpact, CrawlSnapshotDiffReport, CrawlSnapshotIssueChange, CrawlSnapshotPageChange, CrawlStatusEvent, CrawlStatusHandler, CrawlStatusPhase, CredentialsProvider, CreditUsage, CsvFile, CsvRow, CsvValue, type CtrUnderperformer, CtrUnderperformerDependencies, type CtrUnderperformerSelection, DataForSeoProvider, type DecayAnalysis, type DecayComparison, type DecayDiagnosis, type DecayGroup, type DecayItem, type DecayMetrics, type DecayReport, type DecaySelection, type DecaySignal, DecayingDependencies, DecayingReportInput, DiagnosePropertyDependencies, DiagnosePropertyReport, DiagnosisDataStatus, DiagnosisPriority, DoctorCheck, DueIndexSelection, DueIndexUrl, EffectiveSnippetControl, EntityReadinessCheck, EntityReadinessReport, ExternalLinkCheck, ExternalLinkCheckAttempt, ExternalLinkCheckState, ExtractedLinkLocation, ExtractedPage, FetchPageDependencies, type FetchPageOptions, type FetchRateControls, GSC_FINAL_DATA_LAG_DAYS, GSC_TIME_ZONE, Ga4AccountSummary, Ga4DataStream, Ga4PropertySummary, Ga4ReportRequest, Ga4RunReportResult, Ga4WebStreamCandidate, Ga4WebStreamMatch, GenerateLlmsTxtOptions, GeneratedLlmsTxt, GeoGap, GeoGapFilters, GeoGapResult, type GoogleAccessTokenClient, GoogleRichResultAssessment, GoogleRichResultAssessmentSelection, GoogleRichResultAssessmentStatus, GscRow, HttpProfile, INTERNAL_LINK_LEXICAL_TARGET_LIMIT, INTERNAL_LINK_MATCH_EVIDENCE_LIMIT, IndexCoverageBoundedSection, IndexCoverageCandidateItem, IndexCoverageControlReason, IndexCoverageControlledItem, IndexCoverageCrawlInput, IndexCoverageInput, IndexCoverageInventoryItem, IndexCoveragePlan, IndexCoveragePlanInput, IndexCoverageReport, IndexCoverageReportDependencies, IndexCoverageReportInput, IndexCoverageSearchConsoleInput, IndexCoverageSearchVisibilityItem, IndexCoverageSignalsReport, IndexCoverageSitemapInput, IndexCoverageSourceCompleteness, IndexCoverageSourceEvidence, IndexCoverageSourceMembership, IndexCoverageTemplateReview, IndexMonitorPropertyRun, IndexMonitorReport, IndexPlanProperty, IndexPlanSuggestion, IndexPropertyUrlAllocation, IndexWatchChange, IndexWatchChangeKind, IndexWatchDependencies, IndexWatchIssueCode, IndexWatchItem, IndexWatchPrevious, IndexWatchReport, IndexWatchRow, IndexWatchStore, type InternalLinkCandidate, type InternalLinkMatchKind, type InternalLinkOpportunity, type InternalLinkQueryMatch, InternalLinksAnalysis, InternalLinksAnalysisInput, InternalLinksDependencies, InternalLinksInput, type InternalLinksReport, type InternalLinksSelection, type InternalLinksWarning, type JavaScriptRenderingInput, type JavaScriptRenderingMode, JsonFileStorageAdapter, KeywordDataProvider, KeywordOverview, KeywordRow, LatestCrawlSummaryRow, LighthouseFailureCode, LinkRecoverItem, LinkRecoverReport, LinkRecoverSummary, LlmsAuditIssue, LlmsAuditReport, type LlmsTxtLinkObservation, LocalCredentialsProvider, type MarkdownAlternateObservation, type MarkdownQualityObservation, MeasureChangeDependencies, MetricDelta, MonitoringStatusCheck, MonitoringStatusReport, NarrativeSection, type OAuthClientConfig, OKF_DEFAULT_CONCEPTS, OKF_MAX_CONCEPTS, OkfBundle, OkfExplainReport, OkfFile, OkfValidationIssue, OkfValidationReport, OpportunityBenchmarkRow, PageFetchDiagnostics, PageFetchResult, type PageOpportunityAnalysis, type PageOpportunityAnalysisInput, type PageOpportunityBenchmark, PageOpportunityInput, type PageOpportunityItem, PageOpportunityReport, type PageOpportunitySelection, type PageOpportunityType, type PageOpportunityVerification, type PageRenderer, PageSearchMetrics, PageTopQuery, PartialDiagnosisReason, PerformanceAuditReport, PerformanceFieldData, PerformanceFieldMetric, PerformanceMetric, PerformanceRating, PositionBenchmark, Presentation, PresentationChart, PresentationScalar, PresentationTable, PresentationTableColumn, PriorityQueueItem, ProgressReporter, ProviderOpts, ProviderResult, PseoAuditInput, type PseoAuditReport, type PseoAuditTemplate, type PseoCrawlSample, type PseoCrawlTechnicalStatus, PseoDependencies, type PseoEntityFit, type PseoIndexStatus, type PseoInspectionSample, type PseoPageRow, type PseoQueryCoverage, type PseoQueryPageRow, PseoTemplateCluster, type PseoTemplateMetrics, PseoTemplateShape, QueryCluster, type QueryClusterPage, type QueryClusterRow, QueryContentClassification, QueryContentCoverage, QueryContentSignal, QueryFieldCoverage, type QuickWinAnalysis, type QuickWinGroup, type QuickWinItem, type QuickWinSelection, type QuickWinTemplateRecommendation, QuickWinsDependencies, QuickWinsInput, REPORT_BASELINE_MAX_AGE_MS, REPORT_BASELINE_MAX_DEPTH, REPORT_BASELINE_MAX_PAGES, ReadinessCheck, ReadinessSection, ReadinessStatus, Recommendation, RedirectTraceIssue, RedirectTraceReport, RedirectTraceStep, RenderingDocumentDifference, RenderingDocumentField, RenderingDocumentSnapshot, ReportNarrative, ResolveTechnicalBaselineInput, RobotsDirective, RuleCategory, RuleId, RuleInfo, RuleRecommendation, RuleSeverity, SCORECARD_CHECK_WEIGHTS, SCORECARD_STATUS_CREDIT, SEO_VERSION, SERP_TITLE_REFERENCE_WIDTH_PX, SERP_TITLE_WIDTH_PROFILE, ScorecardBand, ScorecardCheck, ScorecardCheckId, ScorecardObservation, ScorecardStatus, SearchAnalyticsRequest, SearchDateWindow, SearchPageBatch, SearchStatusIncident, SearchUpdate, type SecondPageAnalysis, SecondPageDependencies, SecondPageInput, type SecondPageItem, type SecondPageQuery, type SecondPageRecommendation, type SecondPageReport, type SecondPageSelection, type SegmentDimension, SegmentImpactDependencies, SegmentImpactInput, type SegmentImpactItem, type SegmentImpactReport, type SegmentImpactSelection, type SegmentPeriodEvidence, type SegmentRange, SemrushProvider, SeoChange, SeoCliPathOptions, SeoCliPaths, SeoError, SeoErrorCode, SeoToAiQueryReport, SerpProvider, ServiceAccountAccessTokenClient, ServiceAccountConfig, ServiceAccountStatus, SessionLedger, SitemapDocument, SitemapFetchResult, SitemapInvalidLoc, SitemapLastmodObservation, SkippedDiagnosisSection, SnippetControlEvidence, StorageAdapter, StoredTokens, type StrikingDistanceAnalysis, type StrikingDistanceAnalysisGroup, type StrikingDistanceAnalysisItem, StrikingDistanceDependencies, StrikingDistanceInput, StrikingDistanceItem, StrikingDistanceReport, TELEMETRY_AGENTS, TELEMETRY_ENDPOINT, TELEMETRY_ERROR_CATEGORIES, TELEMETRY_EVENTS, TELEMETRY_NOTICE, TELEMETRY_REPORTS, TELEMETRY_SCHEMA_VERSION, TELEMETRY_TIMEOUT_MS, TechnicalBaseline, TechnicalBaselineDependencies, TechnicalBaselineStatus, TelemetryAgent, TelemetryDisableReason, TelemetryErrorCategory, TelemetryEvent, TelemetryOptions, TelemetryPayload, TelemetryReport, TelemetryState, TelemetryStatus, TemplateAwareReport, TestMetrics, TitleWidthEstimate, TokenStorageMode, TokenStorageStatus, TopFix, TopFixFilters, TrafficAnomaly, TrafficAnomalyCoverage, TrafficAnomalyReport, type UnmatchedSegment, UpdateConfounder, UpdateCorrelationReport, UrlInspectionRequest, UrlInspectionResult, WorkflowAction, WorkflowReport, WorkflowStep, affectedUrls, agentReadiness, aiPromptsForQuery, aiReadiness, aiReferralSourceForValue, aiReferralsReport, aiSearchScorecard, allocateIndexUrlsToProperties, analyticsConnectionsSchema, analyzeAiReferralRows, analyzeCannibalRows, analyzeCtrUnderperformersFromRows, analyzeDecay, analyzeIndexCoverageSignals, analyzeInternalLinksFromRows, analyzePageOpportunitiesFromRows, analyzeQueryClustersFromRows, analyzeQuickWinsFromRows, analyzeSecondPageRows, analyzeSegmentRows, analyzeStrikingDistanceRows, analyzeTrafficAnomalyRows, assertUrlMatchesGscProperty, attachCrawlRecommendations, auditCrawlPages, auditCrawlRequests, auditLlmsTxt, auditPage, authStatus, boundedSitemapInventory, buildOkfBundle, buildPseoAuditReportFromRows, buildTelemetryPayload, cannibalReport, changeMeasurementCsvRows, checkDatabaseReadiness, classifyCommunityIntent, clearCache, clientProfileSchema, clusterPseoTemplates, clusterQueryRows, collectAgentDiscovery, combineRobotsValues, communityIntentReport, compareCrawlPages, compareCrawlReports, compareSegmentRows, configSchema, contentCoverageRecommendation, contentCoverageType, contentOptimizationFromPageOpportunities, contentOptimizationReport, countLabel, crawlConfigHash, crawlConfigSchema, crawlDefinitionId, crawlDiff, crawlFixToQueueItem, crawlImplementationQueueWorkflow, crawlIssueGroupSchema, crawlIssueSchema, crawlOne, crawlPageSnapshotSchema, crawlReportSchema, crawlReportStore, crawlReportSummarySchema, crawlRequestObservationSchema, crawlRunId, crawlSite, crawlSkipImpact, crawlSkipReasonCountsFromRecord, crawlTopFixSchema, crawlerJsonSchemas, crawlerRuleCategorySchema, crawlerRuleIdSchema, crawlerRuleInfoSchema, crawlerRuleRecommendationSchema, crawlerRuleSeveritySchema, crawlerSchemas, createAuthorizedClient, createContentGroup, createCrawlReport, createCtrBenchmarkContext, createGoogleAccessTokenClient, createLogger, createPageRenderer, ctrUnderperformersReport, decayClusterDrafts, decayComparisonRange, decayingReport, deleteChange, deleteClient, deleteContentGroup, deleteCrawlReport, deleteTokens, deriveBrandTerms, detectBrandTerms, detectTelemetryAgent, diagnoseCsvFiles, diagnoseProperty, diagnosePropertyWorkflow, effectiveRobotsDirectives, effectiveSnippetControl, ensureSeoCliDirs, entityReadiness, estimateSerpTitleWidth, expectedCtrForPosition, explainOkfValidation, explainRule, fetchCruxFieldData, fetchPage, fetchSearchStatusIncidents, fetchSitemapUrls, fileSize, finalGscDateRange, findOverlappingSearchUpdates, formatRelativeExpiry, ga4MatchReason, ga4PropertyIdFromName, ga4ReportQualityWarnings, ga4RequestCanUseCache, ga4RowsToObjects, generateLlmsTxt, geoGaps, geoGapsReport, getAuthModeStatus, getCacheStats, getChange, getClient, getClientConfig, getContentGroup, getDb, getKeywordProvider, getPreviousRun, getPrivacySnapshot, getRepeatedLinkRecoverUrls, getRunPages, getSeoCliPaths, getServiceAccountConfig, getServiceAccountStatus, getTelemetryStatus, getTokenStorageStatus, googleAnalyticsPropertyId, groupCrawlIssues, hasMetaRobotsDirective, hasRule, hasXRobotsDirective, hashKey, indexCoveragePlan, indexCoverageSignals, indexMonitor, indexWatch, inferPseoTemplate, inferTemplateMovement, initializeTelemetry, insertCrawlRun, insertLinkRecoverRun, inspectUrl, internalLinksReport, interpretUpdateCorrelation, isBrandQuery, isCompatibleTechnicalBaseline, isCurrentTechnicalBaseline, isEntityEvidenceSchemaType, isSiteIdentitySchemaType, isSkippableReportError, isTelemetryCi, isTelemetryReport, isoDate, isoWeek, latestCrawlReport, latestCrawlSummaries, latestFinalGscDate, latestIndexWatchSummary, latestLinkRecoverSummary, linkRecover, linkRecoverRecommendation, listChanges, listClients, listContentGroups, listCrawlReports, listGa4AccountSummaries, listGa4DataStreams, listRules, listSearchUpdates, listSites, loadCrawlReport, localCredentialsProvider, loginWithLoopback, makeRunId, matchGa4WebStreams, measureChange, measureCoverage, metaRobotsDirectives, migrateLegacyMacConfig, missingOAuthClientMessage, missingSharedClientLoginMessage, monitoringStatus, monthlyReport, monthlyReportWorkflow, narrativeCsvFiles, normalizeCrawlConfig, normalizeCrawlSkipReasonCounts, normalizeForCoverage, normalizeHttpUrl, normalizeJavaScriptRenderingMode, normalizeLoadedCrawlReport, okfConceptLimit, pageEvidenceRecommendation, pageOpportunitiesReport, parseOlderThan, parsePseoPath, performanceAudit, performanceReportIsCacheable, planDueIndexUrls, planIndexCoverageFromUrls, plural, propertyMatchesUrl, providerPreferenceSchema, pseoAuditOptions, pseoAuditReport, pseoCsvFiles, pseoIndexStatus, pseoPresentation, publicHttpFetch, queryClusterReport, queryClusterTokens, queryContentCoverageFromPage, queryContentFieldsFromPage, queryFieldCoverage, queryOpportunityRecommendation, queryPageMetrics, queryPageTopQuery, queryPagesMetrics, queryPagesMetricsBatch, queryPagesTopQueries, queryPagesTopQueriesBatch, querySearchAnalytics, quickWinsCsvRows, quickWinsReport, readConfig, readOauthClient, readTokens, recommendCrawlDiffItem, recommendationForRule, recordChange, redirectTrace, refreshAuthToken, refreshPrioritiesCsvFiles, refreshPrioritiesWorkflow, renderCrawlCsv, renderCrawlHtml, renderCrawlMarkdownTickets, renderCrawlPagesCsv, renderCrawlPretty, renderCsv, renderPresentationTablesMarkdown, renderPseoMarkdown, renderWorkflowMarkdown, reportNarrative, reportPresentation, requestHeaders, resolveSegmentRanges, resolveSeoCliPaths, resolveTechnicalBaseline, reviewObservations, roundedPosition, runDoctor, runGa4Report, saveClient, saveCrawlReport, secondPage, segmentComparisonRange, segmentImpact, segmentRangeDays, selectAffectedUrls, selectDueIndexUrls, seoErrorEnvelope, seoToAiQueryReport, sessionSourceInListFilter, setDefaultClient, setTelemetryEnabled, setTokenStorageMode, shiftIsoDate, shouldExcludeBrandQuery, siteSchema, sqliteCrawlReportStore, strikingDistance, summarizeCrawlReport, pageTechnicalSignals as technicalPageSignals, technicalWatchWorkflow, telemetryErrorCategory, templateForUrl, toSeoError, tokenSchema, topCrawlRecommendations, topFixes, trackTelemetryReportComplete, trackTelemetryReportFailed, trackTelemetryReportStart, trackTelemetrySetupComplete, trafficAnomaly, unavailableSegmentImpactReport, unicodeTokens, updateCorrelation, updatePostmortemCsvFiles, updatePostmortemWorkflow, validateOkfFiles, verifyQueryContent, workflowPresentation, writeConfig, writeOauthClient, writeTokens, xRobotsDirectives };
23332
+ export { AI_REFERRAL_SOURCES, AI_REFERRAL_SOURCES_VERSION, AI_SEARCH_SCORECARD_METHODOLOGY_ID, AI_SEARCH_SCORECARD_METHODOLOGY_VERSION, AUDIT_PAGE_RULE_IDS, AUTOMATIC_BASELINE_SITE_RETENTION, AUTOMATIC_BASELINE_TOTAL_RETENTION, AccessBlockEvidence, AffectedUrl, AffectedUrlFilters, AffectedUrlResult, AffectedUrlSelection, type AgentDiscoveryDataStatus, type AgentEndpointDiscovery, type AgentEndpointObservation, type AgentLinkHeaderEntry, type AgentLinkHeaderObservation, AgentReadinessCheck, AgentReadinessCheckStatus, type AgentReadinessProfile, AgentReadinessReport, AgentReadinessSection, type AgentRepresentationResponse, type AgentSkillObservation, AiReadinessReport, type AiReferralDataSource, type AiReferralMetrics, type AiReferralQueryEvidence, type AiReferralReport, type AiReferralSourceDefinition, AiSearchScorecard, AnalyticsMetricDelta, AnalyticsTestMetrics, type AnalyzeCannibalRowsInput, type AnalyzeDecayInput, type AnalyzeQuickWinsInput, type AnalyzeSecondPageInput, type AnalyzeStrikingDistanceInput, AppConfig, AuditPageDependencies, AuditPageReport, AuthorizedGoogleClient, BROWSER_USER_AGENT, BacklinkProvider, BoundedSitemapInventory, BrandTermCandidate, CANNIBAL_MAXIMUM_DOMINANT_SHARE, CANNIBAL_MINIMUM_PAGE_SHARE, CRAWL_REPORT_STORAGE_VERSION, CRAWL_RUN_RETENTION, CRAWL_SKIP_REASONS, CTR_DEFAULT_LIMIT, CTR_DEFAULT_MIN_IMPRESSIONS, CTR_MAX_LIMIT, CTR_MAX_MIN_IMPRESSIONS, CacheStats, type CannibalAnalysis, CannibalDependencies, type CannibalItem, type CannibalPage, type CannibalReport, CannibalReportInput, type CannibalSelection, type CannibalSuppression, type CannibalSuppressionReason, ChangeMeasurement, ChangeMeasurementAttempt, ChangeRow, ChangeScope, ClientProfile, ClientProfileInput, CommunityIntent, CommunityIntentClassification, CommunityIntentReport, ContentExtractionDiagnostics, ContentExtractor, ContentGroup, ContentGroupDimension, ContentGroupMatchType, ContentGroupRow, ContentOptimizationIntent, ContentOptimizationReport, CoverageField, CrawlAccessSummary, type CrawlAgentDiscovery, CrawlAiBotAccess, CrawlAiResourceSignal, CrawlAiSignals, CrawlAnalyticsDataSource, CrawlConfig, CrawlConfigInput, CrawlDataSourceStatus, CrawlDataSourceWindow, CrawlDiffItem, CrawlDiffRecommendation, CrawlDiffReport, CrawlExternalLinkVerification, CrawlFetchRateConfig, CrawlImplementationQueueInput, CrawlImplementationQueueItem, CrawlImplementationQueueOutput, CrawlIssue, CrawlIssueGroup, CrawlLinkGraph, CrawlMode, CrawlOneResult, CrawlOutputFormat, CrawlPageRow, CrawlPageSnapshot, CrawlReport, CrawlReportDataSources, CrawlReportMeta, CrawlReportSaveOptions, CrawlReportStorageEnvelope, CrawlReportStoreAdapter, CrawlReportSummary, CrawlRequestObservation, CrawlResponseObservation, CrawlRun, CrawlRunRow, CrawlRunStats, CrawlSearchDataSource, type CrawlSiteDependencies, CrawlSitemapDiscovery, CrawlSkipImpact, CrawlSkipReason, CrawlSkipReasonCount, CrawlSkippedUrlsByImpact, CrawlSnapshotDiffReport, CrawlSnapshotIssueChange, CrawlSnapshotPageChange, CrawlStatusEvent, CrawlStatusHandler, CrawlStatusPhase, CrawlStrategy, CrawlerIdentity, CredentialsProvider, CreditUsage, CsvFile, CsvRow, CsvValue, type CtrUnderperformer, CtrUnderperformerDependencies, type CtrUnderperformerSelection, DataForSeoProvider, type DecayAnalysis, type DecayComparison, type DecayDiagnosis, type DecayGroup, type DecayItem, type DecayMetrics, type DecayReport, type DecaySelection, type DecaySignal, DecayingDependencies, DecayingReportInput, DiagnosePropertyDependencies, DiagnosePropertyReport, DiagnosisDataStatus, DiagnosisPriority, DoctorCheck, DueIndexSelection, DueIndexUrl, EffectiveSnippetControl, EntityReadinessCheck, EntityReadinessReport, ExternalLinkCheck, ExternalLinkCheckAttempt, ExternalLinkCheckState, ExtractedLinkLocation, ExtractedPage, FetchPageDependencies, type FetchPageOptions, type FetchRateControls, GSC_FINAL_DATA_LAG_DAYS, GSC_TIME_ZONE, Ga4AccountSummary, Ga4DataStream, Ga4PropertySummary, Ga4ReportRequest, Ga4RunReportResult, Ga4WebStreamCandidate, Ga4WebStreamMatch, GenerateLlmsTxtOptions, GeneratedLlmsTxt, GeoGap, GeoGapFilters, GeoGapResult, type GoogleAccessTokenClient, GoogleRichResultAssessment, GoogleRichResultAssessmentSelection, GoogleRichResultAssessmentStatus, GscRow, HttpProfile, INDEX_WATCH_ATTEMPT_RETENTION, INTERNAL_LINK_LEXICAL_TARGET_LIMIT, INTERNAL_LINK_MATCH_EVIDENCE_LIMIT, IndexCoverageBoundedSection, IndexCoverageCandidateItem, IndexCoverageControlReason, IndexCoverageControlledItem, IndexCoverageCrawlInput, IndexCoverageInput, IndexCoverageInventoryItem, IndexCoveragePlan, IndexCoveragePlanInput, IndexCoverageReport, IndexCoverageReportDependencies, IndexCoverageReportInput, IndexCoverageSearchConsoleInput, IndexCoverageSearchVisibilityItem, IndexCoverageSignalsReport, IndexCoverageSitemapInput, IndexCoverageSourceCompleteness, IndexCoverageSourceEvidence, IndexCoverageSourceMembership, IndexCoverageTemplateReview, IndexMonitorPropertyRun, IndexMonitorReport, IndexPlanProperty, IndexPlanSuggestion, IndexPropertyUrlAllocation, IndexWatchChange, IndexWatchChangeKind, IndexWatchDependencies, IndexWatchIssueCode, IndexWatchItem, IndexWatchPrevious, IndexWatchReport, IndexWatchRow, IndexWatchStore, type InternalLinkCandidate, type InternalLinkMatchKind, type InternalLinkOpportunity, type InternalLinkQueryMatch, InternalLinksAnalysis, InternalLinksAnalysisInput, InternalLinksDependencies, InternalLinksInput, type InternalLinksReport, type InternalLinksSelection, type InternalLinksWarning, type JavaScriptRenderingInput, type JavaScriptRenderingMode, JsonFileStorageAdapter, KeywordDataProvider, KeywordOverview, KeywordRow, LINK_RECOVER_RUN_RETENTION, LOG_MAX_AGE_MS, LOG_MAX_FILE_BYTES, LOG_MAX_TOTAL_BYTES, LatestCrawlSummaryRow, LighthouseFailureCode, LinkRecoverItem, LinkRecoverReport, LinkRecoverSummary, LlmsAuditIssue, LlmsAuditReport, type LlmsTxtLinkObservation, LocalCredentialsProvider, LogPruneResult, MAX_CRAWL_CONCURRENCY, MAX_CRAWL_DEPTH, MAX_CRAWL_PAGES, MAX_CRAWL_TIMEOUT_MS, type MarkdownAlternateObservation, type MarkdownQualityObservation, MeasureChangeDependencies, MetricDelta, MonitoringStatusCheck, MonitoringStatusReport, NarrativeSection, type OAuthClientConfig, OKF_DEFAULT_CONCEPTS, OKF_MAX_CONCEPTS, OkfBundle, OkfExplainReport, OkfFile, OkfValidationIssue, OkfValidationReport, OpportunityBenchmarkRow, PageFetchDiagnostics, PageFetchResult, type PageOpportunityAnalysis, type PageOpportunityAnalysisInput, type PageOpportunityBenchmark, PageOpportunityInput, type PageOpportunityItem, PageOpportunityReport, type PageOpportunitySelection, type PageOpportunityType, type PageOpportunityVerification, type PageRenderer, PageSearchMetrics, PageTopQuery, PartialDiagnosisReason, PerformanceAuditReport, PerformanceFieldData, PerformanceFieldMetric, PerformanceMetric, PerformanceRating, PositionBenchmark, Presentation, PresentationChart, PresentationScalar, PresentationTable, PresentationTableColumn, PriorityQueueItem, ProgressReporter, ProviderOpts, ProviderResult, PseoAuditInput, type PseoAuditReport, type PseoAuditTemplate, type PseoCrawlSample, type PseoCrawlTechnicalStatus, PseoDependencies, type PseoEntityFit, type PseoIndexStatus, type PseoInspectionSample, type PseoPageRow, type PseoQueryCoverage, type PseoQueryPageRow, PseoTemplateCluster, type PseoTemplateMetrics, PseoTemplateShape, QueryCluster, type QueryClusterPage, type QueryClusterRow, QueryContentClassification, QueryContentCoverage, QueryContentSignal, QueryFieldCoverage, type QuickWinAnalysis, type QuickWinGroup, type QuickWinItem, type QuickWinSelection, type QuickWinTemplateRecommendation, QuickWinsDependencies, QuickWinsInput, REPORT_BASELINE_MAX_AGE_MS, REPORT_BASELINE_MAX_DEPTH, REPORT_BASELINE_MAX_PAGES, ReadinessCheck, ReadinessSection, ReadinessStatus, Recommendation, RedirectTraceIssue, RedirectTraceReport, RedirectTraceStep, RenderingDocumentDifference, RenderingDocumentField, RenderingDocumentSnapshot, ReportNarrative, ResolveTechnicalBaselineInput, ResponseSizeLimitError, RobotsDirective, RuleCategory, RuleId, RuleInfo, RuleRecommendation, RuleSeverity, SCORECARD_CHECK_WEIGHTS, SCORECARD_STATUS_CREDIT, SEO_CRAWLER_IDENTITY, SEO_CRAWLER_TOKEN, SEO_CRAWLER_USER_AGENT, SEO_VERSION, SERP_TITLE_REFERENCE_WIDTH_PX, SERP_TITLE_WIDTH_PROFILE, ScorecardBand, ScorecardCheck, ScorecardCheckId, ScorecardObservation, ScorecardStatus, SearchAnalyticsRequest, SearchDateWindow, SearchPageBatch, SearchStatusIncident, SearchUpdate, type SecondPageAnalysis, SecondPageDependencies, SecondPageInput, type SecondPageItem, type SecondPageQuery, type SecondPageRecommendation, type SecondPageReport, type SecondPageSelection, type SegmentDimension, SegmentImpactDependencies, SegmentImpactInput, type SegmentImpactItem, type SegmentImpactReport, type SegmentImpactSelection, type SegmentPeriodEvidence, type SegmentRange, SemrushProvider, SeoChange, SeoCliPathOptions, SeoCliPaths, SeoError, SeoErrorCode, SeoToAiQueryReport, SerpProvider, ServiceAccountAccessTokenClient, ServiceAccountConfig, ServiceAccountStatus, SessionLedger, SitemapDocument, SitemapFetchResult, SitemapInvalidLoc, SitemapLastmodObservation, SkippedDiagnosisSection, SnippetControlEvidence, StorageAdapter, StoredTokens, type StrikingDistanceAnalysis, type StrikingDistanceAnalysisGroup, type StrikingDistanceAnalysisItem, StrikingDistanceDependencies, StrikingDistanceInput, StrikingDistanceItem, StrikingDistanceReport, TELEMETRY_AGENTS, TELEMETRY_ENDPOINT, TELEMETRY_ERROR_CATEGORIES, TELEMETRY_EVENTS, TELEMETRY_NOTICE, TELEMETRY_REPORTS, TELEMETRY_SCHEMA_VERSION, TELEMETRY_TIMEOUT_MS, TechnicalBaseline, TechnicalBaselineDependencies, TechnicalBaselineStatus, TelemetryAgent, TelemetryDisableReason, TelemetryErrorCategory, TelemetryEvent, TelemetryOptions, TelemetryPayload, TelemetryReport, TelemetryState, TelemetryStatus, TemplateAwareReport, TestMetrics, TitleWidthEstimate, TokenStorageMode, TokenStorageStatus, TopFix, TopFixFilters, TrafficAnomaly, TrafficAnomalyCoverage, TrafficAnomalyReport, type UnmatchedSegment, UpdateConfounder, UpdateCorrelationReport, UrlInspectionRequest, UrlInspectionResult, WorkflowAction, WorkflowReport, WorkflowStep, affectedUrls, agentReadiness, aiPromptsForQuery, aiReadiness, aiReferralSourceForValue, aiReferralsReport, aiSearchScorecard, allocateIndexUrlsToProperties, analyticsConnectionsSchema, analyzeAiReferralRows, analyzeCannibalRows, analyzeCtrUnderperformersFromRows, analyzeDecay, analyzeIndexCoverageSignals, analyzeInternalLinksFromRows, analyzePageOpportunitiesFromRows, analyzeQueryClustersFromRows, analyzeQuickWinsFromRows, analyzeSecondPageRows, analyzeSegmentRows, analyzeStrikingDistanceRows, analyzeTrafficAnomalyRows, assertCrawlConfigLimits, assertUrlMatchesGscProperty, attachCrawlRecommendations, auditCrawlPages, auditCrawlRequests, auditLlmsTxt, auditPage, authStatus, boundedSitemapInventory, buildOkfBundle, buildPseoAuditReportFromRows, buildTelemetryPayload, cannibalReport, changeMeasurementCsvRows, checkDatabaseReadiness, classifyCommunityIntent, clearCache, clientProfileSchema, clusterPseoTemplates, clusterQueryRows, collectAgentDiscovery, combineRobotsValues, communityIntentReport, compareCrawlPages, compareCrawlReports, compareSegmentRows, configSchema, contentCoverageRecommendation, contentCoverageType, contentOptimizationFromPageOpportunities, contentOptimizationReport, countLabel, crawlConfigHash, crawlConfigSchema, crawlDefinitionId, crawlDiff, crawlFixToQueueItem, crawlImplementationQueueWorkflow, crawlIssueGroupSchema, crawlIssueSchema, crawlOne, crawlPageSnapshotSchema, crawlReportSchema, crawlReportStore, crawlReportSummarySchema, crawlRequestObservationSchema, crawlRunId, crawlSite, crawlSkipImpact, crawlSkipReasonCountsFromRecord, crawlStatusOnly, crawlTopFixSchema, crawlerJsonSchemas, crawlerRuleCategorySchema, crawlerRuleIdSchema, crawlerRuleInfoSchema, crawlerRuleRecommendationSchema, crawlerRuleSeveritySchema, crawlerSchemas, createAuthorizedClient, createContentGroup, createCrawlReport, createCtrBenchmarkContext, createGoogleAccessTokenClient, createLogger, createPageRenderer, ctrUnderperformersReport, decayClusterDrafts, decayComparisonRange, decayingReport, deleteChange, deleteClient, deleteContentGroup, deleteCrawlReport, deleteTokens, deriveBrandTerms, detectBrandTerms, detectTelemetryAgent, diagnoseCsvFiles, diagnoseProperty, diagnosePropertyWorkflow, effectiveRobotsDirectives, effectiveSnippetControl, ensureSeoCliDirs, entityReadiness, estimateSerpTitleWidth, expectedCtrForPosition, explainOkfValidation, explainRule, fetchCruxFieldData, fetchPage, fetchPageStatus, fetchSearchStatusIncidents, fetchSitemapUrls, fetchText, fileSize, finalGscDateRange, findOverlappingSearchUpdates, formatRelativeExpiry, ga4MatchReason, ga4PropertyIdFromName, ga4ReportQualityWarnings, ga4RequestCanUseCache, ga4RowsToObjects, generateLlmsTxt, geoGaps, geoGapsReport, getAuthModeStatus, getCacheStats, getChange, getClient, getClientConfig, getContentGroup, getDb, getKeywordProvider, getPreviousRun, getPrivacySnapshot, getRepeatedLinkRecoverUrls, getRunPages, getSeoCliPaths, getServiceAccountConfig, getServiceAccountStatus, getTelemetryStatus, getTokenStorageStatus, googleAnalyticsPropertyId, groupCrawlIssues, hasMetaRobotsDirective, hasRule, hasXRobotsDirective, hashKey, indexCoveragePlan, indexCoverageSignals, indexMonitor, indexWatch, inferPseoTemplate, inferTemplateMovement, initializeTelemetry, insertCrawlRun, insertLinkRecoverRun, inspectUrl, internalLinksReport, interpretUpdateCorrelation, isBrandQuery, isCompatibleTechnicalBaseline, isCurrentTechnicalBaseline, isEntityEvidenceSchemaType, isSiteIdentitySchemaType, isSkippableReportError, isTelemetryCi, isTelemetryReport, isoDate, isoWeek, latestCrawlReport, latestCrawlSummaries, latestFinalGscDate, latestIndexWatchSummary, latestLinkRecoverSummary, linkEntries, linkRecover, linkRecoverRecommendation, listChanges, listClients, listContentGroups, listCrawlReports, listGa4AccountSummaries, listGa4DataStreams, listRules, listSearchUpdates, listSites, loadCrawlReport, localCredentialsProvider, loginWithLoopback, makeRunId, matchGa4WebStreams, measureChange, measureCoverage, metaRobotsDirectives, migrateLegacyMacConfig, missingOAuthClientMessage, missingSharedClientLoginMessage, monitoringStatus, monthlyReport, monthlyReportWorkflow, narrativeCsvFiles, normalizeCrawlConfig, normalizeCrawlSkipReasonCounts, normalizeForCoverage, normalizeHttpUrl, normalizeJavaScriptRenderingMode, normalizeLoadedCrawlReport, noteCacheWrite, okfConceptLimit, pageEvidenceRecommendation, pageOpportunitiesReport, parseOlderThan, parsePseoPath, performanceAudit, performanceReportIsCacheable, planDueIndexUrls, planIndexCoverageFromUrls, plural, propertyMatchesUrl, providerPreferenceSchema, pruneIndexWatchSnapshots, pruneLogs, pseoAuditOptions, pseoAuditReport, pseoCsvFiles, pseoIndexStatus, pseoPresentation, publicHttpFetch, queryClusterReport, queryClusterTokens, queryContentCoverageFromPage, queryContentFieldsFromPage, queryFieldCoverage, queryOpportunityRecommendation, queryPageMetrics, queryPageTopQuery, queryPagesMetrics, queryPagesMetricsBatch, queryPagesTopQueries, queryPagesTopQueriesBatch, querySearchAnalytics, quickWinsCsvRows, quickWinsReport, readBoundedResponseText, readConfig, readOauthClient, readTokens, recommendCrawlDiffItem, recommendationForRule, recordChange, redirectTrace, refreshAuthToken, refreshPrioritiesCsvFiles, refreshPrioritiesWorkflow, renderCrawlCsv, renderCrawlHtml, renderCrawlJunit, renderCrawlMarkdownTickets, renderCrawlPagesCsv, renderCrawlPretty, renderCsv, renderPresentationTablesMarkdown, renderPseoMarkdown, renderWorkflowMarkdown, reportNarrative, reportPresentation, requestHeaders, resolveSegmentRanges, resolveSeoCliPaths, resolveTechnicalBaseline, reviewObservations, roundedPosition, runDoctor, runGa4Report, safeError, saveClient, saveCrawlReport, secondPage, segmentComparisonRange, segmentImpact, segmentRangeDays, selectAffectedUrls, selectDueIndexUrls, seoErrorEnvelope, seoToAiQueryReport, sessionSourceInListFilter, setDefaultClient, setTelemetryEnabled, setTokenStorageMode, shiftIsoDate, shouldExcludeBrandQuery, siteSchema, sqliteCrawlReportStore, strikingDistance, summarizeCrawlReport, pageTechnicalSignals as technicalPageSignals, technicalWatchWorkflow, telemetryErrorCategory, templateForUrl, toSeoError, tokenSchema, topCrawlRecommendations, topFixes, trackTelemetryReportComplete, trackTelemetryReportFailed, trackTelemetryReportStart, trackTelemetrySetupComplete, trafficAnomaly, unavailableSegmentImpactReport, unicodeTokens, updateCorrelation, updatePostmortemCsvFiles, updatePostmortemWorkflow, validateOkfFiles, verifyQueryContent, workflowPresentation, writeConfig, writeOauthClient, writeTokens, xRobotsDirectives };
20639
23333
  //# sourceMappingURL=index.d.ts.map