@vertesia/common 1.6.0-dev.20261008.064737Z → 1.6.0-dev.20261014.015055Z

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 (85) hide show
  1. package/lib/api-contract/components.generated.json +132 -13
  2. package/lib/api-contract/engine.d.ts.map +1 -1
  3. package/lib/api-contract/engine.js +3 -0
  4. package/lib/api-contract/engine.js.map +1 -1
  5. package/lib/api-contract/index.d.ts +2 -2
  6. package/lib/api-contract/index.d.ts.map +1 -1
  7. package/lib/api-contract/index.js.map +1 -1
  8. package/lib/api-contract/types.d.ts +70 -0
  9. package/lib/api-contract/types.d.ts.map +1 -0
  10. package/lib/api-contract/types.js +2 -0
  11. package/lib/api-contract/types.js.map +1 -0
  12. package/lib/api-schemas/agent-runs.d.ts +360 -0
  13. package/lib/api-schemas/agent-runs.d.ts.map +1 -1
  14. package/lib/api-schemas/agent-runs.js +7 -0
  15. package/lib/api-schemas/agent-runs.js.map +1 -1
  16. package/lib/api-schemas/app-runtime.d.ts +476 -0
  17. package/lib/api-schemas/app-runtime.d.ts.map +1 -1
  18. package/lib/api-schemas/content.d.ts +174 -0
  19. package/lib/api-schemas/content.d.ts.map +1 -1
  20. package/lib/api-schemas/content.js +14 -0
  21. package/lib/api-schemas/content.js.map +1 -1
  22. package/lib/api-schemas/data-store.d.ts +30 -0
  23. package/lib/api-schemas/data-store.d.ts.map +1 -1
  24. package/lib/api-schemas/data-store.js +8 -0
  25. package/lib/api-schemas/data-store.js.map +1 -1
  26. package/lib/api-schemas/document-processing.d.ts +102 -0
  27. package/lib/api-schemas/document-processing.d.ts.map +1 -1
  28. package/lib/api-schemas/events.d.ts +306 -0
  29. package/lib/api-schemas/events.d.ts.map +1 -1
  30. package/lib/api-schemas/group.d.ts +2 -0
  31. package/lib/api-schemas/group.d.ts.map +1 -1
  32. package/lib/api-schemas/group.js +5 -0
  33. package/lib/api-schemas/group.js.map +1 -1
  34. package/lib/api-schemas/indexing.d.ts +1 -0
  35. package/lib/api-schemas/indexing.d.ts.map +1 -1
  36. package/lib/api-schemas/indexing.js +9 -0
  37. package/lib/api-schemas/indexing.js.map +1 -1
  38. package/lib/api-schemas/inference-profile.d.ts +204 -0
  39. package/lib/api-schemas/inference-profile.d.ts.map +1 -1
  40. package/lib/api-schemas/interaction.d.ts +2618 -0
  41. package/lib/api-schemas/interaction.d.ts.map +1 -1
  42. package/lib/api-schemas/process.d.ts +70 -0
  43. package/lib/api-schemas/process.d.ts.map +1 -1
  44. package/lib/api-schemas/process.js +17 -0
  45. package/lib/api-schemas/process.js.map +1 -1
  46. package/lib/api-schemas/project-configuration.d.ts +340 -0
  47. package/lib/api-schemas/project-configuration.d.ts.map +1 -1
  48. package/lib/api-schemas/project.d.ts +510 -0
  49. package/lib/api-schemas/project.d.ts.map +1 -1
  50. package/lib/api-schemas/registry.d.ts +21595 -353
  51. package/lib/api-schemas/registry.d.ts.map +1 -1
  52. package/lib/api-schemas/registry.js +5 -0
  53. package/lib/api-schemas/registry.js.map +1 -1
  54. package/lib/api-schemas/store.d.ts +1700 -0
  55. package/lib/api-schemas/store.d.ts.map +1 -1
  56. package/lib/api-schemas/workflow-runs.d.ts +68 -0
  57. package/lib/api-schemas/workflow-runs.d.ts.map +1 -1
  58. package/lib/store/intake-policy-schema.generated.d.ts.map +1 -1
  59. package/lib/store/intake-policy-schema.generated.js +19 -0
  60. package/lib/store/intake-policy-schema.generated.js.map +1 -1
  61. package/lib/store/store.d.ts +1 -0
  62. package/lib/store/store.d.ts.map +1 -1
  63. package/lib/store/store.js.map +1 -1
  64. package/lib/vertesia-common.js +2 -2
  65. package/lib/vertesia-common.js.map +1 -1
  66. package/lib/wire-types.generated.d.ts +16 -1
  67. package/lib/wire-types.generated.d.ts.map +1 -1
  68. package/lib/workflow-analytics.d.ts +19 -1
  69. package/lib/workflow-analytics.d.ts.map +1 -1
  70. package/package.json +6 -6
  71. package/src/api-contract/components.generated.json +132 -13
  72. package/src/api-contract/engine.ts +3 -0
  73. package/src/api-contract/index.ts +2 -2
  74. package/src/api-contract/types.ts +108 -0
  75. package/src/api-schemas/agent-runs.ts +7 -0
  76. package/src/api-schemas/content.ts +16 -0
  77. package/src/api-schemas/data-store.ts +8 -0
  78. package/src/api-schemas/group.ts +5 -0
  79. package/src/api-schemas/indexing.ts +10 -0
  80. package/src/api-schemas/process.ts +19 -0
  81. package/src/api-schemas/registry.ts +11 -112
  82. package/src/store/intake-policy-schema.generated.ts +19 -0
  83. package/src/store/store.ts +2 -0
  84. package/src/wire-types.generated.ts +20 -1
  85. package/src/workflow-analytics.ts +21 -1
