@adobe/aio-commerce-lib-app 2.0.0-beta-20260820174436 → 2.0.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 (54) hide show
  1. package/CHANGELOG.md +31 -5
  2. package/dist/cjs/actions/app-config/index.cjs +3 -3
  3. package/dist/cjs/actions/app-config/index.d.cts +3 -4
  4. package/dist/cjs/actions/association/index.d.cts +2 -3
  5. package/dist/cjs/actions/config/index.d.cts +2 -3
  6. package/dist/cjs/actions/installation/index.cjs +14 -7
  7. package/dist/cjs/actions/installation/index.d.cts +5 -5
  8. package/dist/cjs/actions/scope-tree/index.d.cts +2 -3
  9. package/dist/cjs/{app-Cf3EmtUh.d.cts → app-DwSqUkJA.d.cts} +122 -16
  10. package/dist/cjs/commands/index.cjs +91 -51
  11. package/dist/cjs/commands/templates/admin-ui/web-src/.babelrc +14 -0
  12. package/dist/cjs/commands/templates/business-configuration/config.js.template +7 -1
  13. package/dist/cjs/{common-B70f39vI.cjs → common-VSsQEHDv.cjs} +15 -2
  14. package/dist/cjs/config/index.browser.d.cts +1 -1
  15. package/dist/cjs/config/index.node.cjs +4 -3
  16. package/dist/cjs/config/index.node.d.cts +104 -50
  17. package/dist/{es/define-DSU8Kgu0.d.mts → cjs/define-Cc3AaVmY.d.cts} +1 -1
  18. package/dist/{es/index-COLnI6Ok.d.mts → cjs/index-C7dqTDHu.d.cts} +25 -3
  19. package/dist/cjs/index.d.cts +10 -10
  20. package/dist/cjs/{index.node-CXeIG8SS.cjs → index.node-vcOo1rt0.cjs} +1 -1
  21. package/dist/cjs/installation-D72LoQ_1.d.cts +39 -0
  22. package/dist/cjs/management/index.cjs +1 -1
  23. package/dist/cjs/management/index.d.cts +1 -1
  24. package/dist/cjs/{management-BhMdRr8i.cjs → management-Bki3hlxL.cjs} +207 -27
  25. package/dist/cjs/{openapi-DVJUTOXY.cjs → openapi-CAXgKam0.cjs} +317 -390
  26. package/dist/cjs/{validate-Dff0nrqM.cjs → validate-CwWYtRsS.cjs} +33 -2
  27. package/dist/cjs/{webhooks-E1KDx3Yu.cjs → webhooks-Bcq2Qy7q.cjs} +69 -8
  28. package/dist/es/actions/app-config/index.d.mts +3 -4
  29. package/dist/es/actions/app-config/index.mjs +3 -3
  30. package/dist/es/actions/association/index.d.mts +2 -3
  31. package/dist/es/actions/config/index.d.mts +2 -3
  32. package/dist/es/actions/installation/index.d.mts +5 -5
  33. package/dist/es/actions/installation/index.mjs +14 -7
  34. package/dist/es/actions/scope-tree/index.d.mts +2 -3
  35. package/dist/es/{app-Cf3EmtUh.d.mts → app-DwSqUkJA.d.mts} +122 -16
  36. package/dist/es/commands/index.mjs +92 -52
  37. package/dist/es/commands/templates/admin-ui/web-src/.babelrc +14 -0
  38. package/dist/es/commands/templates/business-configuration/config.js.template +7 -1
  39. package/dist/es/{common-BVG9tiX0.mjs → common-dy6NrZt8.mjs} +10 -3
  40. package/dist/es/config/index.browser.d.mts +1 -1
  41. package/dist/es/config/index.node.d.mts +104 -50
  42. package/dist/es/config/index.node.mjs +4 -4
  43. package/dist/{cjs/define-B-_oKmCe.d.cts → es/define-Bq1zw9Lr.d.mts} +1 -1
  44. package/dist/{cjs/index-CkwCGvut.d.cts → es/index-BryddQId.d.mts} +25 -3
  45. package/dist/es/index.d.mts +10 -10
  46. package/dist/es/{index.node-DRTF5Hue.mjs → index.node-CW46zuxW.mjs} +1 -1
  47. package/dist/es/installation-DqVDJ1ur.d.mts +39 -0
  48. package/dist/es/management/index.d.mts +1 -1
  49. package/dist/es/management/index.mjs +1 -1
  50. package/dist/es/{management-BTWQdJNO.mjs → management-DgwAhaaJ.mjs} +207 -27
  51. package/dist/es/{openapi-D18LT0Wp.mjs → openapi-BnR9OUac.mjs} +317 -390
  52. package/dist/es/{validate-8AXMGEwr.mjs → validate-NzW1FQwL.mjs} +29 -4
  53. package/dist/es/{webhooks-BQ8kSN2Z.mjs → webhooks-CHZ1SXxw.mjs} +64 -9
  54. package/package.json +19 -19
