@sanity/ailf-studio 1.4.0 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/dist/index.d.ts +58 -10
  2. package/dist/index.js +3502 -1646
  3. package/package.json +5 -2
package/dist/index.d.ts CHANGED
@@ -436,9 +436,23 @@ interface ScoreItem {
436
436
  /** Ceiling score — gold-standard docs injected */
437
437
  ceilingScore?: number;
438
438
  }
439
- /** Reference to an artifact stored in an external object store (GCS). */
439
+ /**
440
+ * A single row in `ArtifactRef.entries[]`. W0051 adds optional `preview` +
441
+ * `association` + `truncated` so list-view renderers can consume the
442
+ * descriptor-extracted preview without fetching the external payload.
443
+ * Older manifests (pre-W0051) carry only `{ key, bytes }`; readers treat
444
+ * missing fields as absent data, not as errors.
445
+ */
446
+ interface ArtifactRefEntry {
447
+ key: string;
448
+ bytes: number;
449
+ association?: Record<string, string | number>;
450
+ truncated?: boolean;
451
+ preview?: unknown;
452
+ }
453
+ /** Reference to an artifact stored in an external object store. */
440
454
  interface ArtifactRef {
441
- store: "gcs";
455
+ store: "gcs" | "local";
442
456
  bucket: string;
443
457
  path: string;
444
458
  bytes?: number;
@@ -449,10 +463,9 @@ interface ArtifactRef {
449
463
  */
450
464
  layout?: "bulk" | "per-entry";
451
465
  /** Per-entry index (populated for `layout: "per-entry"` refs only). */
452
- entries?: {
453
- key: string;
454
- bytes: number;
455
- }[];
466
+ entries?: ArtifactRefEntry[];
467
+ truncated?: boolean;
468
+ preview?: unknown;
456
469
  }
457
470
  /** A single gap/recommendation from gap analysis */
458
471
  interface RecommendationGap {
@@ -515,16 +528,33 @@ interface JudgmentData {
515
528
  score: number;
516
529
  taskId: string;
517
530
  }
518
- /** Per-feature agent behavior data — how agents interacted with docs */
531
+ /**
532
+ * Per-feature agent behavior data — how agents interacted with docs.
533
+ *
534
+ * W0051 slimmed the full `searchQueries` / `docSlugsVisited` arrays out
535
+ * of the Report summary and replaced them with `*Sample` (bounded first-N)
536
+ * + `*Count` (distinct total). Older reports still carry the full arrays
537
+ * under the legacy names; both shapes are optional here so the
538
+ * `AgentBehaviorCard` renders either fluidly.
539
+ */
519
540
  interface FeatureAgentBehaviorData {
520
541
  avgDocPagesVisited: number;
521
542
  avgNetworkTimeMs: number;
522
543
  avgSearchesPerformed: number;
523
- docSlugsVisited: string[];
524
544
  externalDomains: string[];
525
545
  feature: string;
526
- searchQueries: string[];
527
546
  tasksWithBehaviorData: number;
547
+ /** W0051 slim: bounded sample of unique search queries (first ~5). */
548
+ searchQueriesSample?: string[];
549
+ /** W0051 slim: count of distinct queries in the full traces artifact. */
550
+ searchQueriesCount?: number;
551
+ /** W0051 slim: bounded sample of unique doc slugs visited. */
552
+ docSlugsVisitedSample?: string[];
553
+ /** W0051 slim: count of distinct slugs in the full traces artifact. */
554
+ docSlugsVisitedCount?: number;
555
+ /** Legacy (pre-W0051): the full arrays inlined on the Report. */
556
+ searchQueries?: string[];
557
+ docSlugsVisited?: string[];
528
558
  }
529
559
  /** Overall agent behavior stats (aggregated across all features) */
530
560
  interface OverallAgentBehaviorData {
@@ -584,6 +614,24 @@ interface SummaryData {
584
614
  perModel?: PerModelData[] | null;
585
615
  /** Gap analysis recommendations (when gap analysis was run) */
586
616
  recommendations: null | RecommendationsData;
617
+ /**
618
+ * Slim failure-mode summary (W0051). `topTitles[*]` carry the
619
+ * `graderJudgments`-era `id = formatEntryKey({mode, category})` so the
620
+ * FailureModesPanel can resolve each row to its per-category manifest
621
+ * entry via `useFailureModeArtifact`.
622
+ */
623
+ failureModes?: {
624
+ counts: Record<string, number>;
625
+ topTitles: {
626
+ id: string;
627
+ category: string;
628
+ severity: "low" | "medium" | "high" | "critical";
629
+ title: string;
630
+ count: number;
631
+ }[];
632
+ totalJudgments: number;
633
+ classificationRate: number;
634
+ } | null;
587
635
  scores: ScoreItem[];
588
636
  /** Per-test results with model output and metadata (D0029) */
589
637
  testResults?: StoredTestResultData[] | null;
@@ -673,7 +721,7 @@ declare function searchTopics(query: string): HelpTopic[];
673
721
  *
674
722
  * The drawer:
675
723
  * - Reads current topic from HelpContext
676
- * - Renders markdown body via HelpMarkdown
724
+ * - Renders markdown body via the shared <Markdown> component
677
725
  * - Shows "See also" links for related topics
678
726
  * - Includes a search bar for topic discovery
679
727
  * - Supports back navigation through topic history