@decantr/verifier 3.6.1 → 3.7.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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@decantr/verifier",
3
- "version": "3.6.1",
3
+ "version": "3.7.0",
4
4
  "description": "Shared verification, typed findings, graph anchors, Project Health, and evidence schemas for Decantr",
5
5
  "keywords": [
6
6
  "decantr",
@@ -48,6 +48,7 @@
48
48
  "./schema/proof-field-report.v2.json": "./schema/proof-field-report.v2.json",
49
49
  "./schema/runtime-probe-payload.v2.json": "./schema/runtime-probe-payload.v2.json",
50
50
  "./schema/scan-report.v1.json": "./schema/scan-report.v1.json",
51
+ "./schema/scan-report.v2.json": "./schema/scan-report.v2.json",
51
52
  "./schema/workspace-health-report.v1.json": "./schema/workspace-health-report.v1.json",
52
53
  "./schema/workspace-health-report.v2.json": "./schema/workspace-health-report.v2.json",
53
54
  "./schema/file-critique-report.v1.json": "./schema/file-critique-report.v1.json",
@@ -66,8 +67,8 @@
66
67
  "dependencies": {
67
68
  "entities": "^8.0.0",
68
69
  "typescript": "^6.0.3",
69
- "@decantr/essence-spec": "3.4.0",
70
- "@decantr/core": "3.6.0"
70
+ "@decantr/core": "3.6.0",
71
+ "@decantr/essence-spec": "3.4.0"
71
72
  },
72
73
  "devDependencies": {
73
74
  "ajv": "^8.20.0",
@@ -0,0 +1,397 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://decantr.ai/schemas/scan-report.v2.json",
4
+ "title": "Decantr Brownfield Scan Report V2",
5
+ "type": "object",
6
+ "required": [
7
+ "$schema",
8
+ "schemaVersion",
9
+ "generatedAt",
10
+ "input",
11
+ "source",
12
+ "confidence",
13
+ "applicability",
14
+ "project",
15
+ "routes",
16
+ "components",
17
+ "styling",
18
+ "staticHosting",
19
+ "assistant",
20
+ "pagesProbe",
21
+ "discovery",
22
+ "findings",
23
+ "recommendedCommands",
24
+ "privacy"
25
+ ],
26
+ "properties": {
27
+ "$schema": {
28
+ "const": "https://decantr.ai/schemas/scan-report.v2.json"
29
+ },
30
+ "schemaVersion": {
31
+ "const": "scan-report.v2"
32
+ },
33
+ "generatedAt": {
34
+ "type": "string",
35
+ "format": "date-time"
36
+ },
37
+ "input": {
38
+ "type": "object",
39
+ "required": ["kind", "value"],
40
+ "properties": {
41
+ "kind": {
42
+ "type": "string",
43
+ "enum": ["local", "github-repo", "github-pages"]
44
+ },
45
+ "value": {
46
+ "type": "string"
47
+ }
48
+ },
49
+ "additionalProperties": false
50
+ },
51
+ "source": {
52
+ "type": "object"
53
+ },
54
+ "confidence": {
55
+ "$ref": "#/$defs/confidence"
56
+ },
57
+ "applicability": {
58
+ "type": "object",
59
+ "required": ["status", "label", "reasons"],
60
+ "properties": {
61
+ "status": {
62
+ "type": "string",
63
+ "enum": ["strong_fit", "partial_fit", "not_applicable", "unknown"]
64
+ },
65
+ "label": {
66
+ "type": "string",
67
+ "minLength": 1
68
+ },
69
+ "reasons": {
70
+ "$ref": "#/$defs/stringArray"
71
+ }
72
+ },
73
+ "additionalProperties": false
74
+ },
75
+ "project": {
76
+ "type": "object",
77
+ "required": [
78
+ "framework",
79
+ "frameworkVersion",
80
+ "packageManager",
81
+ "primaryLanguage",
82
+ "hasTypeScript",
83
+ "hasTailwind",
84
+ "hasDecantr",
85
+ "packageName",
86
+ "evidence",
87
+ "workspaceScope",
88
+ "projectPath"
89
+ ],
90
+ "properties": {
91
+ "framework": {
92
+ "type": "string"
93
+ },
94
+ "frameworkVersion": {
95
+ "type": ["string", "null"]
96
+ },
97
+ "packageManager": {
98
+ "type": "string"
99
+ },
100
+ "primaryLanguage": {
101
+ "type": "string"
102
+ },
103
+ "hasTypeScript": {
104
+ "type": "boolean"
105
+ },
106
+ "hasTailwind": {
107
+ "type": "boolean"
108
+ },
109
+ "hasDecantr": {
110
+ "type": "boolean"
111
+ },
112
+ "packageName": {
113
+ "type": ["string", "null"]
114
+ },
115
+ "evidence": {
116
+ "$ref": "#/$defs/stringArray"
117
+ },
118
+ "workspaceScope": {
119
+ "type": "string",
120
+ "enum": ["single-app", "workspace-app"]
121
+ },
122
+ "projectPath": {
123
+ "type": "string"
124
+ }
125
+ },
126
+ "additionalProperties": false
127
+ },
128
+ "routes": {
129
+ "type": "object",
130
+ "required": [
131
+ "strategy",
132
+ "count",
133
+ "items",
134
+ "routeSignalCount",
135
+ "taskableRouteCount",
136
+ "confidence",
137
+ "signals"
138
+ ],
139
+ "properties": {
140
+ "strategy": {
141
+ "type": "string"
142
+ },
143
+ "count": {
144
+ "type": "integer",
145
+ "minimum": 0
146
+ },
147
+ "items": {
148
+ "type": "array",
149
+ "items": {
150
+ "$ref": "#/$defs/route"
151
+ }
152
+ },
153
+ "routeSignalCount": {
154
+ "type": "integer",
155
+ "minimum": 0
156
+ },
157
+ "taskableRouteCount": {
158
+ "type": "integer",
159
+ "minimum": 0
160
+ },
161
+ "confidence": {
162
+ "$ref": "#/$defs/confidenceLevel"
163
+ },
164
+ "signals": {
165
+ "type": "array",
166
+ "items": {
167
+ "$ref": "#/$defs/routeSignal"
168
+ }
169
+ }
170
+ },
171
+ "additionalProperties": false
172
+ },
173
+ "components": {
174
+ "type": "object",
175
+ "required": [
176
+ "pageCount",
177
+ "componentCount",
178
+ "directories",
179
+ "confidence",
180
+ "evidence",
181
+ "items",
182
+ "limitations"
183
+ ],
184
+ "properties": {
185
+ "pageCount": {
186
+ "type": "integer",
187
+ "minimum": 0
188
+ },
189
+ "componentCount": {
190
+ "type": "integer",
191
+ "minimum": 0
192
+ },
193
+ "directories": {
194
+ "$ref": "#/$defs/stringArray"
195
+ },
196
+ "confidence": {
197
+ "$ref": "#/$defs/confidenceLevel"
198
+ },
199
+ "evidence": {
200
+ "$ref": "#/$defs/stringArray"
201
+ },
202
+ "items": {
203
+ "type": "array",
204
+ "items": {
205
+ "$ref": "#/$defs/component"
206
+ }
207
+ },
208
+ "limitations": {
209
+ "$ref": "#/$defs/stringArray"
210
+ }
211
+ },
212
+ "additionalProperties": false
213
+ },
214
+ "styling": {
215
+ "type": "object"
216
+ },
217
+ "staticHosting": {
218
+ "type": "object"
219
+ },
220
+ "assistant": {
221
+ "type": "object",
222
+ "required": ["ruleFiles"],
223
+ "properties": {
224
+ "ruleFiles": {
225
+ "$ref": "#/$defs/stringArray"
226
+ }
227
+ },
228
+ "additionalProperties": false
229
+ },
230
+ "graphPreview": {
231
+ "type": "object"
232
+ },
233
+ "pagesProbe": {
234
+ "anyOf": [{ "type": "object" }, { "type": "null" }]
235
+ },
236
+ "discovery": {
237
+ "type": "object",
238
+ "required": [
239
+ "schemaVersion",
240
+ "workspace",
241
+ "projectEvidence",
242
+ "routeSignalCount",
243
+ "taskableRouteCount",
244
+ "routeConfidence",
245
+ "componentConfidence",
246
+ "componentEvidence",
247
+ "limitations"
248
+ ],
249
+ "properties": {
250
+ "schemaVersion": {
251
+ "const": "discovery.v1"
252
+ },
253
+ "workspace": {
254
+ "type": "object",
255
+ "required": ["projectPath", "scope"],
256
+ "properties": {
257
+ "projectPath": {
258
+ "type": "string"
259
+ },
260
+ "scope": {
261
+ "type": "string",
262
+ "enum": ["single-app", "workspace-app"]
263
+ }
264
+ },
265
+ "additionalProperties": false
266
+ },
267
+ "projectEvidence": {
268
+ "$ref": "#/$defs/stringArray"
269
+ },
270
+ "routeSignalCount": {
271
+ "type": "integer",
272
+ "minimum": 0
273
+ },
274
+ "taskableRouteCount": {
275
+ "type": "integer",
276
+ "minimum": 0
277
+ },
278
+ "routeConfidence": {
279
+ "$ref": "#/$defs/confidenceLevel"
280
+ },
281
+ "componentConfidence": {
282
+ "$ref": "#/$defs/confidenceLevel"
283
+ },
284
+ "componentEvidence": {
285
+ "$ref": "#/$defs/stringArray"
286
+ },
287
+ "limitations": {
288
+ "$ref": "#/$defs/stringArray"
289
+ }
290
+ },
291
+ "additionalProperties": false
292
+ },
293
+ "findings": {
294
+ "type": "array",
295
+ "items": {
296
+ "type": "object"
297
+ }
298
+ },
299
+ "recommendedCommands": {
300
+ "$ref": "#/$defs/stringArray"
301
+ },
302
+ "privacy": {
303
+ "type": "object"
304
+ }
305
+ },
306
+ "additionalProperties": false,
307
+ "$defs": {
308
+ "confidenceLevel": {
309
+ "type": "string",
310
+ "enum": ["high", "medium", "low"]
311
+ },
312
+ "confidence": {
313
+ "type": "object",
314
+ "required": ["level", "score", "reasons"],
315
+ "properties": {
316
+ "level": {
317
+ "$ref": "#/$defs/confidenceLevel"
318
+ },
319
+ "score": {
320
+ "type": "integer",
321
+ "minimum": 0,
322
+ "maximum": 100
323
+ },
324
+ "reasons": {
325
+ "$ref": "#/$defs/stringArray"
326
+ }
327
+ },
328
+ "additionalProperties": false
329
+ },
330
+ "route": {
331
+ "type": "object",
332
+ "required": ["path", "file", "hasLayout"],
333
+ "properties": {
334
+ "path": {
335
+ "type": "string"
336
+ },
337
+ "file": {
338
+ "type": "string"
339
+ },
340
+ "hasLayout": {
341
+ "type": "boolean"
342
+ }
343
+ },
344
+ "additionalProperties": false
345
+ },
346
+ "routeSignal": {
347
+ "type": "object",
348
+ "required": ["path", "file", "kind", "confidence", "taskable", "evidence"],
349
+ "properties": {
350
+ "path": {
351
+ "type": "string"
352
+ },
353
+ "file": {
354
+ "type": "string"
355
+ },
356
+ "kind": {
357
+ "type": "string"
358
+ },
359
+ "confidence": {
360
+ "$ref": "#/$defs/confidenceLevel"
361
+ },
362
+ "taskable": {
363
+ "type": "boolean"
364
+ },
365
+ "evidence": {
366
+ "type": "string"
367
+ }
368
+ },
369
+ "additionalProperties": false
370
+ },
371
+ "component": {
372
+ "type": "object",
373
+ "required": ["name", "file", "kind", "confidence"],
374
+ "properties": {
375
+ "name": {
376
+ "type": "string"
377
+ },
378
+ "file": {
379
+ "type": "string"
380
+ },
381
+ "kind": {
382
+ "type": "string"
383
+ },
384
+ "confidence": {
385
+ "$ref": "#/$defs/confidenceLevel"
386
+ }
387
+ },
388
+ "additionalProperties": false
389
+ },
390
+ "stringArray": {
391
+ "type": "array",
392
+ "items": {
393
+ "type": "string"
394
+ }
395
+ }
396
+ }
397
+ }