@apexops/contracts 0.10.0-next.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 (101) hide show
  1. package/dist/.tsbuildinfo +1 -0
  2. package/dist/artifacts.d.ts +60 -0
  3. package/dist/artifacts.d.ts.map +1 -0
  4. package/dist/artifacts.js +46 -0
  5. package/dist/artifacts.js.map +1 -0
  6. package/dist/common.d.ts +22 -0
  7. package/dist/common.d.ts.map +1 -0
  8. package/dist/common.js +23 -0
  9. package/dist/common.js.map +1 -0
  10. package/dist/deployment.d.ts +100 -0
  11. package/dist/deployment.d.ts.map +1 -0
  12. package/dist/deployment.js +108 -0
  13. package/dist/deployment.js.map +1 -0
  14. package/dist/evidence.d.ts +256 -0
  15. package/dist/evidence.d.ts.map +1 -0
  16. package/dist/evidence.js +382 -0
  17. package/dist/evidence.js.map +1 -0
  18. package/dist/export-schemas.d.ts +2 -0
  19. package/dist/export-schemas.d.ts.map +1 -0
  20. package/dist/export-schemas.js +53 -0
  21. package/dist/export-schemas.js.map +1 -0
  22. package/dist/improvement.d.ts +92 -0
  23. package/dist/improvement.d.ts.map +1 -0
  24. package/dist/improvement.js +119 -0
  25. package/dist/improvement.js.map +1 -0
  26. package/dist/index.d.ts +983 -0
  27. package/dist/index.d.ts.map +1 -0
  28. package/dist/index.js +128 -0
  29. package/dist/index.js.map +1 -0
  30. package/dist/onboarding.d.ts +15 -0
  31. package/dist/onboarding.d.ts.map +1 -0
  32. package/dist/onboarding.js +17 -0
  33. package/dist/onboarding.js.map +1 -0
  34. package/dist/pricing.d.ts +130 -0
  35. package/dist/pricing.d.ts.map +1 -0
  36. package/dist/pricing.js +355 -0
  37. package/dist/pricing.js.map +1 -0
  38. package/dist/runtime.d.ts +284 -0
  39. package/dist/runtime.d.ts.map +1 -0
  40. package/dist/runtime.js +196 -0
  41. package/dist/runtime.js.map +1 -0
  42. package/dist/schema-export.d.ts +15 -0
  43. package/dist/schema-export.d.ts.map +1 -0
  44. package/dist/schema-export.js +49 -0
  45. package/dist/schema-export.js.map +1 -0
  46. package/dist/targets.d.ts +359 -0
  47. package/dist/targets.d.ts.map +1 -0
  48. package/dist/targets.js +394 -0
  49. package/dist/targets.js.map +1 -0
  50. package/dist/test/contracts.test.d.ts +2 -0
  51. package/dist/test/contracts.test.d.ts.map +1 -0
  52. package/dist/test/contracts.test.js +867 -0
  53. package/dist/test/contracts.test.js.map +1 -0
  54. package/package.json +45 -0
  55. package/schemas/approval-evidence-v1.schema.json +172 -0
  56. package/schemas/architecture-availability-v1.schema.json +155 -0
  57. package/schemas/architecture-v1.schema.json +107 -0
  58. package/schemas/capability-pack-manifest-v1.schema.json +59 -0
  59. package/schemas/client-outcome-comparison-v1.schema.json +195 -0
  60. package/schemas/client-outcome-qualification-v1.schema.json +190 -0
  61. package/schemas/client-outcome-v1.schema.json +513 -0
  62. package/schemas/contract-metadata.json +232 -0
  63. package/schemas/cost-estimate-v1.schema.json +165 -0
  64. package/schemas/customization-lock-v1.schema.json +63 -0
  65. package/schemas/deployment-preview-v1.schema.json +180 -0
  66. package/schemas/diagnosis-v1.schema.json +111 -0
  67. package/schemas/environment-inputs-v1.schema.json +106 -0
  68. package/schemas/event-v1.schema.json +74 -0
  69. package/schemas/evidence-manifest-v1.schema.json +111 -0
  70. package/schemas/execution-plan-attestation-v1.schema.json +145 -0
  71. package/schemas/governance-constraints-v1.schema.json +103 -0
  72. package/schemas/iac-binding-v1.schema.json +74 -0
  73. package/schemas/iac-handoff-v1.schema.json +83 -0
  74. package/schemas/implementation-intent-v1.schema.json +89 -0
  75. package/schemas/improvement-decision-v1.schema.json +62 -0
  76. package/schemas/improvement-observation-v1.schema.json +166 -0
  77. package/schemas/improvement-policy-v1.schema.json +204 -0
  78. package/schemas/improvement-proposal-v1.schema.json +144 -0
  79. package/schemas/improvement-recurrence-v1.schema.json +130 -0
  80. package/schemas/input-request-v1.schema.json +242 -0
  81. package/schemas/input-submission-v1.schema.json +205 -0
  82. package/schemas/live-qualification-v1.schema.json +295 -0
  83. package/schemas/logical-resource-manifest-v1.schema.json +123 -0
  84. package/schemas/onboarding-config-v1.schema.json +59 -0
  85. package/schemas/operation-record-v1.schema.json +112 -0
  86. package/schemas/policy-property-map-v1.schema.json +108 -0
  87. package/schemas/pricing-evidence-v1.schema.json +628 -0
  88. package/schemas/pricing-request-v1.schema.json +424 -0
  89. package/schemas/project-config-v1.schema.json +43 -0
  90. package/schemas/quality-measurements-v1.schema.json +54 -0
  91. package/schemas/quality-report-v1.schema.json +114 -0
  92. package/schemas/quality-scorecard-v1.schema.json +109 -0
  93. package/schemas/requirements-v1.schema.json +108 -0
  94. package/schemas/resource-inventory-v1.schema.json +74 -0
  95. package/schemas/review-findings-v1.schema.json +126 -0
  96. package/schemas/run-config-v1.schema.json +133 -0
  97. package/schemas/runtime-bundle-lock-v1.schema.json +59 -0
  98. package/schemas/scenario-v1.schema.json +55 -0
  99. package/schemas/task-envelope-v1.schema.json +122 -0
  100. package/schemas/telemetry-v1.schema.json +117 -0
  101. package/schemas/workload-decision-manifest-v1.schema.json +320 -0
