@ixo/topic-protocol 0.6.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/README.md +4 -2
  2. package/dist/schemas/approval-decision.schema.json +30 -0
  3. package/dist/schemas/claim-record.schema.json +30 -0
  4. package/dist/schemas/delivery-decision.schema.json +28 -0
  5. package/dist/schemas/delivery-packet.schema.json +58 -0
  6. package/dist/schemas/evaluation-assertion.schema.json +37 -0
  7. package/dist/schemas/external-work-binding.schema.json +83 -0
  8. package/dist/schemas/external-work-state-map.schema.json +29 -0
  9. package/dist/schemas/settlement-receipt.schema.json +53 -0
  10. package/dist/schemas/topic-operation.schema.json +2 -2
  11. package/dist/schemas/topic-state.schema.json +14 -0
  12. package/dist/schemas/work-item-snapshot.schema.json +73 -0
  13. package/dist/src/contracts/schemas.d.ts +1355 -19
  14. package/dist/src/contracts/schemas.js +18 -0
  15. package/dist/src/contracts/schemas.js.map +1 -1
  16. package/dist/src/errors.d.ts +1 -1
  17. package/dist/src/errors.js.map +1 -1
  18. package/dist/src/index.d.ts +2 -0
  19. package/dist/src/index.js +2 -0
  20. package/dist/src/index.js.map +1 -1
  21. package/dist/src/projector/payload.d.ts +29 -0
  22. package/dist/src/projector/payload.js +83 -1
  23. package/dist/src/projector/payload.js.map +1 -1
  24. package/dist/src/projector/state.js +6 -0
  25. package/dist/src/projector/state.js.map +1 -1
  26. package/dist/src/projector/types.d.ts +3 -1
  27. package/dist/src/projector/types.js.map +1 -1
  28. package/dist/src/work-bridge/mapping.d.ts +2 -0
  29. package/dist/src/work-bridge/mapping.js +17 -0
  30. package/dist/src/work-bridge/mapping.js.map +1 -0
  31. package/dist/src/work-bridge/project.d.ts +7 -0
  32. package/dist/src/work-bridge/project.js +262 -0
  33. package/dist/src/work-bridge/project.js.map +1 -0
  34. package/dist/src/work-bridge/types.d.ts +232 -0
  35. package/dist/src/work-bridge/types.js +26 -0
  36. package/dist/src/work-bridge/types.js.map +1 -0
  37. package/package.json +1 -1
@@ -84,6 +84,631 @@ export declare const SCHEMA_REGISTRY: Readonly<{
84
84
  };
85
85
  additionalProperties: boolean;
86
86
  };