@@ -1187,11 +1187,29 @@ export const UpdateProcessTestSuitePayloadSchema = CreateProcessTestSuitePayload
1187
1187
  id: 'UpdateProcessTestSuitePayload',
1188
1188
  });
1189
1189
 
1190
+ /**
1191
+ * Makes starting a test run safe to retry. Starting a run is otherwise not idempotent: a request the
1192
+ * client gave up on can still complete server-side, and resending it would start a second run.
1193
+ */
1194
+ const ProcessTestRunIdempotencyKeySchema = z
1195
+ .string()
1196
+ .min(1)
1197
+ .max(256)
1198
+ .meta({
1199
+ description:
1200
+ 'Client-chosen key, unique per intended run, that makes this request safe to retry. A repeat of ' +
1201
+ 'the request with the same key and the same body returns the run the first request started ' +
1202
+ 'instead of starting another. Reusing a key with a different body is rejected with 409. Keys ' +
1203
+ 'are scoped to the project and stay bound to their run for as long as it exists; once the run ' +
1204
+ 'is deleted, the same key starts a new one.',
1205
+ });
1206
+
1190
1207
  export const StartProcessTestRunPayloadSchema = z
1191
1208
  .strictObject({
1192
1209
  suite_id: z.string(),
1193
1210
  process_revision_id: z.string(),
1194
1211
  scenario_ids: z.array(z.string()).optional(),
1212
+ idempotency_key: ProcessTestRunIdempotencyKeySchema.optional(),
1195
1213
  })
1196
1214
  .meta({ id: 'StartProcessTestRunPayload' });
1197
1215
 
@@ -1265,6 +1283,7 @@ export const SubmitProcessTestRunPayloadSchema = z
1265
1283
  .strictObject({
1266
1284
  process: ProcessTestTargetSchema,
1267
1285
  scenarios: z.array(ProcessTestScenarioSchema).min(1),
1286
+ idempotency_key: ProcessTestRunIdempotencyKeySchema.optional(),
1268
1287
  })
1269
1288
  .meta({ id: 'SubmitProcessTestRunPayload' });
1270
1289
 
@@ -32,44 +32,10 @@ import {
32
32
  VideoResultSchema,
33
33
  } from '@llumiverse/common/schemas';
34
34
  import type { z } from 'zod';
