@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,74 @@
1
+ {
2
+ "$id": "https://schemas.apexops.dev/iac-binding-v1.json",
3
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
4
+ "additionalProperties": false,
5
+ "properties": {
6
+ "intentHash": {
7
+ "pattern": "^[0-9a-f]{64}$",
8
+ "type": "string"
9
+ },
10
+ "projectId": {
11
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
12
+ "type": "string"
13
+ },
14
+ "resourceBindings": {
15
+ "patternProperties": {
16
+ "^(.*)$": {
17
+ "additionalProperties": false,
18
+ "properties": {
19
+ "implementation": {
20
+ "minLength": 1,
21
+ "type": "string"
22
+ },
23
+ "parameters": {
24
+ "patternProperties": {
25
+ "^(.*)$": {}
26
+ },
27
+ "type": "object"
28
+ },
29
+ "version": {
30
+ "minLength": 1,
31
+ "type": "string"
32
+ }
33
+ },
34
+ "required": [
35
+ "implementation",
36
+ "version",
37
+ "parameters"
38
+ ],
39
+ "type": "object"
40
+ }
41
+ },
42
+ "type": "object"
43
+ },
44
+ "runId": {
45
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]{0,127}$",
46
+ "type": "string"
47
+ },
48
+ "schemaVersion": {
49
+ "const": "1.0.0",
50
+ "type": "string"
51
+ },
52
+ "track": {
53
+ "anyOf": [
54
+ {
55
+ "const": "bicep",
56
+ "type": "string"
57
+ },
58
+ {
59
+ "const": "terraform",
60
+ "type": "string"
61
+ }
62
+ ]
63
+ }
64
+ },
65
+ "required": [
66
+ "schemaVersion",
67
+ "projectId",
68
+ "runId",
69
+ "track",
70
+ "intentHash",
71
+ "resourceBindings"
72
+ ],
73
+ "type": "object"
74
+ }
@@ -0,0 +1,83 @@
1
+ {
2
+ "$id": "https://schemas.apexops.dev/iac-handoff-v1.json",
3
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
4
+ "additionalProperties": false,
5
+ "properties": {
6
+ "bindingHash": {
7
+ "pattern": "^[0-9a-f]{64}$",
8
+ "type": "string"
9
+ },
10
+ "environmentInputsHash": {
11
+ "pattern": "^[0-9a-f]{64}$",
12
+ "type": "string"
13
+ },
14
+ "generatedAt": {
15
+ "format": "date-time",
16
+ "type": "string"
17
+ },
18
+ "intentHash": {
19
+ "pattern": "^[0-9a-f]{64}$",
20
+ "type": "string"
21
+ },
22
+ "logicalResourceManifestHash": {
23
+ "pattern": "^[0-9a-f]{64}$",
24
+ "type": "string"
25
+ },
26
+ "projectId": {
27
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
28
+ "type": "string"
29
+ },
30
+ "requiredToolVersions": {
31
+ "patternProperties": {
32
+ "^(.*)$": {
33
+ "minLength": 1,
34
+ "type": "string"
35
+ }
36
+ },
37
+ "type": "object"
38
+ },
39
+ "rootPath": {
40
+ "minLength": 1,
41
+ "type": "string"
42
+ },
43
+ "runId": {
44
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]{0,127}$",
45
+ "type": "string"
46
+ },
47
+ "schemaVersion": {
48
+ "const": "1.0.0",
49
+ "type": "string"
50
+ },
51
+ "track": {
52
+ "anyOf": [
53
+ {
54
+ "const": "bicep",
55
+ "type": "string"
56
+ },
57
+ {
58
+ "const": "terraform",
59
+ "type": "string"
60
+ }
61
+ ]
62
+ },
63
+ "treeHash": {
64
+ "pattern": "^[0-9a-f]{64}$",
65
+ "type": "string"
66
+ }
67
+ },
68
+ "required": [
69
+ "schemaVersion",
70
+ "projectId",
71
+ "runId",
72
+ "track",
73
+ "rootPath",
74
+ "treeHash",
75
+ "intentHash",
76
+ "bindingHash",
77
+ "environmentInputsHash",
78
+ "logicalResourceManifestHash",
79
+ "requiredToolVersions",
80
+ "generatedAt"
81
+ ],
82
+ "type": "object"
83
+ }
@@ -0,0 +1,89 @@
1
+ {
2
+ "$id": "https://schemas.apexops.dev/implementation-intent-v1.json",
3
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
4
+ "additionalProperties": false,
5
+ "properties": {
6
+ "outputs": {
7
+ "items": {
8
+ "minLength": 1,
9
+ "type": "string"
10
+ },
11
+ "type": "array"
12
+ },
13
+ "projectId": {
14
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
15
+ "type": "string"
16
+ },
17
+ "resources": {
18
+ "items": {
19
+ "additionalProperties": false,
20
+ "properties": {
21
+ "controls": {
22
+ "items": {
23
+ "minLength": 1,
24
+ "type": "string"
25
+ },
26
+ "type": "array",
27
+ "uniqueItems": true
28
+ },
29
+ "dependsOn": {
30
+ "items": {
31
+ "minLength": 1,
32
+ "type": "string"
33
+ },
34
+ "type": "array",
35
+ "uniqueItems": true
36
+ },
37
+ "id": {
38
+ "minLength": 1,
39
+ "type": "string"
40
+ },
41
+ "purpose": {
42
+ "minLength": 1,
43
+ "type": "string"
44
+ },
45
+ "type": {
46
+ "minLength": 1,
47
+ "type": "string"
48
+ }
49
+ },
50
+ "required": [
51
+ "id",
52
+ "type",
53
+ "purpose",
54
+ "dependsOn",
55
+ "controls"
56
+ ],
57
+ "type": "object"
58
+ },
59
+ "minItems": 1,
60
+ "type": "array"
61
+ },
62
+ "runId": {
63
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]{0,127}$",
64
+ "type": "string"
65
+ },
66
+ "schemaVersion": {
67
+ "const": "1.0.0",
68
+ "type": "string"
69
+ },
70
+ "sourceHashes": {
71
+ "patternProperties": {
72
+ "^(.*)$": {
73
+ "pattern": "^[0-9a-f]{64}$",
74
+ "type": "string"
75
+ }
76
+ },
77
+ "type": "object"
78
+ }
79
+ },
80
+ "required": [
81
+ "schemaVersion",
82
+ "projectId",
83
+ "runId",
84
+ "sourceHashes",
85
+ "resources",
86
+ "outputs"
87
+ ],
88
+ "type": "object"
89
+ }
@@ -0,0 +1,62 @@
1
+ {
2
+ "$id": "https://schemas.apexops.dev/improvement-decision-v1.json",
3
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
4
+ "additionalProperties": false,
5
+ "properties": {
6
+ "actor": {
7
+ "minLength": 1,
8
+ "type": "string"
9
+ },
10
+ "decidedAt": {
11
+ "format": "date-time",
12
+ "type": "string"
13
+ },
14
+ "decision": {
15
+ "anyOf": [
16
+ {
17
+ "const": "accepted",
18
+ "type": "string"
19
+ },
20
+ {
21
+ "const": "rejected",
22
+ "type": "string"
23
+ },
24
+ {
25
+ "const": "deferred",
26
+ "type": "string"
27
+ }
28
+ ]
29
+ },
30
+ "externalRef": {
31
+ "pattern": "^https://github\\.com/[^/]+/[^/]+/(?:issues|pull)/[1-9][0-9]*$",
32
+ "type": "string"
33
+ },
34
+ "projectId": {
35
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
36
+ "type": "string"
37
+ },
38
+ "proposalId": {
39
+ "pattern": "^[0-9a-f]{64}$",
40
+ "type": "string"
41
+ },
42
+ "rationale": {
43
+ "maxLength": 2048,
44
+ "minLength": 1,
45
+ "type": "string"
46
+ },
47
+ "schemaVersion": {
48
+ "const": "1.0.0",
49
+ "type": "string"
50
+ }
51
+ },
52
+ "required": [
53
+ "schemaVersion",
54
+ "projectId",
55
+ "proposalId",
56
+ "decidedAt",
57
+ "actor",
58
+ "decision",
59
+ "rationale"
60
+ ],
61
+ "type": "object"
62
+ }
@@ -0,0 +1,166 @@
1
+ {
2
+ "$id": "https://schemas.apexops.dev/improvement-observation-v1.json",
3
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
4
+ "additionalProperties": false,
5
+ "properties": {
6
+ "category": {
7
+ "anyOf": [
8
+ {
9
+ "const": "correctness",
10
+ "type": "string"
11
+ },
12
+ {
13
+ "const": "security",
14
+ "type": "string"
15
+ },
16
+ {
17
+ "const": "reliability",
18
+ "type": "string"
19
+ },
20
+ {
21
+ "const": "performance",
22
+ "type": "string"
23
+ },
24
+ {
25
+ "const": "usability",
26
+ "type": "string"
27
+ },
28
+ {
29
+ "const": "documentation",
30
+ "type": "string"
31
+ },
32
+ {
33
+ "const": "capability-gap",
34
+ "type": "string"
35
+ }
36
+ ]
37
+ },
38
+ "disposition": {
39
+ "anyOf": [
40
+ {
41
+ "const": "active",
42
+ "type": "string"
43
+ },
44
+ {
45
+ "const": "quarantined",
46
+ "type": "string"
47
+ }
48
+ ]
49
+ },
50
+ "evidenceRefs": {
51
+ "items": {
52
+ "pattern": "^[0-9a-f]{64}$",
53
+ "type": "string"
54
+ },
55
+ "maxItems": 32,
56
+ "minItems": 1,
57
+ "type": "array",
58
+ "uniqueItems": true
59
+ },
60
+ "observationId": {
61
+ "pattern": "^[0-9a-f]{64}$",
62
+ "type": "string"
63
+ },
64
+ "observedAt": {
65
+ "format": "date-time",
66
+ "type": "string"
67
+ },
68
+ "patternKey": {
69
+ "pattern": "^[0-9a-f]{64}$",
70
+ "type": "string"
71
+ },
72
+ "projectId": {
73
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
74
+ "type": "string"
75
+ },
76
+ "redactionCount": {
77
+ "minimum": 0,
78
+ "type": "integer"
79
+ },
80
+ "runId": {
81
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]{0,127}$",
82
+ "type": "string"
83
+ },
84
+ "schemaVersion": {
85
+ "const": "1.0.0",
86
+ "type": "string"
87
+ },
88
+ "severity": {
89
+ "anyOf": [
90
+ {
91
+ "const": "critical",
92
+ "type": "string"
93
+ },
94
+ {
95
+ "const": "high",
96
+ "type": "string"
97
+ },
98
+ {
99
+ "const": "medium",
100
+ "type": "string"
101
+ },
102
+ {
103
+ "const": "low",
104
+ "type": "string"
105
+ },
106
+ {
107
+ "const": "info",
108
+ "type": "string"
109
+ }
110
+ ]
111
+ },
112
+ "source": {
113
+ "anyOf": [
114
+ {
115
+ "const": "task-completion",
116
+ "type": "string"
117
+ },
118
+ {
119
+ "const": "deterministic-test",
120
+ "type": "string"
121
+ },
122
+ {
123
+ "const": "validation-failure",
124
+ "type": "string"
125
+ },
126
+ {
127
+ "const": "capability-execution",
128
+ "type": "string"
129
+ },
130
+ {
131
+ "const": "cache-check",
132
+ "type": "string"
133
+ },
134
+ {
135
+ "const": "explicit-correction",
136
+ "type": "string"
137
+ }
138
+ ]
139
+ },
140
+ "statement": {
141
+ "maxLength": 1024,
142
+ "minLength": 1,
143
+ "type": "string"
144
+ },
145
+ "taskId": {
146
+ "minLength": 1,
147
+ "type": "string"
148
+ }
149
+ },
150
+ "required": [
151
+ "schemaVersion",
152
+ "projectId",
153
+ "runId",
154
+ "observationId",
155
+ "patternKey",
156
+ "observedAt",
157
+ "source",
158
+ "category",
159
+ "severity",
160
+ "statement",
161
+ "evidenceRefs",
162
+ "disposition",
163
+ "redactionCount"
164
+ ],
165
+ "type": "object"
166
+ }
@@ -0,0 +1,204 @@
1
+ {
2
+ "$id": "https://schemas.apexops.dev/improvement-policy-v1.json",
3
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
4
+ "additionalProperties": false,
5
+ "properties": {
6
+ "allowedCategories": {
7
+ "items": {
8
+ "anyOf": [
9
+ {
10
+ "const": "correctness",
11
+ "type": "string"
12
+ },
13
+ {
14
+ "const": "security",
15
+ "type": "string"
16
+ },
17
+ {
18
+ "const": "reliability",
19
+ "type": "string"
20
+ },
21
+ {
22
+ "const": "performance",
23
+ "type": "string"
24
+ },
25
+ {
26
+ "const": "usability",
27
+ "type": "string"
28
+ },
29
+ {
30
+ "const": "documentation",
31
+ "type": "string"
32
+ },
33
+ {
34
+ "const": "capability-gap",
35
+ "type": "string"
36
+ }
37
+ ]
38
+ },
39
+ "minItems": 1,
40
+ "type": "array",
41
+ "uniqueItems": true
42
+ },
43
+ "allowedSources": {
44
+ "items": {
45
+ "anyOf": [
46
+ {
47
+ "const": "task-completion",
48
+ "type": "string"
49
+ },
50
+ {
51
+ "const": "deterministic-test",
52
+ "type": "string"
53
+ },
54
+ {
55
+ "const": "validation-failure",
56
+ "type": "string"
57
+ },
58
+ {
59
+ "const": "capability-execution",
60
+ "type": "string"
61
+ },
62
+ {
63
+ "const": "cache-check",
64
+ "type": "string"
65
+ },
66
+ {
67
+ "const": "explicit-correction",
68
+ "type": "string"
69
+ }
70
+ ]
71
+ },
72
+ "minItems": 1,
73
+ "type": "array",
74
+ "uniqueItems": true
75
+ },
76
+ "automatedIssueCreation": {
77
+ "const": false,
78
+ "type": "boolean"
79
+ },
80
+ "contextInjection": {
81
+ "const": false,
82
+ "type": "boolean"
83
+ },
84
+ "humanDecisionRequired": {
85
+ "const": true,
86
+ "type": "boolean"
87
+ },
88
+ "limits": {
89
+ "additionalProperties": false,
90
+ "properties": {
91
+ "evidenceRefs": {
92
+ "maximum": 32,
93
+ "minimum": 1,
94
+ "type": "integer"
95
+ },
96
+ "observations": {
97
+ "maximum": 100000,
98
+ "minimum": 1,
99
+ "type": "integer"
100
+ },
101
+ "statementCharacters": {
102
+ "maximum": 1024,
103
+ "minimum": 1,
104
+ "type": "integer"
105
+ }
106
+ },
107
+ "required": [
108
+ "statementCharacters",
109
+ "evidenceRefs",
110
+ "observations"
111
+ ],
112
+ "type": "object"
113
+ },
114
+ "proposalTargets": {
115
+ "items": {
116
+ "anyOf": [
117
+ {
118
+ "const": "documentation",
119
+ "type": "string"
120
+ },
121
+ {
122
+ "const": "validator",
123
+ "type": "string"
124
+ },
125
+ {
126
+ "const": "instruction",
127
+ "type": "string"
128
+ },
129
+ {
130
+ "const": "skill",
131
+ "type": "string"
132
+ },
133
+ {
134
+ "const": "architecture",
135
+ "type": "string"
136
+ },
137
+ {
138
+ "const": "backlog",
139
+ "type": "string"
140
+ }
141
+ ]
142
+ },
143
+ "minItems": 1,
144
+ "type": "array",
145
+ "uniqueItems": true
146
+ },
147
+ "recurrence": {
148
+ "additionalProperties": false,
149
+ "properties": {
150
+ "threshold": {
151
+ "minimum": 2,
152
+ "type": "integer"
153
+ },
154
+ "windowDays": {
155
+ "maximum": 365,
156
+ "minimum": 1,
157
+ "type": "integer"
158
+ }
159
+ },
160
+ "required": [
161
+ "threshold",
162
+ "windowDays"
163
+ ],
164
+ "type": "object"
165
+ },
166
+ "retention": {
167
+ "additionalProperties": false,
168
+ "properties": {
169
+ "decisionDays": {
170
+ "maximum": 3650,
171
+ "minimum": 1,
172
+ "type": "integer"
173
+ },
174
+ "observationDays": {
175
+ "maximum": 3650,
176
+ "minimum": 1,
177
+ "type": "integer"
178
+ }
179
+ },
180
+ "required": [
181
+ "observationDays",
182
+ "decisionDays"
183
+ ],
184
+ "type": "object"
185
+ },
186
+ "schemaVersion": {
187
+ "const": "1.0.0",
188
+ "type": "string"
189
+ }
190
+ },
191
+ "required": [
192
+ "schemaVersion",
193
+ "allowedSources",
194
+ "allowedCategories",
195
+ "recurrence",
196
+ "retention",
197
+ "limits",
198
+ "proposalTargets",
199
+ "humanDecisionRequired",
200
+ "automatedIssueCreation",
201
+ "contextInjection"
202
+ ],
203
+ "type": "object"
204
+ }