@robosystems/client 0.3.27 → 0.3.29

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/types.gen.d.ts CHANGED
@@ -114,759 +114,473 @@ export type AddPublishListMembersOperation = {
114
114
  list_id: string;
115
115
  };
116
116
  /**
117
- * AgentListResponse
117
+ * ArtifactResponse
118
118
  *
119
- * Response for listing available agents.
119
+ * The block's producible-artifact envelope — topic, template, mechanics.
120
120
  */
121
- export type AgentListResponse = {
122
- /**
123
- * Agents
124
- *
125
- * Dictionary of available agents with metadata
126
- */
127
- agents: {
128
- [key: string]: {
129
- [key: string]: unknown;
130
- };
131
- };
121
+ export type ArtifactResponse = {
132
122
  /**
133
- * Total
123
+ * Topic
134
124
  *
135
- * Total number of agents
125
+ * Structure.description the block's human-readable topic.
136
126
  */
137
- total: number;
138
- };
139
- /**
140
- * AgentMessage
141
- *
142
- * Message in conversation history.
143
- */
144
- export type AgentMessage = {
127
+ topic?: string | null;
145
128
  /**
146
- * Role
129
+ * Renderer Note
147
130
  *
148
- * Message role (user/assistant)
131
+ * e.g. 'in thousands', 'except per share'.
149
132
  */
150
- role: string;
133
+ renderer_note?: string | null;
151
134
  /**
152
- * Content
135
+ * Template
153
136
  *
154
- * Message content
137
+ * Reusable layout (ordering, subtotals, styling) when attached. First-class templates are not yet implemented; this field is always null on currently-shipped block types.
155
138
  */
156
- content: string;
139
+ template?: {
140
+ [key: string]: unknown;
141
+ } | null;
157
142
  /**
158
- * Timestamp
159
- *
160
- * Message timestamp
143
+ * Mechanics
161
144
  */
162
- timestamp?: string | null;
145
+ mechanics: ({
146
+ kind: 'closing_entry_generator';
147
+ } & ScheduleMechanics) | ({
148
+ kind: 'statement_renderer';
149
+ } & StatementMechanics) | ({
150
+ kind: 'metric';
151
+ } & MetricMechanics) | ({
152
+ kind: 'rollforward';
153
+ } & RollforwardMechanics);
163
154
  };
164
155
  /**
165
- * AgentMetadataResponse
156
+ * AssociationResponse
157
+ *
158
+ * One edge between two elements within a structure (parent/child
159
+ * presentation, calculation rollup, mapping, equivalence).
166
160
  *
167
- * Response for agent metadata.
161
+ * ``association_type`` discriminates the edge semantics. Mapping edges
162
+ * are the user-facing path (CoA → reporting concept); presentation /
163
+ * calculation edges express structure layout and roll-ups.
164
+ * ``confidence`` is set on AI-suggested mappings (≥0.90 auto-approved,
165
+ * 0.70-0.89 flagged for review).
168
166
  */
169
- export type AgentMetadataResponse = {
167
+ export type AssociationResponse = {
170
168
  /**
171
- * Name
172
- *
173
- * Agent name
169
+ * Id
174
170
  */
175
- name: string;
171
+ id: string;
176
172
  /**
177
- * Description
178
- *
179
- * Agent description
173
+ * Structure Id
180
174
  */
181
- description: string;
175
+ structure_id: string;
182
176
  /**
183
- * Version
184
- *
185
- * Agent version
177
+ * From Element Id
186
178
  */
187
- version: string;
179
+ from_element_id: string;
188
180
  /**
189
- * Capabilities
190
- *
191
- * Agent capabilities
181
+ * From Element Name
192
182
  */
193
- capabilities: Array<string>;
183
+ from_element_name?: string | null;
194
184
  /**
195
- * Supported Modes
196
- *
197
- * Supported execution modes
185
+ * From Element Qname
198
186
  */
199
- supported_modes: Array<string>;
187
+ from_element_qname?: string | null;
200
188
  /**
201
- * Requires Credits
202
- *
203
- * Whether agent requires credits
189
+ * To Element Id
204
190
  */
205
- requires_credits: boolean;
191
+ to_element_id: string;
206
192
  /**
207
- * Author
208
- *
209
- * Agent author
193
+ * To Element Name
210
194
  */
211
- author?: string | null;
195
+ to_element_name?: string | null;
212
196
  /**
213
- * Tags
214
- *
215
- * Agent tags
197
+ * To Element Qname
216
198
  */
217
- tags?: Array<string>;
218
- };
219
- /**
220
- * AgentMode
221
- *
222
- * Agent execution modes.
223
- */
224
- export type AgentMode = 'quick' | 'standard' | 'extended' | 'streaming';
225
- /**
226
- * AgentRecommendation
227
- *
228
- * Single agent recommendation.
229
- */
230
- export type AgentRecommendation = {
199
+ to_element_qname?: string | null;
231
200
  /**
232
- * Agent Type
233
- *
234
- * Agent type identifier
201
+ * Association Type
235
202
  */
236
- agent_type: string;
203
+ association_type: string;
237
204
  /**
238
- * Agent Name
239
- *
240
- * Agent display name
205
+ * Order Value
206
+ */
207
+ order_value?: number | null;
208
+ /**
209
+ * Weight
241
210
  */
242
- agent_name: string;
211
+ weight?: number | null;
243
212
  /**
244
213
  * Confidence
245
- *
246
- * Confidence score (0-1)
247
214
  */
248
- confidence: number;
215
+ confidence?: number | null;
249
216
  /**
250
- * Capabilities
251
- *
252
- * Agent capabilities
217
+ * Suggested By
253
218
  */
254
- capabilities: Array<string>;
219
+ suggested_by?: string | null;
255
220
  /**
256
- * Reason
257
- *
258
- * Reason for recommendation
221
+ * Approved By
259
222
  */
260
- reason?: string | null;
223
+ approved_by?: string | null;
261
224
  };
262
225
  /**
263
- * AgentRecommendationRequest
226
+ * AttributionFilter
227
+ *
228
+ * One flow-concept attribution rule on a rollforward IB.
229
+ *
230
+ * Pairs a target concept (the flow leaf the matched amount counts
231
+ * toward) with a predicate (which LineItems match). The rollforward's
232
+ * ``attribution_filters: list[AttributionFilter]`` declares every flow
233
+ * the BS source decomposes into; the renderer evaluates them all per
234
+ * period.
264
235
  *
265
- * Request for agent recommendations.
236
+ * ``target_element_id`` is resolved at create time from ``target_qname``
237
+ * via the rs-gaap library + tenant taxonomy lookup. Authors only need
238
+ * to provide the qname; the element_id is filled in by the create
239
+ * handler and the resolved value is what the envelope round-trips.
266
240
  */
267
- export type AgentRecommendationRequest = {
241
+ export type AttributionFilter = {
268
242
  /**
269
- * Query
243
+ * Target Qname
270
244
  *
271
- * Query to analyze
245
+ * QName of the flow concept this filter produces facts for — e.g. ``rs-gaap:ProceedsFromIssuanceOfCommonStock``. Resolved to ``target_element_id`` at create time.
272
246
  */
273
- query: string;
247
+ target_qname: string;
274
248
  /**
275
- * Context
249
+ * Target Element Id
276
250
  *
277
- * Additional context
251
+ * Resolved element id for ``target_qname``. Null at create time; populated by the handler before persistence. Round-tripped in the envelope.
278
252
  */
279
- context?: {
280
- [key: string]: unknown;
281
- } | null;
253
+ target_element_id?: string | null;
254
+ /**
255
+ * Predicate that determines which LineItems match this filter.
256
+ */
257
+ predicate: LineItemMetadataPredicate;
282
258
  };
283
259
  /**
284
- * AgentRecommendationResponse
260
+ * AuthResponse
285
261
  *
286
- * Response for agent recommendations.
262
+ * Authentication response model.
287
263
  */
288
- export type AgentRecommendationResponse = {
264
+ export type AuthResponse = {
289
265
  /**
290
- * Recommendations
266
+ * User
291
267
  *
292
- * List of agent recommendations sorted by confidence
268
+ * User information
293
269
  */
294
- recommendations: Array<AgentRecommendation>;
270
+ user: {
271
+ [key: string]: unknown;
272
+ };
295
273
  /**
296
- * Query
274
+ * Org
297
275
  *
298
- * The analyzed query
276
+ * Organization information (personal org created automatically on registration)
299
277
  */
300
- query: string;
301
- };
302
- /**
303
- * AgentRequest
304
- *
305
- * Request model for agent interactions.
306
- */
307
- export type AgentRequest = {
278
+ org?: {
279
+ [key: string]: unknown;
280
+ } | null;
308
281
  /**
309
282
  * Message
310
283
  *
311
- * The query or message to process
284
+ * Success message
312
285
  */
313
286
  message: string;
314
287
  /**
315
- * History
288
+ * Token
316
289
  *
317
- * Conversation history
290
+ * JWT authentication token (optional for cookie-based auth)
318
291
  */
319
- history?: Array<AgentMessage>;
292
+ token?: string | null;
320
293
  /**
321
- * Context
294
+ * Expires In
322
295
  *
323
- * Additional context for analysis (e.g., enable_rag, include_schema)
296
+ * Token expiry time in seconds from now
324
297
  */
325
- context?: {
326
- [key: string]: unknown;
327
- } | null;
298
+ expires_in?: number | null;
328
299
  /**
329
- * Execution mode
300
+ * Refresh Threshold
301
+ *
302
+ * Recommended refresh threshold in seconds before expiry
330
303
  */
331
- mode?: AgentMode | null;
304
+ refresh_threshold?: number | null;
305
+ };
306
+ /**
307
+ * AutoMapElementsOperation
308
+ *
309
+ * Run the MappingOperator over a mapping structure (async).
310
+ *
311
+ * The MappingOperator walks every unmapped CoA element and proposes
312
+ * associations to reporting concepts. Confidence thresholds: ≥0.90
313
+ * auto-approved (association created), 0.70-0.89 flagged for review
314
+ * (created with `confidence` set; surface it in your UI), <0.70 skipped.
315
+ * Returns a `pending` envelope immediately; subscribe to the SSE stream
316
+ * for progress.
317
+ */
318
+ export type AutoMapElementsOperation = {
332
319
  /**
333
- * Agent Type
320
+ * Mapping Id
334
321
  *
335
- * Specific agent type to use (optional)
322
+ * The mapping structure to populate.
336
323
  */
337
- agent_type?: string | null;
324
+ mapping_id: string;
325
+ };
326
+ /**
327
+ * AvailableExtension
328
+ */
329
+ export type AvailableExtension = {
338
330
  /**
339
- * Criteria for agent selection
331
+ * Name
340
332
  */
341
- selection_criteria?: SelectionCriteria | null;
333
+ name: string;
342
334
  /**
343
- * Force Extended Analysis
344
- *
345
- * Force extended analysis mode with comprehensive research
335
+ * Description
346
336
  */
347
- force_extended_analysis?: boolean;
337
+ description: string;
348
338
  /**
349
- * Enable Rag
350
- *
351
- * Enable RAG context enrichment
339
+ * Enabled
352
340
  */
353
- enable_rag?: boolean;
341
+ enabled?: boolean;
342
+ };
343
+ /**
344
+ * AvailableExtensionsResponse
345
+ */
346
+ export type AvailableExtensionsResponse = {
354
347
  /**
355
- * Stream
356
- *
357
- * Enable streaming response
348
+ * Extensions
358
349
  */
359
- stream?: boolean;
350
+ extensions: Array<AvailableExtension>;
360
351
  };
361
352
  /**
362
- * AgentResponse
353
+ * AvailableGraphTiersResponse
363
354
  *
364
- * Response model for agent interactions.
355
+ * Response containing available graph tiers.
365
356
  */
366
- export type AgentResponse = {
357
+ export type AvailableGraphTiersResponse = {
367
358
  /**
368
- * Content
359
+ * Tiers
369
360
  *
370
- * The agent's response content
361
+ * List of available tiers
371
362
  */
372
- content: string;
363
+ tiers: Array<GraphTierInfo>;
364
+ };
365
+ /**
366
+ * BackupCreateRequest
367
+ *
368
+ * Request model for creating a backup.
369
+ */
370
+ export type BackupCreateRequest = {
373
371
  /**
374
- * Agent Used
372
+ * Backup Format
375
373
  *
376
- * The agent type that handled the request
374
+ * Backup format - only 'full_dump' is supported (complete .lbug database file)
377
375
  */
378
- agent_used: string;
376
+ backup_format?: string;
379
377
  /**
380
- * The execution mode used
378
+ * Backup Type
379
+ *
380
+ * Backup type - only 'full' is supported
381
381
  */
382
- mode_used: AgentMode;
382
+ backup_type?: string;
383
383
  /**
384
- * Metadata
384
+ * Retention Days
385
385
  *
386
- * Response metadata including routing info
386
+ * Retention period in days
387
387
  */
388
- metadata?: {
389
- [key: string]: unknown;
390
- } | null;
388
+ retention_days?: number;
391
389
  /**
392
- * Tokens Used
390
+ * Compression
393
391
  *
394
- * Token usage statistics
392
+ * Enable compression (always enabled for optimal storage)
395
393
  */
396
- tokens_used?: {
397
- [key: string]: number;
398
- } | null;
394
+ compression?: boolean;
399
395
  /**
400
- * Confidence Score
396
+ * Encryption
401
397
  *
402
- * Confidence score of the response (0.0-1.0 scale)
398
+ * Enable encryption (encrypted backups cannot be downloaded)
403
399
  */
404
- confidence_score?: number | null;
400
+ encryption?: boolean;
405
401
  /**
406
- * Operation Id
402
+ * Schedule
407
403
  *
408
- * Operation ID for SSE monitoring
404
+ * Optional cron schedule for automated backups
409
405
  */
410
- operation_id?: string | null;
406
+ schedule?: string | null;
407
+ };
408
+ /**
409
+ * BackupDownloadUrlResponse
410
+ *
411
+ * Response model for backup download URL generation.
412
+ */
413
+ export type BackupDownloadUrlResponse = {
411
414
  /**
412
- * Is Partial
415
+ * Download Url
413
416
  *
414
- * Whether this is a partial response
417
+ * Pre-signed S3 URL for downloading the backup file
415
418
  */
416
- is_partial?: boolean;
419
+ download_url: string;
417
420
  /**
418
- * Error Details
421
+ * Expires In
419
422
  *
420
- * Error details if any
423
+ * URL expiration time in seconds from now
421
424
  */
422
- error_details?: {
423
- [key: string]: unknown;
424
- } | null;
425
+ expires_in: number;
425
426
  /**
426
- * Execution Time
427
+ * Expires At
427
428
  *
428
- * Execution time in seconds
429
+ * Unix timestamp when the URL expires
429
430
  */
430
- execution_time?: number | null;
431
+ expires_at: number;
431
432
  /**
432
- * Timestamp
433
+ * Backup Id
433
434
  *
434
- * Response timestamp
435
+ * Backup identifier
435
436
  */
436
- timestamp?: string;
437
+ backup_id: string;
438
+ /**
439
+ * Graph Id
440
+ *
441
+ * Graph database identifier
442
+ */
443
+ graph_id: string;
437
444
  };
438
445
  /**
439
- * ArtifactResponse
446
+ * BackupLimits
440
447
  *
441
- * The block's producible-artifact envelope — topic, template, mechanics.
448
+ * Backup operation limits.
442
449
  */
443
- export type ArtifactResponse = {
450
+ export type BackupLimits = {
444
451
  /**
445
- * Topic
452
+ * Max Backup Size Gb
446
453
  *
447
- * Structure.description the block's human-readable topic.
454
+ * Maximum backup size in GB
448
455
  */
449
- topic?: string | null;
456
+ max_backup_size_gb: number;
450
457
  /**
451
- * Renderer Note
458
+ * Backup Retention Days
452
459
  *
453
- * e.g. 'in thousands', 'except per share'.
460
+ * Backup retention period in days
454
461
  */
455
- renderer_note?: string | null;
462
+ backup_retention_days: number;
456
463
  /**
457
- * Template
464
+ * Max Backups Per Day
458
465
  *
459
- * Reusable layout (ordering, subtotals, styling) when attached. First-class templates are not yet implemented; this field is always null on currently-shipped block types.
460
- */
461
- template?: {
462
- [key: string]: unknown;
463
- } | null;
464
- /**
465
- * Mechanics
466
+ * Maximum backups per day
466
467
  */
467
- mechanics: ({
468
- kind: 'closing_entry_generator';
469
- } & ScheduleMechanics) | ({
470
- kind: 'statement_renderer';
471
- } & StatementMechanics) | ({
472
- kind: 'metric';
473
- } & MetricMechanics);
468
+ max_backups_per_day: number;
474
469
  };
475
470
  /**
476
- * AssociationResponse
477
- *
478
- * One edge between two elements within a structure (parent/child
479
- * presentation, calculation rollup, mapping, equivalence).
471
+ * BackupListResponse
480
472
  *
481
- * ``association_type`` discriminates the edge semantics. Mapping edges
482
- * are the user-facing path (CoA → reporting concept); presentation /
483
- * calculation edges express structure layout and roll-ups.
484
- * ``confidence`` is set on AI-suggested mappings (≥0.90 auto-approved,
485
- * 0.70-0.89 flagged for review).
473
+ * Response model for backup list.
486
474
  */
487
- export type AssociationResponse = {
475
+ export type BackupListResponse = {
488
476
  /**
489
- * Id
477
+ * Backups
490
478
  */
491
- id: string;
479
+ backups: Array<BackupResponse>;
492
480
  /**
493
- * Structure Id
481
+ * Total Count
494
482
  */
495
- structure_id: string;
483
+ total_count: number;
496
484
  /**
497
- * From Element Id
485
+ * Graph Id
498
486
  */
499
- from_element_id: string;
487
+ graph_id: string;
500
488
  /**
501
- * From Element Name
489
+ * Is Shared Repository
490
+ *
491
+ * Whether this is a shared repository (limits apply)
502
492
  */
503
- from_element_name?: string | null;
493
+ is_shared_repository?: boolean;
504
494
  /**
505
- * From Element Qname
495
+ * Download quota for shared repositories
506
496
  */
507
- from_element_qname?: string | null;
497
+ download_quota?: DownloadQuota | null;
498
+ };
499
+ /**
500
+ * BackupResponse
501
+ *
502
+ * Response model for backup information.
503
+ */
504
+ export type BackupResponse = {
508
505
  /**
509
- * To Element Id
506
+ * Backup Id
510
507
  */
511
- to_element_id: string;
508
+ backup_id: string;
512
509
  /**
513
- * To Element Name
510
+ * Graph Id
514
511
  */
515
- to_element_name?: string | null;
512
+ graph_id: string;
516
513
  /**
517
- * To Element Qname
514
+ * Backup Format
518
515
  */
519
- to_element_qname?: string | null;
516
+ backup_format: string;
520
517
  /**
521
- * Association Type
518
+ * Backup Type
522
519
  */
523
- association_type: string;
520
+ backup_type: string;
524
521
  /**
525
- * Order Value
522
+ * Status
526
523
  */
527
- order_value?: number | null;
524
+ status: string;
528
525
  /**
529
- * Weight
526
+ * Original Size Bytes
530
527
  */
531
- weight?: number | null;
528
+ original_size_bytes: number;
532
529
  /**
533
- * Confidence
530
+ * Compressed Size Bytes
534
531
  */
535
- confidence?: number | null;
532
+ compressed_size_bytes: number;
536
533
  /**
537
- * Suggested By
534
+ * Compression Ratio
538
535
  */
539
- suggested_by?: string | null;
536
+ compression_ratio: number;
540
537
  /**
541
- * Approved By
538
+ * Node Count
542
539
  */
543
- approved_by?: string | null;
544
- };
545
- /**
546
- * AuthResponse
547
- *
548
- * Authentication response model.
549
- */
550
- export type AuthResponse = {
540
+ node_count: number;
551
541
  /**
552
- * User
553
- *
554
- * User information
542
+ * Relationship Count
555
543
  */
556
- user: {
557
- [key: string]: unknown;
558
- };
544
+ relationship_count: number;
559
545
  /**
560
- * Org
561
- *
562
- * Organization information (personal org created automatically on registration)
546
+ * Backup Duration Seconds
563
547
  */
564
- org?: {
565
- [key: string]: unknown;
566
- } | null;
548
+ backup_duration_seconds: number;
567
549
  /**
568
- * Message
569
- *
570
- * Success message
550
+ * Encryption Enabled
571
551
  */
572
- message: string;
552
+ encryption_enabled: boolean;
573
553
  /**
574
- * Token
575
- *
576
- * JWT authentication token (optional for cookie-based auth)
554
+ * Compression Enabled
577
555
  */
578
- token?: string | null;
556
+ compression_enabled: boolean;
579
557
  /**
580
- * Expires In
581
- *
582
- * Token expiry time in seconds from now
558
+ * Allow Export
583
559
  */
584
- expires_in?: number | null;
560
+ allow_export: boolean;
585
561
  /**
586
- * Refresh Threshold
587
- *
588
- * Recommended refresh threshold in seconds before expiry
562
+ * Created At
589
563
  */
590
- refresh_threshold?: number | null;
591
- };
592
- /**
593
- * AutoMapElementsOperation
594
- *
595
- * Run the MappingAgent over a mapping structure (async).
596
- *
597
- * The MappingAgent walks every unmapped CoA element and proposes
598
- * associations to reporting concepts. Confidence thresholds: ≥0.90
599
- * auto-approved (association created), 0.70-0.89 flagged for review
600
- * (created with `confidence` set; surface it in your UI), <0.70 skipped.
601
- * Returns a `pending` envelope immediately; subscribe to the SSE stream
602
- * for progress.
603
- */
604
- export type AutoMapElementsOperation = {
564
+ created_at: string;
605
565
  /**
606
- * Mapping Id
607
- *
608
- * The mapping structure to populate.
566
+ * Completed At
609
567
  */
610
- mapping_id: string;
568
+ completed_at: string | null;
569
+ /**
570
+ * Expires At
571
+ */
572
+ expires_at: string | null;
611
573
  };
612
574
  /**
613
- * AvailableExtension
575
+ * BackupStatsResponse
576
+ *
577
+ * Response model for backup statistics.
614
578
  */
615
- export type AvailableExtension = {
579
+ export type BackupStatsResponse = {
616
580
  /**
617
- * Name
581
+ * Graph Id
618
582
  */
619
- name: string;
620
- /**
621
- * Description
622
- */
623
- description: string;
624
- /**
625
- * Enabled
626
- */
627
- enabled?: boolean;
628
- };
629
- /**
630
- * AvailableExtensionsResponse
631
- */
632
- export type AvailableExtensionsResponse = {
633
- /**
634
- * Extensions
635
- */
636
- extensions: Array<AvailableExtension>;
637
- };
638
- /**
639
- * AvailableGraphTiersResponse
640
- *
641
- * Response containing available graph tiers.
642
- */
643
- export type AvailableGraphTiersResponse = {
644
- /**
645
- * Tiers
646
- *
647
- * List of available tiers
648
- */
649
- tiers: Array<GraphTierInfo>;
650
- };
651
- /**
652
- * BackupCreateRequest
653
- *
654
- * Request model for creating a backup.
655
- */
656
- export type BackupCreateRequest = {
657
- /**
658
- * Backup Format
659
- *
660
- * Backup format - only 'full_dump' is supported (complete .lbug database file)
661
- */
662
- backup_format?: string;
663
- /**
664
- * Backup Type
665
- *
666
- * Backup type - only 'full' is supported
667
- */
668
- backup_type?: string;
669
- /**
670
- * Retention Days
671
- *
672
- * Retention period in days
673
- */
674
- retention_days?: number;
675
- /**
676
- * Compression
677
- *
678
- * Enable compression (always enabled for optimal storage)
679
- */
680
- compression?: boolean;
681
- /**
682
- * Encryption
683
- *
684
- * Enable encryption (encrypted backups cannot be downloaded)
685
- */
686
- encryption?: boolean;
687
- /**
688
- * Schedule
689
- *
690
- * Optional cron schedule for automated backups
691
- */
692
- schedule?: string | null;
693
- };
694
- /**
695
- * BackupDownloadUrlResponse
696
- *
697
- * Response model for backup download URL generation.
698
- */
699
- export type BackupDownloadUrlResponse = {
700
- /**
701
- * Download Url
702
- *
703
- * Pre-signed S3 URL for downloading the backup file
704
- */
705
- download_url: string;
706
- /**
707
- * Expires In
708
- *
709
- * URL expiration time in seconds from now
710
- */
711
- expires_in: number;
712
- /**
713
- * Expires At
714
- *
715
- * Unix timestamp when the URL expires
716
- */
717
- expires_at: number;
718
- /**
719
- * Backup Id
720
- *
721
- * Backup identifier
722
- */
723
- backup_id: string;
724
- /**
725
- * Graph Id
726
- *
727
- * Graph database identifier
728
- */
729
- graph_id: string;
730
- };
731
- /**
732
- * BackupLimits
733
- *
734
- * Backup operation limits.
735
- */
736
- export type BackupLimits = {
737
- /**
738
- * Max Backup Size Gb
739
- *
740
- * Maximum backup size in GB
741
- */
742
- max_backup_size_gb: number;
743
- /**
744
- * Backup Retention Days
745
- *
746
- * Backup retention period in days
747
- */
748
- backup_retention_days: number;
749
- /**
750
- * Max Backups Per Day
751
- *
752
- * Maximum backups per day
753
- */
754
- max_backups_per_day: number;
755
- };
756
- /**
757
- * BackupListResponse
758
- *
759
- * Response model for backup list.
760
- */
761
- export type BackupListResponse = {
762
- /**
763
- * Backups
764
- */
765
- backups: Array<BackupResponse>;
766
- /**
767
- * Total Count
768
- */
769
- total_count: number;
770
- /**
771
- * Graph Id
772
- */
773
- graph_id: string;
774
- /**
775
- * Is Shared Repository
776
- *
777
- * Whether this is a shared repository (limits apply)
778
- */
779
- is_shared_repository?: boolean;
780
- /**
781
- * Download quota for shared repositories
782
- */
783
- download_quota?: DownloadQuota | null;
784
- };
785
- /**
786
- * BackupResponse
787
- *
788
- * Response model for backup information.
789
- */
790
- export type BackupResponse = {
791
- /**
792
- * Backup Id
793
- */
794
- backup_id: string;
795
- /**
796
- * Graph Id
797
- */
798
- graph_id: string;
799
- /**
800
- * Backup Format
801
- */
802
- backup_format: string;
803
- /**
804
- * Backup Type
805
- */
806
- backup_type: string;
807
- /**
808
- * Status
809
- */
810
- status: string;
811
- /**
812
- * Original Size Bytes
813
- */
814
- original_size_bytes: number;
815
- /**
816
- * Compressed Size Bytes
817
- */
818
- compressed_size_bytes: number;
819
- /**
820
- * Compression Ratio
821
- */
822
- compression_ratio: number;
823
- /**
824
- * Node Count
825
- */
826
- node_count: number;
827
- /**
828
- * Relationship Count
829
- */
830
- relationship_count: number;
831
- /**
832
- * Backup Duration Seconds
833
- */
834
- backup_duration_seconds: number;
835
- /**
836
- * Encryption Enabled
837
- */
838
- encryption_enabled: boolean;
839
- /**
840
- * Compression Enabled
841
- */
842
- compression_enabled: boolean;
843
- /**
844
- * Allow Export
845
- */
846
- allow_export: boolean;
847
- /**
848
- * Created At
849
- */
850
- created_at: string;
851
- /**
852
- * Completed At
853
- */
854
- completed_at: string | null;
855
- /**
856
- * Expires At
857
- */
858
- expires_at: string | null;
859
- };
860
- /**
861
- * BackupStatsResponse
862
- *
863
- * Response model for backup statistics.
864
- */
865
- export type BackupStatsResponse = {
866
- /**
867
- * Graph Id
868
- */
869
- graph_id: string;
583
+ graph_id: string;
870
584
  /**
871
585
  * Total Backups
872
586
  */
@@ -911,17 +625,17 @@ export type BackupStatsResponse = {
911
625
  };
912
626
  };
913
627
  /**
914
- * BatchAgentRequest
628
+ * BatchOperatorRequest
915
629
  *
916
630
  * Request for batch processing multiple queries.
917
631
  */
918
- export type BatchAgentRequest = {
632
+ export type BatchOperatorRequest = {
919
633
  /**
920
634
  * Queries
921
635
  *
922
636
  * List of queries to process (max 10)
923
637
  */
924
- queries: Array<AgentRequest>;
638
+ queries: Array<OperatorRequest>;
925
639
  /**
926
640
  * Parallel
927
641
  *
@@ -930,17 +644,17 @@ export type BatchAgentRequest = {
930
644
  parallel?: boolean;
931
645
  };
932
646
  /**
933
- * BatchAgentResponse
647
+ * BatchOperatorResponse
934
648
  *
935
649
  * Response for batch processing.
936
650
  */
937
- export type BatchAgentResponse = {
651
+ export type BatchOperatorResponse = {
938
652
  /**
939
653
  * Results
940
654
  *
941
- * List of agent responses (includes successes and failures)
655
+ * List of operator responses (includes successes and failures)
942
656
  */
943
- results: Array<AgentResponse>;
657
+ results: Array<OperatorResponse>;
944
658
  /**
945
659
  * Total Execution Time
946
660
  *
@@ -1732,6 +1446,12 @@ export type CreateEventBlockRequest = {
1732
1446
  * REA event class. 'economic' events change resources and drive GL postings; 'support' events are audit-trail / value-chain primitives (typically captured with apply_handlers=False).
1733
1447
  */
1734
1448
  event_class?: 'economic' | 'support';
1449
+ /**
1450
+ * Event Action
1451
+ *
1452
+ * Canonical action verb refining `event_category`. Disambiguates concepts ERPs collapse: `transferAllRights` (ownership transfer, no physical movement) vs `transferCustody` (physical only, no rights transfer) — load-bearing for consignment, drop-shipping, marketplace settlement, escrow. Optional; null is valid for legacy events and during adapter rollout.
1453
+ */
1454
+ event_action?: 'produce' | 'raise' | 'consume' | 'lower' | 'use' | 'cite' | 'work' | 'deliverService' | 'pickup' | 'dropoff' | 'accept' | 'transferCustody' | 'transferAllRights' | 'transfer' | 'move' | 'modify' | 'combine' | 'separate' | 'copy' | null;
1735
1455
  /**
1736
1456
  * Agent Id
1737
1457
  *
@@ -1984,6 +1704,8 @@ export type CreateGraphRequest = {
1984
1704
  export type CreateInformationBlockRequest = ({
1985
1705
  block_type: 'schedule';
1986
1706
  } & CreateScheduleArm) | ({
1707
+ block_type: 'rollforward';
1708
+ } & CreateRollforwardArm) | ({
1987
1709
  block_type: 'balance_sheet' | 'cash_flow_statement' | 'comprehensive_income' | 'equity_statement' | 'income_statement' | 'metric';
1988
1710
  } & CreateLegacyArm);
1989
1711
  /**
@@ -1993,7 +1715,7 @@ export type CreateInformationBlockRequest = ({
1993
1715
  *
1994
1716
  * This is the iterative, AI-assisted craft path. Each call adds a single
1995
1717
  * association to the target mapping structure. Use `auto-map-elements`
1996
- * to create many at once via the MappingAgent. Reject duplicates: if
1718
+ * to create many at once via the MappingOperator. Reject duplicates: if
1997
1719
  * the (from, to, type) tuple already exists, the call returns 409.
1998
1720
  */
1999
1721
  export type CreateMappingAssociationOperation = {
@@ -2115,7 +1837,7 @@ export type CreateReportRequest = {
2115
1837
  /**
2116
1838
  * Taxonomy Id
2117
1839
  *
2118
- * Taxonomy that defines the structures (BS / IS / CF / Equity / Schedules) this report can render. Defaults to the platform US GAAP reporting taxonomy.
1840
+ * Taxonomy that defines the structures (BS / IS / CF / Equity / Schedules) this report can render. Accepts either an exact tenant-specific taxonomy UUID or a standard name (e.g. 'rs-gaap'). Standard names resolve to the latest reporting_standard taxonomy with that name. Defaults to 'rs-gaap', the canonical reporting vocabulary.
2119
1841
  */
2120
1842
  taxonomy_id?: string;
2121
1843
  /**
@@ -2169,7 +1891,56 @@ export type CreateRepositorySubscriptionRequest = {
2169
1891
  plan_name: string;
2170
1892
  };
2171
1893
  /**
2172
- * CreateScheduleRequest
1894
+ * CreateRollforwardRequest
1895
+ *
1896
+ * Create a rollforward Information Block.
1897
+ *
1898
+ * Mirrors :class:`CreateScheduleRequest` in shape. The block decomposes
1899
+ * the period change in ``bs_source_qname`` across the declared
1900
+ * attribution filters. Residual (Δ BS - Σ filter matches) falls back to
1901
+ * the default change tag — or, if no default is declared, surfaces as
1902
+ * an unattributed fact tagged with a synthetic residual concept.
1903
+ */
1904
+ export type CreateRollforwardRequest = {
1905
+ /**
1906
+ * Name
1907
+ *
1908
+ * Human-readable block name.
1909
+ */
1910
+ name: string;
1911
+ /**
1912
+ * Bs Source Qname
1913
+ *
1914
+ * QName of the balance-sheet element whose period delta this block decomposes. Resolved to ``bs_source_element_id`` at create time.
1915
+ */
1916
+ bs_source_qname: string;
1917
+ /**
1918
+ * Default Change Tag Qname
1919
+ *
1920
+ * QName of the fallback flow concept (Tier 1 default change tag). Residual amount — Δ BS minus the sum of filter-matched amounts — is attributed to this concept. When omitted, residual surfaces unattributed; the validation_mode setting governs whether that's a hard error.
1921
+ */
1922
+ default_change_tag_qname?: string | null;
1923
+ /**
1924
+ * Attribution Filters
1925
+ *
1926
+ * Filter predicates routing LineItems to flow concepts.
1927
+ */
1928
+ attribution_filters?: Array<AttributionFilter>;
1929
+ /**
1930
+ * Validation Mode
1931
+ *
1932
+ * How the renderer arbitrates when Σ filter matches != Δ BS. ``strict`` raises; ``residual_as_default`` emits the residual as a default-tag fact (the common case); ``warn_only`` logs and lets the imbalance pass.
1933
+ */
1934
+ validation_mode?: 'strict' | 'residual_as_default' | 'warn_only';
1935
+ /**
1936
+ * Taxonomy Id
1937
+ *
1938
+ * Owning taxonomy id (auto-resolved from ``bs_source_qname`` when omitted).
1939
+ */
1940
+ taxonomy_id?: string | null;
1941
+ };
1942
+ /**
1943
+ * CreateScheduleRequest
2173
1944
  */
2174
1945
  export type CreateScheduleRequest = {
2175
1946
  /**
@@ -2979,6 +2750,8 @@ export type DeleteGraphOp = {
2979
2750
  export type DeleteInformationBlockRequest = ({
2980
2751
  block_type: 'schedule';
2981
2752
  } & DeleteScheduleArm) | ({
2753
+ block_type: 'rollforward';
2754
+ } & DeleteRollforwardArm) | ({
2982
2755
  block_type: 'balance_sheet' | 'cash_flow_statement' | 'comprehensive_income' | 'equity_statement' | 'income_statement' | 'metric';
2983
2756
  } & DeleteLegacyArm);
2984
2757
  /**
@@ -3141,6 +2914,23 @@ export type DeleteResult = {
3141
2914
  */
3142
2915
  deleted: boolean;
3143
2916
  };
2917
+ /**
2918
+ * DeleteRollforwardRequest
2919
+ *
2920
+ * Delete a rollforward block.
2921
+ *
2922
+ * Cascades through any synthetic facts produced by this block's filter
2923
+ * evaluations. The underlying ledger LineItems are not touched — only
2924
+ * the rollforward IB's projection of them.
2925
+ */
2926
+ export type DeleteRollforwardRequest = {
2927
+ /**
2928
+ * Structure Id
2929
+ *
2930
+ * Structure ID of the rollforward block.
2931
+ */
2932
+ structure_id: string;
2933
+ };
3144
2934
  /**
3145
2935
  * DeleteScheduleRequest
3146
2936
  *
@@ -4093,6 +3883,12 @@ export type EventBlockEnvelope = {
4093
3883
  * REA event class — `economic` (drives GL postings) or `support` (audit-trail / value-chain primitive, no GL impact).
4094
3884
  */
4095
3885
  event_class: string;
3886
+ /**
3887
+ * Event Action
3888
+ *
3889
+ * Canonical action verb refining `event_category`. Null when the source adapter or capture path didn't supply one.
3890
+ */
3891
+ event_action?: 'produce' | 'raise' | 'consume' | 'lower' | 'use' | 'cite' | 'work' | 'deliverService' | 'pickup' | 'dropoff' | 'accept' | 'transferCustody' | 'transferAllRights' | 'transfer' | 'move' | 'modify' | 'combine' | 'separate' | 'copy' | null;
4096
3892
  /**
4097
3893
  * Agent Id
4098
3894
  *
@@ -4237,6 +4033,68 @@ export type EventHandlerResponse = {
4237
4033
  */
4238
4034
  created_by?: string | null;
4239
4035
  };
4036
+ /**
4037
+ * ExecuteEventBlockRequest
4038
+ *
4039
+ * Request to publish an event to the source-of-truth system.
4040
+ *
4041
+ * For events on a connection with `write_policy='qb_authoritative'`
4042
+ * (or `'hybrid'`), this triggers a synchronous write to QuickBooks
4043
+ * via the QB API. The returned `qb_txn_id` lands on
4044
+ * `event.metadata.qb_external_id` and the event transitions to
4045
+ * `committed` (in flight) → `fulfilled` (QB accepted) or `pending`
4046
+ * (QB rejected).
4047
+ *
4048
+ * `'native'`-policy events fast-path through with no QB write —
4049
+ * RoboSystems IS the source of truth, no outbound publish needed.
4050
+ */
4051
+ export type ExecuteEventBlockRequest = {
4052
+ /**
4053
+ * Event Id
4054
+ *
4055
+ * Event ID (`evt_*` ULID) to publish. The event's `metadata.connection_id` determines which QB connection to write to; the connection's `write_policy` governs whether a write fires.
4056
+ */
4057
+ event_id: string;
4058
+ /**
4059
+ * Connection Id
4060
+ *
4061
+ * Override for the connection to route the write through. Used by the close-period batch path where schedule-originated events don't carry `connection_id` in their metadata. When unset, the command reads `event.metadata.connection_id`.
4062
+ */
4063
+ connection_id?: string | null;
4064
+ };
4065
+ /**
4066
+ * ExecuteEventBlockResponse
4067
+ *
4068
+ * Outcome of an `execute-event-block` call.
4069
+ */
4070
+ export type ExecuteEventBlockResponse = {
4071
+ /**
4072
+ * Event Id
4073
+ *
4074
+ * Echo of the event ID.
4075
+ */
4076
+ event_id: string;
4077
+ /**
4078
+ * Status
4079
+ *
4080
+ * Post-execute event status. `'classified'` when no write fired (native policy or no-op). `'committed'` when the QB write was in flight (intermediate state). `'fulfilled'` when QB accepted and local GL drafts were promoted to posted. `'pending'` when QB rejected — see `qb_error` for the rejection detail; retry after fixing the underlying issue.
4081
+ */
4082
+ status: string;
4083
+ /**
4084
+ * Qb External Id
4085
+ *
4086
+ * QB-side transaction ID returned by the JournalEntry API. Null when no write fired (native policy) or when the write was rejected before getting an ID.
4087
+ */
4088
+ qb_external_id?: string | null;
4089
+ /**
4090
+ * Qb Error
4091
+ *
4092
+ * QB rejection detail when status='pending'. Shape: `{code, message, qb_response_at}`. Operator retries after fixing CoA mapping / amount validation / closed-period.
4093
+ */
4094
+ qb_error?: {
4095
+ [key: string]: unknown;
4096
+ } | null;
4097
+ };
4240
4098
  /**
4241
4099
  * FactLite
4242
4100
  *
@@ -6034,6 +5892,14 @@ export type JournalEntryLineItemInput = {
6034
5892
  * Per-line memo (overrides the entry-level memo on this line).
6035
5893
  */
6036
5894
  description?: string | null;
5895
+ /**
5896
+ * Metadata
5897
+ *
5898
+ * Optional per-line metadata stamped on ``LineItem.metadata_``. Used to carry source-system fields the standard columns don't cover — e.g. an external flow-tag code that drives rollforward attribution (``transaction_description_code``), an external memo, or a cost-center hint. Pass-through is non-validating; the renderer / filter engine reads keys it knows about and ignores the rest. ``None`` is normalized to ``{}`` at persist time.
5899
+ */
5900
+ metadata?: {
5901
+ [key: string]: unknown;
5902
+ } | null;
6037
5903
  };
6038
5904
  /**
6039
5905
  * JournalEntryLineItemResponse
@@ -6387,6 +6253,41 @@ export type LedgerEntityResponse = {
6387
6253
  */
6388
6254
  updated_at?: string | null;
6389
6255
  };
6256
+ /**
6257
+ * LineItemMetadataPredicate
6258
+ *
6259
+ * Filter ledger LineItems whose ``metadata_[field]`` is in ``values``.
6260
+ *
6261
+ * The single predicate kind shipped in Phase 2 MVP. Sufficient for any
6262
+ * source taxonomy that stamps a flow-tag column on each transaction
6263
+ * line — mini's ``TransactionDescriptionCode``, future XBRL GL
6264
+ * ``GenericFlowCategory`` columns, custom tenant tags.
6265
+ *
6266
+ * ``field`` is the JSONB key under ``line_items.metadata`` (e.g.
6267
+ * ``"transaction_description_code"``). ``values`` is the set of values
6268
+ * that route to the filter's target concept; matched LineItems aggregate
6269
+ * signed into the attributed fact for the period.
6270
+ */
6271
+ export type LineItemMetadataPredicate = {
6272
+ /**
6273
+ * Kind
6274
+ *
6275
+ * Discriminator value selecting this predicate shape.
6276
+ */
6277
+ kind?: 'line_item_metadata_field';
6278
+ /**
6279
+ * Field
6280
+ *
6281
+ * JSONB key under ``line_items.metadata`` to match against — e.g. ``transaction_description_code``. The renderer performs an exact-string comparison on the JSONB-extracted text value.
6282
+ */
6283
+ field: string;
6284
+ /**
6285
+ * Values
6286
+ *
6287
+ * Metadata values that route to this filter's target concept. A LineItem matches when ``metadata[field] ∈ values`` AND the line falls within the rollforward's period.
6288
+ */
6289
+ values: Array<string>;
6290
+ };
6390
6291
  /**
6391
6292
  * LinkEntityTaxonomyRequest
6392
6293
  *
@@ -6713,217 +6614,489 @@ export type MetricMechanics = {
6713
6614
  */
6714
6615
  export type OAuthCallbackRequest = {
6715
6616
  /**
6716
- * Code
6617
+ * Code
6618
+ *
6619
+ * Authorization code from OAuth provider
6620
+ */
6621
+ code: string;
6622
+ /**
6623
+ * State
6624
+ *
6625
+ * OAuth state for verification
6626
+ */
6627
+ state: string;
6628
+ /**
6629
+ * Realm Id
6630
+ *
6631
+ * QuickBooks-specific realm ID
6632
+ */
6633
+ realm_id?: string | null;
6634
+ /**
6635
+ * Error
6636
+ *
6637
+ * OAuth error if authorization failed
6638
+ */
6639
+ error?: string | null;
6640
+ /**
6641
+ * Error Description
6642
+ *
6643
+ * OAuth error details
6644
+ */
6645
+ error_description?: string | null;
6646
+ };
6647
+ /**
6648
+ * OAuthInitRequest
6649
+ *
6650
+ * Request to initiate OAuth flow.
6651
+ */
6652
+ export type OAuthInitRequest = {
6653
+ /**
6654
+ * Connection Id
6655
+ *
6656
+ * Connection ID to link OAuth to
6657
+ */
6658
+ connection_id: string;
6659
+ /**
6660
+ * Redirect Uri
6661
+ *
6662
+ * Override default redirect URI
6663
+ */
6664
+ redirect_uri?: string | null;
6665
+ /**
6666
+ * Additional Params
6667
+ *
6668
+ * Provider-specific parameters
6669
+ */
6670
+ additional_params?: {
6671
+ [key: string]: string;
6672
+ } | null;
6673
+ };
6674
+ /**
6675
+ * OAuthInitResponse
6676
+ *
6677
+ * Response with OAuth authorization URL.
6678
+ */
6679
+ export type OAuthInitResponse = {
6680
+ /**
6681
+ * Auth Url
6682
+ *
6683
+ * URL to redirect user for authorization
6684
+ */
6685
+ auth_url: string;
6686
+ /**
6687
+ * State
6688
+ *
6689
+ * OAuth state for security
6690
+ */
6691
+ state: string;
6692
+ /**
6693
+ * Expires At
6694
+ *
6695
+ * When this OAuth request expires
6696
+ */
6697
+ expires_at: string;
6698
+ };
6699
+ /**
6700
+ * OfferingRepositoryPlan
6701
+ *
6702
+ * Information about a repository plan.
6703
+ */
6704
+ export type OfferingRepositoryPlan = {
6705
+ /**
6706
+ * Plan
6707
+ *
6708
+ * Plan identifier
6709
+ */
6710
+ plan: string;
6711
+ /**
6712
+ * Name
6713
+ *
6714
+ * Plan name
6715
+ */
6716
+ name: string;
6717
+ /**
6718
+ * Monthly Price
6719
+ *
6720
+ * Monthly price in USD
6721
+ */
6722
+ monthly_price: number;
6723
+ /**
6724
+ * Monthly Credits
6725
+ *
6726
+ * Monthly credit allocation
6727
+ */
6728
+ monthly_credits: number;
6729
+ /**
6730
+ * Access Level
6731
+ *
6732
+ * Access level
6733
+ */
6734
+ access_level: string;
6735
+ /**
6736
+ * Features
6737
+ *
6738
+ * List of features
6739
+ */
6740
+ features: Array<string>;
6741
+ /**
6742
+ * Rate Limits
6743
+ *
6744
+ * Rate limits for this plan
6745
+ */
6746
+ rate_limits?: {
6747
+ [key: string]: number | null;
6748
+ } | null;
6749
+ };
6750
+ /**
6751
+ * OperationCosts
6752
+ *
6753
+ * Operation cost information.
6754
+ */
6755
+ export type OperationCosts = {
6756
+ /**
6757
+ * Description
6758
+ *
6759
+ * Description of operation costs
6760
+ */
6761
+ description: string;
6762
+ /**
6763
+ * Ai Operations
6764
+ *
6765
+ * Base costs for AI operations
6766
+ */
6767
+ ai_operations: {
6768
+ [key: string]: number;
6769
+ };
6770
+ /**
6771
+ * Token Pricing
6772
+ *
6773
+ * Token pricing by model
6774
+ */
6775
+ token_pricing: {
6776
+ [key: string]: TokenPricing;
6777
+ };
6778
+ /**
6779
+ * Included Operations
6780
+ *
6781
+ * Operations that don't consume credits
6782
+ */
6783
+ included_operations: Array<string>;
6784
+ /**
6785
+ * Notes
6786
+ *
6787
+ * Important notes about costs
6788
+ */
6789
+ notes: Array<string>;
6790
+ };
6791
+ /**
6792
+ * OperationEnvelope
6793
+ *
6794
+ * Uniform response shape for every operation endpoint.
6795
+ *
6796
+ * Every dispatch through an operation surface returns an envelope carrying
6797
+ * an ``op_<ULID>`` operation_id. That id is the bridge to the platform's
6798
+ * monitoring surface: pass it to
6799
+ * ``GET /v1/operations/{operation_id}/stream`` (see ``routers/operations.py``)
6800
+ * to subscribe to SSE progress events. Sync commands complete in the
6801
+ * envelope itself; async commands (``status: "pending"``, HTTP 202) hand
6802
+ * off to a background worker and stream their tail through the same SSE
6803
+ * endpoint until completion. Failed dispatches still mint an
6804
+ * ``operation_id`` so the audit log and any partial SSE events stay
6805
+ * correlatable.
6806
+ *
6807
+ * ``TResult`` parameterizes the ``result`` field so per-op response shapes
6808
+ * surface in OpenAPI. Operations that pin ``OperationSpec.result_type`` get
6809
+ * ``OperationEnvelope[YourEnvelope]`` as their response model; ops that
6810
+ * don't keep the default ``Any`` shape (`result: any | null` on the wire).
6811
+ *
6812
+ * Fields:
6813
+ * - ``operation``: kebab-case command name (e.g. ``close-period``)
6814
+ * - ``operation_id``: ``op_``-prefixed ULID; always present, usable for
6815
+ * audit correlation and — for async commands — SSE subscription via
6816
+ * ``/v1/operations/{operation_id}/stream``
6817
+ * - ``status``: ``"completed"`` (sync, HTTP 200), ``"pending"``
6818
+ * (async, HTTP 202), or ``"failed"`` (error responses)
6819
+ * - ``result``: the domain-specific payload (the original Pydantic
6820
+ * response) or ``None`` for async/failed cases
6821
+ * - ``at``: ISO-8601 UTC timestamp of when the envelope was minted
6822
+ * - ``created_by``: user ID of the caller who initiated this operation
6823
+ * - ``idempotent_replay``: ``True`` when the dispatcher returned this
6824
+ * envelope from the idempotency cache (the underlying command did NOT
6825
+ * execute again)
6826
+ */
6827
+ export type OperationEnvelope = {
6828
+ /**
6829
+ * Operation
6830
+ *
6831
+ * Kebab-case operation name
6832
+ */
6833
+ operation: string;
6834
+ /**
6835
+ * Operationid
6836
+ *
6837
+ * op_-prefixed ULID for audit and SSE correlation
6838
+ */
6839
+ operationId: string;
6840
+ /**
6841
+ * Status
6842
+ *
6843
+ * Operation lifecycle state
6844
+ */
6845
+ status: 'completed' | 'pending' | 'failed';
6846
+ /**
6847
+ * Result
6848
+ *
6849
+ * Command-specific result payload
6850
+ */
6851
+ result?: unknown | null;
6852
+ /**
6853
+ * At
6854
+ *
6855
+ * ISO-8601 UTC timestamp
6856
+ */
6857
+ at: string;
6858
+ /**
6859
+ * Createdby
6860
+ *
6861
+ * User ID that initiated the operation (null for legacy callers)
6862
+ */
6863
+ createdBy?: string | null;
6864
+ /**
6865
+ * Idempotentreplay
6866
+ *
6867
+ * True when this envelope came from the idempotency cache — the underlying command did not execute again. False on fresh executions.
6868
+ */
6869
+ idempotentReplay?: boolean;
6870
+ };
6871
+ /**
6872
+ * OperationEnvelope[AssociationResponse]
6873
+ */
6874
+ export type OperationEnvelopeAssociationResponse = {
6875
+ /**
6876
+ * Operation
6877
+ *
6878
+ * Kebab-case operation name
6879
+ */
6880
+ operation: string;
6881
+ /**
6882
+ * Operationid
6883
+ *
6884
+ * op_-prefixed ULID for audit and SSE correlation
6885
+ */
6886
+ operationId: string;
6887
+ /**
6888
+ * Status
6889
+ *
6890
+ * Operation lifecycle state
6891
+ */
6892
+ status: 'completed' | 'pending' | 'failed';
6893
+ /**
6894
+ * Command-specific result payload
6895
+ */
6896
+ result?: AssociationResponse | null;
6897
+ /**
6898
+ * At
6899
+ *
6900
+ * ISO-8601 UTC timestamp
6901
+ */
6902
+ at: string;
6903
+ /**
6904
+ * Createdby
6905
+ *
6906
+ * User ID that initiated the operation (null for legacy callers)
6907
+ */
6908
+ createdBy?: string | null;
6909
+ /**
6910
+ * Idempotentreplay
6911
+ *
6912
+ * True when this envelope came from the idempotency cache — the underlying command did not execute again. False on fresh executions.
6913
+ */
6914
+ idempotentReplay?: boolean;
6915
+ };
6916
+ /**
6917
+ * OperationEnvelope[ClosePeriodResponse]
6918
+ */
6919
+ export type OperationEnvelopeClosePeriodResponse = {
6920
+ /**
6921
+ * Operation
6922
+ *
6923
+ * Kebab-case operation name
6924
+ */
6925
+ operation: string;
6926
+ /**
6927
+ * Operationid
6717
6928
  *
6718
- * Authorization code from OAuth provider
6929
+ * op_-prefixed ULID for audit and SSE correlation
6719
6930
  */
6720
- code: string;
6931
+ operationId: string;
6721
6932
  /**
6722
- * State
6933
+ * Status
6723
6934
  *
6724
- * OAuth state for verification
6935
+ * Operation lifecycle state
6725
6936
  */
6726
- state: string;
6937
+ status: 'completed' | 'pending' | 'failed';
6727
6938
  /**
6728
- * Realm Id
6939
+ * Command-specific result payload
6940
+ */
6941
+ result?: ClosePeriodResponse | null;
6942
+ /**
6943
+ * At
6729
6944
  *
6730
- * QuickBooks-specific realm ID
6945
+ * ISO-8601 UTC timestamp
6731
6946
  */
6732
- realm_id?: string | null;
6947
+ at: string;
6733
6948
  /**
6734
- * Error
6949
+ * Createdby
6735
6950
  *
6736
- * OAuth error if authorization failed
6951
+ * User ID that initiated the operation (null for legacy callers)
6737
6952
  */
6738
- error?: string | null;
6953
+ createdBy?: string | null;
6739
6954
  /**
6740
- * Error Description
6955
+ * Idempotentreplay
6741
6956
  *
6742
- * OAuth error details
6957
+ * True when this envelope came from the idempotency cache — the underlying command did not execute again. False on fresh executions.
6743
6958
  */
6744
- error_description?: string | null;
6959
+ idempotentReplay?: boolean;
6745
6960
  };
6746
6961
  /**
6747
- * OAuthInitRequest
6748
- *
6749
- * Request to initiate OAuth flow.
6962
+ * OperationEnvelope[DeleteInformationBlockResponse]
6750
6963
  */
6751
- export type OAuthInitRequest = {
6964
+ export type OperationEnvelopeDeleteInformationBlockResponse = {
6752
6965
  /**
6753
- * Connection Id
6966
+ * Operation
6754
6967
  *
6755
- * Connection ID to link OAuth to
6968
+ * Kebab-case operation name
6756
6969
  */
6757
- connection_id: string;
6970
+ operation: string;
6758
6971
  /**
6759
- * Redirect Uri
6972
+ * Operationid
6760
6973
  *
6761
- * Override default redirect URI
6974
+ * op_-prefixed ULID for audit and SSE correlation
6762
6975
  */
6763
- redirect_uri?: string | null;
6976
+ operationId: string;
6764
6977
  /**
6765
- * Additional Params
6978
+ * Status
6766
6979
  *
6767
- * Provider-specific parameters
6980
+ * Operation lifecycle state
6768
6981
  */
6769
- additional_params?: {
6770
- [key: string]: string;
6771
- } | null;
6772
- };
6773
- /**
6774
- * OAuthInitResponse
6775
- *
6776
- * Response with OAuth authorization URL.
6777
- */
6778
- export type OAuthInitResponse = {
6982
+ status: 'completed' | 'pending' | 'failed';
6779
6983
  /**
6780
- * Auth Url
6984
+ * Command-specific result payload
6985
+ */
6986
+ result?: DeleteInformationBlockResponse | null;
6987
+ /**
6988
+ * At
6781
6989
  *
6782
- * URL to redirect user for authorization
6990
+ * ISO-8601 UTC timestamp
6783
6991
  */
6784
- auth_url: string;
6992
+ at: string;
6785
6993
  /**
6786
- * State
6994
+ * Createdby
6787
6995
  *
6788
- * OAuth state for security
6996
+ * User ID that initiated the operation (null for legacy callers)
6789
6997
  */
6790
- state: string;
6998
+ createdBy?: string | null;
6791
6999
  /**
6792
- * Expires At
7000
+ * Idempotentreplay
6793
7001
  *
6794
- * When this OAuth request expires
7002
+ * True when this envelope came from the idempotency cache — the underlying command did not execute again. False on fresh executions.
6795
7003
  */
6796
- expires_at: string;
7004
+ idempotentReplay?: boolean;
6797
7005
  };
6798
7006
  /**
6799
- * OfferingRepositoryPlan
6800
- *
6801
- * Information about a repository plan.
7007
+ * OperationEnvelope[DeletePortfolioBlockResponse]
6802
7008
  */
6803
- export type OfferingRepositoryPlan = {
7009
+ export type OperationEnvelopeDeletePortfolioBlockResponse = {
6804
7010
  /**
6805
- * Plan
7011
+ * Operation
6806
7012
  *
6807
- * Plan identifier
7013
+ * Kebab-case operation name
6808
7014
  */
6809
- plan: string;
7015
+ operation: string;
6810
7016
  /**
6811
- * Name
7017
+ * Operationid
6812
7018
  *
6813
- * Plan name
7019
+ * op_-prefixed ULID for audit and SSE correlation
6814
7020
  */
6815
- name: string;
7021
+ operationId: string;
6816
7022
  /**
6817
- * Monthly Price
7023
+ * Status
6818
7024
  *
6819
- * Monthly price in USD
7025
+ * Operation lifecycle state
6820
7026
  */
6821
- monthly_price: number;
7027
+ status: 'completed' | 'pending' | 'failed';
6822
7028
  /**
6823
- * Monthly Credits
6824
- *
6825
- * Monthly credit allocation
7029
+ * Command-specific result payload
6826
7030
  */
6827
- monthly_credits: number;
7031
+ result?: DeletePortfolioBlockResponse | null;
6828
7032
  /**
6829
- * Access Level
7033
+ * At
6830
7034
  *
6831
- * Access level
7035
+ * ISO-8601 UTC timestamp
6832
7036
  */
6833
- access_level: string;
7037
+ at: string;
6834
7038
  /**
6835
- * Features
7039
+ * Createdby
6836
7040
  *
6837
- * List of features
7041
+ * User ID that initiated the operation (null for legacy callers)
6838
7042
  */
6839
- features: Array<string>;
7043
+ createdBy?: string | null;
6840
7044
  /**
6841
- * Rate Limits
7045
+ * Idempotentreplay
6842
7046
  *
6843
- * Rate limits for this plan
7047
+ * True when this envelope came from the idempotency cache — the underlying command did not execute again. False on fresh executions.
6844
7048
  */
6845
- rate_limits?: {
6846
- [key: string]: number | null;
6847
- } | null;
7049
+ idempotentReplay?: boolean;
6848
7050
  };
6849
7051
  /**
6850
- * OperationCosts
6851
- *
6852
- * Operation cost information.
7052
+ * OperationEnvelope[DeleteResult]
6853
7053
  */
6854
- export type OperationCosts = {
7054
+ export type OperationEnvelopeDeleteResult = {
6855
7055
  /**
6856
- * Description
7056
+ * Operation
6857
7057
  *
6858
- * Description of operation costs
7058
+ * Kebab-case operation name
6859
7059
  */
6860
- description: string;
7060
+ operation: string;
6861
7061
  /**
6862
- * Ai Operations
7062
+ * Operationid
6863
7063
  *
6864
- * Base costs for AI operations
7064
+ * op_-prefixed ULID for audit and SSE correlation
6865
7065
  */
6866
- ai_operations: {
6867
- [key: string]: number;
6868
- };
7066
+ operationId: string;
6869
7067
  /**
6870
- * Token Pricing
7068
+ * Status
6871
7069
  *
6872
- * Token pricing by model
7070
+ * Operation lifecycle state
6873
7071
  */
6874
- token_pricing: {
6875
- [key: string]: TokenPricing;
6876
- };
7072
+ status: 'completed' | 'pending' | 'failed';
6877
7073
  /**
6878
- * Included Operations
7074
+ * Command-specific result payload
7075
+ */
7076
+ result?: DeleteResult | null;
7077
+ /**
7078
+ * At
6879
7079
  *
6880
- * Operations that don't consume credits
7080
+ * ISO-8601 UTC timestamp
6881
7081
  */
6882
- included_operations: Array<string>;
7082
+ at: string;
6883
7083
  /**
6884
- * Notes
7084
+ * Createdby
6885
7085
  *
6886
- * Important notes about costs
7086
+ * User ID that initiated the operation (null for legacy callers)
6887
7087
  */
6888
- notes: Array<string>;
7088
+ createdBy?: string | null;
7089
+ /**
7090
+ * Idempotentreplay
7091
+ *
7092
+ * True when this envelope came from the idempotency cache — the underlying command did not execute again. False on fresh executions.
7093
+ */
7094
+ idempotentReplay?: boolean;
6889
7095
  };
6890
7096
  /**
6891
- * OperationEnvelope
6892
- *
6893
- * Uniform response shape for every operation endpoint.
6894
- *
6895
- * Every dispatch through an operation surface returns an envelope carrying
6896
- * an ``op_<ULID>`` operation_id. That id is the bridge to the platform's
6897
- * monitoring surface: pass it to
6898
- * ``GET /v1/operations/{operation_id}/stream`` (see ``routers/operations.py``)
6899
- * to subscribe to SSE progress events. Sync commands complete in the
6900
- * envelope itself; async commands (``status: "pending"``, HTTP 202) hand
6901
- * off to a background worker and stream their tail through the same SSE
6902
- * endpoint until completion. Failed dispatches still mint an
6903
- * ``operation_id`` so the audit log and any partial SSE events stay
6904
- * correlatable.
6905
- *
6906
- * ``TResult`` parameterizes the ``result`` field so per-op response shapes
6907
- * surface in OpenAPI. Operations that pin ``OperationSpec.result_type`` get
6908
- * ``OperationEnvelope[YourEnvelope]`` as their response model; ops that
6909
- * don't keep the default ``Any`` shape (`result: any | null` on the wire).
6910
- *
6911
- * Fields:
6912
- * - ``operation``: kebab-case command name (e.g. ``close-period``)
6913
- * - ``operation_id``: ``op_``-prefixed ULID; always present, usable for
6914
- * audit correlation and — for async commands — SSE subscription via
6915
- * ``/v1/operations/{operation_id}/stream``
6916
- * - ``status``: ``"completed"`` (sync, HTTP 200), ``"pending"``
6917
- * (async, HTTP 202), or ``"failed"`` (error responses)
6918
- * - ``result``: the domain-specific payload (the original Pydantic
6919
- * response) or ``None`` for async/failed cases
6920
- * - ``at``: ISO-8601 UTC timestamp of when the envelope was minted
6921
- * - ``created_by``: user ID of the caller who initiated this operation
6922
- * - ``idempotent_replay``: ``True`` when the dispatcher returned this
6923
- * envelope from the idempotency cache (the underlying command did NOT
6924
- * execute again)
7097
+ * OperationEnvelope[DeleteTaxonomyBlockResponse]
6925
7098
  */
6926
- export type OperationEnvelope = {
7099
+ export type OperationEnvelopeDeleteTaxonomyBlockResponse = {
6927
7100
  /**
6928
7101
  * Operation
6929
7102
  *
@@ -6943,11 +7116,9 @@ export type OperationEnvelope = {
6943
7116
  */
6944
7117
  status: 'completed' | 'pending' | 'failed';
6945
7118
  /**
6946
- * Result
6947
- *
6948
7119
  * Command-specific result payload
6949
7120
  */
6950
- result?: unknown | null;
7121
+ result?: DeleteTaxonomyBlockResponse | null;
6951
7122
  /**
6952
7123
  * At
6953
7124
  *
@@ -6968,9 +7139,9 @@ export type OperationEnvelope = {
6968
7139
  idempotentReplay?: boolean;
6969
7140
  };
6970
7141
  /**
6971
- * OperationEnvelope[AssociationResponse]
7142
+ * OperationEnvelope[EntityTaxonomyResponse]
6972
7143
  */
6973
- export type OperationEnvelopeAssociationResponse = {
7144
+ export type OperationEnvelopeEntityTaxonomyResponse = {
6974
7145
  /**
6975
7146
  * Operation
6976
7147
  *
@@ -6992,7 +7163,7 @@ export type OperationEnvelopeAssociationResponse = {
6992
7163
  /**
6993
7164
  * Command-specific result payload
6994
7165
  */
6995
- result?: AssociationResponse | null;
7166
+ result?: EntityTaxonomyResponse | null;
6996
7167
  /**
6997
7168
  * At
6998
7169
  *
@@ -7013,9 +7184,9 @@ export type OperationEnvelopeAssociationResponse = {
7013
7184
  idempotentReplay?: boolean;
7014
7185
  };
7015
7186
  /**
7016
- * OperationEnvelope[ClosePeriodResponse]
7187
+ * OperationEnvelope[EvaluateRulesResponse]
7017
7188
  */
7018
- export type OperationEnvelopeClosePeriodResponse = {
7189
+ export type OperationEnvelopeEvaluateRulesResponse = {
7019
7190
  /**
7020
7191
  * Operation
7021
7192
  *
@@ -7037,7 +7208,7 @@ export type OperationEnvelopeClosePeriodResponse = {
7037
7208
  /**
7038
7209
  * Command-specific result payload
7039
7210
  */
7040
- result?: ClosePeriodResponse | null;
7211
+ result?: EvaluateRulesResponse | null;
7041
7212
  /**
7042
7213
  * At
7043
7214
  *
@@ -7058,9 +7229,9 @@ export type OperationEnvelopeClosePeriodResponse = {
7058
7229
  idempotentReplay?: boolean;
7059
7230
  };
7060
7231
  /**
7061
- * OperationEnvelope[DeleteInformationBlockResponse]
7232
+ * OperationEnvelope[EventBlockEnvelope]
7062
7233
  */
7063
- export type OperationEnvelopeDeleteInformationBlockResponse = {
7234
+ export type OperationEnvelopeEventBlockEnvelope = {
7064
7235
  /**
7065
7236
  * Operation
7066
7237
  *
@@ -7082,7 +7253,7 @@ export type OperationEnvelopeDeleteInformationBlockResponse = {
7082
7253
  /**
7083
7254
  * Command-specific result payload
7084
7255
  */
7085
- result?: DeleteInformationBlockResponse | null;
7256
+ result?: EventBlockEnvelope | null;
7086
7257
  /**
7087
7258
  * At
7088
7259
  *
@@ -7103,9 +7274,9 @@ export type OperationEnvelopeDeleteInformationBlockResponse = {
7103
7274
  idempotentReplay?: boolean;
7104
7275
  };
7105
7276
  /**
7106
- * OperationEnvelope[DeletePortfolioBlockResponse]
7277
+ * OperationEnvelope[EventHandlerResponse]
7107
7278
  */
7108
- export type OperationEnvelopeDeletePortfolioBlockResponse = {
7279
+ export type OperationEnvelopeEventHandlerResponse = {
7109
7280
  /**
7110
7281
  * Operation
7111
7282
  *
@@ -7127,7 +7298,7 @@ export type OperationEnvelopeDeletePortfolioBlockResponse = {
7127
7298
  /**
7128
7299
  * Command-specific result payload
7129
7300
  */
7130
- result?: DeletePortfolioBlockResponse | null;
7301
+ result?: EventHandlerResponse | null;
7131
7302
  /**
7132
7303
  * At
7133
7304
  *
@@ -7148,9 +7319,9 @@ export type OperationEnvelopeDeletePortfolioBlockResponse = {
7148
7319
  idempotentReplay?: boolean;
7149
7320
  };
7150
7321
  /**
7151
- * OperationEnvelope[DeleteResult]
7322
+ * OperationEnvelope[ExecuteEventBlockResponse]
7152
7323
  */
7153
- export type OperationEnvelopeDeleteResult = {
7324
+ export type OperationEnvelopeExecuteEventBlockResponse = {
7154
7325
  /**
7155
7326
  * Operation
7156
7327
  *
@@ -7172,7 +7343,7 @@ export type OperationEnvelopeDeleteResult = {
7172
7343
  /**
7173
7344
  * Command-specific result payload
7174
7345
  */
7175
- result?: DeleteResult | null;
7346
+ result?: ExecuteEventBlockResponse | null;
7176
7347
  /**
7177
7348
  * At
7178
7349
  *
@@ -7193,9 +7364,9 @@ export type OperationEnvelopeDeleteResult = {
7193
7364
  idempotentReplay?: boolean;
7194
7365
  };
7195
7366
  /**
7196
- * OperationEnvelope[DeleteTaxonomyBlockResponse]
7367
+ * OperationEnvelope[FiscalCalendarResponse]
7197
7368
  */
7198
- export type OperationEnvelopeDeleteTaxonomyBlockResponse = {
7369
+ export type OperationEnvelopeFiscalCalendarResponse = {
7199
7370
  /**
7200
7371
  * Operation
7201
7372
  *
@@ -7217,7 +7388,7 @@ export type OperationEnvelopeDeleteTaxonomyBlockResponse = {
7217
7388
  /**
7218
7389
  * Command-specific result payload
7219
7390
  */
7220
- result?: DeleteTaxonomyBlockResponse | null;
7391
+ result?: FiscalCalendarResponse | null;
7221
7392
  /**
7222
7393
  * At
7223
7394
  *
@@ -7238,9 +7409,9 @@ export type OperationEnvelopeDeleteTaxonomyBlockResponse = {
7238
7409
  idempotentReplay?: boolean;
7239
7410
  };
7240
7411
  /**
7241
- * OperationEnvelope[EntityTaxonomyResponse]
7412
+ * OperationEnvelope[InformationBlockEnvelope]
7242
7413
  */
7243
- export type OperationEnvelopeEntityTaxonomyResponse = {
7414
+ export type OperationEnvelopeInformationBlockEnvelope = {
7244
7415
  /**
7245
7416
  * Operation
7246
7417
  *
@@ -7262,7 +7433,7 @@ export type OperationEnvelopeEntityTaxonomyResponse = {
7262
7433
  /**
7263
7434
  * Command-specific result payload
7264
7435
  */
7265
- result?: EntityTaxonomyResponse | null;
7436
+ result?: InformationBlockEnvelope | null;
7266
7437
  /**
7267
7438
  * At
7268
7439
  *
@@ -7283,9 +7454,9 @@ export type OperationEnvelopeEntityTaxonomyResponse = {
7283
7454
  idempotentReplay?: boolean;
7284
7455
  };
7285
7456
  /**
7286
- * OperationEnvelope[EvaluateRulesResponse]
7457
+ * OperationEnvelope[InitializeLedgerResponse]
7287
7458
  */
7288
- export type OperationEnvelopeEvaluateRulesResponse = {
7459
+ export type OperationEnvelopeInitializeLedgerResponse = {
7289
7460
  /**
7290
7461
  * Operation
7291
7462
  *
@@ -7307,7 +7478,7 @@ export type OperationEnvelopeEvaluateRulesResponse = {
7307
7478
  /**
7308
7479
  * Command-specific result payload
7309
7480
  */
7310
- result?: EvaluateRulesResponse | null;
7481
+ result?: InitializeLedgerResponse | null;
7311
7482
  /**
7312
7483
  * At
7313
7484
  *
@@ -7328,9 +7499,9 @@ export type OperationEnvelopeEvaluateRulesResponse = {
7328
7499
  idempotentReplay?: boolean;
7329
7500
  };
7330
7501
  /**
7331
- * OperationEnvelope[EventBlockEnvelope]
7502
+ * OperationEnvelope[JournalEntryResponse]
7332
7503
  */
7333
- export type OperationEnvelopeEventBlockEnvelope = {
7504
+ export type OperationEnvelopeJournalEntryResponse = {
7334
7505
  /**
7335
7506
  * Operation
7336
7507
  *
@@ -7352,7 +7523,7 @@ export type OperationEnvelopeEventBlockEnvelope = {
7352
7523
  /**
7353
7524
  * Command-specific result payload
7354
7525
  */
7355
- result?: EventBlockEnvelope | null;
7526
+ result?: JournalEntryResponse | null;
7356
7527
  /**
7357
7528
  * At
7358
7529
  *
@@ -7373,9 +7544,9 @@ export type OperationEnvelopeEventBlockEnvelope = {
7373
7544
  idempotentReplay?: boolean;
7374
7545
  };
7375
7546
  /**
7376
- * OperationEnvelope[EventHandlerResponse]
7547
+ * OperationEnvelope[LedgerAgentResponse]
7377
7548
  */
7378
- export type OperationEnvelopeEventHandlerResponse = {
7549
+ export type OperationEnvelopeLedgerAgentResponse = {
7379
7550
  /**
7380
7551
  * Operation
7381
7552
  *
@@ -7397,7 +7568,7 @@ export type OperationEnvelopeEventHandlerResponse = {
7397
7568
  /**
7398
7569
  * Command-specific result payload
7399
7570
  */
7400
- result?: EventHandlerResponse | null;
7571
+ result?: LedgerAgentResponse | null;
7401
7572
  /**
7402
7573
  * At
7403
7574
  *
@@ -7418,9 +7589,9 @@ export type OperationEnvelopeEventHandlerResponse = {
7418
7589
  idempotentReplay?: boolean;
7419
7590
  };
7420
7591
  /**
7421
- * OperationEnvelope[FiscalCalendarResponse]
7592
+ * OperationEnvelope[LedgerEntityResponse]
7422
7593
  */
7423
- export type OperationEnvelopeFiscalCalendarResponse = {
7594
+ export type OperationEnvelopeLedgerEntityResponse = {
7424
7595
  /**
7425
7596
  * Operation
7426
7597
  *
@@ -7442,7 +7613,7 @@ export type OperationEnvelopeFiscalCalendarResponse = {
7442
7613
  /**
7443
7614
  * Command-specific result payload
7444
7615
  */
7445
- result?: FiscalCalendarResponse | null;
7616
+ result?: LedgerEntityResponse | null;
7446
7617
  /**
7447
7618
  * At
7448
7619
  *
@@ -7463,9 +7634,9 @@ export type OperationEnvelopeFiscalCalendarResponse = {
7463
7634
  idempotentReplay?: boolean;
7464
7635
  };
7465
7636
  /**
7466
- * OperationEnvelope[InformationBlockEnvelope]
7637
+ * OperationEnvelope[PortfolioBlockEnvelope]
7467
7638
  */
7468
- export type OperationEnvelopeInformationBlockEnvelope = {
7639
+ export type OperationEnvelopePortfolioBlockEnvelope = {
7469
7640
  /**
7470
7641
  * Operation
7471
7642
  *
@@ -7487,7 +7658,7 @@ export type OperationEnvelopeInformationBlockEnvelope = {
7487
7658
  /**
7488
7659
  * Command-specific result payload
7489
7660
  */
7490
- result?: InformationBlockEnvelope | null;
7661
+ result?: PortfolioBlockEnvelope | null;
7491
7662
  /**
7492
7663
  * At
7493
7664
  *
@@ -7508,9 +7679,9 @@ export type OperationEnvelopeInformationBlockEnvelope = {
7508
7679
  idempotentReplay?: boolean;
7509
7680
  };
7510
7681
  /**
7511
- * OperationEnvelope[InitializeLedgerResponse]
7682
+ * OperationEnvelope[PreviewEventBlockResponse]
7512
7683
  */
7513
- export type OperationEnvelopeInitializeLedgerResponse = {
7684
+ export type OperationEnvelopePreviewEventBlockResponse = {
7514
7685
  /**
7515
7686
  * Operation
7516
7687
  *
@@ -7532,7 +7703,7 @@ export type OperationEnvelopeInitializeLedgerResponse = {
7532
7703
  /**
7533
7704
  * Command-specific result payload
7534
7705
  */
7535
- result?: InitializeLedgerResponse | null;
7706
+ result?: PreviewEventBlockResponse | null;
7536
7707
  /**
7537
7708
  * At
7538
7709
  *
@@ -7553,9 +7724,9 @@ export type OperationEnvelopeInitializeLedgerResponse = {
7553
7724
  idempotentReplay?: boolean;
7554
7725
  };
7555
7726
  /**
7556
- * OperationEnvelope[JournalEntryResponse]
7727
+ * OperationEnvelope[PublishListResponse]
7557
7728
  */
7558
- export type OperationEnvelopeJournalEntryResponse = {
7729
+ export type OperationEnvelopePublishListResponse = {
7559
7730
  /**
7560
7731
  * Operation
7561
7732
  *
@@ -7577,7 +7748,7 @@ export type OperationEnvelopeJournalEntryResponse = {
7577
7748
  /**
7578
7749
  * Command-specific result payload
7579
7750
  */
7580
- result?: JournalEntryResponse | null;
7751
+ result?: PublishListResponse | null;
7581
7752
  /**
7582
7753
  * At
7583
7754
  *
@@ -7598,9 +7769,9 @@ export type OperationEnvelopeJournalEntryResponse = {
7598
7769
  idempotentReplay?: boolean;
7599
7770
  };
7600
7771
  /**
7601
- * OperationEnvelope[LedgerAgentResponse]
7772
+ * OperationEnvelope[ReportResponse]
7602
7773
  */
7603
- export type OperationEnvelopeLedgerAgentResponse = {
7774
+ export type OperationEnvelopeReportResponse = {
7604
7775
  /**
7605
7776
  * Operation
7606
7777
  *
@@ -7622,7 +7793,7 @@ export type OperationEnvelopeLedgerAgentResponse = {
7622
7793
  /**
7623
7794
  * Command-specific result payload
7624
7795
  */
7625
- result?: LedgerAgentResponse | null;
7796
+ result?: ReportResponse | null;
7626
7797
  /**
7627
7798
  * At
7628
7799
  *
@@ -7643,9 +7814,9 @@ export type OperationEnvelopeLedgerAgentResponse = {
7643
7814
  idempotentReplay?: boolean;
7644
7815
  };
7645
7816
  /**
7646
- * OperationEnvelope[LedgerEntityResponse]
7817
+ * OperationEnvelope[SecurityResponse]
7647
7818
  */
7648
- export type OperationEnvelopeLedgerEntityResponse = {
7819
+ export type OperationEnvelopeSecurityResponse = {
7649
7820
  /**
7650
7821
  * Operation
7651
7822
  *
@@ -7667,7 +7838,7 @@ export type OperationEnvelopeLedgerEntityResponse = {
7667
7838
  /**
7668
7839
  * Command-specific result payload
7669
7840
  */
7670
- result?: LedgerEntityResponse | null;
7841
+ result?: SecurityResponse | null;
7671
7842
  /**
7672
7843
  * At
7673
7844
  *
@@ -7688,9 +7859,9 @@ export type OperationEnvelopeLedgerEntityResponse = {
7688
7859
  idempotentReplay?: boolean;
7689
7860
  };
7690
7861
  /**
7691
- * OperationEnvelope[PortfolioBlockEnvelope]
7862
+ * OperationEnvelope[ShareReportResponse]
7692
7863
  */
7693
- export type OperationEnvelopePortfolioBlockEnvelope = {
7864
+ export type OperationEnvelopeShareReportResponse = {
7694
7865
  /**
7695
7866
  * Operation
7696
7867
  *
@@ -7712,7 +7883,7 @@ export type OperationEnvelopePortfolioBlockEnvelope = {
7712
7883
  /**
7713
7884
  * Command-specific result payload
7714
7885
  */
7715
- result?: PortfolioBlockEnvelope | null;
7886
+ result?: ShareReportResponse | null;
7716
7887
  /**
7717
7888
  * At
7718
7889
  *
@@ -7733,9 +7904,9 @@ export type OperationEnvelopePortfolioBlockEnvelope = {
7733
7904
  idempotentReplay?: boolean;
7734
7905
  };
7735
7906
  /**
7736
- * OperationEnvelope[PreviewEventBlockResponse]
7907
+ * OperationEnvelope[TaxonomyBlockEnvelope]
7737
7908
  */
7738
- export type OperationEnvelopePreviewEventBlockResponse = {
7909
+ export type OperationEnvelopeTaxonomyBlockEnvelope = {
7739
7910
  /**
7740
7911
  * Operation
7741
7912
  *
@@ -7757,7 +7928,7 @@ export type OperationEnvelopePreviewEventBlockResponse = {
7757
7928
  /**
7758
7929
  * Command-specific result payload
7759
7930
  */
7760
- result?: PreviewEventBlockResponse | null;
7931
+ result?: TaxonomyBlockEnvelope | null;
7761
7932
  /**
7762
7933
  * At
7763
7934
  *
@@ -7778,9 +7949,9 @@ export type OperationEnvelopePreviewEventBlockResponse = {
7778
7949
  idempotentReplay?: boolean;
7779
7950
  };
7780
7951
  /**
7781
- * OperationEnvelope[PublishListResponse]
7952
+ * OperationEnvelope[list[PublishListMemberResponse]]
7782
7953
  */
7783
- export type OperationEnvelopePublishListResponse = {
7954
+ export type OperationEnvelopeListPublishListMemberResponse = {
7784
7955
  /**
7785
7956
  * Operation
7786
7957
  *
@@ -7800,9 +7971,11 @@ export type OperationEnvelopePublishListResponse = {
7800
7971
  */
7801
7972
  status: 'completed' | 'pending' | 'failed';
7802
7973
  /**
7974
+ * Result
7975
+ *
7803
7976
  * Command-specific result payload
7804
7977
  */
7805
- result?: PublishListResponse | null;
7978
+ result?: Array<PublishListMemberResponse> | null;
7806
7979
  /**
7807
7980
  * At
7808
7981
  *
@@ -7823,231 +7996,326 @@ export type OperationEnvelopePublishListResponse = {
7823
7996
  idempotentReplay?: boolean;
7824
7997
  };
7825
7998
  /**
7826
- * OperationEnvelope[ReportResponse]
7999
+ * OperatorListResponse
8000
+ *
8001
+ * Response for listing available operators.
7827
8002
  */
7828
- export type OperationEnvelopeReportResponse = {
8003
+ export type OperatorListResponse = {
7829
8004
  /**
7830
- * Operation
8005
+ * Operators
7831
8006
  *
7832
- * Kebab-case operation name
8007
+ * Dictionary of available operators with metadata
7833
8008
  */
7834
- operation: string;
8009
+ operators: {
8010
+ [key: string]: {
8011
+ [key: string]: unknown;
8012
+ };
8013
+ };
7835
8014
  /**
7836
- * Operationid
8015
+ * Total
7837
8016
  *
7838
- * op_-prefixed ULID for audit and SSE correlation
8017
+ * Total number of operators
7839
8018
  */
7840
- operationId: string;
8019
+ total: number;
8020
+ };
8021
+ /**
8022
+ * OperatorMessage
8023
+ *
8024
+ * Message in conversation history.
8025
+ */
8026
+ export type OperatorMessage = {
7841
8027
  /**
7842
- * Status
8028
+ * Role
7843
8029
  *
7844
- * Operation lifecycle state
8030
+ * Message role (user/assistant)
7845
8031
  */
7846
- status: 'completed' | 'pending' | 'failed';
8032
+ role: string;
7847
8033
  /**
7848
- * Command-specific result payload
8034
+ * Content
8035
+ *
8036
+ * Message content
7849
8037
  */
7850
- result?: ReportResponse | null;
8038
+ content: string;
7851
8039
  /**
7852
- * At
8040
+ * Timestamp
7853
8041
  *
7854
- * ISO-8601 UTC timestamp
8042
+ * Message timestamp
7855
8043
  */
7856
- at: string;
8044
+ timestamp?: string | null;
8045
+ };
8046
+ /**
8047
+ * OperatorMetadataResponse
8048
+ *
8049
+ * Response for operator metadata.
8050
+ */
8051
+ export type OperatorMetadataResponse = {
7857
8052
  /**
7858
- * Createdby
8053
+ * Name
7859
8054
  *
7860
- * User ID that initiated the operation (null for legacy callers)
8055
+ * Operator name
7861
8056
  */
7862
- createdBy?: string | null;
8057
+ name: string;
7863
8058
  /**
7864
- * Idempotentreplay
8059
+ * Description
7865
8060
  *
7866
- * True when this envelope came from the idempotency cache — the underlying command did not execute again. False on fresh executions.
8061
+ * Operator description
7867
8062
  */
7868
- idempotentReplay?: boolean;
8063
+ description: string;
8064
+ /**
8065
+ * Version
8066
+ *
8067
+ * Operator version
8068
+ */
8069
+ version: string;
8070
+ /**
8071
+ * Capabilities
8072
+ *
8073
+ * Operator capabilities
8074
+ */
8075
+ capabilities: Array<string>;
8076
+ /**
8077
+ * Supported Modes
8078
+ *
8079
+ * Supported execution modes
8080
+ */
8081
+ supported_modes: Array<string>;
8082
+ /**
8083
+ * Requires Credits
8084
+ *
8085
+ * Whether operator requires credits
8086
+ */
8087
+ requires_credits: boolean;
8088
+ /**
8089
+ * Author
8090
+ *
8091
+ * Operator author
8092
+ */
8093
+ author?: string | null;
8094
+ /**
8095
+ * Tags
8096
+ *
8097
+ * Operator tags
8098
+ */
8099
+ tags?: Array<string>;
7869
8100
  };
7870
8101
  /**
7871
- * OperationEnvelope[SecurityResponse]
8102
+ * OperatorMode
8103
+ *
8104
+ * Operator execution modes.
7872
8105
  */
7873
- export type OperationEnvelopeSecurityResponse = {
8106
+ export type OperatorMode = 'quick' | 'standard' | 'extended' | 'streaming';
8107
+ /**
8108
+ * OperatorRecommendation
8109
+ *
8110
+ * Single operator recommendation.
8111
+ */
8112
+ export type OperatorRecommendation = {
7874
8113
  /**
7875
- * Operation
8114
+ * Operator Type
7876
8115
  *
7877
- * Kebab-case operation name
8116
+ * Operator type identifier
7878
8117
  */
7879
- operation: string;
8118
+ operator_type: string;
7880
8119
  /**
7881
- * Operationid
8120
+ * Operator Name
7882
8121
  *
7883
- * op_-prefixed ULID for audit and SSE correlation
8122
+ * Operator display name
7884
8123
  */
7885
- operationId: string;
8124
+ operator_name: string;
7886
8125
  /**
7887
- * Status
8126
+ * Confidence
7888
8127
  *
7889
- * Operation lifecycle state
8128
+ * Confidence score (0-1)
7890
8129
  */
7891
- status: 'completed' | 'pending' | 'failed';
8130
+ confidence: number;
7892
8131
  /**
7893
- * Command-specific result payload
8132
+ * Capabilities
8133
+ *
8134
+ * Operator capabilities
7894
8135
  */
7895
- result?: SecurityResponse | null;
8136
+ capabilities: Array<string>;
7896
8137
  /**
7897
- * At
8138
+ * Reason
7898
8139
  *
7899
- * ISO-8601 UTC timestamp
8140
+ * Reason for recommendation
7900
8141
  */
7901
- at: string;
8142
+ reason?: string | null;
8143
+ };
8144
+ /**
8145
+ * OperatorRecommendationRequest
8146
+ *
8147
+ * Request for operator recommendations.
8148
+ */
8149
+ export type OperatorRecommendationRequest = {
7902
8150
  /**
7903
- * Createdby
8151
+ * Query
7904
8152
  *
7905
- * User ID that initiated the operation (null for legacy callers)
8153
+ * Query to analyze
7906
8154
  */
7907
- createdBy?: string | null;
8155
+ query: string;
7908
8156
  /**
7909
- * Idempotentreplay
8157
+ * Context
7910
8158
  *
7911
- * True when this envelope came from the idempotency cache — the underlying command did not execute again. False on fresh executions.
8159
+ * Additional context
7912
8160
  */
7913
- idempotentReplay?: boolean;
8161
+ context?: {
8162
+ [key: string]: unknown;
8163
+ } | null;
7914
8164
  };
7915
8165
  /**
7916
- * OperationEnvelope[ShareReportResponse]
8166
+ * OperatorRecommendationResponse
8167
+ *
8168
+ * Response for operator recommendations.
7917
8169
  */
7918
- export type OperationEnvelopeShareReportResponse = {
8170
+ export type OperatorRecommendationResponse = {
7919
8171
  /**
7920
- * Operation
8172
+ * Recommendations
7921
8173
  *
7922
- * Kebab-case operation name
8174
+ * List of operator recommendations sorted by confidence
7923
8175
  */
7924
- operation: string;
8176
+ recommendations: Array<OperatorRecommendation>;
7925
8177
  /**
7926
- * Operationid
8178
+ * Query
7927
8179
  *
7928
- * op_-prefixed ULID for audit and SSE correlation
8180
+ * The analyzed query
8181
+ */
8182
+ query: string;
8183
+ };
8184
+ /**
8185
+ * OperatorRequest
8186
+ *
8187
+ * Request model for operator interactions.
8188
+ */
8189
+ export type OperatorRequest = {
8190
+ /**
8191
+ * Message
8192
+ *
8193
+ * The query or message to process
8194
+ */
8195
+ message: string;
8196
+ /**
8197
+ * History
8198
+ *
8199
+ * Conversation history
8200
+ */
8201
+ history?: Array<OperatorMessage>;
8202
+ /**
8203
+ * Context
8204
+ *
8205
+ * Additional context for analysis (e.g., enable_rag, include_schema)
8206
+ */
8207
+ context?: {
8208
+ [key: string]: unknown;
8209
+ } | null;
8210
+ /**
8211
+ * Execution mode
7929
8212
  */
7930
- operationId: string;
8213
+ mode?: OperatorMode | null;
7931
8214
  /**
7932
- * Status
8215
+ * Operator Type
7933
8216
  *
7934
- * Operation lifecycle state
8217
+ * Specific operator type to use (optional)
7935
8218
  */
7936
- status: 'completed' | 'pending' | 'failed';
8219
+ operator_type?: string | null;
7937
8220
  /**
7938
- * Command-specific result payload
8221
+ * Criteria for operator selection
7939
8222
  */
7940
- result?: ShareReportResponse | null;
8223
+ selection_criteria?: SelectionCriteria | null;
7941
8224
  /**
7942
- * At
8225
+ * Force Extended Analysis
7943
8226
  *
7944
- * ISO-8601 UTC timestamp
8227
+ * Force extended analysis mode with comprehensive research
7945
8228
  */
7946
- at: string;
8229
+ force_extended_analysis?: boolean;
7947
8230
  /**
7948
- * Createdby
8231
+ * Enable Rag
7949
8232
  *
7950
- * User ID that initiated the operation (null for legacy callers)
8233
+ * Enable RAG context enrichment
7951
8234
  */
7952
- createdBy?: string | null;
8235
+ enable_rag?: boolean;
7953
8236
  /**
7954
- * Idempotentreplay
8237
+ * Stream
7955
8238
  *
7956
- * True when this envelope came from the idempotency cache — the underlying command did not execute again. False on fresh executions.
8239
+ * Enable streaming response
7957
8240
  */
7958
- idempotentReplay?: boolean;
8241
+ stream?: boolean;
7959
8242
  };
7960
8243
  /**
7961
- * OperationEnvelope[TaxonomyBlockEnvelope]
8244
+ * OperatorResponse
8245
+ *
8246
+ * Response model for operator interactions.
7962
8247
  */
7963
- export type OperationEnvelopeTaxonomyBlockEnvelope = {
7964
- /**
7965
- * Operation
7966
- *
7967
- * Kebab-case operation name
7968
- */
7969
- operation: string;
7970
- /**
7971
- * Operationid
7972
- *
7973
- * op_-prefixed ULID for audit and SSE correlation
7974
- */
7975
- operationId: string;
8248
+ export type OperatorResponse = {
7976
8249
  /**
7977
- * Status
8250
+ * Content
7978
8251
  *
7979
- * Operation lifecycle state
7980
- */
7981
- status: 'completed' | 'pending' | 'failed';
7982
- /**
7983
- * Command-specific result payload
8252
+ * The operator's response content
7984
8253
  */
7985
- result?: TaxonomyBlockEnvelope | null;
8254
+ content: string;
7986
8255
  /**
7987
- * At
8256
+ * Operator Used
7988
8257
  *
7989
- * ISO-8601 UTC timestamp
8258
+ * The operator type that handled the request
7990
8259
  */
7991
- at: string;
8260
+ operator_used: string;
7992
8261
  /**
7993
- * Createdby
7994
- *
7995
- * User ID that initiated the operation (null for legacy callers)
8262
+ * The execution mode used
7996
8263
  */
7997
- createdBy?: string | null;
8264
+ mode_used: OperatorMode;
7998
8265
  /**
7999
- * Idempotentreplay
8266
+ * Metadata
8000
8267
  *
8001
- * True when this envelope came from the idempotency cache — the underlying command did not execute again. False on fresh executions.
8268
+ * Response metadata including routing info
8002
8269
  */
8003
- idempotentReplay?: boolean;
8004
- };
8005
- /**
8006
- * OperationEnvelope[list[PublishListMemberResponse]]
8007
- */
8008
- export type OperationEnvelopeListPublishListMemberResponse = {
8270
+ metadata?: {
8271
+ [key: string]: unknown;
8272
+ } | null;
8009
8273
  /**
8010
- * Operation
8274
+ * Tokens Used
8011
8275
  *
8012
- * Kebab-case operation name
8276
+ * Token usage statistics
8013
8277
  */
8014
- operation: string;
8278
+ tokens_used?: {
8279
+ [key: string]: number;
8280
+ } | null;
8015
8281
  /**
8016
- * Operationid
8282
+ * Confidence Score
8017
8283
  *
8018
- * op_-prefixed ULID for audit and SSE correlation
8284
+ * Confidence score of the response (0.0-1.0 scale)
8019
8285
  */
8020
- operationId: string;
8286
+ confidence_score?: number | null;
8021
8287
  /**
8022
- * Status
8288
+ * Operation Id
8023
8289
  *
8024
- * Operation lifecycle state
8290
+ * Operation ID for SSE monitoring
8025
8291
  */
8026
- status: 'completed' | 'pending' | 'failed';
8292
+ operation_id?: string | null;
8027
8293
  /**
8028
- * Result
8294
+ * Is Partial
8029
8295
  *
8030
- * Command-specific result payload
8296
+ * Whether this is a partial response
8031
8297
  */
8032
- result?: Array<PublishListMemberResponse> | null;
8298
+ is_partial?: boolean;
8033
8299
  /**
8034
- * At
8300
+ * Error Details
8035
8301
  *
8036
- * ISO-8601 UTC timestamp
8302
+ * Error details if any
8037
8303
  */
8038
- at: string;
8304
+ error_details?: {
8305
+ [key: string]: unknown;
8306
+ } | null;
8039
8307
  /**
8040
- * Createdby
8308
+ * Execution Time
8041
8309
  *
8042
- * User ID that initiated the operation (null for legacy callers)
8310
+ * Execution time in seconds
8043
8311
  */
8044
- createdBy?: string | null;
8312
+ execution_time?: number | null;
8045
8313
  /**
8046
- * Idempotentreplay
8314
+ * Timestamp
8047
8315
  *
8048
- * True when this envelope came from the idempotency cache — the underlying command did not execute again. False on fresh executions.
8316
+ * Response timestamp
8049
8317
  */
8050
- idempotentReplay?: boolean;
8318
+ timestamp?: string;
8051
8319
  };
8052
8320
  /**
8053
8321
  * OrgDetailResponse
@@ -9683,6 +9951,66 @@ export type RestoreBackupOp = {
9683
9951
  */
9684
9952
  verify_after_restore?: boolean;
9685
9953
  };
9954
+ /**
9955
+ * RollforwardMechanics
9956
+ *
9957
+ * Filter-based attribution mechanics for ``block_type='rollforward'``.
9958
+ *
9959
+ * Implements Tier 2 of the rollforward attribution design
9960
+ * (``information-block.md`` §4.5). Each block decomposes one BS
9961
+ * source element's period delta into a list of flow concepts via
9962
+ * declared :class:`AttributionFilter` predicates. The renderer
9963
+ * evaluates the filters against ledger LineItems at envelope-build
9964
+ * time, emits one attributed fact per filter per period, and arbitrates
9965
+ * any residual against the default change tag (Tier 1 fallback).
9966
+ *
9967
+ * Reads directly from the typed ``structures.artifact_mechanics`` JSONB
9968
+ * column. ``attribution_filters`` rides as nested JSON; the predicate
9969
+ * union widens as new predicate shapes ship (Phase 2 MVP carries only
9970
+ * ``line_item_metadata_field``).
9971
+ */
9972
+ export type RollforwardMechanics = {
9973
+ /**
9974
+ * Kind
9975
+ */
9976
+ kind?: 'rollforward';
9977
+ /**
9978
+ * Bs Source Element Id
9979
+ *
9980
+ * Element id of the balance-sheet source whose period delta this block decomposes. Resolved from ``bs_source_qname`` at create time.
9981
+ */
9982
+ bs_source_element_id: string;
9983
+ /**
9984
+ * Bs Source Qname
9985
+ *
9986
+ * QName of the BS source element (e.g. ``mini:CashAndCashEquivalents``). Round-tripped for caller convenience; ``bs_source_element_id`` is authoritative.
9987
+ */
9988
+ bs_source_qname: string;
9989
+ /**
9990
+ * Default Change Tag Element Id
9991
+ *
9992
+ * Element id of the Tier 1 default change tag — the fallback flow concept that receives any residual (Δ BS − Σ filter matches). Null when no default is declared; behavior on residual then follows ``validation_mode``.
9993
+ */
9994
+ default_change_tag_element_id?: string | null;
9995
+ /**
9996
+ * Default Change Tag Qname
9997
+ *
9998
+ * QName of the Tier 1 default change tag (e.g. ``rs-gaap:IncreaseDecreaseInCashAndCashEquivalents``). Round-tripped for caller convenience and operator-readable envelopes; ``default_change_tag_element_id`` is authoritative. Null iff ``default_change_tag_element_id`` is null.
9999
+ */
10000
+ default_change_tag_qname?: string | null;
10001
+ /**
10002
+ * Attribution Filters
10003
+ *
10004
+ * Filter predicates routing LineItems to flow concepts. The renderer evaluates each filter against the period's LineItems, aggregates signed amounts, and emits one fact per filter per period.
10005
+ */
10006
+ attribution_filters?: Array<AttributionFilter>;
10007
+ /**
10008
+ * Validation Mode
10009
+ *
10010
+ * Renderer arbitration policy when Σ filter matches != Δ BS. ``strict`` raises; ``residual_as_default`` emits the residual as a default-tag fact (the common case); ``warn_only`` logs and lets the imbalance pass.
10011
+ */
10012
+ validation_mode?: 'strict' | 'residual_as_default' | 'warn_only';
10013
+ };
9686
10014
  /**
9687
10015
  * RuleLite
9688
10016
  *
@@ -10418,7 +10746,7 @@ export type SecurityResponse = {
10418
10746
  /**
10419
10747
  * SelectionCriteria
10420
10748
  *
10421
- * Criteria for agent selection.
10749
+ * Criteria for operator selection.
10422
10750
  */
10423
10751
  export type SelectionCriteria = {
10424
10752
  /**
@@ -10430,13 +10758,13 @@ export type SelectionCriteria = {
10430
10758
  /**
10431
10759
  * Required Capabilities
10432
10760
  *
10433
- * Required agent capabilities
10761
+ * Required operator capabilities
10434
10762
  */
10435
10763
  required_capabilities?: Array<string>;
10436
10764
  /**
10437
10765
  * Preferred execution mode
10438
10766
  */
10439
- preferred_mode?: AgentMode | null;
10767
+ preferred_mode?: OperatorMode | null;
10440
10768
  /**
10441
10769
  * Max Response Time
10442
10770
  *
@@ -10444,11 +10772,11 @@ export type SelectionCriteria = {
10444
10772
  */
10445
10773
  max_response_time?: number;
10446
10774
  /**
10447
- * Excluded Agents
10775
+ * Excluded Operators
10448
10776
  *
10449
- * Agents to exclude from selection
10777
+ * Operators to exclude from selection
10450
10778
  */
10451
- excluded_agents?: Array<string>;
10779
+ excluded_operators?: Array<string>;
10452
10780
  };
10453
10781
  /**
10454
10782
  * ServiceOfferingSummary
@@ -12121,6 +12449,12 @@ export type UpdateEventBlockRequest = {
12121
12449
  metadata_patch?: {
12122
12450
  [key: string]: unknown;
12123
12451
  };
12452
+ /**
12453
+ * Event Action
12454
+ *
12455
+ * Set or correct the canonical action verb. Unset = unchanged. Useful when an adapter improvement makes a previously-NULL verb fillable, or when reclassifying after the fact.
12456
+ */
12457
+ event_action?: 'produce' | 'raise' | 'consume' | 'lower' | 'use' | 'cite' | 'work' | 'deliverService' | 'pickup' | 'dropoff' | 'accept' | 'transferCustody' | 'transferAllRights' | 'transfer' | 'move' | 'modify' | 'combine' | 'separate' | 'copy' | null;
12124
12458
  /**
12125
12459
  * Obligated By Event Id
12126
12460
  *
@@ -12227,6 +12561,8 @@ export type UpdateEventHandlerRequest = {
12227
12561
  export type UpdateInformationBlockRequest = ({
12228
12562
  block_type: 'schedule';
12229
12563
  } & UpdateScheduleArm) | ({
12564
+ block_type: 'rollforward';
12565
+ } & UpdateRollforwardArm) | ({
12230
12566
  block_type: 'balance_sheet' | 'cash_flow_statement' | 'comprehensive_income' | 'equity_statement' | 'income_statement' | 'metric';
12231
12567
  } & UpdateLegacyArm);
12232
12568
  /**
@@ -12367,6 +12703,51 @@ export type UpdatePublishListOperation = {
12367
12703
  */
12368
12704
  list_id: string;
12369
12705
  };
12706
+ /**
12707
+ * UpdateRollforwardRequest
12708
+ *
12709
+ * Update mutable fields on a rollforward block.
12710
+ *
12711
+ * Editable: name, default_change_tag_qname, attribution_filters,
12712
+ * validation_mode. The BS source is fixed once the block is created
12713
+ * (changing it would invalidate every previously rendered period); to
12714
+ * change BS source, delete and re-create.
12715
+ *
12716
+ * **Partial-update semantics**: omitted (``None``) fields mean "leave
12717
+ * unchanged" — there is no wire-level way to *clear* a previously set
12718
+ * default change tag or empty the attribution_filters list via this
12719
+ * endpoint. To remove the default tag entirely, delete and re-create
12720
+ * the rollforward block. The asymmetry is deliberate: an explicit
12721
+ * clear-sentinel adds wire-shape complexity for a use case that rarely
12722
+ * arises in practice (default tags are typically set during initial
12723
+ * authoring and only swapped, not removed).
12724
+ */
12725
+ export type UpdateRollforwardRequest = {
12726
+ /**
12727
+ * Structure Id
12728
+ *
12729
+ * Structure ID of the rollforward block.
12730
+ */
12731
+ structure_id: string;
12732
+ /**
12733
+ * Name
12734
+ */
12735
+ name?: string | null;
12736
+ /**
12737
+ * Default Change Tag Qname
12738
+ *
12739
+ * New default change tag qname. Pass a value to *change* the default; omit (``None``) to leave unchanged. There is no wire-level way to clear a previously set default — see the class docstring.
12740
+ */
12741
+ default_change_tag_qname?: string | null;
12742
+ /**
12743
+ * Attribution Filters
12744
+ */
12745
+ attribution_filters?: Array<AttributionFilter> | null;
12746
+ /**
12747
+ * Validation Mode
12748
+ */
12749
+ validation_mode?: 'strict' | 'residual_as_default' | 'warn_only' | null;
12750
+ };
12370
12751
  /**
12371
12752
  * UpdateScheduleRequest
12372
12753
  *
@@ -12874,6 +13255,27 @@ export type CreateLegacyArm = {
12874
13255
  [key: string]: unknown;
12875
13256
  };
12876
13257
  };
13258
+ /**
13259
+ * _CreateRollforwardArm
13260
+ *
13261
+ * Create-information-block body for ``block_type="rollforward"``.
13262
+ *
13263
+ * Carries a typed rollforward payload. The block decomposes the period
13264
+ * change in a BS source element across the declared attribution
13265
+ * filters.
13266
+ */
13267
+ export type CreateRollforwardArm = {
13268
+ /**
13269
+ * Block Type
13270
+ *
13271
+ * Discriminator value selecting this arm.
13272
+ */
13273
+ block_type: 'rollforward';
13274
+ /**
13275
+ * Rollforward creation payload.
13276
+ */
13277
+ payload: CreateRollforwardRequest;
13278
+ };
12877
13279
  /**
12878
13280
  * _CreateScheduleArm
12879
13281
  *
@@ -12920,6 +13322,26 @@ export type DeleteLegacyArm = {
12920
13322
  [key: string]: unknown;
12921
13323
  };
12922
13324
  };
13325
+ /**
13326
+ * _DeleteRollforwardArm
13327
+ *
13328
+ * Delete-information-block body for ``block_type="rollforward"``.
13329
+ *
13330
+ * Cascades through any synthetic facts produced by this block's filter
13331
+ * evaluations. The underlying ledger LineItems are not touched.
13332
+ */
13333
+ export type DeleteRollforwardArm = {
13334
+ /**
13335
+ * Block Type
13336
+ *
13337
+ * Discriminator value selecting this arm.
13338
+ */
13339
+ block_type: 'rollforward';
13340
+ /**
13341
+ * Rollforward delete payload.
13342
+ */
13343
+ payload: DeleteRollforwardRequest;
13344
+ };
12923
13345
  /**
12924
13346
  * _DeleteScheduleArm
12925
13347
  *
@@ -12965,6 +13387,26 @@ export type UpdateLegacyArm = {
12965
13387
  [key: string]: unknown;
12966
13388
  };
12967
13389
  };
13390
+ /**
13391
+ * _UpdateRollforwardArm
13392
+ *
13393
+ * Update-information-block body for ``block_type="rollforward"``.
13394
+ *
13395
+ * Carries a typed rollforward update payload. Mutable fields: name,
13396
+ * default_change_tag_qname, attribution_filters, validation_mode.
13397
+ */
13398
+ export type UpdateRollforwardArm = {
13399
+ /**
13400
+ * Block Type
13401
+ *
13402
+ * Discriminator value selecting this arm.
13403
+ */
13404
+ block_type: 'rollforward';
13405
+ /**
13406
+ * Rollforward update payload.
13407
+ */
13408
+ payload: UpdateRollforwardRequest;
13409
+ };
12968
13410
  /**
12969
13411
  * _UpdateScheduleArm
12970
13412
  *
@@ -14779,7 +15221,7 @@ export type SyncConnectionResponses = {
14779
15221
  202: OperationEnvelope;
14780
15222
  };
14781
15223
  export type SyncConnectionResponse = SyncConnectionResponses[keyof SyncConnectionResponses];
14782
- export type ListAgentsData = {
15224
+ export type ListOperatorsData = {
14783
15225
  body?: never;
14784
15226
  path: {
14785
15227
  /**
@@ -14795,9 +15237,9 @@ export type ListAgentsData = {
14795
15237
  */
14796
15238
  capability?: string | null;
14797
15239
  };
14798
- url: '/v1/graphs/{graph_id}/agent';
15240
+ url: '/v1/graphs/{graph_id}/operator';
14799
15241
  };
14800
- export type ListAgentsErrors = {
15242
+ export type ListOperatorsErrors = {
14801
15243
  /**
14802
15244
  * Invalid request
14803
15245
  */
@@ -14827,16 +15269,16 @@ export type ListAgentsErrors = {
14827
15269
  */
14828
15270
  500: ErrorResponse;
14829
15271
  };
14830
- export type ListAgentsError = ListAgentsErrors[keyof ListAgentsErrors];
14831
- export type ListAgentsResponses = {
15272
+ export type ListOperatorsError = ListOperatorsErrors[keyof ListOperatorsErrors];
15273
+ export type ListOperatorsResponses = {
14832
15274
  /**
14833
15275
  * Successful Response
14834
15276
  */
14835
- 200: AgentListResponse;
15277
+ 200: OperatorListResponse;
14836
15278
  };
14837
- export type ListAgentsResponse = ListAgentsResponses[keyof ListAgentsResponses];
14838
- export type AutoSelectAgentData = {
14839
- body: AgentRequest;
15279
+ export type ListOperatorsResponse = ListOperatorsResponses[keyof ListOperatorsResponses];
15280
+ export type AutoSelectOperatorData = {
15281
+ body: OperatorRequest;
14840
15282
  path: {
14841
15283
  /**
14842
15284
  * Graph Id
@@ -14851,9 +15293,9 @@ export type AutoSelectAgentData = {
14851
15293
  */
14852
15294
  mode?: ResponseMode | null;
14853
15295
  };
14854
- url: '/v1/graphs/{graph_id}/agent';
15296
+ url: '/v1/graphs/{graph_id}/operator';
14855
15297
  };
14856
- export type AutoSelectAgentErrors = {
15298
+ export type AutoSelectOperatorErrors = {
14857
15299
  /**
14858
15300
  * Invalid request
14859
15301
  */
@@ -14887,19 +15329,19 @@ export type AutoSelectAgentErrors = {
14887
15329
  */
14888
15330
  500: ErrorResponse;
14889
15331
  };
14890
- export type AutoSelectAgentError = AutoSelectAgentErrors[keyof AutoSelectAgentErrors];
14891
- export type AutoSelectAgentResponses = {
15332
+ export type AutoSelectOperatorError = AutoSelectOperatorErrors[keyof AutoSelectOperatorErrors];
15333
+ export type AutoSelectOperatorResponses = {
14892
15334
  /**
14893
15335
  * Successful Response
14894
15336
  */
14895
- 200: AgentResponse;
15337
+ 200: OperatorResponse;
14896
15338
  /**
14897
15339
  * Query queued for async processing
14898
15340
  */
14899
15341
  202: unknown;
14900
15342
  };
14901
- export type AutoSelectAgentResponse = AutoSelectAgentResponses[keyof AutoSelectAgentResponses];
14902
- export type GetAgentMetadataData = {
15343
+ export type AutoSelectOperatorResponse = AutoSelectOperatorResponses[keyof AutoSelectOperatorResponses];
15344
+ export type GetOperatorMetadataData = {
14903
15345
  body?: never;
14904
15346
  path: {
14905
15347
  /**
@@ -14907,16 +15349,16 @@ export type GetAgentMetadataData = {
14907
15349
  */
14908
15350
  graph_id: string;
14909
15351
  /**
14910
- * Agent Type
15352
+ * Operator Type
14911
15353
  *
14912
- * Agent type identifier (e.g., 'financial', 'research', 'rag')
15354
+ * Operator type identifier (e.g., 'financial', 'research', 'rag')
14913
15355
  */
14914
- agent_type: string;
15356
+ operator_type: string;
14915
15357
  };
14916
15358
  query?: never;
14917
- url: '/v1/graphs/{graph_id}/agent/{agent_type}';
15359
+ url: '/v1/graphs/{graph_id}/operator/{operator_type}';
14918
15360
  };
14919
- export type GetAgentMetadataErrors = {
15361
+ export type GetOperatorMetadataErrors = {
14920
15362
  /**
14921
15363
  * Invalid request
14922
15364
  */
@@ -14946,21 +15388,21 @@ export type GetAgentMetadataErrors = {
14946
15388
  */
14947
15389
  500: ErrorResponse;
14948
15390
  };
14949
- export type GetAgentMetadataError = GetAgentMetadataErrors[keyof GetAgentMetadataErrors];
14950
- export type GetAgentMetadataResponses = {
15391
+ export type GetOperatorMetadataError = GetOperatorMetadataErrors[keyof GetOperatorMetadataErrors];
15392
+ export type GetOperatorMetadataResponses = {
14951
15393
  /**
14952
15394
  * Successful Response
14953
15395
  */
14954
- 200: AgentMetadataResponse;
15396
+ 200: OperatorMetadataResponse;
14955
15397
  };
14956
- export type GetAgentMetadataResponse = GetAgentMetadataResponses[keyof GetAgentMetadataResponses];
14957
- export type ExecuteSpecificAgentData = {
14958
- body: AgentRequest;
15398
+ export type GetOperatorMetadataResponse = GetOperatorMetadataResponses[keyof GetOperatorMetadataResponses];
15399
+ export type ExecuteSpecificOperatorData = {
15400
+ body: OperatorRequest;
14959
15401
  path: {
14960
15402
  /**
14961
- * Agent Type
15403
+ * Operator Type
14962
15404
  */
14963
- agent_type: string;
15405
+ operator_type: string;
14964
15406
  /**
14965
15407
  * Graph Id
14966
15408
  */
@@ -14974,9 +15416,9 @@ export type ExecuteSpecificAgentData = {
14974
15416
  */
14975
15417
  mode?: ResponseMode | null;
14976
15418
  };
14977
- url: '/v1/graphs/{graph_id}/agent/{agent_type}';
15419
+ url: '/v1/graphs/{graph_id}/operator/{operator_type}';
14978
15420
  };
14979
- export type ExecuteSpecificAgentErrors = {
15421
+ export type ExecuteSpecificOperatorErrors = {
14980
15422
  /**
14981
15423
  * Invalid request
14982
15424
  */
@@ -15010,20 +15452,20 @@ export type ExecuteSpecificAgentErrors = {
15010
15452
  */
15011
15453
  500: ErrorResponse;
15012
15454
  };
15013
- export type ExecuteSpecificAgentError = ExecuteSpecificAgentErrors[keyof ExecuteSpecificAgentErrors];
15014
- export type ExecuteSpecificAgentResponses = {
15455
+ export type ExecuteSpecificOperatorError = ExecuteSpecificOperatorErrors[keyof ExecuteSpecificOperatorErrors];
15456
+ export type ExecuteSpecificOperatorResponses = {
15015
15457
  /**
15016
15458
  * Successful Response
15017
15459
  */
15018
- 200: AgentResponse;
15460
+ 200: OperatorResponse;
15019
15461
  /**
15020
15462
  * Query queued for async processing
15021
15463
  */
15022
15464
  202: unknown;
15023
15465
  };
15024
- export type ExecuteSpecificAgentResponse = ExecuteSpecificAgentResponses[keyof ExecuteSpecificAgentResponses];
15466
+ export type ExecuteSpecificOperatorResponse = ExecuteSpecificOperatorResponses[keyof ExecuteSpecificOperatorResponses];
15025
15467
  export type BatchProcessQueriesData = {
15026
- body: BatchAgentRequest;
15468
+ body: BatchOperatorRequest;
15027
15469
  path: {
15028
15470
  /**
15029
15471
  * Graph Id
@@ -15031,7 +15473,7 @@ export type BatchProcessQueriesData = {
15031
15473
  graph_id: string;
15032
15474
  };
15033
15475
  query?: never;
15034
- url: '/v1/graphs/{graph_id}/agent/batch';
15476
+ url: '/v1/graphs/{graph_id}/operator/batch';
15035
15477
  };
15036
15478
  export type BatchProcessQueriesErrors = {
15037
15479
  /**
@@ -15072,11 +15514,11 @@ export type BatchProcessQueriesResponses = {
15072
15514
  /**
15073
15515
  * Successful Response
15074
15516
  */
15075
- 200: BatchAgentResponse;
15517
+ 200: BatchOperatorResponse;
15076
15518
  };
15077
15519
  export type BatchProcessQueriesResponse = BatchProcessQueriesResponses[keyof BatchProcessQueriesResponses];
15078
- export type RecommendAgentData = {
15079
- body: AgentRecommendationRequest;
15520
+ export type RecommendOperatorData = {
15521
+ body: OperatorRecommendationRequest;
15080
15522
  path: {
15081
15523
  /**
15082
15524
  * Graph Id
@@ -15084,9 +15526,9 @@ export type RecommendAgentData = {
15084
15526
  graph_id: string;
15085
15527
  };
15086
15528
  query?: never;
15087
- url: '/v1/graphs/{graph_id}/agent/recommend';
15529
+ url: '/v1/graphs/{graph_id}/operator/recommend';
15088
15530
  };
15089
- export type RecommendAgentErrors = {
15531
+ export type RecommendOperatorErrors = {
15090
15532
  /**
15091
15533
  * Invalid request
15092
15534
  */
@@ -15116,14 +15558,14 @@ export type RecommendAgentErrors = {
15116
15558
  */
15117
15559
  500: ErrorResponse;
15118
15560
  };
15119
- export type RecommendAgentError = RecommendAgentErrors[keyof RecommendAgentErrors];
15120
- export type RecommendAgentResponses = {
15561
+ export type RecommendOperatorError = RecommendOperatorErrors[keyof RecommendOperatorErrors];
15562
+ export type RecommendOperatorResponses = {
15121
15563
  /**
15122
15564
  * Successful Response
15123
15565
  */
15124
- 200: AgentRecommendationResponse;
15566
+ 200: OperatorRecommendationResponse;
15125
15567
  };
15126
- export type RecommendAgentResponse = RecommendAgentResponses[keyof RecommendAgentResponses];
15568
+ export type RecommendOperatorResponse = RecommendOperatorResponses[keyof RecommendOperatorResponses];
15127
15569
  export type ListMcpToolsData = {
15128
15570
  body?: never;
15129
15571
  path: {
@@ -19684,6 +20126,65 @@ export type OpUpdateEventBlockResponses = {
19684
20126
  200: OperationEnvelopeEventBlockEnvelope;
19685
20127
  };
19686
20128
  export type OpUpdateEventBlockResponse = OpUpdateEventBlockResponses[keyof OpUpdateEventBlockResponses];
20129
+ export type OpExecuteEventBlockData = {
20130
+ body: ExecuteEventBlockRequest;
20131
+ headers?: {
20132
+ /**
20133
+ * Idempotency-Key
20134
+ */
20135
+ 'Idempotency-Key'?: string | null;
20136
+ };
20137
+ path: {
20138
+ /**
20139
+ * Graph Id
20140
+ */
20141
+ graph_id: string;
20142
+ };
20143
+ query?: never;
20144
+ url: '/extensions/roboledger/{graph_id}/operations/execute-event-block';
20145
+ };
20146
+ export type OpExecuteEventBlockErrors = {
20147
+ /**
20148
+ * Invalid request
20149
+ */
20150
+ 400: ErrorResponse;
20151
+ /**
20152
+ * Authentication required
20153
+ */
20154
+ 401: ErrorResponse;
20155
+ /**
20156
+ * Access denied
20157
+ */
20158
+ 403: ErrorResponse;
20159
+ /**
20160
+ * Resource not found
20161
+ */
20162
+ 404: ErrorResponse;
20163
+ /**
20164
+ * Idempotency-Key conflict — key reused with different body
20165
+ */
20166
+ 409: ErrorResponse;
20167
+ /**
20168
+ * Validation error
20169
+ */
20170
+ 422: ErrorResponse;
20171
+ /**
20172
+ * Rate limit exceeded
20173
+ */
20174
+ 429: ErrorResponse;
20175
+ /**
20176
+ * Internal server error
20177
+ */
20178
+ 500: ErrorResponse;
20179
+ };
20180
+ export type OpExecuteEventBlockError = OpExecuteEventBlockErrors[keyof OpExecuteEventBlockErrors];
20181
+ export type OpExecuteEventBlockResponses = {
20182
+ /**
20183
+ * Successful Response
20184
+ */
20185
+ 200: OperationEnvelopeExecuteEventBlockResponse;
20186
+ };
20187
+ export type OpExecuteEventBlockResponse = OpExecuteEventBlockResponses[keyof OpExecuteEventBlockResponses];
19687
20188
  export type OpCreateEventHandlerData = {
19688
20189
  body: CreateEventHandlerRequest;
19689
20190
  headers?: {