@adea-ai/sdk 1.4.0 → 1.6.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.
@@ -806,6 +806,240 @@
806
806
  "security": [{ "serviceBearer": [] }]
807
807
  }
808
808
  },
809
+ "/v1/executions/cancel": {
810
+ "post": {
811
+ "operationId": "execution.cancel",
812
+ "requestBody": {
813
+ "content": {
814
+ "application/json": {
815
+ "schema": {
816
+ "additionalProperties": false,
817
+ "properties": {
818
+ "caller": {
819
+ "properties": {
820
+ "servicePrincipalId": {
821
+ "maxLength": 64,
822
+ "minLength": 5,
823
+ "pattern": "^svc_[a-z][a-z0-9-]*$",
824
+ "type": "string"
825
+ }
826
+ },
827
+ "required": ["servicePrincipalId"],
828
+ "type": "object"
829
+ },
830
+ "commandId": { "pattern": "^cmd_[0-9A-HJKMNP-TV-Z]{26}$", "type": "string" },
831
+ "contractVersion": {
832
+ "additionalProperties": false,
833
+ "properties": {
834
+ "major": {
835
+ "exclusiveMinimum": 0,
836
+ "maximum": 9007199254740991,
837
+ "type": "integer"
838
+ },
839
+ "minor": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }
840
+ },
841
+ "required": ["major", "minor"],
842
+ "type": "object"
843
+ },
844
+ "correlation": {
845
+ "properties": {
846
+ "causationCommandId": {
847
+ "pattern": "^cmd_[0-9A-HJKMNP-TV-Z]{26}$",
848
+ "type": "string"
849
+ },
850
+ "parentEventId": {
851
+ "pattern": "^evt_[0-9A-HJKMNP-TV-Z]{26}$",
852
+ "type": "string"
853
+ },
854
+ "traceId": { "pattern": "^trc_[0-9A-HJKMNP-TV-Z]{26}$", "type": "string" }
855
+ },
856
+ "required": ["traceId"],
857
+ "type": "object"
858
+ },
859
+ "idempotencyKey": {
860
+ "maxLength": 128,
861
+ "minLength": 16,
862
+ "pattern": "^[A-Za-z0-9._:-]+$",
863
+ "type": "string"
864
+ },
865
+ "issuedAt": {
866
+ "format": "date-time",
867
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$",
868
+ "type": "string"
869
+ },
870
+ "operation": { "const": "execution.cancel", "type": "string" },
871
+ "payload": {
872
+ "additionalProperties": false,
873
+ "properties": {
874
+ "executionId": { "pattern": "^exe_[0-9A-HJKMNP-TV-Z]{26}$", "type": "string" }
875
+ },
876
+ "required": ["executionId"],
877
+ "type": "object"
878
+ },
879
+ "payloadHash": { "pattern": "^[a-f0-9]{64}$", "type": "string" },
880
+ "projectId": { "pattern": "^prj_[0-9A-HJKMNP-TV-Z]{26}$", "type": "string" },
881
+ "requestId": { "pattern": "^req_[0-9A-HJKMNP-TV-Z]{26}$", "type": "string" },
882
+ "workspaceId": { "pattern": "^wsp_[0-9A-HJKMNP-TV-Z]{26}$", "type": "string" }
883
+ },
884
+ "required": [
885
+ "caller",
886
+ "contractVersion",
887
+ "requestId",
888
+ "workspaceId",
889
+ "projectId",
890
+ "correlation",
891
+ "commandId",
892
+ "idempotencyKey",
893
+ "payloadHash",
894
+ "operation",
895
+ "issuedAt",
896
+ "payload"
897
+ ],
898
+ "type": "object"
899
+ }
900
+ }
901
+ },
902
+ "required": true
903
+ },
904
+ "responses": {
905
+ "202": {
906
+ "content": {
907
+ "application/json": {
908
+ "schema": {
909
+ "additionalProperties": false,
910
+ "properties": {
911
+ "contractVersion": {
912
+ "additionalProperties": false,
913
+ "properties": {
914
+ "major": {
915
+ "exclusiveMinimum": 0,
916
+ "maximum": 9007199254740991,
917
+ "type": "integer"
918
+ },
919
+ "minor": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }
920
+ },
921
+ "required": ["major", "minor"],
922
+ "type": "object"
923
+ },
924
+ "correlation": {
925
+ "additionalProperties": false,
926
+ "properties": {
927
+ "causationCommandId": {},
928
+ "parentEventId": {},
929
+ "traceId": {}
930
+ },
931
+ "required": ["traceId"],
932
+ "type": "object"
933
+ },
934
+ "data": {
935
+ "additionalProperties": false,
936
+ "properties": {
937
+ "commandId": {},
938
+ "executionId": {},
939
+ "replayed": { "type": "boolean" },
940
+ "status": { "const": "accepted", "type": "string" }
941
+ },
942
+ "required": ["commandId", "executionId", "status", "replayed"],
943
+ "type": "object"
944
+ },
945
+ "requestId": {}
946
+ },
947
+ "required": ["contractVersion", "requestId", "correlation", "data"],
948
+ "type": "object"
949
+ }
950
+ }
951
+ },
952
+ "description": "Successful response"
953
+ },
954
+ "default": {
955
+ "content": {
956
+ "application/json": {
957
+ "schema": {
958
+ "additionalProperties": false,
959
+ "properties": {
960
+ "contractVersion": {
961
+ "additionalProperties": false,
962
+ "properties": {
963
+ "major": {
964
+ "exclusiveMinimum": 0,
965
+ "maximum": 9007199254740991,
966
+ "type": "integer"
967
+ },
968
+ "minor": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }
969
+ },
970
+ "required": ["major", "minor"],
971
+ "type": "object"
972
+ },
973
+ "correlation": {
974
+ "additionalProperties": false,
975
+ "properties": {
976
+ "causationCommandId": {},
977
+ "parentEventId": {},
978
+ "traceId": {}
979
+ },
980
+ "required": ["traceId"],
981
+ "type": "object"
982
+ },
983
+ "error": {
984
+ "additionalProperties": false,
985
+ "properties": {
986
+ "class": {
987
+ "enum": [
988
+ "validation",
989
+ "authentication",
990
+ "authorization",
991
+ "conflict",
992
+ "stale_reference",
993
+ "capability_mismatch",
994
+ "runtime_unavailable",
995
+ "internal"
996
+ ],
997
+ "type": "string"
998
+ },
999
+ "code": {
1000
+ "maxLength": 96,
1001
+ "minLength": 1,
1002
+ "pattern": "^[A-Z][A-Z0-9_]*$",
1003
+ "type": "string"
1004
+ },
1005
+ "details": {
1006
+ "additionalProperties": {},
1007
+ "propertyNames": { "maxLength": 64, "type": "string" },
1008
+ "type": "object"
1009
+ },
1010
+ "message": { "maxLength": 512, "minLength": 1, "type": "string" },
1011
+ "remediation": { "maxLength": 256, "minLength": 1, "type": "string" },
1012
+ "retryable": { "type": "boolean" },
1013
+ "source": {
1014
+ "enum": [
1015
+ "client",
1016
+ "auth",
1017
+ "policy",
1018
+ "runtime",
1019
+ "provider",
1020
+ "persistence",
1021
+ "workflow",
1022
+ "system"
1023
+ ],
1024
+ "type": "string"
1025
+ }
1026
+ },
1027
+ "required": ["class", "code", "message", "retryable", "source"],
1028
+ "type": "object"
1029
+ },
1030
+ "requestId": {}
1031
+ },
1032
+ "required": ["contractVersion", "requestId", "correlation", "error"],
1033
+ "type": "object"
1034
+ }
1035
+ }
1036
+ },
1037
+ "description": "Normalized error response"
1038
+ }
1039
+ },
1040
+ "security": [{ "serviceBearer": [] }]
1041
+ }
1042
+ },
809
1043
  "/v1/executions/validate": {
810
1044
  "post": {
811
1045
  "operationId": "execution.validate",
@@ -2287,13 +2521,30 @@
2287
2521
  "security": [{ "serviceBearer": [] }]
2288
2522
  }
2289
2523
  },