87
+ "approval-decision": {
88
+ $schema: string;
89
+ $id: string;
90
+ title: string;
91
+ type: string;
92
+ required: string[];
93
+ properties: {
94
+ version: {
95
+ const: number;
96
+ };
97
+ approvalId: {
98
+ $ref: string;
99
+ };
100
+ topicId: {
101
+ $ref: string;
102
+ };
103
+ deliveryPacketId: {
104
+ $ref: string;
105
+ };
106
+ deliveryPacketDigest: {
107
+ $ref: string;
108
+ };
109
+ evaluationIds: {
110
+ type: string;
111
+ minItems: number;
112
+ uniqueItems: boolean;
113
+ items: {
114
+ $ref: string;
115
+ };
116
+ };
117
+ decision: {
118
+ enum: string[];
119
+ };
120
+ reasons: {
121
+ type: string;
122
+ minItems: number;
123
+ items: {
124
+ type: string;
125
+ minLength: number;
126
+ maxLength: number;
127
+ };
128
+ };
129
+ policy: {
130
+ type: string;
131
+ required: string[];
132
+ properties: {
133
+ ref: {
134
+ type: string;
135
+ format: string;
136
+ };
137
+ version: {
138
+ type: string;
139
+ minLength: number;
140
+ };
141
+ digest: {
142
+ $ref: string;
143
+ };
144
+ };
145
+ additionalProperties: boolean;
146
+ };
147
+ decidedBy: {
148
+ type: string;
149
+ minItems: number;
150
+ uniqueItems: boolean;
151
+ items: {
152
+ type: string;
153
+ pattern: string;
154
+ };
155
+ };
156
+ decidedAt: {
157
+ type: string;
158
+ format: string;
159
+ };
160
+ capability: {
161
+ type: string;
162
+ minLength: number;
163
+ };
164
+ digest: {
165
+ $ref: string;
166
+ };
167
+ extensions: {
168
+ type: string;
169
+ };
170
+ };
171
+ $defs: {
172
+ uuidV7: {
173
+ type: string;
174
+ pattern: string;
175
+ };
176
+ topicId: {
177
+ type: string;
178
+ pattern: string;
179
+ };
180
+ digest: {
181
+ type: string;
182
+ pattern: string;
183
+ };
184
+ };
185
+ additionalProperties: boolean;
186
+ allOf: {
187
+ if: {
188
+ properties: {
189
+ decision: {
190
+ enum: string[];
191
+ };
192
+ };
193
+ required: string[];
194
+ };
195
+ then: {
196
+ properties: {
197
+ reasons: {
198
+ type: string;
199
+ minItems: number;
200
+ };
201
+ };
202
+ required: string[];
203
+ };
204
+ }[];
205
+ };
206
+ "claim-record": {
207
+ $schema: string;
208
+ $id: string;
209
+ title: string;
210
+ type: string;
211
+ required: string[];
212
+ properties: {
213
+ version: {
214
+ const: number;
215
+ };
216
+ claimId: {
217
+ type: string;
218
+ minLength: number;
219
+ maxLength: number;
220
+ };
221
+ topicId: {
222
+ $ref: string;
223
+ };
224
+ deliveryPacketId: {
225
+ $ref: string;
226
+ };
227
+ deliveryPacketDigest: {
228
+ $ref: string;
229
+ };
230
+ evaluationIds: {
231
+ type: string;
232
+ minItems: number;
233
+ uniqueItems: boolean;
234
+ items: {
235
+ $ref: string;
236
+ };
237
+ };
238
+ approvalId: {
239
+ $ref: string;
240
+ };
241
+ claimantDid: {
242
+ type: string;
243
+ pattern: string;
244
+ };
245
+ requested: {
246
+ type: string;
247
+ required: string[];
248
+ properties: {
249
+ amount: {
250
+ type: string;
251
+ pattern: string;
252
+ };
253
+ asset: {
254
+ type: string;
255
+ minLength: number;
256
+ maxLength: number;
257
+ };
258
+ recipient: {
259
+ type: string;
260
+ minLength: number;
261
+ maxLength: number;
262
+ };
263
+ };
264
+ additionalProperties: boolean;
265
+ };
266
+ status: {
267
+ enum: string[];
268
+ };
269
+ replayKey: {
270
+ type: string;
271
+ minLength: number;
272
+ maxLength: number;
273
+ };
274
+ source: {
275
+ type: string;
276
+ required: string[];
277
+ properties: {
278
+ provider: {
279
+ type: string;
280
+ pattern: string;
281
+ };
282
+ ref: {
283
+ type: string;
284
+ minLength: number;
285
+ };
286
+ };
287
+ additionalProperties: boolean;
288
+ };
289
+ recordedAt: {
290
+ type: string;
291
+ format: string;
292
+ };
293
+ digest: {
294
+ $ref: string;
295
+ };
296
+ extensions: {
297
+ type: string;
298
+ };
299
+ };
300
+ $defs: {
301
+ uuidV7: {
302
+ type: string;
303
+ pattern: string;
304
+ };
305
+ topicId: {
306
+ type: string;
307
+ pattern: string;
308
+ };
309
+ digest: {
310
+ type: string;
311
+ pattern: string;
312
+ };
313
+ };
314
+ additionalProperties: boolean;
315
+ };
316
+ "delivery-decision": {
317
+ $schema: string;
318
+ $id: string;
319
+ title: string;
320
+ type: string;
321
+ required: string[];
322
+ properties: {
323
+ version: {
324
+ const: number;
325
+ };
326
+ decisionId: {
327
+ $ref: string;
328
+ };
329
+ topicId: {
330
+ $ref: string;
331
+ };
332
+ deliveryPacketId: {
333
+ $ref: string;
334
+ };
335
+ deliveryPacketDigest: {
336
+ $ref: string;
337
+ };
338
+ decision: {
339
+ enum: string[];
340
+ };
341
+ reasons: {
342
+ type: string;
343
+ minItems: number;
344
+ items: {
345
+ type: string;
346
+ minLength: number;
347
+ maxLength: number;
348
+ };
349
+ };
350
+ decidedBy: {
351
+ type: string;
352
+ pattern: string;
353
+ };
354
+ decidedAt: {
355
+ type: string;
356
+ format: string;
357
+ };
358
+ capability: {
359
+ type: string;
360
+ minLength: number;
361
+ };
362
+ digest: {
363
+ $ref: string;
364
+ };
365
+ extensions: {
366
+ type: string;
367
+ };
368
+ };
369
+ $defs: {
370
+ uuidV7: {
371
+ type: string;
372
+ pattern: string;
373
+ };
374
+ topicId: {
375
+ type: string;
376
+ pattern: string;
377
+ };
378
+ digest: {
379
+ type: string;
380
+ pattern: string;
381
+ };
382
+ };
383
+ additionalProperties: boolean;
384
+ allOf: {
385
+ if: {
386
+ properties: {
387
+ decision: {
388
+ enum: string[];
389
+ };
390
+ };
391
+ required: string[];
392
+ };
393
+ then: {
394
+ properties: {
395
+ reasons: {
396
+ type: string;
397
+ minItems: number;
398
+ };
399
+ };
400
+ required: string[];
401
+ };
402
+ }[];
403
+ };
404
+ "delivery-packet": {
405
+ $schema: string;
406
+ $id: string;
407
+ title: string;
408
+ type: string;
409
+ required: string[];
410
+ properties: {
411
+ version: {
412
+ const: number;
413
+ };
414
+ deliveryPacketId: {
415
+ $ref: string;
416
+ };
417
+ sequence: {
418
+ type: string;
419
+ minimum: number;
420
+ };
421
+ topicId: {
422
+ $ref: string;
423
+ };
424
+ bindingId: {
425
+ $ref: string;
426
+ };
427
+ supersedes: {
428
+ $ref: string;
429
+ };
430
+ contract: {
431
+ type: string;
432
+ required: string[];
433
+ properties: {
434
+ revision: {
435
+ type: string;
436
+ minLength: number;
437
+ };
438
+ digest: {
439
+ $ref: string;
440
+ };
441
+ status: {
442
+ const: string;
443
+ };
444
+ };
445
+ additionalProperties: boolean;
446
+ };
447
+ workItemSnapshot: {
448
+ type: string;
449
+ required: string[];
450
+ properties: {
451
+ snapshotId: {
452
+ $ref: string;
453
+ };
454
+ ref: {
455
+ type: string;
456
+ format: string;
457
+ };
458
+ digest: {
459
+ $ref: string;
460
+ };
461
+ };
462
+ additionalProperties: boolean;
463
+ };
464
+ deliverables: {
465
+ type: string;
466
+ minItems: number;
467
+ items: {
468
+ $ref: string;
469
+ };
470
+ };
471
+ evidence: {
472
+ type: string;
473
+ items: {
474
+ $ref: string;
475
+ };
476
+ };
477
+ traces: {
478
+ type: string;
479
+ items: {
480
+ $ref: string;
481
+ };
482
+ };
483
+ paymentTerms: {
484
+ type: string;
485
+ required: string[];
486
+ properties: {
487
+ ref: {
488
+ type: string;
489
+ format: string;
490
+ };
491
+ digest: {
492
+ $ref: string;
493
+ };
494
+ };
495
+ additionalProperties: boolean;
496
+ };
497
+ submittedBy: {
498
+ type: string;
499
+ pattern: string;
500
+ };
501
+ submittedAt: {
502
+ type: string;
503
+ format: string;
504
+ };
505
+ capability: {
506
+ type: string;
507
+ minLength: number;
508
+ };
509
+ status: {
510
+ const: string;
511
+ };
512
+ digest: {
513
+ $ref: string;
514
+ };
515
+ extensions: {
516
+ type: string;
517
+ };
518
+ };
519
+ $defs: {
520
+ uuidV7: {
521
+ type: string;
522
+ pattern: string;
523
+ };
524
+ topicId: {
525
+ type: string;
526
+ pattern: string;
527
+ };
528
+ digest: {
529
+ type: string;
530
+ pattern: string;
531
+ };
532
+ artifact: {
533
+ type: string;
534
+ required: string[];
535
+ properties: {
536
+ type: {
537
+ type: string;
538
+ minLength: number;
539
+ };
540
+ uri: {
541
+ type: string;
542
+ format: string;
543
+ };
544
+ digest: {
545
+ $ref: string;
546
+ };
547
+ label: {
548
+ type: string;
549
+ minLength: number;
550
+ };
551
+ mediaType: {
552
+ type: string;
553
+ minLength: number;
554
+ };
555
+ };
556
+ additionalProperties: boolean;
557
+ };
558
+ evidence: {
559
+ type: string;
560
+ required: string[];
561
+ properties: {
562
+ type: {
563
+ type: string;
564
+ minLength: number;
565
+ };
566
+ uri: {
567
+ type: string;
568
+ format: string;
569
+ };
570
+ digest: {
571
+ $ref: string;
572
+ };
573
+ provenanceClass: {
574
+ enum: string[];
575
+ };
576
+ label: {
577
+ type: string;
578
+ minLength: number;
579
+ };
580
+ };
581
+ additionalProperties: boolean;
582
+ };
583
+ };
584
+ additionalProperties: boolean;
585
+ };
586
+ "evaluation-assertion": {
587
+ $schema: string;
588
+ $id: string;
589
+ title: string;
590
+ type: string;
591
+ required: string[];
592
+ properties: {
593
+ version: {
594
+ const: number;
595
+ };
596
+ evaluationId: {
597
+ $ref: string;
598
+ };
599
+ topicId: {
600
+ $ref: string;
601
+ };
602
+ deliveryPacketId: {
603
+ $ref: string;
604
+ };
605
+ deliveryPacketDigest: {
606
+ $ref: string;
607
+ };
608
+ rubric: {
609
+ type: string;
610
+ required: string[];
611
+ properties: {
612
+ id: {
613
+ type: string;
614
+ minLength: number;
615
+ };
616
+ version: {
617
+ type: string;
618
+ minLength: number;
619
+ };
620
+ ref: {
621
+ type: string;
622
+ format: string;
623
+ };
624
+ digest: {
625
+ $ref: string;
626
+ };
627
+ governanceStatus: {
628
+ const: string;
629
+ };
630
+ };
631
+ additionalProperties: boolean;
632
+ };
633
+ evidenceDigests: {
634
+ type: string;
635
+ uniqueItems: boolean;
636
+ items: {
637
+ $ref: string;
638
+ };
639
+ };
640
+ traceDigests: {
641
+ type: string;
642
+ uniqueItems: boolean;
643
+ items: {
644
+ $ref: string;
645
+ };
646
+ };
647
+ outcome: {
648
+ enum: string[];
649
+ };
650
+ confidence: {
651
+ type: string;
652
+ minimum: number;
653
+ maximum: number;
654
+ };
655
+ result: {
656
+ type: string;
657
+ };
658
+ evaluatorDid: {
659
+ type: string;
660
+ pattern: string;
661
+ };
662
+ evaluatedAt: {
663
+ type: string;
664
+ format: string;
665
+ };
666
+ capability: {
667
+ type: string;
668
+ minLength: number;
669
+ };
670
+ signature: {
671
+ type: string;
672
+ required: string[];
673
+ properties: {
674
+ type: {
675
+ type: string;
676
+ minLength: number;
677
+ };
678
+ verificationMethod: {
679
+ type: string;
680
+ format: string;
681
+ };
682
+ value: {
683
+ type: string;
684
+ minLength: number;
685
+ };
686
+ };
687
+ additionalProperties: boolean;
688
+ };
689
+ digest: {
690
+ $ref: string;
691
+ };
692
+ extensions: {
693
+ type: string;
694
+ };
695
+ };
696
+ $defs: {
697
+ uuidV7: {
698
+ type: string;
699
+ pattern: string;
700
+ };
701
+ topicId: {
702
+ type: string;
703
+ pattern: string;
704
+ };
705
+ digest: {
706
+ type: string;
707
+ pattern: string;
708
+ };
709
+ };
710
+ additionalProperties: boolean;
711
+ };
87
712
  "external-session-binding": {
88
713
  $schema: string;
89
714
  $id: string;
@@ -91,39 +716,274 @@ export declare const SCHEMA_REGISTRY: Readonly<{
91
716
  type: string;
92
717
  required: string[];
93
718
  properties: {
94
- bindingId: {
95
- type: string;
96
- minLength: number;
719
+ bindingId: {
720
+ type: string;
721
+ minLength: number;
722
+ };
723
+ topicId: {
724
+ type: string;
725
+ pattern: string;
726
+ };
727
+ provider: {
728
+ type: string;
729
+ minLength: number;
730
+ };
731
+ sessionReference: {
732
+ type: string;
733
+ minLength: number;
734
+ };
735
+ actor: {
736
+ type: string;
737
+ minLength: number;
738
+ };
739
+ createdAt: {
740
+ type: string;
741
+ format: string;
742
+ };
743
+ policy: {
744
+ type: string;
745
+ required: string[];
746
+ properties: {
747
+ privateByDefault: {
748
+ type: string;
749
+ };
750
+ };
751
+ additionalProperties: boolean;
752
+ };
753
+ };
754
+ additionalProperties: boolean;
755
+ };
756
+ "external-work-binding": {
757
+ $schema: string;
758
+ $id: string;
759
+ title: string;
760
+ type: string;
761
+ required: string[];
762
+ properties: {
763
+ version: {
764
+ const: number;
765
+ };
766
+ bindingId: {
767
+ $ref: string;
768
+ };
769
+ topicId: {
770
+ $ref: string;
771
+ };
772
+ role: {
773
+ enum: string[];
774
+ };
775
+ createdFrom: {
776
+ enum: string[];
777
+ };
778
+ external: {
779
+ type: string;
780
+ required: string[];
781
+ properties: {
782
+ provider: {
783
+ type: string;
784
+ pattern: string;
785
+ };
786
+ resourceType: {
787
+ type: string;
788
+ minLength: number;
789
+ maxLength: number;
790
+ };
791
+ organizationId: {
792
+ type: string;
793
+ minLength: number;
794
+ maxLength: number;
795
+ };
796
+ teamId: {
797
+ type: string;
798
+ minLength: number;
799
+ maxLength: number;
800
+ };
801
+ resourceId: {
802
+ type: string;
803
+ minLength: number;
804
+ maxLength: number;
805
+ };
806
+ identifier: {
807
+ type: string;
808
+ minLength: number;
809
+ maxLength: number;
810
+ };
811
+ url: {
812
+ type: string;
813
+ format: string;
814
+ };
815
+ };
816
+ additionalProperties: boolean;
817
+ };
818
+ syncPolicy: {
819
+ type: string;
820
+ required: string[];
821
+ properties: {
822
+ mode: {
823
+ enum: string[];
824
+ };
825
+ direction: {
826
+ enum: string[];
827
+ };
828
+ comments: {
829
+ enum: string[];
830
+ };
831
+ files: {
832
+ enum: string[];
833
+ };
834
+ delete: {
835
+ const: string;
836
+ };
837
+ fieldPolicy: {
838
+ type: string;
839
+ required: string[];
840
+ properties: {
841
+ id: {
842
+ type: string;
843
+ format: string;
844
+ };
845
+ version: {
846
+ type: string;
847
+ minimum: number;
848
+ };
849
+ digest: {
850
+ $ref: string;
851
+ };
852
+ };
853
+ additionalProperties: boolean;
854
+ };
855
+ };
856
+ additionalProperties: boolean;
857
+ };
858
+ workState: {
859
+ enum: string[];
860
+ };
861
+ checkpoint: {
862
+ type: string;
863
+ required: string[];
864
+ properties: {
865
+ topicRevision: {
866
+ type: string;
867
+ minLength: number;
868
+ };
869
+ effectiveContractDigest: {
870
+ $ref: string;
871
+ };
872
+ externalUpdatedAt: {
873
+ type: string;
874
+ format: string;
875
+ };
876
+ externalSnapshotDigest: {
877
+ $ref: string;
878
+ };
879
+ lastEventId: {
880
+ type: string;
881
+ minLength: number;
882
+ maxLength: number;
883
+ };
884
+ syncedAt: {
885
+ type: string;
886
+ format: string;
887
+ };
888
+ };
889
+ additionalProperties: boolean;
890
+ };
891
+ identity: {
892
+ type: string;
893
+ required: string[];
894
+ properties: {
895
+ bridgeDid: {
896
+ type: string;
897
+ pattern: string;
898
+ };
899
+ externalAppActorId: {
900
+ type: string;
901
+ minLength: number;
902
+ maxLength: number;
903
+ };
904
+ };
905
+ additionalProperties: boolean;
906
+ };
907
+ health: {
908
+ enum: string[];
909
+ };
910
+ createdBy: {
911
+ type: string;
912
+ minLength: number;
913
+ };
914
+ createdAt: {
915
+ type: string;
916
+ format: string;
917
+ };
918
+ extensions: {
919
+ type: string;
920
+ };
921
+ };
922
+ $defs: {
923
+ uuidV7: {
924
+ type: string;
925
+ pattern: string;
926
+ };
927
+ topicId: {
928
+ type: string;
929
+ pattern: string;
930
+ };
931
+ digest: {
932
+ type: string;
933
+ pattern: string;
934
+ };
935
+ };
936
+ additionalProperties: boolean;
937
+ };
938
+ "external-work-state-map": {
939
+ $schema: string;
940
+ $id: string;
941
+ title: string;
942
+ type: string;
943
+ required: string[];
944
+ properties: {
945
+ version: {
946
+ const: number;
97
947
  };
98
- topicId: {
948
+ profileId: {
99
949
  type: string;
100
- pattern: string;
950
+ format: string;
101
951
  };
102
952
  provider: {
103
953
  type: string;
104
- minLength: number;
954
+ pattern: string;
105
955
  };
106
- sessionReference: {
956
+ organizationId: {
107
957
  type: string;
108
958
  minLength: number;
959
+ maxLength: number;
109
960
  };
110
- actor: {
961
+ teamId: {
111
962
  type: string;
112
963
  minLength: number;
964
+ maxLength: number;
113
965
  };
114
- createdAt: {
115
- type: string;
116
- format: string;
117
- };
118
- policy: {
966
+ mappings: {
119
967
  type: string;
120
- required: string[];
121
- properties: {
122
- privateByDefault: {
123
- type: string;
968
+ minItems: number;
969
+ items: {
970
+ type: string;
971
+ required: string[];
972
+ properties: {
973
+ workflowStateId: {
974
+ type: string;
975
+ minLength: number;
976
+ maxLength: number;
977
+ };
978
+ category: {
979
+ enum: string[];
980
+ };
981
+ workState: {
982
+ enum: string[];
983
+ };
124
984
  };
985
+ additionalProperties: boolean;
125
986
  };
126
- additionalProperties: boolean;
127
987
  };
128
988
  };
129
989
  additionalProperties: boolean;
@@ -250,6 +1110,176 @@ export declare const SCHEMA_REGISTRY: Readonly<{
250
1110
  };
251
1111
  additionalProperties: boolean;
252
1112
  };
1113
+ "settlement-receipt": {
1114
+ $schema: string;
1115
+ $id: string;
1116
+ title: string;
1117
+ type: string;
1118
+ required: string[];
1119
+ properties: {
1120
+ version: {
1121
+ const: number;
1122
+ };
1123
+ settlementId: {
1124
+ $ref: string;
1125
+ };
1126
+ topicId: {
1127
+ $ref: string;
1128
+ };
1129
+ claimId: {
1130
+ type: string;
1131
+ minLength: number;
1132
+ maxLength: number;
1133
+ };
1134
+ deliveryPacketId: {
1135
+ $ref: string;
1136
+ };
1137
+ deliveryPacketDigest: {
1138
+ $ref: string;
1139
+ };
1140
+ evaluationIds: {
1141
+ type: string;
1142
+ minItems: number;
1143
+ uniqueItems: boolean;
1144
+ items: {
1145
+ $ref: string;
1146
+ };
1147
+ };
1148
+ approvalId: {
1149
+ $ref: string;
1150
+ };
1151
+ policy: {
1152
+ type: string;
1153
+ required: string[];
1154
+ properties: {
1155
+ ref: {
1156
+ type: string;
1157
+ format: string;
1158
+ };
1159
+ digest: {
1160
+ $ref: string;
1161
+ };
1162
+ };
1163
+ additionalProperties: boolean;
1164
+ };
1165
+ idempotencyKey: {
1166
+ type: string;
1167
+ minLength: number;
1168
+ maxLength: number;
1169
+ };
1170
+ amount: {
1171
+ type: string;
1172
+ pattern: string;
1173
+ };
1174
+ asset: {
1175
+ type: string;
1176
+ minLength: number;
1177
+ maxLength: number;
1178
+ };
1179
+ recipient: {
1180
+ type: string;
1181
+ minLength: number;
1182
+ maxLength: number;
1183
+ };
1184
+ paymentRail: {
1185
+ type: string;
1186
+ minLength: number;
1187
+ maxLength: number;
1188
+ };
1189
+ transactionReference: {
1190
+ type: string;
1191
+ minLength: number;
1192
+ maxLength: number;
1193
+ };
1194
+ state: {
1195
+ enum: string[];
1196
+ };
1197
+ finality: {
1198
+ type: string;
1199
+ required: string[];
1200
+ properties: {
1201
+ state: {
1202
+ enum: string[];
1203
+ };
1204
+ confirmations: {
1205
+ type: string;
1206
+ minimum: number;
1207
+ };
1208
+ confirmedAt: {
1209
+ type: string;
1210
+ format: string;
1211
+ };
1212
+ };
1213
+ additionalProperties: boolean;
1214
+ };
1215
+ signerDid: {
1216
+ type: string;
1217
+ pattern: string;
1218
+ };
1219
+ recordedAt: {
1220
+ type: string;
1221
+ format: string;
1222
+ };
1223
+ capability: {
1224
+ type: string;
1225
+ minLength: number;
1226
+ };
1227
+ digest: {
1228
+ $ref: string;
1229
+ };
1230
+ extensions: {
1231
+ type: string;
1232
+ };
1233
+ };
1234
+ $defs: {
1235
+ uuidV7: {
1236
+ type: string;
1237
+ pattern: string;
1238
+ };
1239
+ topicId: {
1240
+ type: string;
1241
+ pattern: string;
1242
+ };
1243
+ digest: {
1244
+ type: string;
1245
+ pattern: string;
1246
+ };
1247
+ };
1248
+ additionalProperties: boolean;
1249
+ allOf: {
1250
+ if: {
1251
+ properties: {
1252
+ state: {
1253
+ const: string;
1254
+ };
1255
+ };
1256
+ required: string[];
1257
+ };
1258
+ then: {
1259
+ required: string[];
1260
+ properties: {
1261
+ transactionReference: {
1262
+ type: string;
1263
+ minLength: number;
1264
+ maxLength: number;
1265
+ };
1266
+ finality: {
1267
+ type: string;
1268
+ properties: {
1269
+ state: {
1270
+ const: string;
1271
+ };
1272
+ confirmedAt: {
1273
+ type: string;
1274
+ format: string;
1275
+ };
1276
+ };
1277
+ required: string[];
1278
+ };
1279
+ };
1280
+ };
1281
+ }[];
1282
+ };
253
1283
  "topic-capsule": {
254
1284
  $schema: string;
255
1285
  $id: string;
@@ -1932,6 +2962,73 @@ export declare const SCHEMA_REGISTRY: Readonly<{
1932
2962
  })[];
1933
2963
  };
1934
2964
  };
2965
+ workBridge: {
2966
+ type: string;
2967
+ required: string[];
2968
+ properties: {
2969
+ bindings: {
2970
+ type: string;
2971
+ items: {
2972
+ type: string;
2973
+ required: string[];
2974
+ properties: {
2975
+ bindingId: {
2976
+ type: string;
2977
+ };
2978
+ topicId: {
2979
+ type: string;
2980
+ };
2981
+ workState: {
2982
+ type: string;
2983
+ };
2984
+ health: {
2985
+ type: string;
2986
+ };
2987
+ lastOperationId: {
2988
+ type: string;
2989
+ };
2990
+ };
2991
+ };
2992
+ };
2993
+ deliveryPackets: {
2994
+ type: string;
2995
+ items: {
2996
+ $ref: string;
2997
+ };
2998
+ };
2999
+ deliveryDecisions: {
3000
+ type: string;
3001
+ items: {
3002
+ $ref: string;
3003
+ };
3004
+ };
3005
+ evaluations: {
3006
+ type: string;
3007
+ items: {
3008
+ $ref: string;
3009
+ };
3010
+ };
3011
+ approvals: {
3012
+ type: string;
3013
+ items: {
3014
+ $ref: string;
3015
+ };
3016
+ };
3017
+ claims: {
3018
+ type: string;
3019
+ items: {
3020
+ $ref: string;
3021
+ };
3022
+ };
3023
+ settlements: {
3024
+ type: string;
3025
+ items: {
3026
+ $ref: string;
3027
+ };
3028
+ };
3029
+ };
3030
+ additionalProperties: boolean;
3031
+ };
1935
3032
  basedOnEvents: {
1936
3033
  type: string;
1937
3034
  items: {
@@ -2068,6 +3165,245 @@ export declare const SCHEMA_REGISTRY: Readonly<{
2068
3165
  };
2069
3166
  additionalProperties: boolean;
2070
3167
  };
3168
+ "work-item-snapshot": {
3169
+ $schema: string;
3170
+ $id: string;
3171
+ title: string;
3172
+ type: string;
3173
+ required: string[];
3174
+ properties: {
3175
+ version: {
3176
+ const: number;
3177
+ };
3178
+ snapshotId: {
3179
+ $ref: string;
3180
+ };
3181
+ bindingId: {
3182
+ $ref: string;
3183
+ };
3184
+ topicId: {
3185
+ $ref: string;
3186
+ };
3187
+ source: {
3188
+ type: string;
3189
+ required: string[];
3190
+ properties: {
3191
+ provider: {
3192
+ type: string;
3193
+ pattern: string;
3194
+ };
3195
+ organizationId: {
3196
+ type: string;
3197
+ minLength: number;
3198
+ };
3199
+ teamId: {
3200
+ type: string;
3201
+ minLength: number;
3202
+ };
3203
+ resourceId: {
3204
+ type: string;
3205
+ minLength: number;
3206
+ };
3207
+ identifier: {
3208
+ type: string;
3209
+ minLength: number;
3210
+ };
3211
+ url: {
3212
+ type: string;
3213
+ format: string;
3214
+ };
3215
+ };
3216
+ additionalProperties: boolean;
3217
+ };
3218
+ title: {
3219
+ type: string;
3220
+ minLength: number;
3221
+ maxLength: number;
3222
+ };
3223
+ descriptionMarkdown: {
3224
+ type: string;
3225
+ maxLength: number;
3226
+ };
3227
+ workflowState: {
3228
+ type: string;
3229
+ required: string[];
3230
+ properties: {
3231
+ id: {
3232
+ type: string;
3233
+ minLength: number;
3234
+ };
3235
+ name: {
3236
+ type: string;
3237
+ minLength: number;
3238
+ };
3239
+ category: {
3240
+ enum: string[];
3241
+ };
3242
+ mappedWorkState: {
3243
+ enum: string[];
3244
+ };
3245
+ mappingProfileId: {
3246
+ type: string;
3247
+ format: string;
3248
+ };
3249
+ mappingVersion: {
3250
+ type: string;
3251
+ minimum: number;
3252
+ };
3253
+ };
3254
+ additionalProperties: boolean;
3255
+ };
3256
+ assignee: {
3257
+ $ref: string;
3258
+ };
3259
+ delegate: {
3260
+ $ref: string;
3261
+ };
3262
+ planning: {
3263
+ type: string;
3264
+ required: string[];
3265
+ properties: {
3266
+ priority: {
3267
+ type: string;
3268
+ minimum: number;
3269
+ };
3270
+ estimate: {
3271
+ type: string;
3272
+ minimum: number;
3273
+ };
3274
+ projectId: {
3275
+ type: string;
3276
+ minLength: number;
3277
+ };
3278
+ cycleId: {
3279
+ type: string;
3280
+ minLength: number;
3281
+ };
3282
+ dueDate: {
3283
+ type: string;
3284
+ format: string;
3285
+ };
3286
+ labels: {
3287
+ type: string;
3288
+ uniqueItems: boolean;
3289
+ items: {
3290
+ type: string;
3291
+ minLength: number;
3292
+ };
3293
+ };
3294
+ };
3295
+ additionalProperties: boolean;
3296
+ };
3297
+ relations: {
3298
+ type: string;
3299
+ items: {
3300
+ type: string;
3301
+ required: string[];
3302
+ properties: {
3303
+ type: {
3304
+ type: string;
3305
+ minLength: number;
3306
+ };
3307
+ resourceId: {
3308
+ type: string;
3309
+ minLength: number;
3310
+ };
3311
+ url: {
3312
+ type: string;
3313
+ format: string;
3314
+ };
3315
+ };
3316
+ additionalProperties: boolean;
3317
+ };
3318
+ };
3319
+ attachments: {
3320
+ type: string;
3321
+ items: {
3322
+ $ref: string;
3323
+ };
3324
+ };
3325
+ promotedComments: {
3326
+ type: string;
3327
+ items: {
3328
+ $ref: string;
3329
+ };
3330
+ };
3331
+ sourceCreatedAt: {
3332
+ type: string;
3333
+ format: string;
3334
+ };
3335
+ sourceUpdatedAt: {
3336
+ type: string;
3337
+ format: string;
3338
+ };
3339
+ retrievedAt: {
3340
+ type: string;
3341
+ format: string;
3342
+ };
3343
+ sourceEventId: {
3344
+ type: string;
3345
+ minLength: number;
3346
+ };
3347
+ digest: {
3348
+ $ref: string;
3349
+ };
3350
+ extensions: {
3351
+ type: string;
3352
+ };
3353
+ };
3354
+ $defs: {
3355
+ uuidV7: {
3356
+ type: string;
3357
+ pattern: string;
3358
+ };
3359
+ topicId: {
3360
+ type: string;
3361
+ pattern: string;
3362
+ };
3363
+ digest: {
3364
+ type: string;
3365
+ pattern: string;
3366
+ };
3367
+ externalActor: {
3368
+ type: string;
3369
+ required: string[];
3370
+ properties: {
3371
+ id: {
3372
+ type: string;
3373
+ minLength: number;
3374
+ };
3375
+ displayName: {
3376
+ type: string;
3377
+ minLength: number;
3378
+ };
3379
+ did: {
3380
+ type: string;
3381
+ pattern: string;
3382
+ };
3383
+ };
3384
+ additionalProperties: boolean;
3385
+ };
3386
+ sourceReference: {
3387
+ type: string;
3388
+ required: string[];
3389
+ properties: {
3390
+ id: {
3391
+ type: string;
3392
+ minLength: number;
3393
+ };
3394
+ url: {
3395
+ type: string;
3396
+ format: string;
3397
+ };
3398
+ digest: {
3399
+ $ref: string;
3400
+ };
3401
+ };
3402
+ additionalProperties: boolean;
3403
+ };
3404
+ };
3405
+ additionalProperties: boolean;
3406
+ };
2071
3407
  }>;
2072
3408
  export type ContractName = keyof typeof SCHEMA_REGISTRY;
2073
- export declare const CONTRACT_NAMES: readonly ("action-receipt" | "agent-run" | "external-session-binding" | "job-card" | "room-policy" | "topic-capsule" | "topic-contract-state" | "topic-file-attachment" | "topic-index-entry" | "topic-index" | "topic-kind-profile" | "topic-message" | "topic-operation" | "topic-preferences" | "topic-record" | "topic-record-message" | "topic-relation" | "topic-root" | "topic-state" | "topic-source-message")[];
3409
+ export declare const CONTRACT_NAMES: readonly ("action-receipt" | "agent-run" | "approval-decision" | "claim-record" | "delivery-decision" | "delivery-packet" | "evaluation-assertion" | "external-session-binding" | "external-work-binding" | "external-work-state-map" | "job-card" | "room-policy" | "settlement-receipt" | "topic-capsule" | "topic-contract-state" | "topic-file-attachment" | "topic-index-entry" | "topic-index" | "topic-kind-profile" | "topic-message" | "topic-operation" | "topic-preferences" | "topic-record" | "topic-record-message" | "topic-relation" | "topic-root" | "topic-state" | "topic-source-message" | "work-item-snapshot")[];