@qa-ai-stlc/schemas 0.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 (73) hide show
  1. package/README.md +12 -0
  2. package/dist/api-surface.d.ts +61 -0
  3. package/dist/api-surface.d.ts.map +1 -0
  4. package/dist/api-surface.js +22 -0
  5. package/dist/api-surface.js.map +1 -0
  6. package/dist/approval-ledger.d.ts +23 -0
  7. package/dist/approval-ledger.d.ts.map +1 -0
  8. package/dist/approval-ledger.js +22 -0
  9. package/dist/approval-ledger.js.map +1 -0
  10. package/dist/artifacts.d.ts +285 -0
  11. package/dist/artifacts.d.ts.map +1 -0
  12. package/dist/artifacts.js +30 -0
  13. package/dist/artifacts.js.map +1 -0
  14. package/dist/config.d.ts +179 -0
  15. package/dist/config.d.ts.map +1 -0
  16. package/dist/config.js +89 -0
  17. package/dist/config.js.map +1 -0
  18. package/dist/defect.d.ts +72 -0
  19. package/dist/defect.d.ts.map +1 -0
  20. package/dist/defect.js +46 -0
  21. package/dist/defect.js.map +1 -0
  22. package/dist/evidence.d.ts +48 -0
  23. package/dist/evidence.d.ts.map +1 -0
  24. package/dist/evidence.js +40 -0
  25. package/dist/evidence.js.map +1 -0
  26. package/dist/index.d.ts +15 -0
  27. package/dist/index.d.ts.map +1 -0
  28. package/dist/index.js +17 -0
  29. package/dist/index.js.map +1 -0
  30. package/dist/json-schema/api-surface.json +67 -0
  31. package/dist/json-schema/approval-ledger.json +56 -0
  32. package/dist/json-schema/config.json +261 -0
  33. package/dist/json-schema/defect-draft.json +120 -0
  34. package/dist/json-schema/evidence.json +61 -0
  35. package/dist/json-schema/manifest.json +42 -0
  36. package/dist/json-schema/rca.json +84 -0
  37. package/dist/json-schema/run-result.json +87 -0
  38. package/dist/json-schema/scope.json +91 -0
  39. package/dist/json-schema/selector-registry.json +107 -0
  40. package/dist/json-schema/test-case.json +83 -0
  41. package/dist/manifest.d.ts +15 -0
  42. package/dist/manifest.d.ts.map +1 -0
  43. package/dist/manifest.js +19 -0
  44. package/dist/manifest.js.map +1 -0
  45. package/dist/primitives.d.ts +10 -0
  46. package/dist/primitives.d.ts.map +1 -0
  47. package/dist/primitives.js +21 -0
  48. package/dist/primitives.js.map +1 -0
  49. package/dist/rca.d.ts +41 -0
  50. package/dist/rca.d.ts.map +1 -0
  51. package/dist/rca.js +26 -0
  52. package/dist/rca.js.map +1 -0
  53. package/dist/run-result.d.ts +43 -0
  54. package/dist/run-result.d.ts.map +1 -0
  55. package/dist/run-result.js +44 -0
  56. package/dist/run-result.js.map +1 -0
  57. package/dist/scope.d.ts +42 -0
  58. package/dist/scope.d.ts.map +1 -0
  59. package/dist/scope.js +24 -0
  60. package/dist/scope.js.map +1 -0
  61. package/dist/selector-registry.d.ts +60 -0
  62. package/dist/selector-registry.d.ts.map +1 -0
  63. package/dist/selector-registry.js +31 -0
  64. package/dist/selector-registry.js.map +1 -0
  65. package/dist/test-case.d.ts +41 -0
  66. package/dist/test-case.d.ts.map +1 -0
  67. package/dist/test-case.js +25 -0
  68. package/dist/test-case.js.map +1 -0
  69. package/dist/version.d.ts +5 -0
  70. package/dist/version.d.ts.map +1 -0
  71. package/dist/version.js +9 -0
  72. package/dist/version.js.map +1 -0
  73. package/package.json +30 -0
