@dogfood-lab/schemas 1.5.0 → 1.6.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": "@dogfood-lab/schemas",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.6.0",
|
|
4
4
|
"description": "JSON schemas for the testing-os contract spine — record, finding, pattern, recommendation, doctrine, policy, scenario, submission.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
"devDependencies": {
|
|
36
36
|
"@dogfood-lab/dogfood-swarm": "*",
|
|
37
37
|
"@types/node": "^25.3.5",
|
|
38
|
-
"vitest": "^4.1.
|
|
38
|
+
"vitest": "^4.1.9"
|
|
39
39
|
},
|
|
40
40
|
"author": "mcp-tool-shop",
|
|
41
41
|
"license": "MIT",
|
|
@@ -165,6 +165,11 @@
|
|
|
165
165
|
"type": "string",
|
|
166
166
|
"description": "Required when verdict is blocked. Verifier enforces."
|
|
167
167
|
},
|
|
168
|
+
"tags": {
|
|
169
|
+
"type": "array",
|
|
170
|
+
"items": { "type": "string" },
|
|
171
|
+
"description": "Free-form scenario tags (e.g. 'smoke', 'release', 'wip', 'flaky', 'skip-ci'). Optional. Policy may gate on these via a surface's evidence_requirements.forbidden_tags / required_tags."
|
|
172
|
+
},
|
|
168
173
|
"step_results": {
|
|
169
174
|
"type": "array",
|
|
170
175
|
"minItems": 1,
|
|
@@ -173,6 +173,11 @@
|
|
|
173
173
|
"type": "string",
|
|
174
174
|
"description": "Required when verdict is blocked. Verifier enforces."
|
|
175
175
|
},
|
|
176
|
+
"tags": {
|
|
177
|
+
"type": "array",
|
|
178
|
+
"items": { "type": "string" },
|
|
179
|
+
"description": "Free-form scenario tags (e.g. 'smoke', 'release', 'wip', 'flaky', 'skip-ci'). Carried verbatim from the submission. Policy gates on these via a surface's evidence_requirements.forbidden_tags / required_tags."
|
|
180
|
+
},
|
|
176
181
|
"step_results": {
|
|
177
182
|
"type": "array",
|
|
178
183
|
"minItems": 1,
|
|
@@ -282,6 +287,11 @@
|
|
|
282
287
|
"items": { "type": "string" },
|
|
283
288
|
"description": "Machine-readable reasons for rejection. Empty if accepted."
|
|
284
289
|
},
|
|
290
|
+
"warnings": {
|
|
291
|
+
"type": "array",
|
|
292
|
+
"items": { "type": "string" },
|
|
293
|
+
"description": "Accepted-with-warning notes from warn-severity policy rules. A populated warnings array does NOT imply rejection — the record was accepted. Optional and backward-compatible: records written before this channel existed have no warnings block. Mirrors the rejection_reasons shape (one machine-readable string per matched warn-rule)."
|
|
294
|
+
},
|
|
285
295
|
"provenance_remediation": {
|
|
286
296
|
"type": "object",
|
|
287
297
|
"properties": {
|
|
@@ -225,7 +225,17 @@
|
|
|
225
225
|
"min_evidence_count": {
|
|
226
226
|
"type": "integer",
|
|
227
227
|
"minimum": 0,
|
|
228
|
-
"description": "Minimum number of evidence items across all scenarios."
|
|
228
|
+
"description": "Minimum number of evidence items required PER scenario. The verifier enforces this against each scenario_result independently, not as a sum across all scenarios."
|
|
229
|
+
},
|
|
230
|
+
"forbidden_tags": {
|
|
231
|
+
"type": "array",
|
|
232
|
+
"items": { "type": "string" },
|
|
233
|
+
"description": "Scenario tags that REJECT a scenario_result on this surface. A scenario_result whose tags include any of these (e.g. 'wip', 'flaky', 'skip-ci') fails policy. Enforced per scenario_result independently."
|
|
234
|
+
},
|
|
235
|
+
"required_tags": {
|
|
236
|
+
"type": "array",
|
|
237
|
+
"items": { "type": "string" },
|
|
238
|
+
"description": "Scenario tags that EVERY scenario_result on this surface must carry. A scenario_result missing any of these (or carrying no tags at all) fails policy. Enforced per scenario_result independently."
|
|
229
239
|
}
|
|
230
240
|
}
|
|
231
241
|
}
|