@elaraai/e3-types 1.0.79 → 1.0.81

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (158) hide show
  1. package/README.md +1 -1
  2. package/dist/src/api.d.ts +829 -36
  3. package/dist/src/api.d.ts.map +1 -1
  4. package/dist/src/api.js +301 -32
  5. package/dist/src/api.js.map +1 -1
  6. package/dist/src/collection-manifest.d.ts +37 -0
  7. package/dist/src/collection-manifest.d.ts.map +1 -0
  8. package/dist/src/collection-manifest.js +37 -0
  9. package/dist/src/collection-manifest.js.map +1 -0
  10. package/dist/src/dataflow.d.ts +264 -19
  11. package/dist/src/dataflow.d.ts.map +1 -1
  12. package/dist/src/dataflow.js +156 -15
  13. package/dist/src/dataflow.js.map +1 -1
  14. package/dist/src/dataflow.spec.js +184 -27
  15. package/dist/src/dataflow.spec.js.map +1 -1
  16. package/dist/src/dataset-blob.d.ts +75 -15
  17. package/dist/src/dataset-blob.d.ts.map +1 -1
  18. package/dist/src/dataset-blob.js +95 -28
  19. package/dist/src/dataset-blob.js.map +1 -1
  20. package/dist/src/dataset-blob.spec.d.ts +6 -0
  21. package/dist/src/dataset-blob.spec.d.ts.map +1 -0
  22. package/dist/src/dataset-blob.spec.js +92 -0
  23. package/dist/src/dataset-blob.spec.js.map +1 -0
  24. package/dist/src/dataset-ref.d.ts +5 -4
  25. package/dist/src/dataset-ref.d.ts.map +1 -1
  26. package/dist/src/dataset-ref.js +5 -4
  27. package/dist/src/dataset-ref.js.map +1 -1
  28. package/dist/src/environment.d.ts +3 -2
  29. package/dist/src/environment.d.ts.map +1 -1
  30. package/dist/src/environment.js +3 -2
  31. package/dist/src/environment.js.map +1 -1
  32. package/dist/src/execution.d.ts +112 -18
  33. package/dist/src/execution.d.ts.map +1 -1
  34. package/dist/src/execution.js +174 -45
  35. package/dist/src/execution.js.map +1 -1
  36. package/dist/src/execution.spec.d.ts +6 -0
  37. package/dist/src/execution.spec.d.ts.map +1 -0
  38. package/dist/src/execution.spec.js +108 -0
  39. package/dist/src/execution.spec.js.map +1 -0
  40. package/dist/src/function.d.ts +14 -12
  41. package/dist/src/function.d.ts.map +1 -1
  42. package/dist/src/function.js +17 -32
  43. package/dist/src/function.js.map +1 -1
  44. package/dist/src/index.d.ts +17 -12
  45. package/dist/src/index.d.ts.map +1 -1
  46. package/dist/src/index.js +28 -20
  47. package/dist/src/index.js.map +1 -1
  48. package/dist/src/intake.d.ts +75 -0
  49. package/dist/src/intake.d.ts.map +1 -0
  50. package/dist/src/intake.js +46 -0
  51. package/dist/src/intake.js.map +1 -0
  52. package/dist/src/lock.d.ts +253 -21
  53. package/dist/src/lock.d.ts.map +1 -1
  54. package/dist/src/lock.js +55 -21
  55. package/dist/src/lock.js.map +1 -1
  56. package/dist/src/names.d.ts +21 -0
  57. package/dist/src/names.d.ts.map +1 -0
  58. package/dist/src/names.js +31 -0
  59. package/dist/src/names.js.map +1 -0
  60. package/dist/src/package.d.ts +11 -78
  61. package/dist/src/package.d.ts.map +1 -1
  62. package/dist/src/package.js +13 -66
  63. package/dist/src/package.js.map +1 -1
  64. package/dist/src/record.d.ts +582 -18
  65. package/dist/src/record.d.ts.map +1 -1
  66. package/dist/src/record.js +405 -7
  67. package/dist/src/record.js.map +1 -1
  68. package/dist/src/{stream.spec.d.ts → record.spec.d.ts} +1 -1
  69. package/dist/src/record.spec.d.ts.map +1 -0
  70. package/dist/src/record.spec.js +143 -0
  71. package/dist/src/record.spec.js.map +1 -0
  72. package/dist/src/release.d.ts +36 -0
  73. package/dist/src/release.d.ts.map +1 -0
  74. package/dist/src/release.js +71 -0
  75. package/dist/src/release.js.map +1 -0
  76. package/dist/src/release.spec.d.ts +6 -0
  77. package/dist/src/release.spec.d.ts.map +1 -0
  78. package/dist/src/release.spec.js +42 -0
  79. package/dist/src/release.spec.js.map +1 -0
  80. package/dist/src/repository.d.ts +64 -0
  81. package/dist/src/repository.d.ts.map +1 -0
  82. package/dist/src/repository.js +49 -0
  83. package/dist/src/repository.js.map +1 -0
  84. package/dist/src/runner.d.ts +16 -62
  85. package/dist/src/runner.d.ts.map +1 -1
  86. package/dist/src/runner.js +16 -79
  87. package/dist/src/runner.js.map +1 -1
  88. package/dist/src/runner.spec.js +11 -85
  89. package/dist/src/runner.spec.js.map +1 -1
  90. package/dist/src/structure.d.ts +0 -57
  91. package/dist/src/structure.d.ts.map +1 -1
  92. package/dist/src/structure.js +0 -3
  93. package/dist/src/structure.js.map +1 -1
  94. package/dist/src/task.d.ts +210 -318
  95. package/dist/src/task.d.ts.map +1 -1
  96. package/dist/src/task.js +117 -472
  97. package/dist/src/task.js.map +1 -1
  98. package/dist/src/task.spec.js +62 -154
  99. package/dist/src/task.spec.js.map +1 -1
  100. package/dist/src/transfer.d.ts +38 -26
  101. package/dist/src/transfer.d.ts.map +1 -1
  102. package/dist/src/transfer.js +22 -26
  103. package/dist/src/transfer.js.map +1 -1
  104. package/dist/src/transfer.spec.js +4 -34
  105. package/dist/src/transfer.spec.js.map +1 -1
  106. package/dist/src/unit-plan.d.ts +130 -0
  107. package/dist/src/unit-plan.d.ts.map +1 -0
  108. package/dist/src/unit-plan.js +107 -0
  109. package/dist/src/unit-plan.js.map +1 -0
  110. package/dist/src/unit-plan.spec.d.ts +6 -0
  111. package/dist/src/unit-plan.spec.d.ts.map +1 -0
  112. package/dist/src/unit-plan.spec.js +29 -0
  113. package/dist/src/unit-plan.spec.js.map +1 -0
  114. package/dist/src/workspace.d.ts +22 -11
  115. package/dist/src/workspace.d.ts.map +1 -1
  116. package/dist/src/workspace.js +10 -11
  117. package/dist/src/workspace.js.map +1 -1
  118. package/package.json +3 -3
  119. package/src/api.ts +326 -32
  120. package/src/collection-manifest.ts +53 -0
  121. package/src/dataflow.spec.ts +223 -31
  122. package/src/dataflow.ts +183 -26
  123. package/src/dataset-blob.spec.ts +117 -0
  124. package/src/dataset-blob.ts +157 -21
  125. package/src/dataset-ref.ts +5 -4
  126. package/src/environment.ts +3 -2
  127. package/src/execution.spec.ts +114 -0
  128. package/src/execution.ts +175 -51
  129. package/src/function.ts +19 -32
  130. package/src/index.ts +141 -39
  131. package/src/intake.ts +53 -0
  132. package/src/lock.ts +67 -21
  133. package/src/names.ts +39 -0
  134. package/src/package.ts +15 -71
  135. package/src/record.spec.ts +195 -0
  136. package/src/record.ts +489 -7
  137. package/src/release.spec.ts +47 -0
  138. package/src/release.ts +69 -0
  139. package/src/repository.ts +67 -0
  140. package/src/runner.spec.ts +11 -94
  141. package/src/runner.ts +16 -80
  142. package/src/structure.ts +0 -8
  143. package/src/task.spec.ts +67 -188
  144. package/src/task.ts +140 -522
  145. package/src/transfer.spec.ts +4 -51
  146. package/src/transfer.ts +22 -26
  147. package/src/unit-plan.spec.ts +31 -0
  148. package/src/unit-plan.ts +121 -0
  149. package/src/workspace.ts +13 -11
  150. package/dist/src/stream.d.ts +0 -97
  151. package/dist/src/stream.d.ts.map +0 -1
  152. package/dist/src/stream.js +0 -134
  153. package/dist/src/stream.js.map +0 -1
  154. package/dist/src/stream.spec.d.ts.map +0 -1
  155. package/dist/src/stream.spec.js +0 -60
  156. package/dist/src/stream.spec.js.map +0 -1
  157. package/src/stream.spec.ts +0 -88
  158. package/src/stream.ts +0 -170