2290
- "/v1/marketplace/catalog": {
2524
+ "/v1/interactions/respond": {
2291
2525
  "post": {
2292
- "operationId": "marketplace.catalog.read",
2526
+ "operationId": "interaction.respond",
2293
2527
  "requestBody": {
2294
2528
  "content": {
2295
2529
  "application/json": {
2296
2530
  "schema": {
2531
+ "$defs": {
2532
+ "__schema0": {
2533
+ "anyOf": [
2534
+ { "type": "string" },
2535
+ { "type": "number" },
2536
+ { "type": "boolean" },
2537
+ { "type": "null" },
2538
+ { "items": { "$ref": "#/$defs/__schema0" }, "type": "array" },
2539
+ {
2540
+ "additionalProperties": { "$ref": "#/$defs/__schema0" },
2541
+ "propertyNames": { "type": "string" },
2542
+ "type": "object"
2543
+ }
2544
+ ]
2545
+ }
2546
+ },
2547
+ "additionalProperties": false,
2297
2548
  "properties": {
2298
2549
  "caller": {
2299
2550
  "properties": {
@@ -2307,6 +2558,7 @@
2307
2558
  "required": ["servicePrincipalId"],
2308
2559
  "type": "object"
2309
2560
  },
2561
+ "commandId": { "pattern": "^cmd_[0-9A-HJKMNP-TV-Z]{26}$", "type": "string" },
2310
2562
  "contractVersion": {
2311
2563
  "additionalProperties": false,
2312
2564
  "properties": {
@@ -2335,23 +2587,290 @@
2335
2587
  "required": ["traceId"],
2336
2588
  "type": "object"
2337
2589
  },
2338
- "operation": { "const": "marketplace.catalog.read", "type": "string" },
2339
- "parameters": {
2340
- "properties": {
2341
- "workspaceIdentity": {
2342
- "properties": {
2343
- "userId": { "maxLength": 128, "minLength": 1, "type": "string" },
2344
- "workspaceId": { "maxLength": 128, "minLength": 1, "type": "string" }
2345
- },
2346
- "required": ["workspaceId", "userId"],
2347
- "type": "object"
2348
- }
2349
- },
2350
- "required": ["workspaceIdentity"],
2351
- "type": "object"
2590
+ "idempotencyKey": {
2591
+ "maxLength": 128,
2592
+ "minLength": 16,
2593
+ "pattern": "^[A-Za-z0-9._:-]+$",
2594
+ "type": "string"
2352
2595
  },
2353
- "projectId": { "pattern": "^prj_[0-9A-HJKMNP-TV-Z]{26}$", "type": "string" },
2354
- "requestedAt": {
2596
+ "issuedAt": {
2597
+ "format": "date-time",
2598
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$",
2599
+ "type": "string"
2600
+ },
2601
+ "operation": { "const": "interaction.respond", "type": "string" },
2602
+ "payload": {
2603
+ "additionalProperties": false,
2604
+ "properties": {
2605
+ "action": {
2606
+ "enum": ["approve", "deny", "input", "grant", "resume", "cancel"],
2607
+ "type": "string"
2608
+ },
2609
+ "attemptId": { "pattern": "^att_[0-9A-HJKMNP-TV-Z]{26}$", "type": "string" },
2610
+ "executionId": {
2611
+ "pattern": "^exe_[0-9A-HJKMNP-TV-Z]{26}$",
2612
+ "type": "string"
2613
+ },
2614
+ "expectedVersion": {
2615
+ "exclusiveMinimum": 0,
2616
+ "maximum": 9007199254740991,
2617
+ "type": "integer"
2618
+ },
2619
+ "interactionId": {
2620
+ "pattern": "^int_[0-9A-HJKMNP-TV-Z]{26}$",
2621
+ "type": "string"
2622
+ },
2623
+ "value": { "$ref": "#/$defs/__schema0" }
2624
+ },
2625
+ "required": [
2626
+ "executionId",
2627
+ "attemptId",
2628
+ "interactionId",
2629
+ "expectedVersion",
2630
+ "action"
2631
+ ],
2632
+ "type": "object"
2633
+ },
2634
+ "payloadHash": { "pattern": "^[a-f0-9]{64}$", "type": "string" },
2635
+ "projectId": { "pattern": "^prj_[0-9A-HJKMNP-TV-Z]{26}$", "type": "string" },
2636
+ "requestId": { "pattern": "^req_[0-9A-HJKMNP-TV-Z]{26}$", "type": "string" },
2637
+ "workspaceId": { "pattern": "^wsp_[0-9A-HJKMNP-TV-Z]{26}$", "type": "string" }
2638
+ },
2639
+ "required": [
2640
+ "caller",
2641
+ "contractVersion",
2642
+ "requestId",
2643
+ "workspaceId",
2644
+ "projectId",
2645
+ "correlation",
2646
+ "commandId",
2647
+ "idempotencyKey",
2648
+ "payloadHash",
2649
+ "operation",
2650
+ "issuedAt",
2651
+ "payload"
2652
+ ],
2653
+ "type": "object"
2654
+ }
2655
+ }
2656
+ },
2657
+ "required": true
2658
+ },
2659
+ "responses": {
2660
+ "202": {
2661
+ "content": {
2662
+ "application/json": {
2663
+ "schema": {
2664
+ "additionalProperties": false,
2665
+ "properties": {
2666
+ "contractVersion": {
2667
+ "additionalProperties": false,
2668
+ "properties": {
2669
+ "major": {
2670
+ "exclusiveMinimum": 0,
2671
+ "maximum": 9007199254740991,
2672
+ "type": "integer"
2673
+ },
2674
+ "minor": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }
2675
+ },
2676
+ "required": ["major", "minor"],
2677
+ "type": "object"
2678
+ },
2679
+ "correlation": {
2680
+ "additionalProperties": false,
2681
+ "properties": {
2682
+ "causationCommandId": {},
2683
+ "parentEventId": {},
2684
+ "traceId": {}
2685
+ },
2686
+ "required": ["traceId"],
2687
+ "type": "object"
2688
+ },
2689
+ "data": {
2690
+ "additionalProperties": false,
2691
+ "properties": {
2692
+ "attemptId": {},
2693
+ "commandId": {},
2694
+ "executionId": {},
2695
+ "interactionId": {},
2696
+ "replayed": { "type": "boolean" },
2697
+ "responseId": {},
2698
+ "status": { "const": "accepted", "type": "string" }
2699
+ },
2700
+ "required": [
2701
+ "commandId",
2702
+ "responseId",
2703
+ "executionId",
2704
+ "attemptId",
2705
+ "interactionId",
2706
+ "status",
2707
+ "replayed"
2708
+ ],
2709
+ "type": "object"
2710
+ },
2711
+ "requestId": {}
2712
+ },
2713
+ "required": ["contractVersion", "requestId", "correlation", "data"],
2714
+ "type": "object"
2715
+ }
2716
+ }
2717
+ },
2718
+ "description": "Successful response"
2719
+ },
2720
+ "default": {
2721
+ "content": {
2722
+ "application/json": {
2723
+ "schema": {
2724
+ "additionalProperties": false,
2725
+ "properties": {
2726
+ "contractVersion": {
2727
+ "additionalProperties": false,
2728
+ "properties": {
2729
+ "major": {
2730
+ "exclusiveMinimum": 0,
2731
+ "maximum": 9007199254740991,
2732
+ "type": "integer"
2733
+ },
2734
+ "minor": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }
2735
+ },
2736
+ "required": ["major", "minor"],
2737
+ "type": "object"
2738
+ },
2739
+ "correlation": {
2740
+ "additionalProperties": false,
2741
+ "properties": {
2742
+ "causationCommandId": {},
2743
+ "parentEventId": {},
2744
+ "traceId": {}
2745
+ },
2746
+ "required": ["traceId"],
2747
+ "type": "object"
2748
+ },
2749
+ "error": {
2750
+ "additionalProperties": false,
2751
+ "properties": {
2752
+ "class": {
2753
+ "enum": [
2754
+ "validation",
2755
+ "authentication",
2756
+ "authorization",
2757
+ "conflict",
2758
+ "stale_reference",
2759
+ "capability_mismatch",
2760
+ "runtime_unavailable",
2761
+ "internal"
2762
+ ],
2763
+ "type": "string"
2764
+ },
2765
+ "code": {
2766
+ "maxLength": 96,
2767
+ "minLength": 1,
2768
+ "pattern": "^[A-Z][A-Z0-9_]*$",
2769
+ "type": "string"
2770
+ },
2771
+ "details": {
2772
+ "additionalProperties": {},
2773
+ "propertyNames": { "maxLength": 64, "type": "string" },
2774
+ "type": "object"
2775
+ },
2776
+ "message": { "maxLength": 512, "minLength": 1, "type": "string" },
2777
+ "remediation": { "maxLength": 256, "minLength": 1, "type": "string" },
2778
+ "retryable": { "type": "boolean" },
2779
+ "source": {
2780
+ "enum": [
2781
+ "client",
2782
+ "auth",
2783
+ "policy",
2784
+ "runtime",
2785
+ "provider",
2786
+ "persistence",
2787
+ "workflow",
2788
+ "system"
2789
+ ],
2790
+ "type": "string"
2791
+ }
2792
+ },
2793
+ "required": ["class", "code", "message", "retryable", "source"],
2794
+ "type": "object"
2795
+ },
2796
+ "requestId": {}
2797
+ },
2798
+ "required": ["contractVersion", "requestId", "correlation", "error"],
2799
+ "type": "object"
2800
+ }
2801
+ }
2802
+ },
2803
+ "description": "Normalized error response"
2804
+ }
2805
+ },
2806
+ "security": [{ "serviceBearer": [] }]
2807
+ }
2808
+ },
2809
+ "/v1/marketplace/catalog": {
2810
+ "post": {
2811
+ "operationId": "marketplace.catalog.read",
2812
+ "requestBody": {
2813
+ "content": {
2814
+ "application/json": {
2815
+ "schema": {
2816
+ "properties": {
2817
+ "caller": {
2818
+ "properties": {
2819
+ "servicePrincipalId": {
2820
+ "maxLength": 64,
2821
+ "minLength": 5,
2822
+ "pattern": "^svc_[a-z][a-z0-9-]*$",
2823
+ "type": "string"
2824
+ }
2825
+ },
2826
+ "required": ["servicePrincipalId"],
2827
+ "type": "object"
2828
+ },
2829
+ "contractVersion": {
2830
+ "additionalProperties": false,
2831
+ "properties": {
2832
+ "major": {
2833
+ "exclusiveMinimum": 0,
2834
+ "maximum": 9007199254740991,
2835
+ "type": "integer"
2836
+ },
2837
+ "minor": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }
2838
+ },
2839
+ "required": ["major", "minor"],
2840
+ "type": "object"
2841
+ },
2842
+ "correlation": {
2843
+ "properties": {
2844
+ "causationCommandId": {
2845
+ "pattern": "^cmd_[0-9A-HJKMNP-TV-Z]{26}$",
2846
+ "type": "string"
2847
+ },
2848
+ "parentEventId": {
2849
+ "pattern": "^evt_[0-9A-HJKMNP-TV-Z]{26}$",
2850
+ "type": "string"
2851
+ },
2852
+ "traceId": { "pattern": "^trc_[0-9A-HJKMNP-TV-Z]{26}$", "type": "string" }
2853
+ },
2854
+ "required": ["traceId"],
2855
+ "type": "object"
2856
+ },
2857
+ "operation": { "const": "marketplace.catalog.read", "type": "string" },
2858
+ "parameters": {
2859
+ "properties": {
2860
+ "workspaceIdentity": {
2861
+ "properties": {
2862
+ "userId": { "maxLength": 128, "minLength": 1, "type": "string" },
2863
+ "workspaceId": { "maxLength": 128, "minLength": 1, "type": "string" }
2864
+ },
2865
+ "required": ["workspaceId", "userId"],
2866
+ "type": "object"
2867
+ }
2868
+ },
2869
+ "required": ["workspaceIdentity"],
2870
+ "type": "object"
2871
+ },
2872
+ "projectId": { "pattern": "^prj_[0-9A-HJKMNP-TV-Z]{26}$", "type": "string" },
2873
+ "requestedAt": {
2355
2874
  "format": "date-time",
2356
2875
  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$",
2357
2876
  "type": "string"
@@ -2439,6 +2958,15 @@
2439
2958
  "pattern": "^sha256:[a-f0-9]{64}$",
2440
2959
  "type": "string"
2441
2960
  },
2961
+ "installationInstanceId": {
2962
+ "maxLength": 256,
2963
+ "minLength": 1,
2964
+ "type": "string"
2965
+ },
2966
+ "packageDigest": {
2967
+ "pattern": "^sha256:[a-f0-9]{64}$",
2968
+ "type": "string"
2969
+ },
2442
2970
  "pluginId": {
2443
2971
  "pattern": "^plugin:[a-z0-9-]+:[a-z0-9][a-z0-9-]{1,127}$",
2444
2972
  "type": "string"
@@ -2640,6 +3168,11 @@
2640
3168
  "pattern": "^sha256:[a-f0-9]{64}$",
2641
3169
  "type": "string"
2642
3170
  },
3171
+ "installationInstanceId": {
3172
+ "maxLength": 256,
3173
+ "minLength": 1,
3174
+ "type": "string"
3175
+ },
2643
3176
  "pluginId": {
2644
3177
  "pattern": "^plugin:[a-z0-9-]+:[a-z0-9][a-z0-9-]{1,127}$",
2645
3178
  "type": "string"
@@ -2727,6 +3260,12 @@
2727
3260
  },
2728
3261
  "catalogId": { "pattern": "^catalog:[a-f0-9]{64}$", "type": "string" },
2729
3262
  "installationId": { "maxLength": 128, "minLength": 1, "type": "string" },
3263
+ "installationInstanceId": {
3264
+ "maxLength": 256,
3265
+ "minLength": 1,
3266
+ "type": "string"
3267
+ },
3268
+ "packageDigest": { "pattern": "^sha256:[a-f0-9]{64}$", "type": "string" },
2730
3269
  "pluginId": {
2731
3270
  "pattern": "^plugin:[a-z0-9-]+:[a-z0-9][a-z0-9-]{1,127}$",
2732
3271
  "type": "string"
@@ -2853,6 +3392,276 @@
2853
3392
  "security": [{ "serviceBearer": [] }]
2854
3393
  }
2855
3394
  },
3395
+ "/v1/marketplace/install-plan": {
3396
+ "post": {
3397
+ "operationId": "marketplace.install.plan",
3398
+ "requestBody": {
3399
+ "content": {
3400
+ "application/json": {
3401
+ "schema": {
3402
+ "properties": {
3403
+ "caller": {
3404
+ "properties": {
3405
+ "servicePrincipalId": {
3406
+ "maxLength": 64,
3407
+ "minLength": 5,
3408
+ "pattern": "^svc_[a-z][a-z0-9-]*$",
3409
+ "type": "string"
3410
+ }
3411
+ },
3412
+ "required": ["servicePrincipalId"],
3413
+ "type": "object"
3414
+ },
3415
+ "commandId": { "pattern": "^cmd_[0-9A-HJKMNP-TV-Z]{26}$", "type": "string" },
3416
+ "contractVersion": {
3417
+ "additionalProperties": false,
3418
+ "properties": {
3419
+ "major": {
3420
+ "exclusiveMinimum": 0,
3421
+ "maximum": 9007199254740991,
3422
+ "type": "integer"
3423
+ },
3424
+ "minor": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }
3425
+ },
3426
+ "required": ["major", "minor"],
3427
+ "type": "object"
3428
+ },
3429
+ "correlation": {
3430
+ "properties": {
3431
+ "causationCommandId": {
3432
+ "pattern": "^cmd_[0-9A-HJKMNP-TV-Z]{26}$",
3433
+ "type": "string"
3434
+ },
3435
+ "parentEventId": {
3436
+ "pattern": "^evt_[0-9A-HJKMNP-TV-Z]{26}$",
3437
+ "type": "string"
3438
+ },
3439
+ "traceId": { "pattern": "^trc_[0-9A-HJKMNP-TV-Z]{26}$", "type": "string" }
3440
+ },
3441
+ "required": ["traceId"],
3442
+ "type": "object"
3443
+ },
3444
+ "idempotencyKey": {
3445
+ "maxLength": 128,
3446
+ "minLength": 16,
3447
+ "pattern": "^[A-Za-z0-9._:-]+$",
3448
+ "type": "string"
3449
+ },
3450
+ "issuedAt": {
3451
+ "format": "date-time",
3452
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$",
3453
+ "type": "string"
3454
+ },
3455
+ "operation": { "const": "marketplace.install.plan", "type": "string" },
3456
+ "payload": {
3457
+ "properties": {
3458
+ "instanceId": { "maxLength": 256, "minLength": 1, "type": "string" },
3459
+ "pluginId": {
3460
+ "pattern": "^plugin:[a-z0-9-]+:[a-z0-9][a-z0-9-]{1,127}$",
3461
+ "type": "string"
3462
+ },
3463
+ "releaseId": { "pattern": "^release:[a-f0-9]{64}$", "type": "string" },
3464
+ "requestedHarness": { "maxLength": 128, "minLength": 1, "type": "string" },
3465
+ "workspaceIdentity": {
3466
+ "properties": {
3467
+ "userId": { "maxLength": 128, "minLength": 1, "type": "string" },
3468
+ "workspaceId": { "maxLength": 128, "minLength": 1, "type": "string" }
3469
+ },
3470
+ "required": ["workspaceId", "userId"],
3471
+ "type": "object"
3472
+ }
3473
+ },
3474
+ "required": [
3475
+ "pluginId",
3476
+ "releaseId",
3477
+ "instanceId",
3478
+ "requestedHarness",
3479
+ "workspaceIdentity"
3480
+ ],
3481
+ "type": "object"
3482
+ },
3483
+ "payloadHash": { "pattern": "^[a-f0-9]{64}$", "type": "string" },
3484
+ "projectId": { "pattern": "^prj_[0-9A-HJKMNP-TV-Z]{26}$", "type": "string" },
3485
+ "requestId": { "pattern": "^req_[0-9A-HJKMNP-TV-Z]{26}$", "type": "string" },
3486
+ "workspaceId": { "pattern": "^wsp_[0-9A-HJKMNP-TV-Z]{26}$", "type": "string" }
3487
+ },
3488
+ "required": [
3489
+ "caller",
3490
+ "contractVersion",
3491
+ "requestId",
3492
+ "workspaceId",
3493
+ "correlation",
3494
+ "commandId",
3495
+ "idempotencyKey",
3496
+ "payloadHash",
3497
+ "operation",
3498
+ "issuedAt",
3499
+ "payload"
3500
+ ],
3501
+ "type": "object"
3502
+ }
3503
+ }
3504
+ },
3505
+ "required": true
3506
+ },
3507
+ "responses": {
3508
+ "200": {
3509
+ "content": {
3510
+ "application/json": {
3511
+ "schema": {
3512
+ "additionalProperties": false,
3513
+ "properties": {
3514
+ "contractVersion": {
3515
+ "additionalProperties": false,
3516
+ "properties": {
3517
+ "major": {
3518
+ "exclusiveMinimum": 0,
3519
+ "maximum": 9007199254740991,
3520
+ "type": "integer"
3521
+ },
3522
+ "minor": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }
3523
+ },
3524
+ "required": ["major", "minor"],
3525
+ "type": "object"
3526
+ },
3527
+ "correlation": {
3528
+ "additionalProperties": false,
3529
+ "properties": {
3530
+ "causationCommandId": {},
3531
+ "parentEventId": {},
3532
+ "traceId": {}
3533
+ },
3534
+ "required": ["traceId"],
3535
+ "type": "object"
3536
+ },
3537
+ "data": {
3538
+ "additionalProperties": {},
3539
+ "properties": {
3540
+ "allowedToActivate": { "const": false, "type": "boolean" },
3541
+ "approvalRequired": { "const": true, "type": "boolean" },
3542
+ "compatibility": {
3543
+ "enum": ["full", "partial", "unsupported"],
3544
+ "type": "string"
3545
+ },
3546
+ "instanceId": { "minLength": 1, "type": "string" },
3547
+ "planVersion": { "const": 2, "type": "number" },
3548
+ "pluginId": { "minLength": 1, "type": "string" },
3549
+ "releaseId": { "minLength": 1, "type": "string" },
3550
+ "strategy": {
3551
+ "enum": ["native-agent-plugin", "component-adapter", "unavailable"],
3552
+ "type": "string"
3553
+ }
3554
+ },
3555
+ "required": [
3556
+ "planVersion",
3557
+ "pluginId",
3558
+ "releaseId",
3559
+ "instanceId",
3560
+ "strategy",
3561
+ "compatibility",
3562
+ "allowedToActivate",
3563
+ "approvalRequired"
3564
+ ],
3565
+ "type": "object"
3566
+ },
3567
+ "requestId": {}
3568
+ },
3569
+ "required": ["contractVersion", "requestId", "correlation", "data"],
3570
+ "type": "object"
3571
+ }
3572
+ }
3573
+ },
3574
+ "description": "Successful response"
3575
+ },
3576
+ "default": {
3577
+ "content": {
3578
+ "application/json": {
3579
+ "schema": {
3580
+ "additionalProperties": false,
3581
+ "properties": {
3582
+ "contractVersion": {
3583
+ "additionalProperties": false,
3584
+ "properties": {
3585
+ "major": {
3586
+ "exclusiveMinimum": 0,
3587
+ "maximum": 9007199254740991,
3588
+ "type": "integer"
3589
+ },
3590
+ "minor": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }
3591
+ },
3592
+ "required": ["major", "minor"],
3593
+ "type": "object"
3594
+ },
3595
+ "correlation": {
3596
+ "additionalProperties": false,
3597
+ "properties": {
3598
+ "causationCommandId": {},
3599
+ "parentEventId": {},
3600
+ "traceId": {}
3601
+ },
3602
+ "required": ["traceId"],
3603
+ "type": "object"
3604
+ },
3605
+ "error": {
3606
+ "additionalProperties": false,
3607
+ "properties": {
3608
+ "class": {
3609
+ "enum": [
3610
+ "validation",
3611
+ "authentication",
3612
+ "authorization",
3613
+ "conflict",
3614
+ "stale_reference",
3615
+ "capability_mismatch",
3616
+ "runtime_unavailable",
3617
+ "internal"
3618
+ ],
3619
+ "type": "string"
3620
+ },
3621
+ "code": {
3622
+ "maxLength": 96,
3623
+ "minLength": 1,
3624
+ "pattern": "^[A-Z][A-Z0-9_]*$",
3625
+ "type": "string"
3626
+ },
3627
+ "details": {
3628
+ "additionalProperties": {},
3629
+ "propertyNames": { "maxLength": 64, "type": "string" },
3630
+ "type": "object"
3631
+ },
3632
+ "message": { "maxLength": 512, "minLength": 1, "type": "string" },
3633
+ "remediation": { "maxLength": 256, "minLength": 1, "type": "string" },
3634
+ "retryable": { "type": "boolean" },
3635
+ "source": {
3636
+ "enum": [
3637
+ "client",
3638
+ "auth",
3639
+ "policy",
3640
+ "runtime",
3641
+ "provider",
3642
+ "persistence",
3643
+ "workflow",
3644
+ "system"
3645
+ ],
3646
+ "type": "string"
3647
+ }
3648
+ },
3649
+ "required": ["class", "code", "message", "retryable", "source"],
3650
+ "type": "object"
3651
+ },
3652
+ "requestId": {}
3653
+ },
3654
+ "required": ["contractVersion", "requestId", "correlation", "error"],
3655
+ "type": "object"
3656
+ }
3657
+ }
3658
+ },
3659
+ "description": "Normalized error response"
3660
+ }
3661
+ },
3662
+ "security": [{ "serviceBearer": [] }]
3663
+ }
3664
+ },
2856
3665
  "/v1/profiles/resolve": {
2857
3666
  "post": {
2858
3667
  "operationId": "profile.resolve",