@ixo/topic-protocol 0.4.0 → 0.5.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.
@@ -227,6 +227,703 @@ export declare const SCHEMA_REGISTRY: Readonly<{
227
227
  };
228
228
  additionalProperties: boolean;
229
229
  };
230
+ "topic-contract-state": {
231
+ $schema: string;
232
+ $id: string;
233
+ title: string;
234
+ type: string;
235
+ required: string[];
236
+ properties: {
237
+ version: {
238
+ const: number;
239
+ };
240
+ profile: {
241
+ const: string;
242
+ };
243
+ schema: {
244
+ const: string;
245
+ };
246
+ topicId: {
247
+ $ref: string;
248
+ };
249
+ anchor: {
250
+ $ref: string;
251
+ };
252
+ manifest: {
253
+ $ref: string;
254
+ };
255
+ contracts: {
256
+ $ref: string;
257
+ };
258
+ projection: {
259
+ $ref: string;
260
+ };
261
+ policy: {
262
+ type: string;
263
+ };
264
+ bindings: {
265
+ $ref: string;
266
+ };
267
+ provenance: {
268
+ $ref: string;
269
+ };
270
+ extensions: {
271
+ type: string;
272
+ };
273
+ };
274
+ additionalProperties: boolean;
275
+ $defs: {
276
+ topicId: {
277
+ type: string;
278
+ pattern: string;
279
+ };
280
+ entryId: {
281
+ type: string;
282
+ pattern: string;
283
+ };
284
+ eventId: {
285
+ type: string;
286
+ pattern: string;
287
+ };
288
+ roomId: {
289
+ type: string;
290
+ pattern: string;
291
+ };
292
+ hash: {
293
+ type: string;
294
+ pattern: string;
295
+ };
296
+ persistedKind: {
297
+ type: string;
298
+ enum: string[];
299
+ };
300
+ kindRef: {
301
+ oneOf: ({
302
+ type: string;
303
+ required: string[];
304
+ properties: {
305
+ source: {
306
+ const: string;
307
+ };
308
+ kind: {
309
+ $ref: string;
310
+ };
311
+ customId?: never;
312
+ label?: never;
313
+ baseKind?: never;
314
+ };
315
+ additionalProperties: boolean;
316
+ } | {
317
+ type: string;
318
+ required: string[];
319
+ properties: {
320
+ source: {
321
+ const: string;
322
+ };
323
+ customId: {
324
+ type: string;
325
+ minLength: number;
326
+ maxLength: number;
327
+ };
328
+ label: {
329
+ type: string;
330
+ minLength: number;
331
+ maxLength: number;
332
+ };
333
+ baseKind: {
334
+ $ref: string;
335
+ };
336
+ kind?: never;
337
+ };
338
+ additionalProperties: boolean;
339
+ })[];
340
+ };
341
+ anchor: {
342
+ oneOf: {
343
+ type: string;
344
+ required: string[];
345
+ properties: {
346
+ mode: {
347
+ const: string;
348
+ };
349
+ roomId: {
350
+ $ref: string;
351
+ };
352
+ rootEventId: {
353
+ $ref: string;
354
+ };
355
+ manifestSource: {
356
+ const: string;
357
+ };
358
+ };
359
+ additionalProperties: boolean;
360
+ }[];
361
+ };
362
+ manifest: {
363
+ type: string;
364
+ required: string[];
365
+ properties: {
366
+ version: {
367
+ const: number;
368
+ };
369
+ id: {
370
+ $ref: string;
371
+ };
372
+ title: {
373
+ type: string;
374
+ minLength: number;
375
+ maxLength: number;
376
+ };
377
+ kind: {
378
+ $ref: string;
379
+ };
380
+ status: {
381
+ type: string;
382
+ enum: string[];
383
+ };
384
+ createdBy: {
385
+ type: string;
386
+ minLength: number;
387
+ };
388
+ createdAt: {
389
+ type: string;
390
+ format: string;
391
+ };
392
+ };
393
+ additionalProperties: boolean;
394
+ };
395
+ provenance: {
396
+ type: string;
397
+ required: string[];
398
+ properties: {
399
+ basis: {
400
+ type: string;
401
+ enum: string[];
402
+ };
403
+ acceptance: {
404
+ type: string;
405
+ enum: string[];
406
+ };
407
+ sourceEventIds: {
408
+ type: string;
409
+ uniqueItems: boolean;
410
+ items: {
411
+ $ref: string;
412
+ };
413
+ };
414
+ createdBy: {
415
+ type: string;
416
+ minLength: number;
417
+ };
418
+ createdAt: {
419
+ type: string;
420
+ format: string;
421
+ };
422
+ };
423
+ additionalProperties: boolean;
424
+ };
425
+ statement: {
426
+ type: string;
427
+ required: string[];
428
+ properties: {
429
+ id: {
430
+ $ref: string;
431
+ };
432
+ text: {
433
+ type: string;
434
+ minLength: number;
435
+ maxLength: number;
436
+ };
437
+ provenance: {
438
+ $ref: string;
439
+ };
440
+ };
441
+ additionalProperties: boolean;
442
+ };
443
+ temporalTarget: {
444
+ oneOf: {
445
+ type: string;
446
+ required: string[];
447
+ properties: {
448
+ precision: {
449
+ const: string;
450
+ };
451
+ value: {
452
+ type: string;
453
+ format: string;
454
+ };
455
+ timezone: {
456
+ type: string;
457
+ minLength: number;
458
+ maxLength: number;
459
+ };
460
+ };
461
+ additionalProperties: boolean;
462
+ }[];
463
+ };
464
+ criterion: {
465
+ type: string;
466
+ required: string[];
467
+ properties: {
468
+ id: {
469
+ $ref: string;
470
+ };
471
+ description: {
472
+ type: string;
473
+ minLength: number;
474
+ maxLength: number;
475
+ };
476
+ status: {
477
+ type: string;
478
+ enum: string[];
479
+ };
480
+ verification: {
481
+ type: string;
482
+ };
483
+ };
484
+ additionalProperties: boolean;
485
+ };
486
+ outcome: {
487
+ type: string;
488
+ properties: {
489
+ statement: {
490
+ $ref: string;
491
+ };
492
+ status: {
493
+ type: string;
494
+ enum: string[];
495
+ };
496
+ target: {
497
+ $ref: string;
498
+ };
499
+ successCriteria: {
500
+ type: string;
501
+ maxItems: number;
502
+ items: {
503
+ $ref: string;
504
+ };
505
+ };
506
+ outcomeRecordId: {
507
+ type: string;
508
+ minLength: number;
509
+ };
510
+ abandonedReason: {
511
+ type: string;
512
+ minLength: number;
513
+ maxLength: number;
514
+ };
515
+ };
516
+ additionalProperties: boolean;
517
+ };
518
+ risk: {
519
+ type: string;
520
+ required: string[];
521
+ properties: {
522
+ id: {
523
+ $ref: string;
524
+ };
525
+ description: {
526
+ type: string;
527
+ minLength: number;
528
+ maxLength: number;
529
+ };
530
+ impact: {
531
+ type: string;
532
+ enum: string[];
533
+ };
534
+ status: {
535
+ type: string;
536
+ enum: string[];
537
+ };
538
+ owner: {
539
+ type: string;
540
+ minLength: number;
541
+ };
542
+ mitigation: {
543
+ type: string;
544
+ minLength: number;
545
+ maxLength: number;
546
+ };
547
+ };
548
+ additionalProperties: boolean;
549
+ };
550
+ appearance: {
551
+ type: string;
552
+ properties: {
553
+ glyph: {
554
+ oneOf: ({
555
+ type: string;
556
+ required: string[];
557
+ properties: {
558
+ type: {
559
+ const: string;
560
+ };
561
+ value: {
562
+ type: string;
563
+ minLength: number;
564
+ maxLength: number;
565
+ };
566
+ name?: never;
567
+ };
568
+ additionalProperties: boolean;
569
+ } | {
570
+ type: string;
571
+ required: string[];
572
+ properties: {
573
+ type: {
574
+ const: string;
575
+ };
576
+ name: {
577
+ type: string;
578
+ enum: string[];
579
+ };
580
+ value?: never;
581
+ };
582
+ additionalProperties: boolean;
583
+ })[];
584
+ };
585
+ };
586
+ additionalProperties: boolean;
587
+ };
588
+ contractBody: {
589
+ type: string;
590
+ required: string[];
591
+ properties: {
592
+ version: {
593
+ const: number;
594
+ };
595
+ revision: {
596
+ type: string;
597
+ minLength: number;
598
+ };
599
+ status: {
600
+ type: string;
601
+ enum: string[];
602
+ };
603
+ kindRef: {
604
+ $ref: string;
605
+ };
606
+ authoredBy: {
607
+ type: string;
608
+ minLength: number;
609
+ };
610
+ authoredAt: {
611
+ type: string;
612
+ format: string;
613
+ };
614
+ workingMode: {
615
+ type: string;
616
+ enum: string[];
617
+ };
618
+ recipe: {
619
+ type: string;
620
+ enum: string[];
621
+ };
622
+ locale: {
623
+ type: string;
624
+ minLength: number;
625
+ maxLength: number;
626
+ };
627
+ timezone: {
628
+ type: string;
629
+ minLength: number;
630
+ maxLength: number;
631
+ };
632
+ temporalMode: {
633
+ type: string;
634
+ enum: string[];
635
+ };
636
+ tags: {
637
+ type: string;
638
+ uniqueItems: boolean;
639
+ maxItems: number;
640
+ items: {
641
+ type: string;
642
+ minLength: number;
643
+ maxLength: number;
644
+ };
645
+ };
646
+ appearance: {
647
+ $ref: string;
648
+ };
649
+ intent: {
650
+ $ref: string;
651
+ };
652
+ outcome: {
653
+ $ref: string;
654
+ };
655
+ completion: {
656
+ type: string;
657
+ };
658
+ ownerId: {
659
+ type: string;
660
+ minLength: number;
661
+ };
662
+ scope: {
663
+ type: string;
664
+ };
665
+ constraints: {
666
+ type: string;
667
+ maxItems: number;
668
+ items: {
669
+ $ref: string;
670
+ };
671
+ };
672
+ assumptions: {
673
+ type: string;
674
+ maxItems: number;
675
+ items: {
676
+ type: string;
677
+ };
678
+ };
679
+ questions: {
680
+ type: string;
681
+ maxItems: number;
682
+ items: {
683
+ type: string;
684
+ };
685
+ };
686
+ risks: {
687
+ type: string;
688
+ maxItems: number;
689
+ items: {
690
+ $ref: string;
691
+ };
692
+ };
693
+ participants: {
694
+ type: string;
695
+ maxItems: number;
696
+ items: {
697
+ type: string;
698
+ };
699
+ };
700
+ roles: {
701
+ type: string;
702
+ maxItems: number;
703
+ items: {
704
+ type: string;
705
+ };
706
+ };
707
+ agents: {
708
+ type: string;
709
+ maxItems: number;
710
+ items: {
711
+ type: string;
712
+ };
713
+ };
714
+ decision: {
715
+ type: string;
716
+ };
717
+ plan: {
718
+ type: string;
719
+ };
720
+ attachments: {
721
+ type: string;
722
+ maxItems: number;
723
+ items: {
724
+ type: string;
725
+ };
726
+ };
727
+ };
728
+ additionalProperties: boolean;
729
+ };
730
+ contractRef: {
731
+ type: string;
732
+ required: string[];
733
+ properties: {
734
+ revision: {
735
+ type: string;
736
+ minLength: number;
737
+ };
738
+ bodyHash: {
739
+ $ref: string;
740
+ };
741
+ bodyRef: {
742
+ type: string;
743
+ };
744
+ body: {
745
+ $ref: string;
746
+ };
747
+ };
748
+ additionalProperties: boolean;
749
+ };
750
+ effectiveContractRef: {
751
+ allOf: ({
752
+ $ref: string;
753
+ type?: never;
754
+ required?: never;
755
+ properties?: never;
756
+ } | {
757
+ type: string;
758
+ required: string[];
759
+ properties: {
760
+ acceptedBy: {
761
+ type: string;
762
+ minItems: number;
763
+ uniqueItems: boolean;
764
+ items: {
765
+ type: string;
766
+ minLength: number;
767
+ };
768
+ };
769
+ acceptedAt: {
770
+ type: string;
771
+ format: string;
772
+ };
773
+ };
774
+ $ref?: never;
775
+ })[];
776
+ };
777
+ contractHeads: {
778
+ type: string;
779
+ properties: {
780
+ proposed: {
781
+ $ref: string;
782
+ };
783
+ effective: {
784
+ $ref: string;
785
+ };
786
+ };
787
+ additionalProperties: boolean;
788
+ };
789
+ projection: {
790
+ type: string;
791
+ required: string[];
792
+ properties: {
793
+ revision: {
794
+ type: string;
795
+ minLength: number;
796
+ };
797
+ title: {
798
+ type: string;
799
+ minLength: number;
800
+ maxLength: number;
801
+ };
802
+ status: {
803
+ type: string;
804
+ enum: string[];
805
+ };
806
+ kindRef: {
807
+ $ref: string;
808
+ };
809
+ appearance: {
810
+ $ref: string;
811
+ };
812
+ attachmentCount: {
813
+ type: string;
814
+ minimum: number;
815
+ };
816
+ operationCount: {
817
+ type: string;
818
+ minimum: number;
819
+ };
820
+ };
821
+ additionalProperties: boolean;
822
+ };
823
+ recurrence: {
824
+ oneOf: ({
825
+ type: string;
826
+ required: string[];
827
+ properties: {
828
+ frequency: {
829
+ const: string;
830
+ };
831
+ time: {
832
+ type: string;
833
+ pattern: string;
834
+ };
835
+ timezone: {
836
+ type: string;
837
+ minLength: number;
838
+ };
839
+ days?: never;
840
+ };
841
+ additionalProperties: boolean;
842
+ } | {
843
+ type: string;
844
+ required: string[];
845
+ properties: {
846
+ frequency: {
847
+ const: string;
848
+ };
849
+ days: {
850
+ type: string;
851
+ minItems: number;
852
+ uniqueItems: boolean;
853
+ items: {
854
+ type: string;
855
+ enum: string[];
856
+ };
857
+ };
858
+ time: {
859
+ type: string;
860
+ pattern: string;
861
+ };
862
+ timezone: {
863
+ type: string;
864
+ minLength: number;
865
+ };
866
+ };
867
+ additionalProperties: boolean;
868
+ })[];
869
+ };
870
+ automation: {
871
+ type: string;
872
+ required: string[];
873
+ properties: {
874
+ provider: {
875
+ const: string;
876
+ };
877
+ scheduleId: {
878
+ type: string;
879
+ minLength: number;
880
+ };
881
+ actionId: {
882
+ type: string;
883
+ minLength: number;
884
+ };
885
+ recurrence: {
886
+ $ref: string;
887
+ };
888
+ status: {
889
+ type: string;
890
+ enum: string[];
891
+ };
892
+ nextRunAt: {
893
+ type: string;
894
+ format: string;
895
+ };
896
+ };
897
+ additionalProperties: boolean;
898
+ };
899
+ bindings: {
900
+ type: string;
901
+ properties: {
902
+ governanceProposal: {
903
+ type: string;
904
+ };
905
+ claims: {
906
+ type: string;
907
+ };
908
+ automations: {
909
+ type: string;
910
+ maxItems: number;
911
+ items: {
912
+ $ref: string;
913
+ };
914
+ };
915
+ context: {
916
+ type: string;
917
+ maxItems: number;
918
+ items: {
919
+ type: string;
920
+ };
921
+ };
922
+ };
923
+ additionalProperties: boolean;
924
+ };
925
+ };
926
+ };
230
927
  "topic-file-attachment": {
231
928
  $schema: string;
232
929
  $id: string;
@@ -500,7 +1197,7 @@ export declare const SCHEMA_REGISTRY: Readonly<{
500
1197
  required: string[];
501
1198
  properties: {
502
1199
  version: {
503
- const: number;
1200
+ enum: number[];
504
1201
  };
505
1202
  operationId: {
506
1203
  type: string;
@@ -534,6 +1231,23 @@ export declare const SCHEMA_REGISTRY: Readonly<{
534
1231
  };
535
1232
  };
536
1233
  additionalProperties: boolean;
1234
+ allOf: {
1235
+ if: {
1236
+ properties: {
1237
+ type: {
1238
+ enum: string[];
1239
+ };
1240
+ };
1241
+ required: string[];
1242
+ };
1243
+ then: {
1244
+ properties: {
1245
+ version: {
1246
+ const: number;
1247
+ };
1248
+ };
1249
+ };
1250
+ }[];
537
1251
  };
538
1252
  "topic-preferences": {
539
1253
  $schema: string;
@@ -543,7 +1257,7 @@ export declare const SCHEMA_REGISTRY: Readonly<{
543
1257
  required: string[];
544
1258
  properties: {
545
1259
  version: {
546
- const: number;
1260
+ enum: number[];
547
1261
  };
548
1262
  topics: {
549
1263
  type: string;
@@ -561,7 +1275,63 @@ export declare const SCHEMA_REGISTRY: Readonly<{
561
1275
  markedUnreadFrom: {
562
1276
  type: string[];
563
1277
  };
1278
+ companion: {
1279
+ type: string;
1280
+ required: string[];
1281
+ properties: {
1282
+ oracleDid: {
1283
+ type: string;
1284
+ minLength: number;
1285
+ };
1286
+ sessionId: {
1287
+ type: string;
1288
+ minLength: number;
1289
+ };
1290
+ lastContextRevision: {
1291
+ type: string;
1292
+ minLength: number;
1293
+ };
1294
+ };
1295
+ additionalProperties: boolean;
1296
+ };
1297
+ reminder: {
1298
+ oneOf: ({
1299
+ type: string;
1300
+ required: string[];
1301
+ properties: {
1302
+ mode: {
1303
+ const: string;
1304
+ };
1305
+ at: {
1306
+ type: string;
1307
+ format: string;
1308
+ };
1309
+ timezone: {
1310
+ type: string;
1311
+ minLength: number;
1312
+ };
1313
+ minutes?: never;
1314
+ };
1315
+ additionalProperties: boolean;
1316
+ } | {
1317
+ type: string;
1318
+ required: string[];
1319
+ properties: {
1320
+ mode: {
1321
+ const: string;
1322
+ };
1323
+ minutes: {
1324
+ type: string;
1325
+ minimum: number;
1326
+ };
1327
+ at?: never;
1328
+ timezone?: never;
1329
+ };
1330
+ additionalProperties: boolean;
1331
+ })[];
1332
+ };
564
1333
  };
1334
+ additionalProperties: boolean;
565
1335
  };
566
1336
  };
567
1337
  autoFollow: {
@@ -693,7 +1463,7 @@ export declare const SCHEMA_REGISTRY: Readonly<{
693
1463
  required: string[];
694
1464
  properties: {
695
1465
  version: {
696
- const: number;
1466
+ enum: number[];
697
1467
  };
698
1468
  id: {
699
1469
  type: string;
@@ -773,6 +1543,22 @@ export declare const SCHEMA_REGISTRY: Readonly<{
773
1543
  };
774
1544
  };
775
1545
  additionalProperties: boolean;
1546
+ allOf: {
1547
+ if: {
1548
+ properties: {
1549
+ version: {
1550
+ const: number;
1551
+ };
1552
+ };
1553
+ required: string[];
1554
+ };
1555
+ then: {
1556
+ properties: {
1557
+ kind: boolean;
1558
+ };
1559
+ required: string[];
1560
+ };
1561
+ }[];
776
1562
  };
777
1563
  "topic-state": {
778
1564
  $schema: string;
@@ -993,4 +1779,4 @@ export declare const SCHEMA_REGISTRY: Readonly<{
993
1779
  };
994
1780
  }>;
995
1781
  export type ContractName = keyof typeof SCHEMA_REGISTRY;
996
- export declare const CONTRACT_NAMES: readonly ("action-receipt" | "agent-run" | "external-session-binding" | "room-policy" | "topic-capsule" | "topic-file-attachment" | "topic-index-entry" | "topic-index" | "topic-message" | "topic-operation" | "topic-preferences" | "topic-record" | "topic-record-message" | "topic-relation" | "topic-root" | "topic-state" | "topic-source-message")[];
1782
+ export declare const CONTRACT_NAMES: readonly ("action-receipt" | "agent-run" | "external-session-binding" | "room-policy" | "topic-capsule" | "topic-contract-state" | "topic-file-attachment" | "topic-index-entry" | "topic-index" | "topic-message" | "topic-operation" | "topic-preferences" | "topic-record" | "topic-record-message" | "topic-relation" | "topic-root" | "topic-state" | "topic-source-message")[];