package/dist/src/api.d.ts CHANGED
@@ -89,6 +89,13 @@ export declare const DatasetTypeMismatchErrorType: StructType<{
89
89
  readonly path: StringType;
90
90
  readonly message: StringType;
91
91
  }>;
92
+ /** A name e3 would make a path of that cannot be one path segment: a
93
+ * repository's, a workspace's, or a package's name or version. */
94
+ export declare const InvalidNameErrorType: StructType<{
95
+ readonly kind: StringType;
96
+ readonly name: StringType;
97
+ readonly message: StringType;
98
+ }>;
92
99
  export declare const ErrorType: VariantType<{
93
100
  readonly repository_not_found: StructType<{
94
101
  readonly repo: StringType;
@@ -153,6 +160,11 @@ export declare const ErrorType: VariantType<{
153
160
  readonly path: StringType;
154
161
  readonly message: StringType;
155
162
  }>;
163
+ readonly invalid_name: StructType<{
164
+ readonly kind: StringType;
165
+ readonly name: StringType;
166
+ readonly message: StringType;
167
+ }>;
156
168
  }>;
157
169
  export declare const ResponseType: <T extends EastType>(successType: T) => VariantType<{
158
170
  readonly success: T;
@@ -220,6 +232,11 @@ export declare const ResponseType: <T extends EastType>(successType: T) => Varia
220
232
  readonly path: StringType;
221
233
  readonly message: StringType;
222
234
  }>;
235
+ readonly invalid_name: StructType<{
236
+ readonly kind: StringType;
237
+ readonly name: StringType;
238
+ readonly message: StringType;
239
+ }>;
223
240
  }>;
224
241
  }>;
225
242
  /**
@@ -241,10 +258,16 @@ export declare const RepositoryStatusType: StructType<{
241
258
  *
242
259
  * @property dryRun - If true, report what would be deleted without deleting
243
260
  * @property minAge - Minimum age in milliseconds for objects to be considered for deletion
261
+ * @property keepRuns - The runs of each workspace kept however old, the latest
262
+ * first; the server's default when `none`
263
+ * @property keepDays - The days of runs and executions kept however many; the
264
+ * server's default when `none`
244
265
  */
245
266
  export declare const GcRequestType: StructType<{
246
267
  readonly dryRun: BooleanType;
247
268
  readonly minAge: OptionType<IntegerType>;
269
+ readonly keepRuns: OptionType<IntegerType>;
270
+ readonly keepDays: OptionType<IntegerType>;
248
271
  }>;
249
272
  /**
250
273
  * Garbage collection result.
@@ -254,6 +277,9 @@ export declare const GcRequestType: StructType<{
254
277
  * @property retainedObjects - Number of objects still referenced
255
278
  * @property skippedYoung - Number of objects skipped due to minAge
256
279
  * @property bytesFreed - Total bytes freed by deletion
280
+ * @property deletedRuns - Number of dataflow run records deleted
281
+ * @property deletedExecutions - Number of execution attempts deleted, each with
282
+ * its owner record and logs
257
283
  */
