@decantr/verifier 3.1.0 → 3.4.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.
@@ -0,0 +1,218 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://decantr.ai/schemas/runtime-probe-payload.v2.json",
4
+ "title": "Decantr Runtime Probe Payload",
5
+ "description": "Standalone v2 payload for local build, published-site, browser, visual, and benchmark runtime probes. It does not replace v1 project-audit runtimeAudit fields.",
6
+ "type": "object",
7
+ "required": [
8
+ "$schema",
9
+ "generatedAt",
10
+ "project",
11
+ "scope",
12
+ "status",
13
+ "privacy",
14
+ "summary",
15
+ "probes",
16
+ "findings"
17
+ ],
18
+ "properties": {
19
+ "$schema": {
20
+ "const": "https://decantr.ai/schemas/runtime-probe-payload.v2.json"
21
+ },
22
+ "generatedAt": {
23
+ "type": "string",
24
+ "format": "date-time"
25
+ },
26
+ "project": {
27
+ "type": "object",
28
+ "required": ["id", "rootLabel"],
29
+ "properties": {
30
+ "id": { "$ref": "https://decantr.ai/schemas/verification-report.common.v1.json#/$defs/nonEmptyString" },
31
+ "rootLabel": { "$ref": "https://decantr.ai/schemas/verification-report.common.v1.json#/$defs/nonEmptyString" },
32
+ "projectPath": { "type": ["string", "null"] },
33
+ "target": { "type": ["string", "null"] },
34
+ "adapter": { "type": ["string", "null"] },
35
+ "workflowMode": { "type": ["string", "null"] },
36
+ "adoptionMode": { "type": ["string", "null"] }
37
+ },
38
+ "additionalProperties": false
39
+ },
40
+ "scope": {
41
+ "type": "object",
42
+ "required": ["kind", "routeHints"],
43
+ "properties": {
44
+ "kind": {
45
+ "type": "string",
46
+ "enum": ["local-build", "published-site", "browser", "visual-baseline", "showcase", "proof-corpus"]
47
+ },
48
+ "baseUrl": { "type": ["string", "null"] },
49
+ "distDir": { "type": ["string", "null"] },
50
+ "routeHints": { "type": "array", "items": { "type": "string" } },
51
+ "commit": { "type": ["string", "null"] },
52
+ "suite": { "type": ["string", "null"] },
53
+ "viewport": {
54
+ "anyOf": [
55
+ { "$ref": "#/$defs/viewport" },
56
+ { "type": "null" }
57
+ ]
58
+ }
59
+ },
60
+ "additionalProperties": false
61
+ },
62
+ "status": {
63
+ "type": "string",
64
+ "enum": ["passed", "warning", "failed", "skipped"]
65
+ },
66
+ "privacy": {
67
+ "type": "object",
68
+ "required": ["localOnly", "sourceIncluded", "screenshotsLocalOnly", "redactedFields"],
69
+ "properties": {
70
+ "localOnly": { "type": "boolean" },
71
+ "sourceIncluded": { "const": false },
72
+ "screenshotsLocalOnly": { "type": "boolean" },
73
+ "redactedFields": { "type": "array", "items": { "type": "string" } }
74
+ },
75
+ "additionalProperties": false
76
+ },
77
+ "summary": {
78
+ "type": "object",
79
+ "required": [
80
+ "probeCount",
81
+ "passedCount",
82
+ "warningCount",
83
+ "failedCount",
84
+ "routeCount",
85
+ "routeCoverageOk",
86
+ "assetCount",
87
+ "totalAssetBytes",
88
+ "durationMs"
89
+ ],
90
+ "properties": {
91
+ "probeCount": { "type": "integer", "minimum": 0 },
92
+ "passedCount": { "type": "integer", "minimum": 0 },
93
+ "warningCount": { "type": "integer", "minimum": 0 },
94
+ "failedCount": { "type": "integer", "minimum": 0 },
95
+ "routeCount": { "type": "integer", "minimum": 0 },
96
+ "routeCoverageOk": { "type": ["boolean", "null"] },
97
+ "assetCount": { "type": "integer", "minimum": 0 },
98
+ "totalAssetBytes": { "type": "integer", "minimum": 0 },
99
+ "durationMs": { "type": "number", "minimum": 0 },
100
+ "runtimeKind": { "type": ["string", "null"] },
101
+ "largestAssetPath": { "type": ["string", "null"] },
102
+ "largestAssetBytes": { "type": "integer", "minimum": 0 }
103
+ },
104
+ "additionalProperties": false
105
+ },
106
+ "probes": {
107
+ "type": "array",
108
+ "items": { "$ref": "#/$defs/probeResult" }
109
+ },
110
+ "artifacts": {
111
+ "type": "array",
112
+ "items": { "$ref": "#/$defs/runtimeArtifact" }
113
+ },
114
+ "legacyRuntimeAudit": {
115
+ "type": "object",
116
+ "description": "Optional copy of the v1 RuntimeAudit shape for consumers that still compare against project-audit-report.v1.json.",
117
+ "additionalProperties": true
118
+ },
119
+ "provenance": {
120
+ "type": "object",
121
+ "required": ["verifierVersion", "command", "inputHash"],
122
+ "properties": {
123
+ "verifierVersion": { "type": ["string", "null"] },
124
+ "command": { "type": ["string", "null"] },
125
+ "inputHash": { "type": ["string", "null"] },
126
+ "graphSnapshotId": { "type": ["string", "null"] },
127
+ "visualManifestPath": { "type": ["string", "null"] }
128
+ },
129
+ "additionalProperties": false
130
+ },
131
+ "findings": {
132
+ "type": "array",
133
+ "items": {
134
+ "$ref": "https://decantr.ai/schemas/verification-report.common.v1.json#/$defs/verificationFinding"
135
+ }
136
+ }
137
+ },
138
+ "additionalProperties": false,
139
+ "$defs": {
140
+ "viewport": {
141
+ "type": "object",
142
+ "required": ["width", "height"],
143
+ "properties": {
144
+ "width": { "type": "integer", "minimum": 1 },
145
+ "height": { "type": "integer", "minimum": 1 },
146
+ "deviceScaleFactor": { "type": "number", "minimum": 0 },
147
+ "isMobile": { "type": "boolean" },
148
+ "name": { "type": "string" }
149
+ },
150
+ "additionalProperties": false
151
+ },
152
+ "metricValue": {
153
+ "anyOf": [
154
+ { "type": "number" },
155
+ { "type": "integer" },
156
+ { "type": "boolean" },
157
+ { "type": "string" },
158
+ { "type": "null" }
159
+ ]
160
+ },
161
+ "probeResult": {
162
+ "type": "object",
163
+ "required": ["id", "kind", "status", "target", "message", "evidence", "metrics"],
164
+ "properties": {
165
+ "id": { "$ref": "https://decantr.ai/schemas/verification-report.common.v1.json#/$defs/nonEmptyString" },
166
+ "kind": {
167
+ "type": "string",
168
+ "enum": [
169
+ "html-document",
170
+ "route-document",
171
+ "route-coverage",
172
+ "asset",
173
+ "security-signal",
174
+ "performance-budget",
175
+ "browser-render",
176
+ "visual-baseline",
177
+ "metadata",
178
+ "custom"
179
+ ]
180
+ },
181
+ "status": {
182
+ "type": "string",
183
+ "enum": ["passed", "warning", "failed", "skipped"]
184
+ },
185
+ "target": { "type": ["string", "null"] },
186
+ "route": { "type": ["string", "null"] },
187
+ "severity": { "type": "string", "enum": ["error", "warn", "info"] },
188
+ "message": { "type": "string" },
189
+ "evidence": { "type": "array", "items": { "type": "string" } },
190
+ "metrics": {
191
+ "type": "object",
192
+ "additionalProperties": { "$ref": "#/$defs/metricValue" }
193
+ },
194
+ "graph": {
195
+ "$ref": "https://decantr.ai/schemas/verification-report.common.v1.json#/$defs/graphAnchor"
196
+ }
197
+ },
198
+ "additionalProperties": false
199
+ },
200
+ "runtimeArtifact": {
201
+ "type": "object",
202
+ "required": ["id", "kind", "path", "localOnly"],
203
+ "properties": {
204
+ "id": { "type": "string" },
205
+ "kind": {
206
+ "type": "string",
207
+ "enum": ["html", "asset", "screenshot", "visual-manifest", "trace", "log", "report"]
208
+ },
209
+ "path": { "type": "string" },
210
+ "hash": { "type": ["string", "null"] },
211
+ "route": { "type": ["string", "null"] },
212
+ "localOnly": { "type": "boolean" },
213
+ "redacted": { "type": "boolean" }
214
+ },
215
+ "additionalProperties": false
216
+ }
217
+ }
218
+ }