35
- import type {
36
- CreateEventSubscriptionPayload,
37
- EventDeliveryTarget,
38
- EventDeliveryTargetInput,
39
- EventSubscription,
40
- EventSubscriptionMutationResponse,
41
- ProcessEventDeliveryTarget,
42
- UpdateEventSubscriptionPayload,
43
- } from '../platform-event.js';
44
- import type {
45
- AgentRunInternals,
46
- AgentRunResponse,
47
- BindRunWorkflowPayload,
48
- ListAgentRunsResponse,
49
- ProgrammaticRunResponse,
50
- RecordRunPayload,
51
- SupervisedRunResponse,
52
- UpdateAgentRunStatusPayload,
53
- } from '../store/agent-run.js';
54
- import type * as DSLWorkflowTypes from '../store/dsl-workflow.js';
55
- import type {
56
- DSLChildWorkflowStep,
57
- DSLWorkflowDefinition,
58
- DSLWorkflowDefinitionResponse,
59
- DSLWorkflowSpec,
60
- DSLWorkflowSpecWithSteps,
61
- DSLWorkflowStep,
62
- } from '../store/dsl-workflow.js';
63
- import type {
64
- BranchNodeBranchDefinition,
65
- CreateProcessDefinitionPayload,
66
- NodeDefinition,
67
- ProcessDefinition,
68
- ProcessDefinitionBody,
69
- UpdateProcessDefinitionPayload,
70
- } from '../store/process.js';
71
- import type { ViewNavigationNode } from '../views.js';
72
- import type { ApiComponentTypes } from '../wire-types.generated.js';
35
+ import type { ApiComponentType } from '../api-contract/types.js';
36
+
37
+ export type { ApiComponentType } from '../api-contract/types.js';
38
+
73
39
  import {
74
40
  ACECreatePayloadSchema,
75
41
  ACEUpdatePayloadSchema,
@@ -1429,12 +1395,6 @@ const CONTENT_TYPE_CATALOG_SCHEMAS: {
1429
1395
  readonly ContentObjectTypeItemArray: typeof ContentObjectTypeItemArraySchema;
1430
1396
  readonly ContentObjectTypeCatalogEntry: typeof ContentObjectTypeCatalogEntrySchema;
1431
1397
  readonly ContentObjectTypeCatalogEntryArray: typeof ContentObjectTypeCatalogEntryArraySchema;
1432
- readonly InCodeTypeDefinition: typeof InCodeTypeDefinitionSchema;
1433
- readonly CreateContentObjectTypePayload: typeof CreateContentObjectTypePayloadSchema;
1434
- readonly UpdateContentObjectTypePayload: typeof UpdateContentObjectTypePayloadSchema;
1435
- readonly ContentObjectType: typeof ContentObjectTypeSchema;
1436
- readonly ContentObjectTypeCatalogQuery: typeof ContentObjectTypeCatalogQuerySchema;
1437
- readonly ContentObjectTypeListQuery: typeof ContentObjectTypeListQuerySchema;
1438
1398
  } = {
1439
1399
  ColumnLayout: ColumnLayoutSchema,
1440
1400
  ContentTypeEditingPolicy: ContentTypeEditingPolicySchema,
@@ -1443,6 +1403,9 @@ const CONTENT_TYPE_CATALOG_SCHEMAS: {
1443
1403
  ContentObjectTypeItemArray: ContentObjectTypeItemArraySchema,
1444
1404
  ContentObjectTypeCatalogEntry: ContentObjectTypeCatalogEntrySchema,
1445
1405
  ContentObjectTypeCatalogEntryArray: ContentObjectTypeCatalogEntryArraySchema,
1406
+ } as const satisfies Record<string, z.ZodType>;
1407
+
1408
+ const CONTENT_TYPE_AUTHORING_SCHEMAS = {
1446
1409
  InCodeTypeDefinition: InCodeTypeDefinitionSchema,
1447
1410
  CreateContentObjectTypePayload: CreateContentObjectTypePayloadSchema,
1448
1411
  UpdateContentObjectTypePayload: UpdateContentObjectTypePayloadSchema,
@@ -1724,6 +1687,7 @@ const CONTENT_OBJECT_SCHEMAS = {
1724
1687
  TranscriptSegment: ContentSchemas.TranscriptSegmentSchema,
1725
1688
  ContentObjectTypeArray: ContentSchemas.ContentObjectTypeArraySchema,
1726
1689
  ContentObjectTextResponse: ContentSchemas.ContentObjectTextResponseSchema,
1690
+ SetObjectTextPayload: ContentSchemas.SetObjectTextPayloadSchema,
1727
1691
  DeleteContentObjectResult: ContentSchemas.DeleteContentObjectResultSchema,
1728
1692
  Transcript: ContentSchemas.TranscriptSchema,
1729
1693
  CreateContentObjectPayload: ContentSchemas.CreateContentObjectPayloadSchema,
@@ -2482,6 +2446,7 @@ const API_SCHEMA_GROUPS = [
2482
2446
  FILE_STORAGE_SCHEMAS,
2483
2447
  DURABLE_TASK_SCHEMAS,
2484
2448
  CONTENT_TYPE_CATALOG_SCHEMAS,
2449
+ CONTENT_TYPE_AUTHORING_SCHEMAS,
2485
2450
  MIGRATION_COMMAND_SCHEMAS,
2486
2451
  PROCESS_DSL_SCHEMAS,
2487
2452
  AGENT_MESSAGE_SCHEMAS,
@@ -2546,6 +2511,7 @@ type ApiSchemaMap = typeof RUN_BUDGET_SCHEMAS &
2546
2511
  typeof FILE_STORAGE_SCHEMAS &
2547
2512
  typeof DURABLE_TASK_SCHEMAS &
2548
2513
  typeof CONTENT_TYPE_CATALOG_SCHEMAS &
2514
+ typeof CONTENT_TYPE_AUTHORING_SCHEMAS &
2549
2515
  typeof MIGRATION_COMMAND_SCHEMAS &
2550
2516
  typeof PROCESS_DSL_SCHEMAS &
2551
2517
  typeof AGENT_MESSAGE_SCHEMAS &
@@ -3126,6 +3092,7 @@ const STRICT_COMPONENTS: ReadonlySet<string> = new Set<string>([
3126
3092
  'ViewExecutionSearchConfiguration',
3127
3093
  'DSLRetryPolicy',
3128
3094
  'CreateContentObjectPayload',
3095
+ 'SetObjectTextPayload',
3129
3096
  'EventIngestChannelMutationResponse',
3130
3097
  'CreateEventIngestChannelPayload',
3131
3098
  'AgentRun',
@@ -3651,74 +3618,6 @@ export function buildApiSchemaComponents(): Readonly<Record<string, JsonObject>>
3651
3618
  return toOpenApiComponents(emitRawSchemas(), { strictComponents: STRICT_COMPONENTS });
3652
3619
  }
3653
3620
 
3654
- /**
3655
- * Explicit TypeScript recursion boundary for schemas whose runtime graph is lazy.
3656
- *
3657
- * Zod cannot infer a finite named type through a mutually-recursive graph. The schemas remain the
3658
- * runtime and OpenAPI authority; these names preserve the recursive TypeScript declarations until
3659
- * TypeScript can infer recursive aliases without collapsing them to `unknown`.
3660
- */
3661
- interface ZenoRecursiveComponentTypes {
3662
- ViewNavigationNode: ViewNavigationNode;
3663
- AgentRunResponse: AgentRunResponse;
3664
- AgentRunInternals: AgentRunInternals;
3665
- BindRunWorkflowPayload: BindRunWorkflowPayload;
3666
- BranchNodeBranchDefinition: BranchNodeBranchDefinition;
3667
- CreateEventSubscriptionPayload: CreateEventSubscriptionPayload;
3668
- CreateProcessDefinitionPayload: CreateProcessDefinitionPayload;
3669
- DSLChildWorkflowStep: DSLChildWorkflowStep;
3670
- DSLWorkflowDefinition: DSLWorkflowDefinition;
3671
- DSLWorkflowDefinitionResponse: DSLWorkflowDefinitionResponse;
3672
- DSLWorkflowSpec: DSLWorkflowSpec;
3673
- DSLWorkflowSpecWithActivities: DSLWorkflowTypes.DSLWorkflowSpecWithActivities;
3674
- DSLWorkflowSpecWithSteps: DSLWorkflowSpecWithSteps;
3675
- DSLWorkflowStep: DSLWorkflowStep;
3676
- EventDeliveryTarget: EventDeliveryTarget;
3677
- EventDeliveryTargetInput: EventDeliveryTargetInput;
3678
- EventSubscription: EventSubscription;
3679
- EventSubscriptionArray: EventSubscription[];
3680
- EventSubscriptionMutationResponse: EventSubscriptionMutationResponse;
3681
- ListAgentRunsResponse: ListAgentRunsResponse;
3682
- NodeDefinition: NodeDefinition;
3683
- NodeDefinitionMap: Record<string, NodeDefinition>;
3684
- ProcessDefinition: ProcessDefinition;
3685
- ProcessDefinitionArray: ProcessDefinition[];
3686
- ProcessDefinitionBody: ProcessDefinitionBody;
3687
- ProcessEventDeliveryTarget: ProcessEventDeliveryTarget;
3688
- ProgrammaticRunResponse: ProgrammaticRunResponse;
3689
- RecordRunPayload: RecordRunPayload;
3690
- SupervisedRunResponse: SupervisedRunResponse;
3691
- UpdateAgentRunStatusPayload: UpdateAgentRunStatusPayload;
3692
- UpdateEventSubscriptionPayload: UpdateEventSubscriptionPayload;
3693
- UpdateProcessDefinitionPayload: UpdateProcessDefinitionPayload;
3694
- WorkflowDefinitionPayload: DSLWorkflowTypes.WorkflowDefinitionPayload;
3695
- WorkflowDefinitionPayloadWithActivities: DSLWorkflowTypes.WorkflowDefinitionPayloadWithActivities;
3696
- WorkflowDefinitionPayloadWithSteps: DSLWorkflowTypes.WorkflowDefinitionPayloadWithSteps;
3697
- }
3698
-
3699
- /**
3700
- * The wire type a component publishes.
3701
- *
3702
- * `ApiComponentType<'Account'>` is the plain type `gen:schemas` writes for `AccountSchema` into
3703
- * `ApiComponentTypes`, which `wire-types.generated.test.ts` proves identical to its `z.infer`. Indexing
3704
- * that map rather than `z.infer<ApiSchemaMap[N]>` keeps Zod's inference out of every program that names
3705
- * a component. A component the generator has not seen yet resolves to `never`, which
3706
- * `registry-groups.test.ts` rejects.
3707
- *
3708
- * It is wrapped in `NoInfer` because `N` always comes from a component-name argument and can never be
3709
- * recovered from the wire type. Without it, a call whose result has a contextual type — a destructuring
3710
- * `const { file } = validatedQuery(ctx, 'FileMetadataQuery')`, an `await`, a typed `return` — makes the
3711
- * checker infer `N` from that context while `N` is still unresolved, which evaluates `z.infer` across
3712
- * every component in the registry: about 500k types, 1 GB and 2 s of `tsc` in each consuming program.
3713
- */
3714
- export type ApiComponentType<N extends ApiComponentName> = NoInfer<
3715
- N extends keyof ZenoRecursiveComponentTypes
3716
- ? ZenoRecursiveComponentTypes[N]
3717
- : N extends keyof ApiComponentTypes
3718
- ? ApiComponentTypes[N]
3719
- : never
3720
- >;
3721
-
3722
3621
  /**
3723
3622
  * Names a published component from inside a handler signature:
3724
3623
  * `Promise<ApiSchemaOf<'Account'>>`.
@@ -509,6 +509,16 @@ export const ContentTypeIntakePolicySchema: JSONObject = {
509
509
  type: 'string',
510
510
  },
511
511
  },
512
+ effort: {
513
+ $ref: '#/$defs/ReasoningEffort',
514
+ },
515
+ reasoning_effort: {
516
+ $ref: '#/$defs/ReasoningEffort',
517
+ },
518
+ verbosity: {
519
+ type: 'string',
520
+ enum: ['low', 'medium', 'high'],
521
+ },
512
522
  include_thoughts: {
513
523
  type: 'boolean',
514
524
  },
@@ -731,6 +741,9 @@ export const ContentTypeIntakePolicySchema: JSONObject = {
731
741
  type: 'string',
732
742
  const: 'bedrock-nova',
733
743
  },
744
+ effort: {
745
+ $ref: '#/$defs/ReasoningEffort',
746
+ },
734
747
  max_tokens: {
735
748
  type: 'number',
736
749
  },
@@ -1610,6 +1623,9 @@ export const ContentTypeIntakePolicySchema: JSONObject = {
1610
1623
  image_generation: {
1611
1624
  $ref: '#/$defs/OpenAiImageGenerationOptions',
1612
1625
  },
1626
+ seed: {
1627
+ type: 'number',
1628
+ },
1613
1629
  max_tokens: {
1614
1630
  type: 'number',
1615
1631
  },
@@ -1732,6 +1748,9 @@ export const ContentTypeIntakePolicySchema: JSONObject = {
1732
1748
  OpenRouterTextOptions: {
1733
1749
  type: 'object',
1734
1750
  properties: {
1751
+ seed: {
1752
+ type: 'number',
1753
+ },
1735
1754
  max_tokens: {
1736
1755
  type: 'number',
1737
1756
  },
@@ -136,6 +136,8 @@ export type ContentObjectUserPermissions = Wire.ContentObjectUserPermissions;
136
136
 
137
137
  export type ContentObjectTextResponse = Wire.ContentObjectTextResponse;
138
138
 
139
+ export type SetObjectTextPayload = Wire.SetObjectTextPayload;
140
+
139
141
  export type DeleteContentObjectResult = Wire.DeleteContentObjectResult;
140
142
 
141
143
  export type SetObjectEmbeddingsResponse = Wire.SetObjectEmbeddingsResponse;
@@ -2542,6 +2542,14 @@ export type AlterTableOperation =
2542
2542
  op: 'modify_column';
2543
2543
  column: string;
2544
2544
  updates: DataColumnUpdate;
2545
+ }
2546
+ | {
2547
+ op: 'add_foreign_key';
2548
+ foreign_key: DataForeignKey;
2549
+ }
2550
+ | {
2551
+ op: 'drop_foreign_key';
2552
+ column: string;
2545
2553
  };
2546
2554
  /**
2547
2555
  * Payload for altering a table schema.
@@ -3514,6 +3522,7 @@ export type UserGroup = {
3514
3522
  clearance?: number | undefined;
3515
3523
  compartments?: string[] | undefined;
3516
3524
  allowed_projects?: string[] | undefined;
3525
+ member_count?: number | undefined;
3517
3526
  };
3518
3527
  export type CreateUserGroupPayload = {
3519
3528
  name: string;
@@ -5794,6 +5803,7 @@ export type StartProjectReindexPayload = {
5794
5803
  concurrency?: number | undefined;
5795
5804
  bulk_size_bytes?: number | undefined;
5796
5805
  bulk_concurrency?: number | undefined;
5806
+ modified_since?: string | undefined;
5797
5807
  };
5798
5808
  export type ReindexAgentRunsPayload = {
5799
5809
  recreate_index?: boolean | undefined;
@@ -7455,6 +7465,7 @@ export type StartProcessTestRunPayload = {
7455
7465
  suite_id: string;
7456
7466
  process_revision_id: string;
7457
7467
  scenario_ids?: string[] | undefined;
7468
+ idempotency_key?: string | undefined;
7458
7469
  };
7459
7470
  export type ProcessTestAssertionResult = {
7460
7471
  assertion: string;
@@ -7720,6 +7731,10 @@ export type ContentObjectUserPermissions = {
7720
7731
  export type ContentObjectTextResponse = {
7721
7732
  text?: string | undefined;
7722
7733
  };
7734
+ export type SetObjectTextPayload = {
7735
+ text: string;
7736
+ etag?: string | undefined;
7737
+ };
7723
7738
  export type DeleteContentObjectResult = {
7724
7739
  id: string;
7725
7740
  count: number;
@@ -9828,6 +9843,7 @@ export type ProcessTestTargetWithDefinitionWire = {
9828
9843
  export type SubmitProcessTestRunPayloadWire = {
9829
9844
  process: ProcessTestTargetWire;
9830
9845
  scenarios: ProcessTestScenario[];
9846
+ idempotency_key?: string | undefined;
9831
9847
  };
9832
9848
  export type CreateContentObjectPayloadWire = {
9833
9849
  text?: string | undefined;
@@ -10493,7 +10509,9 @@ export type TurnEvaluationFlagWire =
10493
10509
  | 'overhead'
10494
10510
  | 'followup_after_answer'
10495
10511
  | 'approval_denied'
10496
- | 'circuit_breaker';
10512
+ | 'circuit_breaker'
10513
+ | 'no_visible_answer'
10514
+ | 'answer_in_tool_preamble';
10497
10515
  export type ToolErrorClassWire = 'schema' | 'platform' | 'config' | 'environment' | 'other';
10498
10516
  export type EvaluationGateReasonWire = 'signal' | 'sample' | 'opt_in' | 'always_on';
10499
10517
  export type EvaluationOutcomeWire = 'evaluated' | 'skipped_unarchived' | 'failed';
@@ -11286,6 +11304,7 @@ export interface ApiComponentTypes {
11286
11304
  TranscriptSegment: TranscriptSegment;
11287
11305
  ContentObjectTypeArray: ContentObjectTypeArray;
11288
11306
  ContentObjectTextResponse: ContentObjectTextResponse;
11307
+ SetObjectTextPayload: SetObjectTextPayload;
11289
11308
  DeleteContentObjectResult: DeleteContentObjectResult;
11290
11309
  Transcript: Transcript;
11291
11310
  CreateContentObjectPayload: CreateContentObjectPayloadWire;
@@ -84,7 +84,9 @@ export type TurnEvaluationFlag =
84
84
  | 'overhead'
85
85
  | 'followup_after_answer'
86
86
  | 'approval_denied'
87
- | 'circuit_breaker';
87
+ | 'circuit_breaker'
88
+ | 'no_visible_answer'
89
+ | 'answer_in_tool_preamble';
88
90
 
89
91
  /** Coarse class of a tool error, derived from the error text. */
90
92
  export type ToolErrorClass = 'schema' | 'platform' | 'config' | 'environment' | 'other';
@@ -238,6 +240,14 @@ interface BaseLlmCallEvent extends BaseAgentEvent {
238
240
  streamingEnabled: boolean;
239
241
  /** Number of tool uses returned by the LLM */
240
242
  toolUseCount: number;
243
+ /** Provider stop reason, normalized by the driver (`stop`, `length`, `tool_use`, ...). Absent on failed calls. */
244
+ finishReason?: string;
245
+ /**
246
+ * Characters of visible output (text and JSON parts, trimmed; thoughts and media excluded).
247
+ * `0` with `toolUseCount: 0` and `finishReason: 'stop'` is a completion with nothing to show.
248
+ * Absent on failed calls and on events from producers that predate the field.
249
+ */
250
+ outputTextChars?: number;
241
251
  /** Type of call: 'start' for initial, 'resume_tools' for tool results, 'resume_user' for user message */
242
252
  callType: LlmCallType;
243
253
  /** Activity attempt number (for retries) */
@@ -415,6 +425,16 @@ export interface TurnEvaluationEvent extends BaseAgentEvent {
415
425
  stallCorrectives?: number;
416
426
  /** Stall circuit-breaker trips: the model ignored the corrective and the loop was stopped. Same caveat. */
417
427
  stallTrips?: number;
428
+ /**
429
+ * Characters of the answers posted in the turn. `0` with a `no_visible_answer` flag is a turn the
430
+ * user saw end without a reply. Absent on events from producers that predate the field.
431
+ */
432
+ answerChars?: number;
433
+ /**
434
+ * Characters of text the model sent alongside its last tool calls in the turn. Text sent with tool
435
+ * calls is shown as working prose, not as the answer. Same caveat.
436
+ */
437
+ finalToolCallTextChars?: number;
418
438
  /** An unprompted user message after an answer was followed by substantive tool work */
419
439
  followupAfterAnswer: boolean;
420
440
  severity: EvaluationSeverity;