258
284
  export declare const GcResultType: StructType<{
259
285
  readonly deletedObjects: IntegerType;
@@ -261,6 +287,8 @@ export declare const GcResultType: StructType<{
261
287
  readonly retainedObjects: IntegerType;
262
288
  readonly skippedYoung: IntegerType;
263
289
  readonly bytesFreed: IntegerType;
290
+ readonly deletedRuns: IntegerType;
291
+ readonly deletedExecutions: IntegerType;
264
292
  }>;
265
293
  /**
266
294
  * Status of an async operation.
@@ -301,6 +329,8 @@ export declare const GcStatusResultType: StructType<{
301
329
  readonly retainedObjects: IntegerType;
302
330
  readonly skippedYoung: IntegerType;
303
331
  readonly bytesFreed: IntegerType;
332
+ readonly deletedRuns: IntegerType;
333
+ readonly deletedExecutions: IntegerType;
304
334
  }>>;
305
335
  readonly error: OptionType<StringType>;
306
336
  }>;
@@ -411,13 +441,442 @@ export declare const WorkspaceInfoType: StructType<{
411
441
  readonly packageName: OptionType<StringType>;
412
442
  readonly packageVersion: OptionType<StringType>;
413
443
  }>;
444
+ /**
445
+ * What a deploy does with a record it cannot keep as it is.
446
+ *
447
+ * - `migrate`: run the migrations the workspace has not applied, and refuse a
448
+ * record no migration carries to the package's type
449
+ * - `fail`: run none, and refuse a record with migrations to run, for a
450
+ * workspace whose migrations go through their own change control
451
+ * - `reset`: reset a record it can neither keep nor migrate to the package's
452
+ * initial value, under a `$reset` commit, so the reset is in its history
453
+ */
454
+ export declare const SchemaPolicyType: VariantType<{
455
+ readonly migrate: NullType;
456
+ readonly fail: NullType;
457
+ readonly reset: NullType;
458
+ }>;
414
459
  /**
415
460
  * Request to deploy a package to a workspace.
416
461
  *
417
462
  * @property packageRef - Package reference in format "name" or "name@version"
463
+ * @property schema - What the deploy does with a record it cannot keep as it is
464
+ * @property allowDropRecords - Whether a record the package no longer declares
465
+ * may be dropped, with its state and history
466
+ * @property plan - Say what the deploy would do, and write nothing
418
467
  */
419
468
  export declare const WorkspaceDeployRequestType: StructType<{
420
469
  readonly packageRef: StringType;
470
+ readonly schema: VariantType<{
471
+ readonly migrate: NullType;
472
+ readonly fail: NullType;
473
+ readonly reset: NullType;
474
+ }>;
475
+ readonly allowDropRecords: BooleanType;
476
+ readonly plan: BooleanType;
477
+ }>;
478
+ /**
479
+ * What a deploy decided for one record.
480
+ *
481
+ * @property record - The record's dataset ref path
482
+ * @property action - What the deploy does to it:
483
+ * - `mint`: the workspace does not hold it, so it is minted from the
484
+ * package's initial value
485
+ * - `keep`: kept as the workspace holds it; `deploy` when the package under
486
+ * it changed, which a `$deploy` commit records in its history
487
+ * - `migrate`: migrated by the steps the workspace has not applied, in order
488
+ * - `reset`: reset to the package's initial value under the `reset` policy,
489
+ * and why it could not be kept or migrated
490
+ * - `drop`: the package does not declare it, so it is dropped, with its
491
+ * state and history
492
+ * - `refused`: refused, and why, with the fix: the deploy writes nothing
493
+ */
494
+ export declare const RecordPlanType: StructType<{
495
+ readonly record: StringType;
496
+ readonly action: VariantType<{
497
+ readonly mint: NullType;
498
+ readonly keep: StructType<{
499
+ readonly deploy: BooleanType;
500
+ }>;
501
+ readonly migrate: StructType<{
502
+ readonly steps: ArrayType<StringType>;
503
+ }>;
504
+ readonly reset: StructType<{
505
+ readonly reason: StringType;
506
+ }>;
507
+ readonly drop: NullType;
508
+ readonly refused: StructType<{
509
+ readonly reason: StringType;
510
+ }>;
511
+ }>;
512
+ }>;
513
+ /**
514
+ * What a deploy decided for one of a record's indexes.
515
+ *
516
+ * @property record - The record's dataset ref path
517
+ * @property index - The index's name
518
+ * @property action - `build` when the state names no index under the
519
+ * package's declaration, `drop` when it names one the package does not
520
+ * declare, and `keep` when the two agree and nothing runs
521
+ */
522
+ export declare const RecordIndexPlanType: StructType<{
523
+ readonly record: StringType;
524
+ readonly index: StringType;
525
+ readonly action: VariantType<{
526
+ readonly build: NullType;
527
+ readonly drop: NullType;
528
+ readonly keep: NullType;
529
+ }>;
530
+ }>;
531
+ /**
532
+ * The step a deploy is at with one record.
533
+ *
534
+ * - `waiting`: its turn has not come, or it needs nothing but the deploy's
535
+ * commit
536
+ * - `migrating`: running migration step `step` of the `steps` it owes, `name`
537
+ * - `indexing`: building `index`, the `build`th of the `builds` it owes
538
+ * - `done`: its migrations and index builds have run
539
+ */
540
+ export declare const RecordDeployStepType: VariantType<{
541
+ readonly waiting: NullType;
542
+ readonly migrating: StructType<{
543
+ readonly name: StringType;
544
+ readonly step: IntegerType;
545
+ readonly steps: IntegerType;
546
+ }>;
547
+ readonly indexing: StructType<{
548
+ readonly index: StringType;
549
+ readonly build: IntegerType;
550
+ readonly builds: IntegerType;
551
+ }>;
552
+ readonly done: NullType;
553
+ }>;
554
+ /**
555
+ * One record a deploy is deploying.
556
+ *
557
+ * @property plan - What the deploy decided for it
558
+ * @property indexes - The indexes the package declares for it
559
+ * @property step - How far the deploy has got with it
560
+ */
561
+ export declare const RecordDeployStateType: StructType<{
562
+ readonly plan: StructType<{
563
+ readonly record: StringType;
564
+ readonly action: VariantType<{
565
+ readonly mint: NullType;
566
+ readonly keep: StructType<{
567
+ readonly deploy: BooleanType;
568
+ }>;
569
+ readonly migrate: StructType<{
570
+ readonly steps: ArrayType<StringType>;
571
+ }>;
572
+ readonly reset: StructType<{
573
+ readonly reason: StringType;
574
+ }>;
575
+ readonly drop: NullType;
576
+ readonly refused: StructType<{
577
+ readonly reason: StringType;
578
+ }>;
579
+ }>;
580
+ }>;
581
+ readonly indexes: ArrayType<StringType>;
582
+ readonly step: VariantType<{
583
+ readonly waiting: NullType;
584
+ readonly migrating: StructType<{
585
+ readonly name: StringType;
586
+ readonly step: IntegerType;
587
+ readonly steps: IntegerType;
588
+ }>;
589
+ readonly indexing: StructType<{
590
+ readonly index: StringType;
591
+ readonly build: IntegerType;
592
+ readonly builds: IntegerType;
593
+ }>;
594
+ readonly done: NullType;
595
+ }>;
596
+ }>;
597
+ /**
598
+ * How far a deploy has got, for a client to show while it runs.
599
+ *
600
+ * @property package - The package it deploys
601
+ * @property startedAt - When it began taking its files in
602
+ * @property files - Each file source it takes in, in the package's order
603
+ * @property records - Each record it deploys, in the package's order, and
604
+ * each it drops
605
+ */
606
+ export declare const DeployProgressType: StructType<{
607
+ readonly package: StructType<{
608
+ readonly name: StringType;
609
+ readonly version: StringType;
610
+ }>;
611
+ readonly startedAt: DateTimeType;
612
+ readonly files: ArrayType<StructType<{
613
+ readonly path: StringType;
614
+ readonly step: VariantType<{
615
+ readonly waiting: NullType;
616
+ readonly hashing: NullType;
617
+ readonly taking_in: StructType<{
618
+ readonly pieces: IntegerType;
619
+ readonly done: IntegerType;
620
+ }>;
621
+ readonly done: VariantType<{
622
+ readonly known: NullType;
623
+ readonly carried: NullType;
624
+ readonly taken: ArrayType<StringType>;
625
+ }>;
626
+ }>;
627
+ readonly bytes: IntegerType;
628
+ readonly total: IntegerType;
629
+ }>>;
630
+ readonly records: ArrayType<StructType<{
631
+ readonly plan: StructType<{
632
+ readonly record: StringType;
633
+ readonly action: VariantType<{
634
+ readonly mint: NullType;
635
+ readonly keep: StructType<{
636
+ readonly deploy: BooleanType;
637
+ }>;
638
+ readonly migrate: StructType<{
639
+ readonly steps: ArrayType<StringType>;
640
+ }>;
641
+ readonly reset: StructType<{
642
+ readonly reason: StringType;
643
+ }>;
644
+ readonly drop: NullType;
645
+ readonly refused: StructType<{
646
+ readonly reason: StringType;
647
+ }>;
648
+ }>;
649
+ }>;
650
+ readonly indexes: ArrayType<StringType>;
651
+ readonly step: VariantType<{
652
+ readonly waiting: NullType;
653
+ readonly migrating: StructType<{
654
+ readonly name: StringType;
655
+ readonly step: IntegerType;
656
+ readonly steps: IntegerType;
657
+ }>;
658
+ readonly indexing: StructType<{
659
+ readonly index: StringType;
660
+ readonly build: IntegerType;
661
+ readonly builds: IntegerType;
662
+ }>;
663
+ readonly done: NullType;
664
+ }>;
665
+ }>>;
666
+ }>;
667
+ /**
668
+ * What a deploy did, or under `plan` would do.
669
+ *
670
+ * @property records - What it decided for each record
671
+ * @property indexes - What it decided for each index of the records it keeps
672
+ * @property warnings - The inputs it left unassigned, and why: a server never
673
+ * reads a `file` source, whose path is on the client's machine
674
+ */
675
+ export declare const WorkspaceDeployResultType: StructType<{
676
+ readonly records: ArrayType<StructType<{
677
+ readonly record: StringType;
678
+ readonly action: VariantType<{
679
+ readonly mint: NullType;
680
+ readonly keep: StructType<{
681
+ readonly deploy: BooleanType;
682
+ }>;
683
+ readonly migrate: StructType<{
684
+ readonly steps: ArrayType<StringType>;
685
+ }>;
686
+ readonly reset: StructType<{
687
+ readonly reason: StringType;
688
+ }>;
689
+ readonly drop: NullType;
690
+ readonly refused: StructType<{
691
+ readonly reason: StringType;
692
+ }>;
693
+ }>;
694
+ }>>;
695
+ readonly indexes: ArrayType<StructType<{
696
+ readonly record: StringType;
697
+ readonly index: StringType;
698
+ readonly action: VariantType<{
699
+ readonly build: NullType;
700
+ readonly drop: NullType;
701
+ readonly keep: NullType;
702
+ }>;
703
+ }>>;
704
+ readonly warnings: ArrayType<StringType>;
705
+ }>;
706
+ /**
707
+ * A deploy job's progress: `pending` until it starts, then `deploying`, with
708
+ * how far it has got once it has said.
709
+ */
710
+ export declare const WorkspaceDeployProgressType: VariantType<{
711
+ readonly pending: NullType;
712
+ readonly deploying: OptionType<StructType<{
713
+ readonly package: StructType<{
714
+ readonly name: StringType;
715
+ readonly version: StringType;
716
+ }>;
717
+ readonly startedAt: DateTimeType;
718
+ readonly files: ArrayType<StructType<{
719
+ readonly path: StringType;
720
+ readonly step: VariantType<{
721
+ readonly waiting: NullType;
722
+ readonly hashing: NullType;
723
+ readonly taking_in: StructType<{
724
+ readonly pieces: IntegerType;
725
+ readonly done: IntegerType;
726
+ }>;
727
+ readonly done: VariantType<{
728
+ readonly known: NullType;
729
+ readonly carried: NullType;
730
+ readonly taken: ArrayType<StringType>;
731
+ }>;
732
+ }>;
733
+ readonly bytes: IntegerType;
734
+ readonly total: IntegerType;
735
+ }>>;
736
+ readonly records: ArrayType<StructType<{
737
+ readonly plan: StructType<{
738
+ readonly record: StringType;
739
+ readonly action: VariantType<{
740
+ readonly mint: NullType;
741
+ readonly keep: StructType<{
742
+ readonly deploy: BooleanType;
743
+ }>;
744
+ readonly migrate: StructType<{
745
+ readonly steps: ArrayType<StringType>;
746
+ }>;
747
+ readonly reset: StructType<{
748
+ readonly reason: StringType;
749
+ }>;
750
+ readonly drop: NullType;
751
+ readonly refused: StructType<{
752
+ readonly reason: StringType;
753
+ }>;
754
+ }>;
755
+ }>;
756
+ readonly indexes: ArrayType<StringType>;
757
+ readonly step: VariantType<{
758
+ readonly waiting: NullType;
759
+ readonly migrating: StructType<{
760
+ readonly name: StringType;
761
+ readonly step: IntegerType;
762
+ readonly steps: IntegerType;
763
+ }>;
764
+ readonly indexing: StructType<{
765
+ readonly index: StringType;
766
+ readonly build: IntegerType;
767
+ readonly builds: IntegerType;
768
+ }>;
769
+ readonly done: NullType;
770
+ }>;
771
+ }>>;
772
+ }>>;
773
+ }>;
774
+ /**
775
+ * A deploy job's status.
776
+ *
777
+ * - `processing`: still running, and how far it has got
778
+ * - `completed`: what the deploy did
779
+ * - `failed`: why it did not
780
+ */
781
+ export declare const WorkspaceDeployStatusType: VariantType<{
782
+ readonly processing: VariantType<{
783
+ readonly pending: NullType;
784
+ readonly deploying: OptionType<StructType<{
785
+ readonly package: StructType<{
786
+ readonly name: StringType;
787
+ readonly version: StringType;
788
+ }>;
789
+ readonly startedAt: DateTimeType;
790
+ readonly files: ArrayType<StructType<{
791
+ readonly path: StringType;
792
+ readonly step: VariantType<{
793
+ readonly waiting: NullType;
794
+ readonly hashing: NullType;
795
+ readonly taking_in: StructType<{
796
+ readonly pieces: IntegerType;
797
+ readonly done: IntegerType;
798
+ }>;
799
+ readonly done: VariantType<{
800
+ readonly known: NullType;
801
+ readonly carried: NullType;
802
+ readonly taken: ArrayType<StringType>;
803
+ }>;
804
+ }>;
805
+ readonly bytes: IntegerType;
806
+ readonly total: IntegerType;
807
+ }>>;
808
+ readonly records: ArrayType<StructType<{
809
+ readonly plan: StructType<{
810
+ readonly record: StringType;
811
+ readonly action: VariantType<{
812
+ readonly mint: NullType;
813
+ readonly keep: StructType<{
814
+ readonly deploy: BooleanType;
815
+ }>;
816
+ readonly migrate: StructType<{
817
+ readonly steps: ArrayType<StringType>;
818
+ }>;
819
+ readonly reset: StructType<{
820
+ readonly reason: StringType;
821
+ }>;
822
+ readonly drop: NullType;
823
+ readonly refused: StructType<{
824
+ readonly reason: StringType;
825
+ }>;
826
+ }>;
827
+ }>;
828
+ readonly indexes: ArrayType<StringType>;
829
+ readonly step: VariantType<{
830
+ readonly waiting: NullType;
831
+ readonly migrating: StructType<{
832
+ readonly name: StringType;
833
+ readonly step: IntegerType;
834
+ readonly steps: IntegerType;
835
+ }>;
836
+ readonly indexing: StructType<{
837
+ readonly index: StringType;
838
+ readonly build: IntegerType;
839
+ readonly builds: IntegerType;
840
+ }>;
841
+ readonly done: NullType;
842
+ }>;
843
+ }>>;
844
+ }>>;
845
+ }>;
846
+ readonly completed: StructType<{
847
+ readonly records: ArrayType<StructType<{
848
+ readonly record: StringType;
849
+ readonly action: VariantType<{
850
+ readonly mint: NullType;
851
+ readonly keep: StructType<{
852
+ readonly deploy: BooleanType;
853
+ }>;
854
+ readonly migrate: StructType<{
855
+ readonly steps: ArrayType<StringType>;
856
+ }>;
857
+ readonly reset: StructType<{
858
+ readonly reason: StringType;
859
+ }>;
860
+ readonly drop: NullType;
861
+ readonly refused: StructType<{
862
+ readonly reason: StringType;
863
+ }>;
864
+ }>;
865
+ }>>;
866
+ readonly indexes: ArrayType<StructType<{
867
+ readonly record: StringType;
868
+ readonly index: StringType;
869
+ readonly action: VariantType<{
870
+ readonly build: NullType;
871
+ readonly drop: NullType;
872
+ readonly keep: NullType;
873
+ }>;
874
+ }>>;
875
+ readonly warnings: ArrayType<StringType>;
876
+ }>;
877
+ readonly failed: StructType<{
878
+ readonly message: StringType;
879
+ }>;
421
880
  }>;
422
881
  /**
423
882
  * Workspace export request body.
@@ -550,6 +1009,9 @@ export declare const DatasetStatusInfoType: StructType<{
550
1009
  * @property inputs - Dataset paths this task reads from
551
1010
  * @property output - Dataset path this task writes to
552
1011
  * @property dependsOn - Names of tasks that must complete before this one
1012
+ * @property peakBytes - The highest peak resident memory, in bytes, a runner
1013
+ * of the execution the status comes from reached: the one the output came
1014
+ * from, or the failure; `none` when it recorded none, or while it runs
553
1015
  */
554
1016
  export declare const TaskStatusInfoType: StructType<{
555
1017
  readonly name: StringType;
@@ -590,6 +1052,7 @@ export declare const TaskStatusInfoType: StructType<{
590
1052
  readonly inputs: ArrayType<StringType>;
591
1053
  readonly output: StringType;
592
1054
  readonly dependsOn: ArrayType<StringType>;
1055
+ readonly peakBytes: OptionType<IntegerType>;
593
1056
  }>;
594
1057
  /**
595
1058
  * Summary counts for workspace status.
@@ -681,6 +1144,7 @@ export declare const WorkspaceStatusResultType: StructType<{
681
1144
  readonly inputs: ArrayType<StringType>;
682
1145
  readonly output: StringType;
683
1146
  readonly dependsOn: ArrayType<StringType>;
1147
+ readonly peakBytes: OptionType<IntegerType>;
684
1148
  }>>;
685
1149
  readonly summary: StructType<{
686
1150
  /** Dataset status counts */
@@ -708,44 +1172,109 @@ export declare const WorkspaceStatusResultType: StructType<{
708
1172
  *
709
1173
  * @property name - Task name
710
1174
  * @property hash - Task definition hash
711
- * @property kind - Task kind: "ui" (e3-ui `ui()`), other future kinds; none for plain tasks / old packages
1175
+ * @property role - What the task's output is for: data, or a ui with what it
1176
+ * binds
712
1177
  */
713
1178
  export declare const TaskListItemType: StructType<{
714
1179
  readonly name: StringType;
715
1180
  readonly hash: StringType;
716
- readonly kind: OptionType<StringType>;
1181
+ readonly role: VariantType<{
1182
+ readonly data: NullType;
1183
+ readonly ui: StructType<{
1184
+ readonly paths: ArrayType<ArrayType<VariantType<{
1185
+ readonly field: StringType;
1186
+ }>>>;
1187
+ readonly functions: ArrayType<StringType>;
1188
+ readonly records: ArrayType<StringType>;
1189
+ readonly pages: ArrayType<ArrayType<VariantType<{
1190
+ readonly field: StringType;
1191
+ }>>>;
1192
+ }>;
1193
+ }>;
717
1194
  }>;
718
1195
  /**
719
- * Detailed task information.
1196
+ * Detailed task information: the task object's fields.
720
1197
  *
721
1198
  * @property name - Task name
722
1199
  * @property hash - Task definition hash
723
- * @property commandIr - East IR for the task's command
724
- * @property inputs - Tree paths for task inputs
725
- * @property output - Tree path for task output
1200
+ * @property body - What the task runs: an East program, or a command
1201
+ * @property runner - The runtime it runs on
1202
+ * @property inputs - The datasets it reads, each with its partition
1203
+ * @property output - Where its output goes, and how it is made
1204
+ * @property role - What its output is for: data, or a ui with what it binds
726
1205
  */
727
1206
  export declare const TaskDetailsType: StructType<{
728
1207
  readonly name: StringType;
729
1208
  readonly hash: StringType;
730
- readonly commandIr: StringType;
731
- readonly inputs: ArrayType<ArrayType<VariantType<{
732
- readonly field: StringType;
733
- }>>>;
734
- readonly output: ArrayType<VariantType<{
735
- readonly field: StringType;
1209
+ readonly body: VariantType<{
1210
+ readonly east: StructType<{
1211
+ readonly program: StringType;
1212
+ }>;
1213
+ readonly command: StructType<{
1214
+ readonly commandIr: StringType;
1215
+ }>;
1216
+ }>;
1217
+ readonly runner: VariantType<{
1218
+ readonly east_node: StructType<{
1219
+ readonly platforms: ArrayType<StringType>;
1220
+ }>;
1221
+ readonly east_py: StructType<{
1222
+ readonly platforms: ArrayType<StringType>;
1223
+ }>;
1224
+ readonly east_c: StructType<{
1225
+ readonly platforms: ArrayType<StringType>;
1226
+ }>;
1227
+ readonly custom: StructType<{
1228
+ readonly command: ArrayType<StringType>;
1229
+ }>;
1230
+ }>;
1231
+ readonly inputs: ArrayType<StructType<{
1232
+ readonly path: ArrayType<VariantType<{
1233
+ readonly field: StringType;
1234
+ }>>;
1235
+ readonly partition: OptionType<StructType<{
1236
+ readonly by: ArrayType<StringType>;
1237
+ }>>;
736
1238
  }>>;
737
- readonly kind: OptionType<StringType>;
738
- readonly metadata: OptionType<BlobType>;
1239
+ readonly output: StructType<{
1240
+ readonly path: ArrayType<VariantType<{
1241
+ readonly field: StringType;
1242
+ }>>;
1243
+ readonly kind: VariantType<{
1244
+ readonly value: NullType;
1245
+ readonly array: NullType;
1246
+ readonly set: NullType;
1247
+ readonly dict: StructType<{
1248
+ readonly merge: OptionType<StringType>;
1249
+ }>;
1250
+ readonly fold: StructType<{
1251
+ readonly zero: StringType;
1252
+ readonly combine: StringType;
1253
+ }>;
1254
+ }>;
1255
+ }>;
1256
+ readonly role: VariantType<{
1257
+ readonly data: NullType;
1258
+ readonly ui: StructType<{
1259
+ readonly paths: ArrayType<ArrayType<VariantType<{
1260
+ readonly field: StringType;
1261
+ }>>>;
1262
+ readonly functions: ArrayType<StringType>;
1263
+ readonly records: ArrayType<StringType>;
1264
+ readonly pages: ArrayType<ArrayType<VariantType<{
1265
+ readonly field: StringType;
1266
+ }>>>;
1267
+ }>;
1268
+ }>;
739
1269
  }>;
740
1270
  /**
741
- * Request to start dataflow execution.
1271
+ * Request to start dataflow execution. The run takes the server's budget of
1272
+ * cores and memory, which it shares with everything else the server runs.
742
1273
  *
743
- * @property concurrency - Maximum parallel tasks (default: 4)
744
1274
  * @property force - Force re-execution of all tasks
745
1275
  * @property filter - Filter to specific task names (glob pattern)
746
1276
  */
747
1277
  export declare const DataflowRequestType: StructType<{
748
- readonly concurrency: OptionType<IntegerType>;
749
1278
  readonly force: BooleanType;
750
1279
  readonly filter: OptionType<StringType>;
751
1280
  }>;
@@ -826,11 +1355,15 @@ export declare const DataflowResultType: StructType<{
826
1355
  * Dataflow event types for API polling.
827
1356
  *
828
1357
  * - `start`: Task started executing
829
- * - `complete`: Task executed and succeeded
1358
+ * - `complete`: Task executed and succeeded, with the highest peak memory its
1359
+ * runners reached when they reported one
830
1360
  * - `cached`: Task result retrieved from cache (no execution)
831
1361
  * - `failed`: Task exited with non-zero code
832
1362
  * - `error`: Internal error during task execution
833
1363
  * - `input_unavailable`: Task couldn't run because inputs not available
1364
+ * - `requeued`: A unit of a split task was stopped — by the budget's guard, or
1365
+ * its cgroup's cap — and runs again once the memory it reserves fits: the
1366
+ * unit, why, the most it was measured using and what it reserves, in bytes
834
1367
  */
835
1368
  export declare const DataflowEventType: VariantType<{
836
1369
  readonly start: StructType<{
@@ -841,6 +1374,7 @@ export declare const DataflowEventType: VariantType<{
841
1374
  readonly task: StringType;
842
1375
  readonly timestamp: StringType;
843
1376
  readonly duration: FloatType;
1377
+ readonly peakBytes: OptionType<IntegerType>;
844
1378
  }>;
845
1379
  readonly cached: StructType<{
846
1380
  readonly task: StringType;
@@ -862,6 +1396,25 @@ export declare const DataflowEventType: VariantType<{
862
1396
  readonly timestamp: StringType;
863
1397
  readonly reason: StringType;
864
1398
  }>;
1399
+ readonly requeued: StructType<{
1400
+ readonly task: StringType;
1401
+ readonly timestamp: StringType;
1402
+ readonly unit: StructType<{
1403
+ readonly merge: OptionType<StructType<{
1404
+ readonly level: IntegerType;
1405
+ readonly levels: IntegerType;
1406
+ }>>;
1407
+ readonly index: IntegerType;
1408
+ readonly units: IntegerType;
1409
+ }>;
1410
+ readonly reason: VariantType<{
1411
+ readonly budget: NullType;
1412
+ readonly machine: NullType;
1413
+ readonly cap: NullType;
1414
+ }>;
1415
+ readonly peak: IntegerType;
1416
+ readonly reserves: IntegerType;
1417
+ }>;
865
1418
  }>;
866
1419
  /**
867
1420
  * Execution status for API polling responses.
@@ -890,6 +1443,62 @@ export declare const DataflowExecutionSummaryType: StructType<{
890
1443
  readonly skipped: IntegerType;
891
1444
  readonly duration: FloatType;
892
1445
  }>;
1446
+ /**
1447
+ * A server's budget of cores and memory, which every runner it spawns takes
1448
+ * from, and what its runners hold of it now.
1449
+ *
1450
+ * @property cores - Runner processes at once
1451
+ * @property memory - Bytes of memory the runners may hold between them
1452
+ * @property coresInUse - Runner processes holding the budget now
1453
+ * @property memoryInUse - Bytes the runners hold now, each at the larger of
1454
+ * its reservation and what it was last measured using
1455
+ */
1456
+ export declare const DataflowBudgetType: StructType<{
1457
+ readonly cores: IntegerType;
1458
+ readonly memory: IntegerType;
1459
+ readonly coresInUse: IntegerType;
1460
+ readonly memoryInUse: IntegerType;
1461
+ }>;
1462
+ /**
1463
+ * A task, or a unit of a split task, waiting for room in the server's budget.
1464
+ *
1465
+ * @property task - The task
1466
+ * @property unit - The unit, for a split task's; `none` for a task run as one
1467
+ * @property needs - The memory, in bytes, it waits to reserve; 0 when it
1468
+ * waits for a core alone
1469
+ * @property since - ISO timestamp when it began waiting
1470
+ */
1471
+ export declare const UnitWaitType: StructType<{
1472
+ readonly task: StringType;
1473
+ readonly unit: OptionType<StructType<{
1474
+ readonly merge: OptionType<StructType<{
1475
+ readonly level: IntegerType;
1476
+ readonly levels: IntegerType;
1477
+ }>>;
1478
+ readonly index: IntegerType;
1479
+ readonly units: IntegerType;
1480
+ }>>;
1481
+ readonly needs: IntegerType;
1482
+ readonly since: StringType;
1483
+ }>;
1484
+ /**
1485
+ * A split task's progress through the stage it is in.
1486
+ *
1487
+ * @property task - The task
1488
+ * @property merge - The merge level, from 1, and the levels the merges take;
1489
+ * `none` while its pieces run
1490
+ * @property done - The stage's units that have finished
1491
+ * @property units - The stage's units
1492
+ */
1493
+ export declare const SplitProgressType: StructType<{
1494
+ readonly task: StringType;
1495
+ readonly merge: OptionType<StructType<{
1496
+ readonly level: IntegerType;
1497
+ readonly levels: IntegerType;
1498
+ }>>;
1499
+ readonly done: IntegerType;
1500
+ readonly units: IntegerType;
1501
+ }>;
893
1502
  /**
894
1503
  * Dataflow execution state returned by API polling.
895
1504
  *
@@ -905,6 +1514,12 @@ export declare const DataflowExecutionSummaryType: StructType<{
905
1514
  * @property summary - Execution summary (available when complete)
906
1515
  * @property events - Task events (may be paginated via offset/limit)
907
1516
  * @property totalEvents - Total number of events (for pagination)
1517
+ * @property budget - The server's budget now, where it has one: a server whose
1518
+ * runners hold none, as a remote backend's, serves `none`
1519
+ * @property waiting - The tasks and units of the run waiting for room, while it
1520
+ * runs; nothing stores them
1521
+ * @property splits - Each split task's progress, while the run runs; nothing
1522
+ * stores it
908
1523
  */
909
1524
  export declare const ApiDataflowExecutionStateType: StructType<{
910
1525
  readonly status: VariantType<{
@@ -931,6 +1546,7 @@ export declare const ApiDataflowExecutionStateType: StructType<{
931
1546
  readonly task: StringType;
932
1547
  readonly timestamp: StringType;
933
1548
  readonly duration: FloatType;
1549
+ readonly peakBytes: OptionType<IntegerType>;
934
1550
  }>;
935
1551
  readonly cached: StructType<{
936
1552
  readonly task: StringType;
@@ -952,17 +1568,68 @@ export declare const ApiDataflowExecutionStateType: StructType<{
952
1568
  readonly timestamp: StringType;
953
1569
  readonly reason: StringType;
954
1570
  }>;
1571
+ readonly requeued: StructType<{
1572
+ readonly task: StringType;
1573
+ readonly timestamp: StringType;
1574
+ readonly unit: StructType<{
1575
+ readonly merge: OptionType<StructType<{
1576
+ readonly level: IntegerType;
1577
+ readonly levels: IntegerType;
1578
+ }>>;
1579
+ readonly index: IntegerType;
1580
+ readonly units: IntegerType;
1581
+ }>;
1582
+ readonly reason: VariantType<{
1583
+ readonly budget: NullType;
1584
+ readonly machine: NullType;
1585
+ readonly cap: NullType;
1586
+ }>;
1587
+ readonly peak: IntegerType;
1588
+ readonly reserves: IntegerType;
1589
+ }>;
955
1590
  }>>;
956
1591
  readonly totalEvents: IntegerType;
1592
+ readonly budget: OptionType<StructType<{
1593
+ readonly cores: IntegerType;
1594
+ readonly memory: IntegerType;
1595
+ readonly coresInUse: IntegerType;
1596
+ readonly memoryInUse: IntegerType;
1597
+ }>>;
1598
+ readonly waiting: ArrayType<StructType<{
1599
+ readonly task: StringType;
1600
+ readonly unit: OptionType<StructType<{
1601
+ readonly merge: OptionType<StructType<{
1602
+ readonly level: IntegerType;
1603
+ readonly levels: IntegerType;
1604
+ }>>;
1605
+ readonly index: IntegerType;
1606
+ readonly units: IntegerType;
1607
+ }>>;
1608
+ readonly needs: IntegerType;
1609
+ readonly since: StringType;
1610
+ }>>;
1611
+ readonly splits: ArrayType<StructType<{
1612
+ readonly task: StringType;
1613
+ readonly merge: OptionType<StructType<{
1614
+ readonly level: IntegerType;
1615
+ readonly levels: IntegerType;
1616
+ }>>;
1617
+ readonly done: IntegerType;
1618
+ readonly units: IntegerType;
1619
+ }>>;
957
1620
  }>;
958
1621
  /**
959
- * Execution status for history listing.
1622
+ * Execution status for history listing: `cancelled` when e3 stopped the
1623
+ * execution because its run was aborted, `interrupted` when the orchestrator
1624
+ * that owned it exited before it finished.
960
1625
  */
961
1626
  export declare const ExecutionHistoryStatusType: VariantType<{
962
1627
  readonly running: NullType;
963
1628
  readonly success: NullType;
964
1629
  readonly failed: NullType;
965
1630
  readonly error: NullType;
1631
+ readonly cancelled: NullType;
1632
+ readonly interrupted: NullType;
966
1633
  }>;
967
1634
  /**
968
1635
  * A single execution in task history.
@@ -974,6 +1641,8 @@ export declare const ExecutionHistoryStatusType: VariantType<{
974
1641
  * @property completedAt - ISO timestamp when execution finished (if done)
975
1642
  * @property duration - Execution duration in milliseconds (if done)
976
1643
  * @property exitCode - Process exit code (if failed)
1644
+ * @property peakBytes - The highest peak resident memory, in bytes, a runner
1645
+ * of the execution reached, when it succeeded or failed and one reported it
977
1646
  */
978
1647
  export declare const ExecutionListItemType: StructType<{
979
1648
  readonly inputsHash: StringType;
@@ -983,11 +1652,14 @@ export declare const ExecutionListItemType: StructType<{
983
1652
  readonly success: NullType;
984
1653
  readonly failed: NullType;
985
1654
  readonly error: NullType;
1655
+ readonly cancelled: NullType;
1656
+ readonly interrupted: NullType;
986
1657
  }>;
987
1658
  readonly startedAt: StringType;
988
1659
  readonly completedAt: OptionType<StringType>;
989
1660
  readonly duration: OptionType<IntegerType>;
990
1661
  readonly exitCode: OptionType<IntegerType>;
1662
+ readonly peakBytes: OptionType<IntegerType>;
991
1663
  }>;
992
1664
  /**
993
1665
  * Tree branch kind variant.
@@ -1001,7 +1673,9 @@ export declare const TreeKindType: VariantType<{
1001
1673
  * A list entry -- either a dataset leaf or a tree branch.
1002
1674
  *
1003
1675
  * Used by the `?list=true&status=true` endpoints to return both
1004
- * tree structure entries and dataset leaves in a single flat list.
1676
+ * tree structure entries and dataset leaves in a single flat list. A dataset's
1677
+ * `size` is what its value weighs in the store, as its status reports it: for
1678
+ * a collection, its segments and its manifest.
1005
1679
  */
1006
1680
  export declare const ListEntryType: VariantType<{
1007
1681
  readonly dataset: StructType<{
@@ -1065,7 +1739,8 @@ export declare const ListEntryType: VariantType<{
1065
1739
  * @property type - East type of the dataset
1066
1740
  * @property refType - Ref type: "unassigned", "null", or "value"
1067
1741
  * @property hash - Object hash (None if unassigned/null)
1068
- * @property size - Size in bytes (None if unassigned)
1742
+ * @property size - Bytes the value weighs in the store: for a collection, its
1743
+ * segments and its manifest (None if unassigned)
1069
1744
  */
1070
1745
  export declare const DatasetStatusDetailType: StructType<{
1071
1746
  readonly path: StringType;
@@ -1114,10 +1789,9 @@ export declare const DatasetStatusDetailType: StructType<{
1114
1789
  readonly refType: StringType;
1115
1790
  readonly hash: OptionType<StringType>;
1116
1791
  readonly size: OptionType<IntegerType>;
1117
- /** Segment and element counts of a stored collection, read from the blob's
1118
- * trailing index — so a re-pointed input is inspectable without decoding
1119
- * it. `none` for a non-collection or an unset dataset. Appended LAST, per
1120
- * the positional struct rule. */
1792
+ /** Segment and element counts of a stored collection, read from its
1793
+ * manifest — so a re-pointed input is inspectable without decoding it.
1794
+ * `none` for a non-collection or an unset dataset. */
1121
1795
  readonly segments: OptionType<IntegerType>;
1122
1796
  readonly rows: OptionType<IntegerType>;
1123
1797
  }>;
@@ -1344,6 +2018,10 @@ export declare const OneShotRequestType: StructType<{
1344
2018
  /**
1345
2019
  * A record mutation call. Positional args (after the implicit current state),
1346
2020
  * one beast2-encoded value per declared parameter.
2021
+ *
2022
+ * Of the limits, `timeoutMs` bounds each run of the mutation's program and
2023
+ * `maxLogBytes` the stderr a failure returns. `maxResultBytes` does not apply:
2024
+ * a mutation's output is stored as segments and never read whole.
1347
2025
  */
1348
2026
  export declare const MutationCallRequestType: StructType<{
1349
2027
  readonly args: ArrayType<BlobType>;
@@ -1359,10 +2037,11 @@ export declare const MutationCallRequestType: StructType<{
1359
2037
  *
1360
2038
  * - `committed`: the new commit + state hashes
1361
2039
  * - `invalid`: record/mutation lookup or arity error; nothing ran
1362
- * - `failed`: the reducer process exited non-zero (incl. a reducer `$.error`; see stderr)
1363
- * - `too_large`: the new state exceeded the result cap
1364
- * - `timed_out`: the reducer exceeded its time budget
1365
- * - `conflict`: the compare-and-swap lost the race `attempts` times
2040
+ * - `failed`: the mutation's program failed (incl. a body's `$.error`; see stderr)
2041
+ * - `timed_out`: the program exceeded its time budget
2042
+ * - `conflict`: the compare-and-swap lost the race `attempts` times, or the
2043
+ * write disagreed with the state it landed on — then `detail` names the key,
2044
+ * and resubmitting the same write cannot help
1366
2045
  */
1367
2046
  export declare const MutationResultType: StructType<{
1368
2047
  readonly outcome: VariantType<{
@@ -1377,24 +2056,20 @@ export declare const MutationResultType: StructType<{
1377
2056
  readonly exitCode: IntegerType;
1378
2057
  readonly stderr: StringType;
1379
2058
  }>;
1380
- readonly too_large: StructType<{
1381
- readonly bytes: IntegerType;
1382
- readonly limit: IntegerType;
1383
- readonly stderr: StringType;
1384
- }>;
1385
2059
  readonly timed_out: StructType<{
1386
2060
  readonly ms: IntegerType;
1387
2061
  readonly stderr: StringType;
1388
2062
  }>;
1389
2063
  readonly conflict: StructType<{
1390
2064
  readonly attempts: IntegerType;
2065
+ readonly detail: OptionType<StringType>;
1391
2066
  }>;
1392
2067
  }>;
1393
2068
  }>;
1394
2069
  /**
1395
2070
  * A record's callable surface, returned by `describe` so dynamic callers can
1396
- * encode mutation arguments. The mutation `argTypes` are the EXTRA parameters
1397
- * after the implicit current state.
2071
+ * encode mutation arguments and read through its indexes. The mutation
2072
+ * `argTypes` are the EXTRA parameters after the implicit current state.
1398
2073
  */
1399
2074
  export declare const RecordSignatureType: StructType<{
1400
2075
  readonly name: StringType;
@@ -1442,6 +2117,105 @@ export declare const RecordSignatureType: StructType<{
1442
2117
  readonly Vector: import("@elaraai/east").RecursiveTypeMarker;
1443
2118
  readonly Matrix: import("@elaraai/east").RecursiveTypeMarker;
1444
2119
  }>>>;
2120
+ /** The write form — `reduce`, `edit` or `patch` — which says what the
2121
+ * arguments MEAN: a `patch` mutation's one argument is a
2122
+ * `PatchType(State)`, not a value of the record's own type. */
2123
+ readonly form: StringType;
2124
+ }>>;
2125
+ /** The indexes the record declares. A page read through one is decoded by
2126
+ * `indexWindowType(K, keyType, valueType, V)` over the record's
2127
+ * `Dict<K, V>`, and a key search through one takes a `keyType` key. */
2128
+ readonly indexes: ArrayType<StructType<{
2129
+ readonly name: StringType;
2130
+ /** The index key's type. */
2131
+ readonly keyType: import("@elaraai/east").RecursiveType<VariantType<{
2132
+ readonly Never: NullType;
2133
+ readonly Null: NullType;
2134
+ readonly Boolean: NullType;
2135
+ readonly Integer: NullType;
2136
+ readonly Float: NullType;
2137
+ readonly String: NullType;
2138
+ readonly DateTime: NullType;
2139
+ readonly Blob: NullType;
2140
+ readonly Ref: import("@elaraai/east").RecursiveTypeMarker;
2141
+ readonly Array: import("@elaraai/east").RecursiveTypeMarker;
2142
+ readonly Set: import("@elaraai/east").RecursiveTypeMarker;
2143
+ readonly Dict: StructType<{
2144
+ readonly key: import("@elaraai/east").RecursiveTypeMarker;
2145
+ readonly value: import("@elaraai/east").RecursiveTypeMarker;
2146
+ }>;
2147
+ readonly Struct: ArrayType<StructType<{
2148
+ readonly name: StringType;
2149
+ readonly type: import("@elaraai/east").RecursiveTypeMarker;
2150
+ }>>;
2151
+ readonly Variant: ArrayType<StructType<{
2152
+ readonly name: StringType;
2153
+ readonly type: import("@elaraai/east").RecursiveTypeMarker;
2154
+ }>>;
2155
+ readonly Recursive: VariantType<{
2156
+ readonly ref: IntegerType;
2157
+ readonly wrapper: StructType<{
2158
+ readonly id: IntegerType;
2159
+ readonly inner: import("@elaraai/east").RecursiveTypeMarker;
2160
+ }>;
2161
+ }>;
2162
+ readonly Function: StructType<{
2163
+ readonly inputs: ArrayType<import("@elaraai/east").RecursiveTypeMarker>;
2164
+ readonly output: import("@elaraai/east").RecursiveTypeMarker;
2165
+ }>;
2166
+ readonly AsyncFunction: StructType<{
2167
+ readonly inputs: ArrayType<import("@elaraai/east").RecursiveTypeMarker>;
2168
+ readonly output: import("@elaraai/east").RecursiveTypeMarker;
2169
+ }>;
2170
+ readonly Vector: import("@elaraai/east").RecursiveTypeMarker;
2171
+ readonly Matrix: import("@elaraai/east").RecursiveTypeMarker;
2172
+ }>>;
2173
+ /** The covering projection's type: `Null` when the index projects
2174
+ * nothing, and a read joins the rows instead. */
2175
+ readonly valueType: import("@elaraai/east").RecursiveType<VariantType<{
2176
+ readonly Never: NullType;
2177
+ readonly Null: NullType;
2178
+ readonly Boolean: NullType;
2179
+ readonly Integer: NullType;
2180
+ readonly Float: NullType;
2181
+ readonly String: NullType;
2182
+ readonly DateTime: NullType;
2183
+ readonly Blob: NullType;
2184
+ readonly Ref: import("@elaraai/east").RecursiveTypeMarker;
2185
+ readonly Array: import("@elaraai/east").RecursiveTypeMarker;
2186
+ readonly Set: import("@elaraai/east").RecursiveTypeMarker;
2187
+ readonly Dict: StructType<{
2188
+ readonly key: import("@elaraai/east").RecursiveTypeMarker;
2189
+ readonly value: import("@elaraai/east").RecursiveTypeMarker;
2190
+ }>;
2191
+ readonly Struct: ArrayType<StructType<{
2192
+ readonly name: StringType;
2193
+ readonly type: import("@elaraai/east").RecursiveTypeMarker;
2194
+ }>>;
2195
+ readonly Variant: ArrayType<StructType<{
2196
+ readonly name: StringType;
2197
+ readonly type: import("@elaraai/east").RecursiveTypeMarker;
2198
+ }>>;
2199
+ readonly Recursive: VariantType<{
2200
+ readonly ref: IntegerType;
2201
+ readonly wrapper: StructType<{
2202
+ readonly id: IntegerType;
2203
+ readonly inner: import("@elaraai/east").RecursiveTypeMarker;
2204
+ }>;
2205
+ }>;
2206
+ readonly Function: StructType<{
2207
+ readonly inputs: ArrayType<import("@elaraai/east").RecursiveTypeMarker>;
2208
+ readonly output: import("@elaraai/east").RecursiveTypeMarker;
2209
+ }>;
2210
+ readonly AsyncFunction: StructType<{
2211
+ readonly inputs: ArrayType<import("@elaraai/east").RecursiveTypeMarker>;
2212
+ readonly output: import("@elaraai/east").RecursiveTypeMarker;
2213
+ }>;
2214
+ readonly Vector: import("@elaraai/east").RecursiveTypeMarker;
2215
+ readonly Matrix: import("@elaraai/east").RecursiveTypeMarker;
2216
+ }>>;
2217
+ /** Whether a row may hold several index keys. */
2218
+ readonly multi: BooleanType;
1445
2219
  }>>;
1446
2220
  }>;
1447
2221
  /** One commit in a record's history (its hash plus the commit fields). */
@@ -1452,6 +2226,9 @@ export declare const RecordCommitInfoType: StructType<{
1452
2226
  readonly mutation: StringType;
1453
2227
  readonly actor: StringType;
1454
2228
  readonly at: DateTimeType;
2229
+ /** The delta this commit applied, when it wrote one — so history shows WHAT
2230
+ * changed without diffing two states. */
2231
+ readonly delta: OptionType<StringType>;
1455
2232
  }>;
1456
2233
  /** A page of a record's commit history, newest first. */
1457
2234
  export declare const RecordHistoryResultType: StructType<{
@@ -1462,6 +2239,9 @@ export declare const RecordHistoryResultType: StructType<{
1462
2239
  readonly mutation: StringType;
1463
2240
  readonly actor: StringType;
1464
2241
  readonly at: DateTimeType;
2242
+ /** The delta this commit applied, when it wrote one — so history shows WHAT
2243
+ * changed without diffing two states. */
2244
+ readonly delta: OptionType<StringType>;
1465
2245
  }>>;
1466
2246
  }>;
1467
2247
  export type Error = ValueTypeOf<typeof ErrorType>;
@@ -1477,6 +2257,16 @@ export type PackageDetails = ValueTypeOf<typeof PackageDetailsType>;
1477
2257
  export type WorkspaceInfo = ValueTypeOf<typeof WorkspaceInfoType>;
1478
2258
  export type WorkspaceCreateRequest = ValueTypeOf<typeof WorkspaceCreateRequestType>;
1479
2259
  export type WorkspaceDeployRequest = ValueTypeOf<typeof WorkspaceDeployRequestType>;
2260
+ /** A {@link SchemaPolicyType} by its name, as a deploy's options take it. */
2261
+ export type SchemaPolicy = ValueTypeOf<typeof SchemaPolicyType>['type'];
2262
+ export type RecordPlan = ValueTypeOf<typeof RecordPlanType>;
2263
+ export type RecordIndexPlan = ValueTypeOf<typeof RecordIndexPlanType>;
2264
+ export type RecordDeployStep = ValueTypeOf<typeof RecordDeployStepType>;
2265
+ export type RecordDeployState = ValueTypeOf<typeof RecordDeployStateType>;
2266
+ export type DeployProgress = ValueTypeOf<typeof DeployProgressType>;
2267
+ export type WorkspaceDeployResult = ValueTypeOf<typeof WorkspaceDeployResultType>;
2268
+ export type WorkspaceDeployProgress = ValueTypeOf<typeof WorkspaceDeployProgressType>;
2269
+ export type WorkspaceDeployStatus = ValueTypeOf<typeof WorkspaceDeployStatusType>;
1480
2270
  export type DatasetStatus = ValueTypeOf<typeof DatasetStatusType>;
1481
2271
  export type TaskStatus = ValueTypeOf<typeof TaskStatusType>;
1482
2272
  export type DatasetStatusInfo = ValueTypeOf<typeof DatasetStatusInfoType>;
@@ -1492,6 +2282,9 @@ export type DataflowResult = ValueTypeOf<typeof DataflowResultType>;
1492
2282
  export type DataflowEvent = ValueTypeOf<typeof DataflowEventType>;
1493
2283
  export type ApiExecutionStatus = ValueTypeOf<typeof ApiExecutionStatusType>;
1494
2284
  export type DataflowExecutionSummary = ValueTypeOf<typeof DataflowExecutionSummaryType>;
2285
+ export type DataflowBudget = ValueTypeOf<typeof DataflowBudgetType>;
2286
+ export type UnitWait = ValueTypeOf<typeof UnitWaitType>;
2287
+ export type SplitProgress = ValueTypeOf<typeof SplitProgressType>;
1495
2288
  export type ApiDataflowExecutionState = ValueTypeOf<typeof ApiDataflowExecutionStateType>;
1496
2289
  export type ExecutionHistoryStatus = ValueTypeOf<typeof ExecutionHistoryStatusType>;
1497
2290
  export type ExecutionListItem = ValueTypeOf<typeof ExecutionListItemType>;