@@ -0,0 +1,56 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "schemaVersion": {
6
+ "default": 1,
7
+ "type": "number",
8
+ "const": 1
9
+ },
10
+ "approvals": {
11
+ "type": "array",
12
+ "items": {
13
+ "type": "object",
14
+ "properties": {
15
+ "gate": {
16
+ "type": "string",
17
+ "minLength": 1
18
+ },
19
+ "artifactPath": {
20
+ "type": "string",
21
+ "minLength": 1
22
+ },
23
+ "artifactSha256": {
24
+ "type": "string",
25
+ "pattern": "^[0-9a-f]{64}$"
26
+ },
27
+ "approvedBy": {
28
+ "type": "string",
29
+ "minLength": 1
30
+ },
31
+ "approvedAt": {
32
+ "type": "string",
33
+ "format": "date-time",
34
+ "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|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
35
+ },
36
+ "note": {
37
+ "type": "string"
38
+ }
39
+ },
40
+ "required": [
41
+ "gate",
42
+ "artifactPath",
43
+ "artifactSha256",
44
+ "approvedBy",
45
+ "approvedAt"
46
+ ],
47
+ "additionalProperties": false
48
+ }
49
+ }
50
+ },
51
+ "required": [
52
+ "schemaVersion",
53
+ "approvals"
54
+ ],
55
+ "additionalProperties": false
56
+ }
@@ -0,0 +1,261 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "schemaVersion": {
6
+ "default": 1,
7
+ "type": "number",
8
+ "const": 1
9
+ },
10
+ "testing": {
11
+ "type": "object",
12
+ "properties": {
13
+ "e2e": {
14
+ "type": "string",
15
+ "enum": [
16
+ "in-scope",
17
+ "out-of-scope",
18
+ "undecided"
19
+ ]
20
+ },
21
+ "api": {
22
+ "type": "string",
23
+ "enum": [
24
+ "in-scope",
25
+ "out-of-scope",
26
+ "undecided"
27
+ ]
28
+ },
29
+ "a11y": {
30
+ "type": "string",
31
+ "enum": [
32
+ "in-scope",
33
+ "out-of-scope",
34
+ "undecided"
35
+ ]
36
+ },
37
+ "security": {
38
+ "type": "string",
39
+ "enum": [
40
+ "in-scope",
41
+ "out-of-scope",
42
+ "undecided"
43
+ ]
44
+ }
45
+ },
46
+ "required": [
47
+ "e2e",
48
+ "api",
49
+ "a11y",
50
+ "security"
51
+ ],
52
+ "additionalProperties": false
53
+ },
54
+ "source": {
55
+ "type": "object",
56
+ "properties": {
57
+ "path": {
58
+ "type": "string",
59
+ "minLength": 1
60
+ }
61
+ },
62
+ "required": [
63
+ "path"
64
+ ],
65
+ "additionalProperties": false
66
+ },
67
+ "api": {
68
+ "type": "object",
69
+ "properties": {
70
+ "contract": {
71
+ "type": "string",
72
+ "const": "openapi"
73
+ },
74
+ "source": {
75
+ "anyOf": [
76
+ {
77
+ "type": "string",
78
+ "minLength": 1
79
+ },
80
+ {
81
+ "type": "string",
82
+ "const": "discover"
83
+ },
84
+ {
85
+ "type": "string",
86
+ "const": "synthesize"
87
+ }
88
+ ]
89
+ }
90
+ },
91
+ "required": [
92
+ "contract",
93
+ "source"
94
+ ],
95
+ "additionalProperties": false
96
+ },
97
+ "environments": {
98
+ "type": "object",
99
+ "propertyNames": {
100
+ "type": "string",
101
+ "minLength": 1
102
+ },
103
+ "additionalProperties": {
104
+ "type": "object",
105
+ "properties": {
106
+ "baseUrl": {
107
+ "type": "string",
108
+ "minLength": 1
109
+ },
110
+ "allowlist": {
111
+ "minItems": 1,
112
+ "type": "array",
113
+ "items": {
114
+ "type": "string",
115
+ "minLength": 1
116
+ }
117
+ }
118
+ },
119
+ "required": [
120
+ "baseUrl",
121
+ "allowlist"
122
+ ],
123
+ "additionalProperties": false
124
+ }
125
+ },
126
+ "identities": {
127
+ "type": "object",
128
+ "propertyNames": {
129
+ "type": "string",
130
+ "minLength": 1
131
+ },
132
+ "additionalProperties": {
133
+ "type": "object",
134
+ "properties": {
135
+ "auth": {
136
+ "type": "string",
137
+ "enum": [
138
+ "cdp-attach",
139
+ "storage-state"
140
+ ]
141
+ },
142
+ "secret": {
143
+ "type": "string",
144
+ "pattern": "^QA_[A-Z0-9_]+$"
145
+ },
146
+ "loginUrl": {
147
+ "type": "string",
148
+ "minLength": 1
149
+ },
150
+ "username": {
151
+ "type": "string",
152
+ "minLength": 1
153
+ },
154
+ "selectors": {
155
+ "type": "object",
156
+ "properties": {
157
+ "username": {
158
+ "type": "string",
159
+ "minLength": 1
160
+ },
161
+ "password": {
162
+ "type": "string",
163
+ "minLength": 1
164
+ },
165
+ "submit": {
166
+ "type": "string",
167
+ "minLength": 1
168
+ }
169
+ },
170
+ "additionalProperties": false
171
+ }
172
+ },
173
+ "required": [
174
+ "auth",
175
+ "secret"
176
+ ],
177
+ "additionalProperties": false
178
+ }
179
+ },
180
+ "data": {
181
+ "type": "object",
182
+ "properties": {
183
+ "strategy": {
184
+ "type": "string",
185
+ "enum": [
186
+ "disposable",
187
+ "reset-endpoint",
188
+ "manual"
189
+ ]
190
+ },
191
+ "ownerMarker": {
192
+ "type": "string",
193
+ "minLength": 1
194
+ }
195
+ },
196
+ "required": [
197
+ "strategy",
198
+ "ownerMarker"
199
+ ],
200
+ "additionalProperties": false
201
+ },
202
+ "selectors": {
203
+ "type": "object",
204
+ "properties": {
205
+ "policy": {
206
+ "type": "string",
207
+ "enum": [
208
+ "playwright-default",
209
+ "testid-first",
210
+ "strict-no-css"
211
+ ]
212
+ },
213
+ "testIdAttribute": {
214
+ "type": "string",
215
+ "minLength": 1
216
+ }
217
+ },
218
+ "required": [
219
+ "policy",
220
+ "testIdAttribute"
221
+ ],
222
+ "additionalProperties": false
223
+ },
224
+ "agents": {
225
+ "type": "object",
226
+ "properties": {
227
+ "parallelism": {
228
+ "type": "integer",
229
+ "exclusiveMinimum": 0,
230
+ "maximum": 9007199254740991
231
+ },
232
+ "spokeTimeoutSeconds": {
233
+ "type": "integer",
234
+ "exclusiveMinimum": 0,
235
+ "maximum": 9007199254740991
236
+ },
237
+ "retries": {
238
+ "type": "integer",
239
+ "minimum": 0,
240
+ "maximum": 9007199254740991
241
+ }
242
+ },
243
+ "required": [
244
+ "parallelism",
245
+ "spokeTimeoutSeconds",
246
+ "retries"
247
+ ],
248
+ "additionalProperties": false
249
+ }
250
+ },
251
+ "required": [
252
+ "schemaVersion",
253
+ "testing",
254
+ "environments",
255
+ "identities",
256
+ "data",
257
+ "selectors",
258
+ "agents"
259
+ ],
260
+ "additionalProperties": false
261
+ }
@@ -0,0 +1,120 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "schemaVersion": {
6
+ "default": 1,
7
+ "type": "number",
8
+ "const": 1
9
+ },
10
+ "id": {
11
+ "type": "string",
12
+ "minLength": 1
13
+ },
14
+ "title": {
15
+ "type": "string",
16
+ "minLength": 1
17
+ },
18
+ "severityProposal": {
19
+ "type": "string",
20
+ "enum": [
21
+ "blocker",
22
+ "critical",
23
+ "major",
24
+ "minor",
25
+ "trivial"
26
+ ]
27
+ },
28
+ "category": {
29
+ "type": "string",
30
+ "enum": [
31
+ "functional",
32
+ "ui",
33
+ "accessibility",
34
+ "api",
35
+ "performance",
36
+ "security"
37
+ ]
38
+ },
39
+ "steps": {
40
+ "minItems": 1,
41
+ "type": "array",
42
+ "items": {
43
+ "type": "string",
44
+ "minLength": 1
45
+ }
46
+ },
47
+ "expectedResult": {
48
+ "type": "string",
49
+ "minLength": 1
50
+ },
51
+ "actualResult": {
52
+ "type": "string",
53
+ "minLength": 1
54
+ },
55
+ "environment": {
56
+ "type": "string",
57
+ "minLength": 1
58
+ },
59
+ "requirementIds": {
60
+ "type": "array",
61
+ "items": {
62
+ "type": "string",
63
+ "minLength": 1
64
+ }
65
+ },
66
+ "evidencePaths": {
67
+ "type": "array",
68
+ "items": {
69
+ "type": "string",
70
+ "minLength": 1
71
+ }
72
+ },
73
+ "status": {
74
+ "type": "string",
75
+ "enum": [
76
+ "draft",
77
+ "accepted",
78
+ "rejected"
79
+ ]
80
+ },
81
+ "createdAt": {
82
+ "type": "string",
83
+ "format": "date-time",
84
+ "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|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
85
+ },
86
+ "securityRiskArea": {
87
+ "type": "string"
88
+ },
89
+ "securityConfidence": {
90
+ "type": "string",
91
+ "enum": [
92
+ "low",
93
+ "medium",
94
+ "high"
95
+ ]
96
+ },
97
+ "securitySuggestedRemediation": {
98
+ "type": "string"
99
+ },
100
+ "securityRegressionCheck": {
101
+ "type": "string"
102
+ }
103
+ },
104
+ "required": [
105
+ "schemaVersion",
106
+ "id",
107
+ "title",
108
+ "severityProposal",
109
+ "category",
110
+ "steps",
111
+ "expectedResult",
112
+ "actualResult",
113
+ "environment",
114
+ "requirementIds",
115
+ "evidencePaths",
116
+ "status",
117
+ "createdAt"
118
+ ],
119
+ "additionalProperties": false
120
+ }
@@ -0,0 +1,61 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "schemaVersion": {
6
+ "default": 1,
7
+ "type": "number",
8
+ "const": 1
9
+ },
10
+ "id": {
11
+ "type": "string",
12
+ "minLength": 1
13
+ },
14
+ "runId": {
15
+ "type": "string",
16
+ "minLength": 1
17
+ },
18
+ "stepId": {
19
+ "type": "string",
20
+ "minLength": 1
21
+ },
22
+ "kind": {
23
+ "type": "string",
24
+ "enum": [
25
+ "screenshot",
26
+ "trace",
27
+ "network-har",
28
+ "console-log",
29
+ "video",
30
+ "other"
31
+ ]
32
+ },
33
+ "path": {
34
+ "type": "string",
35
+ "minLength": 1
36
+ },
37
+ "sha256": {
38
+ "type": "string",
39
+ "pattern": "^[0-9a-f]{64}$"
40
+ },
41
+ "createdAt": {
42
+ "type": "string",
43
+ "format": "date-time",
44
+ "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|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
45
+ },
46
+ "redacted": {
47
+ "type": "boolean"
48
+ }
49
+ },
50
+ "required": [
51
+ "schemaVersion",
52
+ "id",
53
+ "runId",
54
+ "kind",
55
+ "path",
56
+ "sha256",
57
+ "createdAt",
58
+ "redacted"
59
+ ],
60
+ "additionalProperties": false
61
+ }
@@ -0,0 +1,42 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "schemaVersion": {
6
+ "default": 1,
7
+ "type": "number",
8
+ "const": 1
9
+ },
10
+ "artifacts": {
11
+ "type": "object",
12
+ "propertyNames": {
13
+ "type": "string",
14
+ "minLength": 1
15
+ },
16
+ "additionalProperties": {
17
+ "type": "object",
18
+ "properties": {
19
+ "sha256": {
20
+ "type": "string",
21
+ "pattern": "^[0-9a-f]{64}$"
22
+ },
23
+ "registeredAt": {
24
+ "type": "string",
25
+ "format": "date-time",
26
+ "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|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
27
+ }
28
+ },
29
+ "required": [
30
+ "sha256",
31
+ "registeredAt"
32
+ ],
33
+ "additionalProperties": false
34
+ }
35
+ }
36
+ },
37
+ "required": [
38
+ "schemaVersion",
39
+ "artifacts"
40
+ ],
41
+ "additionalProperties": false
42
+ }
@@ -0,0 +1,84 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "schemaVersion": {
6
+ "default": 1,
7
+ "type": "number",
8
+ "const": 1
9
+ },
10
+ "defectId": {
11
+ "type": "string",
12
+ "minLength": 1
13
+ },
14
+ "facts": {
15
+ "type": "array",
16
+ "items": {
17
+ "type": "string",
18
+ "minLength": 1
19
+ }
20
+ },
21
+ "hypotheses": {
22
+ "minItems": 1,
23
+ "type": "array",
24
+ "items": {
25
+ "type": "object",
26
+ "properties": {
27
+ "description": {
28
+ "type": "string",
29
+ "minLength": 1
30
+ },
31
+ "confidence": {
32
+ "type": "string",
33
+ "enum": [
34
+ "low",
35
+ "medium",
36
+ "high"
37
+ ]
38
+ },
39
+ "evidenceNeeded": {
40
+ "type": "string"
41
+ }
42
+ },
43
+ "required": [
44
+ "description",
45
+ "confidence"
46
+ ],
47
+ "additionalProperties": false
48
+ }
49
+ },
50
+ "remediation": {
51
+ "type": "array",
52
+ "items": {
53
+ "type": "string",
54
+ "minLength": 1
55
+ }
56
+ },
57
+ "regressionRecommendation": {
58
+ "type": "string"
59
+ },
60
+ "status": {
61
+ "type": "string",
62
+ "enum": [
63
+ "draft",
64
+ "approved",
65
+ "rejected"
66
+ ]
67
+ },
68
+ "createdAt": {
69
+ "type": "string",
70
+ "format": "date-time",
71
+ "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|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
72
+ }
73
+ },
74
+ "required": [
75
+ "schemaVersion",
76
+ "defectId",
77
+ "facts",
78
+ "hypotheses",
79
+ "remediation",
80
+ "status",
81
+ "createdAt"
82
+ ],
83
+ "additionalProperties": false
84
+ }