@@ -0,0 +1,109 @@
1
+ {
2
+ "$id": "https://schemas.apexops.dev/quality-scorecard-v1.json",
3
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
4
+ "additionalProperties": false,
5
+ "properties": {
6
+ "frozenAt": {
7
+ "format": "date-time",
8
+ "type": "string"
9
+ },
10
+ "rules": {
11
+ "items": {
12
+ "additionalProperties": false,
13
+ "properties": {
14
+ "direction": {
15
+ "anyOf": [
16
+ {
17
+ "const": "min",
18
+ "type": "string"
19
+ },
20
+ {
21
+ "const": "max",
22
+ "type": "string"
23
+ },
24
+ {
25
+ "const": "exact",
26
+ "type": "string"
27
+ }
28
+ ]
29
+ },
30
+ "metric": {
31
+ "minLength": 1,
32
+ "type": "string"
33
+ },
34
+ "minimumSamples": {
35
+ "minimum": 1,
36
+ "type": "integer"
37
+ },
38
+ "owner": {
39
+ "minLength": 1,
40
+ "type": "string"
41
+ },
42
+ "scenario": {
43
+ "minLength": 1,
44
+ "type": "string"
45
+ },
46
+ "source": {
47
+ "anyOf": [
48
+ {
49
+ "const": "kernel",
50
+ "type": "string"
51
+ },
52
+ {
53
+ "const": "vscode",
54
+ "type": "string"
55
+ },
56
+ {
57
+ "const": "estimated",
58
+ "type": "string"
59
+ }
60
+ ]
61
+ },
62
+ "target": {
63
+ "type": "number"
64
+ },
65
+ "tolerance": {
66
+ "minimum": 0,
67
+ "type": "number"
68
+ },
69
+ "unavailable": {
70
+ "anyOf": [
71
+ {
72
+ "const": "block",
73
+ "type": "string"
74
+ },
75
+ {
76
+ "const": "omit-claim",
77
+ "type": "string"
78
+ }
79
+ ]
80
+ }
81
+ },
82
+ "required": [
83
+ "metric",
84
+ "direction",
85
+ "target",
86
+ "tolerance",
87
+ "scenario",
88
+ "minimumSamples",
89
+ "source",
90
+ "owner",
91
+ "unavailable"
92
+ ],
93
+ "type": "object"
94
+ },
95
+ "minItems": 1,
96
+ "type": "array"
97
+ },
98
+ "schemaVersion": {
99
+ "const": "1.0.0",
100
+ "type": "string"
101
+ }
102
+ },
103
+ "required": [
104
+ "schemaVersion",
105
+ "frozenAt",
106
+ "rules"
107
+ ],
108
+ "type": "object"
109
+ }
@@ -0,0 +1,108 @@
1
+ {
2
+ "$id": "https://schemas.apexops.dev/requirements-v1.json",
3
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
4
+ "additionalProperties": false,
5
+ "properties": {
6
+ "assumptions": {
7
+ "items": {
8
+ "minLength": 1,
9
+ "type": "string"
10
+ },
11
+ "type": "array"
12
+ },
13
+ "environment": {
14
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
15
+ "type": "string"
16
+ },
17
+ "projectId": {
18
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
19
+ "type": "string"
20
+ },
21
+ "requirements": {
22
+ "items": {
23
+ "additionalProperties": false,
24
+ "properties": {
25
+ "id": {
26
+ "minLength": 1,
27
+ "type": "string"
28
+ },
29
+ "priority": {
30
+ "anyOf": [
31
+ {
32
+ "const": "must",
33
+ "type": "string"
34
+ },
35
+ {
36
+ "const": "should",
37
+ "type": "string"
38
+ },
39
+ {
40
+ "const": "could",
41
+ "type": "string"
42
+ }
43
+ ]
44
+ },
45
+ "source": {
46
+ "minLength": 1,
47
+ "type": "string"
48
+ },
49
+ "statement": {
50
+ "minLength": 1,
51
+ "type": "string"
52
+ },
53
+ "status": {
54
+ "anyOf": [
55
+ {
56
+ "const": "confirmed",
57
+ "type": "string"
58
+ },
59
+ {
60
+ "const": "unknown",
61
+ "type": "string"
62
+ },
63
+ {
64
+ "const": "deferred",
65
+ "type": "string"
66
+ }
67
+ ]
68
+ }
69
+ },
70
+ "required": [
71
+ "id",
72
+ "statement",
73
+ "priority",
74
+ "status",
75
+ "source"
76
+ ],
77
+ "type": "object"
78
+ },
79
+ "minItems": 1,
80
+ "type": "array"
81
+ },
82
+ "schemaVersion": {
83
+ "const": "1.0.0",
84
+ "type": "string"
85
+ },
86
+ "unknowns": {
87
+ "items": {
88
+ "minLength": 1,
89
+ "type": "string"
90
+ },
91
+ "type": "array"
92
+ },
93
+ "workload": {
94
+ "minLength": 1,
95
+ "type": "string"
96
+ }
97
+ },
98
+ "required": [
99
+ "schemaVersion",
100
+ "projectId",
101
+ "workload",
102
+ "environment",
103
+ "requirements",
104
+ "assumptions",
105
+ "unknowns"
106
+ ],
107
+ "type": "object"
108
+ }
@@ -0,0 +1,74 @@
1
+ {
2
+ "$id": "https://schemas.apexops.dev/resource-inventory-v1.json",
3
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
4
+ "additionalProperties": false,
5
+ "properties": {
6
+ "collectedAt": {
7
+ "format": "date-time",
8
+ "type": "string"
9
+ },
10
+ "deploymentHash": {
11
+ "pattern": "^[0-9a-f]{64}$",
12
+ "type": "string"
13
+ },
14
+ "projectId": {
15
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
16
+ "type": "string"
17
+ },
18
+ "resources": {
19
+ "items": {
20
+ "additionalProperties": false,
21
+ "properties": {
22
+ "location": {
23
+ "minLength": 1,
24
+ "type": "string"
25
+ },
26
+ "logicalId": {
27
+ "minLength": 1,
28
+ "type": "string"
29
+ },
30
+ "properties": {
31
+ "patternProperties": {
32
+ "^(.*)$": {}
33
+ },
34
+ "type": "object"
35
+ },
36
+ "resourceId": {
37
+ "minLength": 1,
38
+ "type": "string"
39
+ },
40
+ "type": {
41
+ "minLength": 1,
42
+ "type": "string"
43
+ }
44
+ },
45
+ "required": [
46
+ "logicalId",
47
+ "resourceId",
48
+ "type",
49
+ "location",
50
+ "properties"
51
+ ],
52
+ "type": "object"
53
+ },
54
+ "type": "array"
55
+ },
56
+ "runId": {
57
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]{0,127}$",
58
+ "type": "string"
59
+ },
60
+ "schemaVersion": {
61
+ "const": "1.0.0",
62
+ "type": "string"
63
+ }
64
+ },
65
+ "required": [
66
+ "schemaVersion",
67
+ "projectId",
68
+ "runId",
69
+ "deploymentHash",
70
+ "collectedAt",
71
+ "resources"
72
+ ],
73
+ "type": "object"
74
+ }
@@ -0,0 +1,126 @@
1
+ {
2
+ "$id": "https://schemas.apexops.dev/review-findings-v1.json",
3
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
4
+ "additionalProperties": false,
5
+ "properties": {
6
+ "findings": {
7
+ "items": {
8
+ "additionalProperties": false,
9
+ "properties": {
10
+ "detail": {
11
+ "minLength": 1,
12
+ "type": "string"
13
+ },
14
+ "disposition": {
15
+ "anyOf": [
16
+ {
17
+ "const": "open",
18
+ "type": "string"
19
+ },
20
+ {
21
+ "const": "accepted",
22
+ "type": "string"
23
+ },
24
+ {
25
+ "const": "remediated",
26
+ "type": "string"
27
+ },
28
+ {
29
+ "const": "dismissed",
30
+ "type": "string"
31
+ }
32
+ ]
33
+ },
34
+ "evidenceRefs": {
35
+ "items": {
36
+ "pattern": "^[0-9a-f]{64}$",
37
+ "type": "string"
38
+ },
39
+ "type": "array",
40
+ "uniqueItems": true
41
+ },
42
+ "id": {
43
+ "minLength": 1,
44
+ "type": "string"
45
+ },
46
+ "resolution": {
47
+ "minLength": 1,
48
+ "type": "string"
49
+ },
50
+ "severity": {
51
+ "anyOf": [
52
+ {
53
+ "const": "critical",
54
+ "type": "string"
55
+ },
56
+ {
57
+ "const": "high",
58
+ "type": "string"
59
+ },
60
+ {
61
+ "const": "medium",
62
+ "type": "string"
63
+ },
64
+ {
65
+ "const": "low",
66
+ "type": "string"
67
+ },
68
+ {
69
+ "const": "info",
70
+ "type": "string"
71
+ }
72
+ ]
73
+ },
74
+ "title": {
75
+ "minLength": 1,
76
+ "type": "string"
77
+ }
78
+ },
79
+ "required": [
80
+ "id",
81
+ "severity",
82
+ "disposition",
83
+ "title",
84
+ "detail",
85
+ "evidenceRefs"
86
+ ],
87
+ "type": "object"
88
+ },
89
+ "type": "array"
90
+ },
91
+ "projectId": {
92
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
93
+ "type": "string"
94
+ },
95
+ "reviewedAt": {
96
+ "format": "date-time",
97
+ "type": "string"
98
+ },
99
+ "runId": {
100
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]{0,127}$",
101
+ "type": "string"
102
+ },
103
+ "schemaVersion": {
104
+ "const": "1.0.0",
105
+ "type": "string"
106
+ },
107
+ "subjectHash": {
108
+ "pattern": "^[0-9a-f]{64}$",
109
+ "type": "string"
110
+ },
111
+ "subjectKind": {
112
+ "minLength": 1,
113
+ "type": "string"
114
+ }
115
+ },
116
+ "required": [
117
+ "schemaVersion",
118
+ "projectId",
119
+ "runId",
120
+ "subjectKind",
121
+ "subjectHash",
122
+ "reviewedAt",
123
+ "findings"
124
+ ],
125
+ "type": "object"
126
+ }
@@ -0,0 +1,133 @@
1
+ {
2
+ "$id": "https://schemas.apexops.dev/run-config-v1.json",
3
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
4
+ "additionalProperties": false,
5
+ "properties": {
6
+ "createdAt": {
7
+ "format": "date-time",
8
+ "type": "string"
9
+ },
10
+ "environment": {
11
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
12
+ "type": "string"
13
+ },
14
+ "gates": {
15
+ "items": {
16
+ "additionalProperties": false,
17
+ "properties": {
18
+ "decidedAt": {
19
+ "format": "date-time",
20
+ "type": "string"
21
+ },
22
+ "dependencyHash": {
23
+ "pattern": "^[0-9a-f]{64}$",
24
+ "type": "string"
25
+ },
26
+ "gate": {
27
+ "maximum": 4,
28
+ "minimum": 1,
29
+ "type": "integer"
30
+ },
31
+ "inheritedFromRunId": {
32
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]{0,127}$",
33
+ "type": "string"
34
+ },
35
+ "reason": {
36
+ "minLength": 1,
37
+ "type": "string"
38
+ },
39
+ "state": {
40
+ "anyOf": [
41
+ {
42
+ "const": "closed",
43
+ "type": "string"
44
+ },
45
+ {
46
+ "const": "open",
47
+ "type": "string"
48
+ },
49
+ {
50
+ "const": "approved",
51
+ "type": "string"
52
+ },
53
+ {
54
+ "const": "inherited",
55
+ "type": "string"
56
+ },
57
+ {
58
+ "const": "rejected",
59
+ "type": "string"
60
+ },
61
+ {
62
+ "const": "invalidated",
63
+ "type": "string"
64
+ }
65
+ ]
66
+ }
67
+ },
68
+ "required": [
69
+ "gate",
70
+ "state",
71
+ "dependencyHash"
72
+ ],
73
+ "type": "object"
74
+ },
75
+ "maxItems": 4,
76
+ "minItems": 4,
77
+ "type": "array"
78
+ },
79
+ "iacTool": {
80
+ "anyOf": [
81
+ {
82
+ "const": "bicep",
83
+ "type": "string"
84
+ },
85
+ {
86
+ "const": "terraform",
87
+ "type": "string"
88
+ }
89
+ ]
90
+ },
91
+ "ownerEpoch": {
92
+ "minimum": 1,
93
+ "type": "integer"
94
+ },
95
+ "parentRunId": {
96
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]{0,127}$",
97
+ "type": "string"
98
+ },
99
+ "projectId": {
100
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
101
+ "type": "string"
102
+ },
103
+ "runId": {
104
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]{0,127}$",
105
+ "type": "string"
106
+ },
107
+ "runtimeLockHash": {
108
+ "pattern": "^[0-9a-f]{64}$",
109
+ "type": "string"
110
+ },
111
+ "schemaVersion": {
112
+ "const": "1.0.0",
113
+ "type": "string"
114
+ },
115
+ "targetScope": {
116
+ "minLength": 1,
117
+ "type": "string"
118
+ }
119
+ },
120
+ "required": [
121
+ "schemaVersion",
122
+ "projectId",
123
+ "runId",
124
+ "environment",
125
+ "targetScope",
126
+ "iacTool",
127
+ "createdAt",
128
+ "runtimeLockHash",
129
+ "ownerEpoch",
130
+ "gates"
131
+ ],
132
+ "type": "object"
133
+ }
@@ -0,0 +1,59 @@
1
+ {
2
+ "$id": "https://schemas.apexops.dev/runtime-bundle-lock-v1.json",
3
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
4
+ "additionalProperties": false,
5
+ "properties": {
6
+ "cliVersion": {
7
+ "minLength": 1,
8
+ "type": "string"
9
+ },
10
+ "customizationVersion": {
11
+ "minLength": 1,
12
+ "type": "string"
13
+ },
14
+ "defaultsHash": {
15
+ "pattern": "^[0-9a-f]{64}$",
16
+ "type": "string"
17
+ },
18
+ "improvementPolicyHash": {
19
+ "pattern": "^[0-9a-f]{64}$",
20
+ "type": "string"
21
+ },
22
+ "qualityScorecardHash": {
23
+ "pattern": "^[0-9a-f]{64}$",
24
+ "type": "string"
25
+ },
26
+ "requiredCapabilityPacks": {
27
+ "items": {
28
+ "minLength": 1,
29
+ "type": "string"
30
+ },
31
+ "type": "array",
32
+ "uniqueItems": true
33
+ },
34
+ "schemaVersion": {
35
+ "const": "1.0.0",
36
+ "type": "string"
37
+ },
38
+ "validatorHash": {
39
+ "pattern": "^[0-9a-f]{64}$",
40
+ "type": "string"
41
+ },
42
+ "workflowHash": {
43
+ "pattern": "^[0-9a-f]{64}$",
44
+ "type": "string"
45
+ }
46
+ },
47
+ "required": [
48
+ "schemaVersion",
49
+ "cliVersion",
50
+ "customizationVersion",
51
+ "workflowHash",
52
+ "defaultsHash",
53
+ "validatorHash",
54
+ "qualityScorecardHash",
55
+ "improvementPolicyHash",
56
+ "requiredCapabilityPacks"
57
+ ],
58
+ "type": "object"
59
+ }
@@ -0,0 +1,55 @@
1
+ {
2
+ "$id": "https://schemas.apexops.dev/scenario-v1.json",
3
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
4
+ "additionalProperties": false,
5
+ "properties": {
6
+ "description": {
7
+ "minLength": 1,
8
+ "type": "string"
9
+ },
10
+ "expectedOutcomes": {
11
+ "items": {
12
+ "minLength": 1,
13
+ "type": "string"
14
+ },
15
+ "minItems": 1,
16
+ "type": "array"
17
+ },
18
+ "id": {
19
+ "minLength": 1,
20
+ "type": "string"
21
+ },
22
+ "inputs": {
23
+ "patternProperties": {
24
+ "^(.*)$": {}
25
+ },
26
+ "type": "object"
27
+ },
28
+ "schemaVersion": {
29
+ "const": "1.0.0",
30
+ "type": "string"
31
+ },
32
+ "tags": {
33
+ "items": {
34
+ "minLength": 1,
35
+ "type": "string"
36
+ },
37
+ "type": "array",
38
+ "uniqueItems": true
39
+ },
40
+ "title": {
41
+ "minLength": 1,
42
+ "type": "string"
43
+ }
44
+ },
45
+ "required": [
46
+ "schemaVersion",
47
+ "id",
48
+ "title",
49
+ "description",
50
+ "inputs",
51
+ "expectedOutcomes",
52
+ "tags"
53
+ ],
54
+ "type": "object"
55
+ }