@@ -23,7 +23,7 @@ var info = {
23
23
  "identifier": "Apache-2.0",
24
24
  "name": "Apache-2.0"
25
25
  },
26
- "x-meta": { "packageVersion": "1.10.1" }
26
+ "x-meta": { "packageVersion": "2.0.0" }
27
27
  };
28
28
  var servers = [{ "url": "/" }];
29
29
  var paths = {
@@ -994,133 +994,12 @@ var paths = {
994
994
  "responses": {
995
995
  "200": {
996
996
  "description": "The current installation workflow state, or the latest lifecycle attempt without its plan for a post-deploy request.",
997
- "content": { "application/json": { "schema": {
998
- "discriminator": { "propertyName": "status" },
999
- "oneOf": [
1000
- {
1001
- "type": "object",
1002
- "properties": {
1003
- "id": { "type": "string" },
1004
- "status": { "const": "in-progress" },
1005
- "startedAt": {
1006
- "type": "string",
1007
- "format": "date-time"
1008
- },
1009
- "step": { "$ref": "#/components/schemas/StepStatus" },
1010
- "config": {
1011
- "description": "The validated app configuration recorded at install time. Present so uninstallation can be sourced from what was actually installed rather than the current request config. Absent on states persisted before this field was introduced.",
1012
- "type": "object",
1013
- "additionalProperties": true
1014
- },
1015
- "data": { "anyOf": [{
1016
- "type": "object",
1017
- "propertyNames": { "type": "string" },
1018
- "additionalProperties": {}
1019
- }, { "type": "null" }] }
1020
- },
1021
- "required": [
1022
- "id",
1023
- "status",
1024
- "startedAt",
1025
- "step",
1026
- "data"
1027
- ]
1028
- },
1029
- {
1030
- "type": "object",
1031
- "properties": {
1032
- "id": { "type": "string" },
1033
- "status": { "const": "succeeded" },
1034
- "startedAt": {
1035
- "type": "string",
1036
- "format": "date-time"
1037
- },
1038
- "completedAt": {
1039
- "type": "string",
1040
- "format": "date-time"
1041
- },
1042
- "step": { "$ref": "#/components/schemas/StepStatus" },
1043
- "config": {
1044
- "description": "The validated app configuration recorded at install time. Present so uninstallation can be sourced from what was actually installed rather than the current request config. Absent on states persisted before this field was introduced.",
1045
- "type": "object",
1046
- "additionalProperties": true
1047
- },
1048
- "data": { "anyOf": [{
1049
- "type": "object",
1050
- "propertyNames": { "type": "string" },
1051
- "additionalProperties": {}
1052
- }, { "type": "null" }] },
1053
- "metadata": {
1054
- "type": "object",
1055
- "properties": { "isRetry": { "type": "boolean" } },
1056
- "required": ["isRetry"]
1057
- }
1058
- },
1059
- "required": [
1060
- "id",
1061
- "status",
1062
- "startedAt",
1063
- "completedAt",
1064
- "step",
1065
- "data"
1066
- ]
1067
- },
1068
- {
1069
- "type": "object",
1070
- "properties": {
1071
- "id": { "type": "string" },
1072
- "status": { "const": "failed" },
1073
- "startedAt": {
1074
- "type": "string",
1075
- "format": "date-time"
1076
- },
1077
- "completedAt": {
1078
- "type": "string",
1079
- "format": "date-time"
1080
- },
1081
- "step": { "$ref": "#/components/schemas/StepStatus" },
1082
- "config": {
1083
- "description": "The validated app configuration recorded at install time. Present so uninstallation can be sourced from what was actually installed rather than the current request config. Absent on states persisted before this field was introduced.",
1084
- "type": "object",
1085
- "additionalProperties": true
1086
- },
1087
- "data": { "anyOf": [{
1088
- "type": "object",
1089
- "propertyNames": { "type": "string" },
1090
- "additionalProperties": {}
1091
- }, { "type": "null" }] },
1092
- "error": {
1093
- "type": "object",
1094
- "properties": {
1095
- "path": {
1096
- "type": "array",
1097
- "items": { "type": "string" }
1098
- },
1099
- "key": { "type": "string" },
1100
- "message": { "type": "string" },
1101
- "payload": {}
1102
- },
1103
- "required": ["path", "key"]
1104
- },
1105
- "metadata": {
1106
- "type": "object",
1107
- "properties": { "isRetry": { "type": "boolean" } },
1108
- "required": ["isRetry"]
1109
- }
1110
- },
1111
- "required": [
1112
- "id",
1113
- "status",
1114
- "startedAt",
1115
- "completedAt",
1116
- "step",
1117
- "data",
1118
- "error"
1119
- ]
1120
- },
1121
- { "$ref": "#/components/schemas/LifecycleAttemptState" }
1122
- ]
1123
- } } }
997
+ "content": { "application/json": { "schema": { "oneOf": [
998
+ { "$ref": "#/components/schemas/InProgressWorkflowState" },
999
+ { "$ref": "#/components/schemas/SucceededWorkflowState" },
1000
+ { "$ref": "#/components/schemas/FailedWorkflowState" },
1001
+ { "$ref": "#/components/schemas/LifecycleAttemptState" }
1002
+ ] } } }
1124
1003
  },
1125
1004
  "204": { "description": "No installation workflow state or lifecycle attempt has been stored yet." },
1126
1005
  "401": { "description": "You are not authorized to access this resource. Ensure the IMS token and the x-gw-ims-org-id header are correctly set and valid." },
@@ -1387,129 +1266,18 @@ var paths = {
1387
1266
  "200": {
1388
1267
  "description": "The current uninstallation workflow state.",
1389
1268
  "content": { "application/json": { "schema": {
1390
- "discriminator": { "propertyName": "status" },
1391
- "oneOf": [
1392
- {
1393
- "type": "object",
1394
- "properties": {
1395
- "id": { "type": "string" },
1396
- "status": { "const": "in-progress" },
1397
- "startedAt": {
1398
- "type": "string",
1399
- "format": "date-time"
1400
- },
1401
- "step": { "$ref": "#/components/schemas/StepStatus" },
1402
- "config": {
1403
- "description": "The validated app configuration recorded at install time. Present so uninstallation can be sourced from what was actually installed rather than the current request config. Absent on states persisted before this field was introduced.",
1404
- "type": "object",
1405
- "additionalProperties": true
1406
- },
1407
- "data": { "anyOf": [{
1408
- "type": "object",
1409
- "propertyNames": { "type": "string" },
1410
- "additionalProperties": {}
1411
- }, { "type": "null" }] }
1412
- },
1413
- "required": [
1414
- "id",
1415
- "status",
1416
- "startedAt",
1417
- "step",
1418
- "data"
1419
- ]
1420
- },
1421
- {
1422
- "type": "object",
1423
- "properties": {
1424
- "id": { "type": "string" },
1425
- "status": { "const": "succeeded" },
1426
- "startedAt": {
1427
- "type": "string",
1428
- "format": "date-time"
1429
- },
1430
- "completedAt": {
1431
- "type": "string",
1432
- "format": "date-time"
1433
- },
1434
- "step": { "$ref": "#/components/schemas/StepStatus" },
1435
- "config": {
1436
- "description": "The validated app configuration recorded at install time. Present so uninstallation can be sourced from what was actually installed rather than the current request config. Absent on states persisted before this field was introduced.",
1437
- "type": "object",
1438
- "additionalProperties": true
1439
- },
1440
- "data": { "anyOf": [{
1441
- "type": "object",
1442
- "propertyNames": { "type": "string" },
1443
- "additionalProperties": {}
1444
- }, { "type": "null" }] },
1445
- "metadata": {
1446
- "type": "object",
1447
- "properties": { "isRetry": { "type": "boolean" } },
1448
- "required": ["isRetry"]
1449
- }
1450
- },
1451
- "required": [
1452
- "id",
1453
- "status",
1454
- "startedAt",
1455
- "completedAt",
1456
- "step",
1457
- "data"
1458
- ]
1459
- },
1460
- {
1461
- "type": "object",
1462
- "properties": {
1463
- "id": { "type": "string" },
1464
- "status": { "const": "failed" },
1465
- "startedAt": {
1466
- "type": "string",
1467
- "format": "date-time"
1468
- },
1469
- "completedAt": {
1470
- "type": "string",
1471
- "format": "date-time"
1472
- },
1473
- "step": { "$ref": "#/components/schemas/StepStatus" },
1474
- "config": {
1475
- "description": "The validated app configuration recorded at install time. Present so uninstallation can be sourced from what was actually installed rather than the current request config. Absent on states persisted before this field was introduced.",
1476
- "type": "object",
1477
- "additionalProperties": true
1478
- },
1479
- "data": { "anyOf": [{
1480
- "type": "object",
1481
- "propertyNames": { "type": "string" },
1482
- "additionalProperties": {}
1483
- }, { "type": "null" }] },
1484
- "error": {
1485
- "type": "object",
1486
- "properties": {
1487
- "path": {
1488
- "type": "array",
1489
- "items": { "type": "string" }
1490
- },
1491
- "key": { "type": "string" },
1492
- "message": { "type": "string" },
1493
- "payload": {}
1494
- },
1495
- "required": ["path", "key"]
1496
- },
1497
- "metadata": {
1498
- "type": "object",
1499
- "properties": { "isRetry": { "type": "boolean" } },
1500
- "required": ["isRetry"]
1501
- }
1502
- },
1503
- "required": [
1504
- "id",
1505
- "status",
1506
- "startedAt",
1507
- "completedAt",
1508
- "step",
1509
- "data",
1510
- "error"
1511
- ]
1269
+ "discriminator": {
1270
+ "propertyName": "status",
1271
+ "mapping": {
1272
+ "in-progress": "#/components/schemas/InProgressWorkflowState",
1273
+ "succeeded": "#/components/schemas/SucceededWorkflowState",
1274
+ "failed": "#/components/schemas/FailedWorkflowState"
1512
1275
  }
1276
+ },
1277
+ "oneOf": [
1278
+ { "$ref": "#/components/schemas/InProgressWorkflowState" },
1279
+ { "$ref": "#/components/schemas/SucceededWorkflowState" },
1280
+ { "$ref": "#/components/schemas/FailedWorkflowState" }
1513
1281
  ]
1514
1282
  } } }
1515
1283
  },
@@ -2292,7 +2060,10 @@ var components = {
2292
2060
  "minLength": 1
2293
2061
  },
2294
2062
  "requireAdobeAuth": { "type": "boolean" },
2295
- "webhook": { "$ref": "#/components/schemas/WebhookDefinition" }
2063
+ "webhook": { "allOf": [{ "$ref": "#/components/schemas/WebhookDefinition" }, { "not": {
2064
+ "properties": { "url": {} },
2065
+ "required": ["url"]
2066
+ } }] }
2296
2067
  },
2297
2068
  "required": [
2298
2069
  "label",
@@ -2328,6 +2099,10 @@ var components = {
2328
2099
  "required": ["url"]
2329
2100
  }] }
2330
2101
  },
2102
+ "not": {
2103
+ "properties": { "runtimeAction": {} },
2104
+ "required": ["runtimeAction"]
2105
+ },
2331
2106
  "required": [
2332
2107
  "label",
2333
2108
  "description",
@@ -2371,51 +2146,19 @@ var components = {
2371
2146
  ]
2372
2147
  },
2373
2148
  "LifecycleAttemptState": {
2374
- "discriminator": { "propertyName": "status" },
2149
+ "discriminator": {
2150
+ "propertyName": "status",
2151
+ "mapping": {
2152
+ "pending": "#/components/schemas/ActiveLifecycleAttemptState",
2153
+ "in-progress": "#/components/schemas/ActiveLifecycleAttemptState",
2154
+ "succeeded": "#/components/schemas/SucceededLifecycleAttemptState",
2155
+ "failed": "#/components/schemas/FailedLifecycleAttemptState"
2156
+ }
2157
+ },
2375
2158
  "oneOf": [
2376
- { "allOf": [{ "$ref": "#/components/schemas/LifecycleAttemptStateBase" }, {
2377
- "type": "object",
2378
- "properties": { "status": {
2379
- "type": "string",
2380
- "enum": ["pending", "in-progress"]
2381
- } },
2382
- "required": ["status"]
2383
- }] },
2384
- { "allOf": [{ "$ref": "#/components/schemas/LifecycleAttemptStateBase" }, {
2385
- "type": "object",
2386
- "properties": {
2387
- "status": { "const": "succeeded" },
2388
- "result": {
2389
- "type": "object",
2390
- "properties": {
2391
- "snapshotId": { "type": "string" },
2392
- "appVersion": { "type": "string" }
2393
- },
2394
- "required": ["snapshotId", "appVersion"]
2395
- }
2396
- },
2397
- "required": ["status", "result"]
2398
- }] },
2399
- { "allOf": [{ "$ref": "#/components/schemas/LifecycleAttemptStateBase" }, {
2400
- "type": "object",
2401
- "properties": {
2402
- "status": { "const": "failed" },
2403
- "failure": {
2404
- "type": "object",
2405
- "properties": {
2406
- "path": {
2407
- "type": "array",
2408
- "items": { "type": "string" }
2409
- },
2410
- "key": { "type": "string" },
2411
- "message": { "type": "string" },
2412
- "payload": {}
2413
- },
2414
- "required": ["path", "key"]
2415
- }
2416
- },
2417
- "required": ["status", "failure"]
2418
- }] }
2159
+ { "$ref": "#/components/schemas/ActiveLifecycleAttemptState" },
2160
+ { "$ref": "#/components/schemas/SucceededLifecycleAttemptState" },
2161
+ { "$ref": "#/components/schemas/FailedLifecycleAttemptState" }
2419
2162
  ],
2420
2163
  "title": "LifecycleAttemptState"
2421
2164
  },
@@ -2759,101 +2502,14 @@ var components = {
2759
2502
  ]
2760
2503
  },
2761
2504
  "AdminUiOrderViewButton": {
2762
- "discriminator": { "propertyName": "type" },
2763
- "oneOf": [{
2764
- "type": "object",
2765
- "properties": {
2766
- "type": {
2767
- "type": "string",
2768
- "const": "view"
2769
- },
2770
- "id": {
2771
- "type": "string",
2772
- "minLength": 1
2773
- },
2774
- "label": {
2775
- "type": "string",
2776
- "minLength": 1
2777
- },
2778
- "description": {
2779
- "type": "string",
2780
- "minLength": 1
2781
- },
2782
- "path": {
2783
- "type": "string",
2784
- "minLength": 1
2785
- },
2786
- "level": {
2787
- "type": "number",
2788
- "enum": [
2789
- -1,
2790
- 0,
2791
- 1
2792
- ]
2793
- },
2794
- "sortOrder": {
2795
- "type": "number",
2796
- "minimum": 1
2797
- },
2798
- "confirm": { "$ref": "#/components/schemas/AdminUiConfirm" },
2799
- "sandboxPermissions": { "$ref": "#/components/schemas/AdminUiSandboxPermissions" },
2800
- "notifications": { "$ref": "#/components/schemas/AdminUiNotifications" }
2801
- },
2802
- "required": [
2803
- "type",
2804
- "id",
2805
- "label",
2806
- "path"
2807
- ]
2808
- }, {
2809
- "type": "object",
2810
- "properties": {
2811
- "type": {
2812
- "type": "string",
2813
- "const": "worker"
2814
- },
2815
- "id": {
2816
- "type": "string",
2817
- "minLength": 1
2818
- },
2819
- "label": {
2820
- "type": "string",
2821
- "minLength": 1
2822
- },
2823
- "description": {
2824
- "type": "string",
2825
- "minLength": 1
2826
- },
2827
- "runtimeAction": {
2828
- "type": "string",
2829
- "minLength": 1
2830
- },
2831
- "level": {
2832
- "type": "number",
2833
- "enum": [
2834
- -1,
2835
- 0,
2836
- 1
2837
- ]
2838
- },
2839
- "sortOrder": {
2840
- "type": "number",
2841
- "minimum": 1
2842
- },
2843
- "confirm": { "$ref": "#/components/schemas/AdminUiConfirm" },
2844
- "timeout": {
2845
- "type": "number",
2846
- "minimum": 1
2847
- },
2848
- "notifications": { "$ref": "#/components/schemas/AdminUiNotifications" }
2849
- },
2850
- "required": [
2851
- "type",
2852
- "id",
2853
- "label",
2854
- "runtimeAction"
2855
- ]
2856
- }]
2505
+ "discriminator": {
2506
+ "propertyName": "type",
2507
+ "mapping": {
2508
+ "view": "#/components/schemas/AdminUiOrderViewNavigationButton",
2509
+ "worker": "#/components/schemas/AdminUiOrderViewWorkerButton"
2510
+ }
2511
+ },
2512
+ "oneOf": [{ "$ref": "#/components/schemas/AdminUiOrderViewNavigationButton" }, { "$ref": "#/components/schemas/AdminUiOrderViewWorkerButton" }]
2857
2513
  },
2858
2514
  "AdminUiConfirm": {
2859
2515
  "type": "object",
@@ -2927,6 +2583,277 @@ var components = {
2927
2583
  "is_final"
2928
2584
  ],
2929
2585
  "title": "CustomScopeInput"
2586
+ },
2587
+ "InProgressWorkflowState": {
2588
+ "type": "object",
2589
+ "properties": {
2590
+ "id": { "type": "string" },
2591
+ "status": { "const": "in-progress" },
2592
+ "startedAt": {
2593
+ "type": "string",
2594
+ "format": "date-time"
2595
+ },
2596
+ "step": { "$ref": "#/components/schemas/StepStatus" },
2597
+ "config": {
2598
+ "description": "The validated app configuration recorded at install time. Present so uninstallation can be sourced from what was actually installed rather than the current request config. Absent on states persisted before this field was introduced.",
2599
+ "type": "object",
2600
+ "additionalProperties": true
2601
+ },
2602
+ "data": { "anyOf": [{
2603
+ "type": "object",
2604
+ "propertyNames": { "type": "string" },
2605
+ "additionalProperties": {}
2606
+ }, { "type": "null" }] }
2607
+ },
2608
+ "not": {
2609
+ "properties": { "operation": {} },
2610
+ "required": ["operation"]
2611
+ },
2612
+ "required": [
2613
+ "id",
2614
+ "status",
2615
+ "startedAt",
2616
+ "step",
2617
+ "data"
2618
+ ]
2619
+ },
2620
+ "SucceededWorkflowState": {
2621
+ "type": "object",
2622
+ "properties": {
2623
+ "id": { "type": "string" },
2624
+ "status": { "const": "succeeded" },
2625
+ "startedAt": {
2626
+ "type": "string",
2627
+ "format": "date-time"
2628
+ },
2629
+ "completedAt": {
2630
+ "type": "string",
2631
+ "format": "date-time"
2632
+ },
2633
+ "step": { "$ref": "#/components/schemas/StepStatus" },
2634
+ "config": {
2635
+ "description": "The validated app configuration recorded at install time. Present so uninstallation can be sourced from what was actually installed rather than the current request config. Absent on states persisted before this field was introduced.",
2636
+ "type": "object",
2637
+ "additionalProperties": true
2638
+ },
2639
+ "data": { "anyOf": [{
2640
+ "type": "object",
2641
+ "propertyNames": { "type": "string" },
2642
+ "additionalProperties": {}
2643
+ }, { "type": "null" }] },
2644
+ "metadata": {
2645
+ "type": "object",
2646
+ "properties": { "isRetry": { "type": "boolean" } },
2647
+ "required": ["isRetry"]
2648
+ }
2649
+ },
2650
+ "not": {
2651
+ "properties": { "operation": {} },
2652
+ "required": ["operation"]
2653
+ },
2654
+ "required": [
2655
+ "id",
2656
+ "status",
2657
+ "startedAt",
2658
+ "completedAt",
2659
+ "step",
2660
+ "data"
2661
+ ]
2662
+ },
2663
+ "FailedWorkflowState": {
2664
+ "type": "object",
2665
+ "properties": {
2666
+ "id": { "type": "string" },
2667
+ "status": { "const": "failed" },
2668
+ "startedAt": {
2669
+ "type": "string",
2670
+ "format": "date-time"
2671
+ },
2672
+ "completedAt": {
2673
+ "type": "string",
2674
+ "format": "date-time"
2675
+ },
2676
+ "step": { "$ref": "#/components/schemas/StepStatus" },
2677
+ "config": {
2678
+ "description": "The validated app configuration recorded at install time. Present so uninstallation can be sourced from what was actually installed rather than the current request config. Absent on states persisted before this field was introduced.",
2679
+ "type": "object",
2680
+ "additionalProperties": true
2681
+ },
2682
+ "data": { "anyOf": [{
2683
+ "type": "object",
2684
+ "propertyNames": { "type": "string" },
2685
+ "additionalProperties": {}
2686
+ }, { "type": "null" }] },
2687
+ "error": {
2688
+ "type": "object",
2689
+ "properties": {
2690
+ "path": {
2691
+ "type": "array",
2692
+ "items": { "type": "string" }
2693
+ },
2694
+ "key": { "type": "string" },
2695
+ "message": { "type": "string" },
2696
+ "payload": {}
2697
+ },
2698
+ "required": ["path", "key"]
2699
+ },
2700
+ "metadata": {
2701
+ "type": "object",
2702
+ "properties": { "isRetry": { "type": "boolean" } },
2703
+ "required": ["isRetry"]
2704
+ }
2705
+ },
2706
+ "not": {
2707
+ "properties": { "operation": {} },
2708
+ "required": ["operation"]
2709
+ },
2710
+ "required": [
2711
+ "id",
2712
+ "status",
2713
+ "startedAt",
2714
+ "completedAt",
2715
+ "step",
2716
+ "data",
2717
+ "error"
2718
+ ]
2719
+ },
2720
+ "ActiveLifecycleAttemptState": { "allOf": [{ "$ref": "#/components/schemas/LifecycleAttemptStateBase" }, {
2721
+ "type": "object",
2722
+ "properties": { "status": {
2723
+ "type": "string",
2724
+ "enum": ["pending", "in-progress"]
2725
+ } },
2726
+ "required": ["status"]
2727
+ }] },
2728
+ "SucceededLifecycleAttemptState": { "allOf": [{ "$ref": "#/components/schemas/LifecycleAttemptStateBase" }, {
2729
+ "type": "object",
2730
+ "properties": {
2731
+ "status": { "const": "succeeded" },
2732
+ "result": {
2733
+ "type": "object",
2734
+ "properties": {
2735
+ "snapshotId": { "type": "string" },
2736
+ "appVersion": { "type": "string" }
2737
+ },
2738
+ "required": ["snapshotId", "appVersion"]
2739
+ }
2740
+ },
2741
+ "required": ["status", "result"]
2742
+ }] },
2743
+ "FailedLifecycleAttemptState": { "allOf": [{ "$ref": "#/components/schemas/LifecycleAttemptStateBase" }, {
2744
+ "type": "object",
2745
+ "properties": {
2746
+ "status": { "const": "failed" },
2747
+ "failure": {
2748
+ "type": "object",
2749
+ "properties": {
2750
+ "path": {
2751
+ "type": "array",
2752
+ "items": { "type": "string" }
2753
+ },
2754
+ "key": { "type": "string" },
2755
+ "message": { "type": "string" },
2756
+ "payload": {}
2757
+ },
2758
+ "required": ["path", "key"]
2759
+ }
2760
+ },
2761
+ "required": ["status", "failure"]
2762
+ }] },
2763
+ "AdminUiOrderViewNavigationButton": {
2764
+ "type": "object",
2765
+ "properties": {
2766
+ "type": {
2767
+ "type": "string",
2768
+ "const": "view"
2769
+ },
2770
+ "id": {
2771
+ "type": "string",
2772
+ "minLength": 1
2773
+ },
2774
+ "label": {
2775
+ "type": "string",
2776
+ "minLength": 1
2777
+ },
2778
+ "description": {
2779
+ "type": "string",
2780
+ "minLength": 1
2781
+ },
2782
+ "path": {
2783
+ "type": "string",
2784
+ "minLength": 1
2785
+ },
2786
+ "level": {
2787
+ "type": "number",
2788
+ "enum": [
2789
+ -1,
2790
+ 0,
2791
+ 1
2792
+ ]
2793
+ },
2794
+ "sortOrder": {
2795
+ "type": "number",
2796
+ "minimum": 1
2797
+ },
2798
+ "confirm": { "$ref": "#/components/schemas/AdminUiConfirm" },
2799
+ "sandboxPermissions": { "$ref": "#/components/schemas/AdminUiSandboxPermissions" },
2800
+ "notifications": { "$ref": "#/components/schemas/AdminUiNotifications" }
2801
+ },
2802
+ "required": [
2803
+ "type",
2804
+ "id",
2805
+ "label",
2806
+ "path"
2807
+ ]
2808
+ },
2809
+ "AdminUiOrderViewWorkerButton": {
2810
+ "type": "object",
2811
+ "properties": {
2812
+ "type": {
2813
+ "type": "string",
2814
+ "const": "worker"
2815
+ },
2816
+ "id": {
2817
+ "type": "string",
2818
+ "minLength": 1
2819
+ },
2820
+ "label": {
2821
+ "type": "string",
2822
+ "minLength": 1
2823
+ },
2824
+ "description": {
2825
+ "type": "string",
2826
+ "minLength": 1
2827
+ },
2828
+ "runtimeAction": {
2829
+ "type": "string",
2830
+ "minLength": 1
2831
+ },
2832
+ "level": {
2833
+ "type": "number",
2834
+ "enum": [
2835
+ -1,
2836
+ 0,
2837
+ 1
2838
+ ]
2839
+ },
2840
+ "sortOrder": {
2841
+ "type": "number",
2842
+ "minimum": 1
2843
+ },
2844
+ "confirm": { "$ref": "#/components/schemas/AdminUiConfirm" },
2845
+ "timeout": {
2846
+ "type": "number",
2847
+ "minimum": 1
2848
+ },
2849
+ "notifications": { "$ref": "#/components/schemas/AdminUiNotifications" }
2850
+ },
2851
+ "required": [
2852
+ "type",
2853
+ "id",
2854
+ "label",
2855
+ "runtimeAction"
2856
+ ]
2930
2857
  }
2931
2858
  },
2932
2859
  "securitySchemes": { "imsOAuth": {