@vibe-validate/core 0.14.3 → 0.15.0-rc.1
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.
- package/README.md +24 -0
- package/dist/index.d.ts +9 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -2
- package/dist/index.js.map +1 -1
- package/dist/output-capture-schema.d.ts +144 -0
- package/dist/output-capture-schema.d.ts.map +1 -0
- package/dist/output-capture-schema.js +52 -0
- package/dist/output-capture-schema.js.map +1 -0
- package/dist/process-utils.d.ts +84 -0
- package/dist/process-utils.d.ts.map +1 -1
- package/dist/process-utils.js +176 -1
- package/dist/process-utils.js.map +1 -1
- package/dist/result-schema.d.ts +1352 -88
- package/dist/result-schema.d.ts.map +1 -1
- package/dist/result-schema.js +114 -57
- package/dist/result-schema.js.map +1 -1
- package/dist/run-output-parser.d.ts +47 -0
- package/dist/run-output-parser.d.ts.map +1 -0
- package/dist/run-output-parser.js +109 -0
- package/dist/run-output-parser.js.map +1 -0
- package/dist/runner.d.ts +35 -2
- package/dist/runner.d.ts.map +1 -1
- package/dist/runner.js +105 -167
- package/dist/runner.js.map +1 -1
- package/dist/schema-utils.d.ts +57 -0
- package/dist/schema-utils.d.ts.map +1 -0
- package/dist/schema-utils.js +67 -0
- package/dist/schema-utils.js.map +1 -0
- package/dist/scripts/generate-result-schema.d.ts +1 -1
- package/dist/scripts/generate-result-schema.js +3 -3
- package/dist/scripts/generate-result-schema.js.map +1 -1
- package/dist/types.js +5 -1
- package/dist/types.js.map +1 -1
- package/package.json +6 -5
- package/validate-result.schema.json +245 -0
- package/dist/types.d.ts +0 -138
- package/dist/types.d.ts.map +0 -1
- package/validation-result.schema.json +0 -100
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vibe-validate/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.15.0-rc.1",
|
|
4
4
|
"description": "Core validation orchestration engine for vibe-validate",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
},
|
|
14
14
|
"files": [
|
|
15
15
|
"dist",
|
|
16
|
-
"
|
|
16
|
+
"validate-result.schema.json"
|
|
17
17
|
],
|
|
18
18
|
"keywords": [
|
|
19
19
|
"validation",
|
|
@@ -40,8 +40,9 @@
|
|
|
40
40
|
"yaml": "^2.6.1",
|
|
41
41
|
"zod": "^3.24.1",
|
|
42
42
|
"zod-to-json-schema": "^3.24.6",
|
|
43
|
-
"@vibe-validate/
|
|
44
|
-
"@vibe-validate/
|
|
43
|
+
"@vibe-validate/config": "0.15.0-rc.1",
|
|
44
|
+
"@vibe-validate/extractors": "0.15.0-rc.1",
|
|
45
|
+
"@vibe-validate/git": "0.15.0-rc.1"
|
|
45
46
|
},
|
|
46
47
|
"devDependencies": {
|
|
47
48
|
"@types/node": "^20.17.6",
|
|
@@ -53,6 +54,6 @@
|
|
|
53
54
|
"dev": "tsc --watch",
|
|
54
55
|
"test": "vitest run",
|
|
55
56
|
"test:watch": "vitest",
|
|
56
|
-
"clean": "rm -rf dist *.tsbuildinfo
|
|
57
|
+
"clean": "rm -rf dist *.tsbuildinfo validate-result.schema.json"
|
|
57
58
|
}
|
|
58
59
|
}
|
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$ref": "#/definitions/ValidationResult",
|
|
3
|
+
"definitions": {
|
|
4
|
+
"ValidationResult": {
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"timestamp": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"format": "date-time"
|
|
10
|
+
},
|
|
11
|
+
"treeHash": {
|
|
12
|
+
"type": "string",
|
|
13
|
+
"minLength": 1
|
|
14
|
+
},
|
|
15
|
+
"passed": {
|
|
16
|
+
"type": "boolean"
|
|
17
|
+
},
|
|
18
|
+
"summary": {
|
|
19
|
+
"type": "string"
|
|
20
|
+
},
|
|
21
|
+
"isCachedResult": {
|
|
22
|
+
"type": "boolean"
|
|
23
|
+
},
|
|
24
|
+
"failedStep": {
|
|
25
|
+
"type": "string"
|
|
26
|
+
},
|
|
27
|
+
"phases": {
|
|
28
|
+
"type": "array",
|
|
29
|
+
"items": {
|
|
30
|
+
"type": "object",
|
|
31
|
+
"properties": {
|
|
32
|
+
"name": {
|
|
33
|
+
"type": "string"
|
|
34
|
+
},
|
|
35
|
+
"passed": {
|
|
36
|
+
"type": "boolean"
|
|
37
|
+
},
|
|
38
|
+
"durationSecs": {
|
|
39
|
+
"type": "number"
|
|
40
|
+
},
|
|
41
|
+
"steps": {
|
|
42
|
+
"type": "array",
|
|
43
|
+
"items": {
|
|
44
|
+
"type": "object",
|
|
45
|
+
"properties": {
|
|
46
|
+
"command": {
|
|
47
|
+
"type": "string",
|
|
48
|
+
"minLength": 1
|
|
49
|
+
},
|
|
50
|
+
"exitCode": {
|
|
51
|
+
"type": "integer"
|
|
52
|
+
},
|
|
53
|
+
"durationSecs": {
|
|
54
|
+
"type": "number"
|
|
55
|
+
},
|
|
56
|
+
"extraction": {
|
|
57
|
+
"type": "object",
|
|
58
|
+
"properties": {
|
|
59
|
+
"summary": {
|
|
60
|
+
"type": "string"
|
|
61
|
+
},
|
|
62
|
+
"totalErrors": {
|
|
63
|
+
"type": "integer",
|
|
64
|
+
"minimum": 0
|
|
65
|
+
},
|
|
66
|
+
"errors": {
|
|
67
|
+
"type": "array",
|
|
68
|
+
"items": {
|
|
69
|
+
"type": "object",
|
|
70
|
+
"properties": {
|
|
71
|
+
"file": {
|
|
72
|
+
"type": "string"
|
|
73
|
+
},
|
|
74
|
+
"line": {
|
|
75
|
+
"type": "integer",
|
|
76
|
+
"exclusiveMinimum": 0
|
|
77
|
+
},
|
|
78
|
+
"column": {
|
|
79
|
+
"type": "integer",
|
|
80
|
+
"exclusiveMinimum": 0
|
|
81
|
+
},
|
|
82
|
+
"message": {
|
|
83
|
+
"type": "string"
|
|
84
|
+
},
|
|
85
|
+
"code": {
|
|
86
|
+
"type": "string"
|
|
87
|
+
},
|
|
88
|
+
"severity": {
|
|
89
|
+
"type": "string",
|
|
90
|
+
"enum": [
|
|
91
|
+
"error",
|
|
92
|
+
"warning"
|
|
93
|
+
]
|
|
94
|
+
},
|
|
95
|
+
"context": {
|
|
96
|
+
"type": "string"
|
|
97
|
+
},
|
|
98
|
+
"guidance": {
|
|
99
|
+
"type": "string"
|
|
100
|
+
}
|
|
101
|
+
},
|
|
102
|
+
"required": [
|
|
103
|
+
"message"
|
|
104
|
+
],
|
|
105
|
+
"additionalProperties": false
|
|
106
|
+
}
|
|
107
|
+
},
|
|
108
|
+
"guidance": {
|
|
109
|
+
"type": "string"
|
|
110
|
+
},
|
|
111
|
+
"errorSummary": {
|
|
112
|
+
"type": "string"
|
|
113
|
+
},
|
|
114
|
+
"metadata": {
|
|
115
|
+
"type": "object",
|
|
116
|
+
"properties": {
|
|
117
|
+
"detection": {
|
|
118
|
+
"type": "object",
|
|
119
|
+
"properties": {
|
|
120
|
+
"extractor": {
|
|
121
|
+
"type": "string"
|
|
122
|
+
},
|
|
123
|
+
"confidence": {
|
|
124
|
+
"type": "number",
|
|
125
|
+
"minimum": 0,
|
|
126
|
+
"maximum": 100
|
|
127
|
+
},
|
|
128
|
+
"patterns": {
|
|
129
|
+
"type": "array",
|
|
130
|
+
"items": {
|
|
131
|
+
"type": "string"
|
|
132
|
+
}
|
|
133
|
+
},
|
|
134
|
+
"reason": {
|
|
135
|
+
"type": "string"
|
|
136
|
+
}
|
|
137
|
+
},
|
|
138
|
+
"required": [
|
|
139
|
+
"extractor",
|
|
140
|
+
"confidence",
|
|
141
|
+
"patterns",
|
|
142
|
+
"reason"
|
|
143
|
+
],
|
|
144
|
+
"additionalProperties": false
|
|
145
|
+
},
|
|
146
|
+
"confidence": {
|
|
147
|
+
"type": "number",
|
|
148
|
+
"minimum": 0,
|
|
149
|
+
"maximum": 100
|
|
150
|
+
},
|
|
151
|
+
"completeness": {
|
|
152
|
+
"type": "number",
|
|
153
|
+
"minimum": 0,
|
|
154
|
+
"maximum": 100
|
|
155
|
+
},
|
|
156
|
+
"issues": {
|
|
157
|
+
"type": "array",
|
|
158
|
+
"items": {
|
|
159
|
+
"type": "string"
|
|
160
|
+
}
|
|
161
|
+
},
|
|
162
|
+
"suggestions": {
|
|
163
|
+
"type": "array",
|
|
164
|
+
"items": {
|
|
165
|
+
"type": "string"
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
},
|
|
169
|
+
"required": [
|
|
170
|
+
"confidence",
|
|
171
|
+
"completeness",
|
|
172
|
+
"issues"
|
|
173
|
+
],
|
|
174
|
+
"additionalProperties": false
|
|
175
|
+
}
|
|
176
|
+
},
|
|
177
|
+
"required": [
|
|
178
|
+
"summary",
|
|
179
|
+
"totalErrors",
|
|
180
|
+
"errors"
|
|
181
|
+
],
|
|
182
|
+
"additionalProperties": false
|
|
183
|
+
},
|
|
184
|
+
"name": {
|
|
185
|
+
"type": "string"
|
|
186
|
+
},
|
|
187
|
+
"passed": {
|
|
188
|
+
"type": "boolean"
|
|
189
|
+
},
|
|
190
|
+
"isCachedResult": {
|
|
191
|
+
"type": "boolean"
|
|
192
|
+
},
|
|
193
|
+
"outputFiles": {
|
|
194
|
+
"type": "object",
|
|
195
|
+
"properties": {
|
|
196
|
+
"stdout": {
|
|
197
|
+
"type": "string"
|
|
198
|
+
},
|
|
199
|
+
"stderr": {
|
|
200
|
+
"type": "string"
|
|
201
|
+
},
|
|
202
|
+
"combined": {
|
|
203
|
+
"type": "string"
|
|
204
|
+
}
|
|
205
|
+
},
|
|
206
|
+
"required": [
|
|
207
|
+
"combined"
|
|
208
|
+
],
|
|
209
|
+
"additionalProperties": false
|
|
210
|
+
}
|
|
211
|
+
},
|
|
212
|
+
"required": [
|
|
213
|
+
"command",
|
|
214
|
+
"exitCode",
|
|
215
|
+
"durationSecs",
|
|
216
|
+
"name",
|
|
217
|
+
"passed"
|
|
218
|
+
],
|
|
219
|
+
"additionalProperties": false
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
},
|
|
223
|
+
"required": [
|
|
224
|
+
"name",
|
|
225
|
+
"passed",
|
|
226
|
+
"durationSecs",
|
|
227
|
+
"steps"
|
|
228
|
+
],
|
|
229
|
+
"additionalProperties": false
|
|
230
|
+
}
|
|
231
|
+
},
|
|
232
|
+
"fullLogFile": {
|
|
233
|
+
"type": "string"
|
|
234
|
+
}
|
|
235
|
+
},
|
|
236
|
+
"required": [
|
|
237
|
+
"timestamp",
|
|
238
|
+
"treeHash",
|
|
239
|
+
"passed"
|
|
240
|
+
],
|
|
241
|
+
"additionalProperties": false
|
|
242
|
+
}
|
|
243
|
+
},
|
|
244
|
+
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
245
|
+
}
|
package/dist/types.d.ts
DELETED
|
@@ -1,138 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Core validation types for vibe-validate
|
|
3
|
-
*
|
|
4
|
-
* These types define the validation configuration structure and result types.
|
|
5
|
-
*/
|
|
6
|
-
/**
|
|
7
|
-
* A single validation step (language-agnostic)
|
|
8
|
-
*/
|
|
9
|
-
export interface ValidationStep {
|
|
10
|
-
/** Human-readable step name */
|
|
11
|
-
name: string;
|
|
12
|
-
/** Command to execute (can be any shell command, not just npm scripts) */
|
|
13
|
-
command: string;
|
|
14
|
-
/** Optional timeout in milliseconds */
|
|
15
|
-
timeout?: number;
|
|
16
|
-
/** Optional environment variables for this step */
|
|
17
|
-
env?: Record<string, string>;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* A validation phase containing multiple steps
|
|
21
|
-
*/
|
|
22
|
-
export interface ValidationPhase {
|
|
23
|
-
/** Human-readable phase name */
|
|
24
|
-
name: string;
|
|
25
|
-
/** Run steps in parallel? */
|
|
26
|
-
parallel: boolean;
|
|
27
|
-
/** Steps to execute in this phase */
|
|
28
|
-
steps: ValidationStep[];
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* Extraction quality metrics for a validation step
|
|
32
|
-
*/
|
|
33
|
-
export interface ExtractionQuality {
|
|
34
|
-
/** Tool detected from output (vitest, tsc, eslint, etc.) */
|
|
35
|
-
detectedTool: string;
|
|
36
|
-
/** Confidence level of tool detection */
|
|
37
|
-
confidence: 'high' | 'medium' | 'low';
|
|
38
|
-
/** Quality score (0-100) based on field extraction */
|
|
39
|
-
score: number;
|
|
40
|
-
/** Number of warnings extracted (even from passing tests) */
|
|
41
|
-
warnings: number;
|
|
42
|
-
/** Number of errors/failures extracted */
|
|
43
|
-
errorsExtracted: number;
|
|
44
|
-
/** Is the extraction actionable? (has structured failures/warnings) */
|
|
45
|
-
actionable: boolean;
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* Result from executing a validation step
|
|
49
|
-
*/
|
|
50
|
-
export interface StepResult {
|
|
51
|
-
/** Step name */
|
|
52
|
-
name: string;
|
|
53
|
-
/** Did the step pass? */
|
|
54
|
-
passed: boolean;
|
|
55
|
-
/** Execution duration in seconds */
|
|
56
|
-
durationSecs: number;
|
|
57
|
-
/** Output from the step (stdout + stderr) */
|
|
58
|
-
output?: string;
|
|
59
|
-
/** Extracted test failures (file:line - message) */
|
|
60
|
-
failedTests?: string[];
|
|
61
|
-
/** Extraction quality metrics (populated for all steps with output) */
|
|
62
|
-
extractionQuality?: ExtractionQuality;
|
|
63
|
-
}
|
|
64
|
-
/**
|
|
65
|
-
* Result from executing a validation phase
|
|
66
|
-
*/
|
|
67
|
-
export interface PhaseResult {
|
|
68
|
-
/** Phase name */
|
|
69
|
-
name: string;
|
|
70
|
-
/** Phase execution duration in seconds */
|
|
71
|
-
durationSecs: number;
|
|
72
|
-
/** Did the phase pass? */
|
|
73
|
-
passed: boolean;
|
|
74
|
-
/** Results from individual steps */
|
|
75
|
-
steps: StepResult[];
|
|
76
|
-
/** Output from failed step (if any) */
|
|
77
|
-
output?: string;
|
|
78
|
-
}
|
|
79
|
-
/**
|
|
80
|
-
* Overall validation result
|
|
81
|
-
*
|
|
82
|
-
* IMPORTANT: Field order matters for YAML truncation safety!
|
|
83
|
-
* Verbose fields (failedStepOutput, phases with output) are at the END
|
|
84
|
-
* so that truncation doesn't break critical metadata (passed, timestamp, rerunCommand).
|
|
85
|
-
*/
|
|
86
|
-
export interface ValidationResult {
|
|
87
|
-
/** Did validation pass? */
|
|
88
|
-
passed: boolean;
|
|
89
|
-
/** ISO 8601 timestamp */
|
|
90
|
-
timestamp: string;
|
|
91
|
-
/** Git tree hash (if in git repo) */
|
|
92
|
-
treeHash: string;
|
|
93
|
-
/** Name of failed step (if any) */
|
|
94
|
-
failedStep?: string;
|
|
95
|
-
/** Command to re-run failed step */
|
|
96
|
-
rerunCommand?: string;
|
|
97
|
-
/** Failed test names (if applicable) */
|
|
98
|
-
failedTests?: string[];
|
|
99
|
-
/** Path to full log file */
|
|
100
|
-
fullLogFile?: string;
|
|
101
|
-
/** Summary message */
|
|
102
|
-
summary?: string;
|
|
103
|
-
/** Results from each phase (may contain verbose output field) */
|
|
104
|
-
phases?: PhaseResult[];
|
|
105
|
-
/** Output from the failed step (verbose - placed last for truncation safety) */
|
|
106
|
-
failedStepOutput?: string;
|
|
107
|
-
}
|
|
108
|
-
/**
|
|
109
|
-
* Validation configuration
|
|
110
|
-
*
|
|
111
|
-
* Note: State management (caching, forceRun) is now handled at the CLI layer
|
|
112
|
-
* via git notes. See packages/cli/src/commands/validate.ts and @vibe-validate/history.
|
|
113
|
-
*/
|
|
114
|
-
export interface ValidationConfig {
|
|
115
|
-
/** Validation phases to execute */
|
|
116
|
-
phases: ValidationPhase[];
|
|
117
|
-
/** Path to log file (default: os.tmpdir()/validation-{timestamp}.log) */
|
|
118
|
-
logPath?: string;
|
|
119
|
-
/** Enable fail-fast (stop on first failure) */
|
|
120
|
-
enableFailFast?: boolean;
|
|
121
|
-
/** Show verbose output (stream command stdout/stderr in real-time) */
|
|
122
|
-
verbose?: boolean;
|
|
123
|
-
/** Output YAML result to stdout (redirects subprocess output to stderr when true) */
|
|
124
|
-
yaml?: boolean;
|
|
125
|
-
/** Developer feedback for continuous quality improvement (default: false) */
|
|
126
|
-
developerFeedback?: boolean;
|
|
127
|
-
/** Environment variables to pass to all child processes */
|
|
128
|
-
env?: Record<string, string>;
|
|
129
|
-
/** Callback when phase starts */
|
|
130
|
-
onPhaseStart?: (_phase: ValidationPhase) => void;
|
|
131
|
-
/** Callback when phase completes */
|
|
132
|
-
onPhaseComplete?: (_phase: ValidationPhase, _result: PhaseResult) => void;
|
|
133
|
-
/** Callback when step starts */
|
|
134
|
-
onStepStart?: (_step: ValidationStep) => void;
|
|
135
|
-
/** Callback when step completes */
|
|
136
|
-
onStepComplete?: (_step: ValidationStep, _result: StepResult) => void;
|
|
137
|
-
}
|
|
138
|
-
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;IAEb,0EAA0E;IAC1E,OAAO,EAAE,MAAM,CAAC;IAEhB,uCAAuC;IACvC,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,mDAAmD;IACnD,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAC;IAEb,6BAA6B;IAC7B,QAAQ,EAAE,OAAO,CAAC;IAElB,qCAAqC;IACrC,KAAK,EAAE,cAAc,EAAE,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,4DAA4D;IAC5D,YAAY,EAAE,MAAM,CAAC;IAErB,yCAAyC;IACzC,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IAEtC,sDAAsD;IACtD,KAAK,EAAE,MAAM,CAAC;IAEd,6DAA6D;IAC7D,QAAQ,EAAE,MAAM,CAAC;IAEjB,0CAA0C;IAC1C,eAAe,EAAE,MAAM,CAAC;IAExB,uEAAuE;IACvE,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,gBAAgB;IAChB,IAAI,EAAE,MAAM,CAAC;IAEb,yBAAyB;IACzB,MAAM,EAAE,OAAO,CAAC;IAEhB,oCAAoC;IACpC,YAAY,EAAE,MAAM,CAAC;IAErB,6CAA6C;IAC7C,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,oDAAoD;IACpD,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IAEvB,uEAAuE;IACvE,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,iBAAiB;IACjB,IAAI,EAAE,MAAM,CAAC;IAEb,0CAA0C;IAC1C,YAAY,EAAE,MAAM,CAAC;IAErB,0BAA0B;IAC1B,MAAM,EAAE,OAAO,CAAC;IAEhB,oCAAoC;IACpC,KAAK,EAAE,UAAU,EAAE,CAAC;IAEpB,uCAAuC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB;IAC/B,2BAA2B;IAC3B,MAAM,EAAE,OAAO,CAAC;IAEhB,yBAAyB;IACzB,SAAS,EAAE,MAAM,CAAC;IAElB,qCAAqC;IACrC,QAAQ,EAAE,MAAM,CAAC;IAEjB,mCAAmC;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,oCAAoC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,wCAAwC;IACxC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IAEvB,4BAA4B;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,sBAAsB;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,iEAAiE;IACjE,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC;IAEvB,gFAAgF;IAChF,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,mCAAmC;IACnC,MAAM,EAAE,eAAe,EAAE,CAAC;IAE1B,yEAAyE;IACzE,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,+CAA+C;IAC/C,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB,sEAAsE;IACtE,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,qFAAqF;IACrF,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf,6EAA6E;IAC7E,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B,2DAA2D;IAC3D,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE7B,iCAAiC;IACjC,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;IAEjD,oCAAoC;IACpC,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;IAE1E,gCAAgC;IAChC,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;IAE9C,mCAAmC;IACnC,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,UAAU,KAAK,IAAI,CAAC;CACvE"}
|
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$ref": "#/definitions/ValidationResult",
|
|
3
|
-
"definitions": {
|
|
4
|
-
"ValidationResult": {
|
|
5
|
-
"type": "object",
|
|
6
|
-
"properties": {
|
|
7
|
-
"passed": {
|
|
8
|
-
"type": "boolean"
|
|
9
|
-
},
|
|
10
|
-
"timestamp": {
|
|
11
|
-
"type": "string"
|
|
12
|
-
},
|
|
13
|
-
"treeHash": {
|
|
14
|
-
"type": "string"
|
|
15
|
-
},
|
|
16
|
-
"phases": {
|
|
17
|
-
"type": "array",
|
|
18
|
-
"items": {
|
|
19
|
-
"type": "object",
|
|
20
|
-
"properties": {
|
|
21
|
-
"name": {
|
|
22
|
-
"type": "string"
|
|
23
|
-
},
|
|
24
|
-
"durationSecs": {
|
|
25
|
-
"type": "number"
|
|
26
|
-
},
|
|
27
|
-
"passed": {
|
|
28
|
-
"type": "boolean"
|
|
29
|
-
},
|
|
30
|
-
"steps": {
|
|
31
|
-
"type": "array",
|
|
32
|
-
"items": {
|
|
33
|
-
"type": "object",
|
|
34
|
-
"properties": {
|
|
35
|
-
"name": {
|
|
36
|
-
"type": "string"
|
|
37
|
-
},
|
|
38
|
-
"passed": {
|
|
39
|
-
"type": "boolean"
|
|
40
|
-
},
|
|
41
|
-
"durationSecs": {
|
|
42
|
-
"type": "number"
|
|
43
|
-
},
|
|
44
|
-
"output": {
|
|
45
|
-
"type": "string"
|
|
46
|
-
}
|
|
47
|
-
},
|
|
48
|
-
"required": [
|
|
49
|
-
"name",
|
|
50
|
-
"passed",
|
|
51
|
-
"durationSecs"
|
|
52
|
-
],
|
|
53
|
-
"additionalProperties": false
|
|
54
|
-
}
|
|
55
|
-
},
|
|
56
|
-
"output": {
|
|
57
|
-
"type": "string"
|
|
58
|
-
}
|
|
59
|
-
},
|
|
60
|
-
"required": [
|
|
61
|
-
"name",
|
|
62
|
-
"durationSecs",
|
|
63
|
-
"passed",
|
|
64
|
-
"steps"
|
|
65
|
-
],
|
|
66
|
-
"additionalProperties": false
|
|
67
|
-
}
|
|
68
|
-
},
|
|
69
|
-
"failedStep": {
|
|
70
|
-
"type": "string"
|
|
71
|
-
},
|
|
72
|
-
"rerunCommand": {
|
|
73
|
-
"type": "string"
|
|
74
|
-
},
|
|
75
|
-
"failedStepOutput": {
|
|
76
|
-
"type": "string"
|
|
77
|
-
},
|
|
78
|
-
"failedTests": {
|
|
79
|
-
"type": "array",
|
|
80
|
-
"items": {
|
|
81
|
-
"type": "string"
|
|
82
|
-
}
|
|
83
|
-
},
|
|
84
|
-
"fullLogFile": {
|
|
85
|
-
"type": "string"
|
|
86
|
-
},
|
|
87
|
-
"summary": {
|
|
88
|
-
"type": "string"
|
|
89
|
-
}
|
|
90
|
-
},
|
|
91
|
-
"required": [
|
|
92
|
-
"passed",
|
|
93
|
-
"timestamp",
|
|
94
|
-
"treeHash"
|
|
95
|
-
],
|
|
96
|
-
"additionalProperties": false
|
|
97
|
-
}
|
|
98
|
-
},
|
|
99
|
-
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
100
|
-
}
|