@nebulacomponents/citable 1.15.1 → 1.17.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/CHANGELOG.md +50 -0
- package/README.md +18 -5
- package/dist/universal/.agents/skills/citable/SKILL.md +51 -1
- package/dist/universal/.agents/skills/citable/VERSION +1 -1
- package/dist/universal/.agents/skills/citable/commands/README.md +3 -1
- package/dist/universal/.agents/skills/citable/commands/governance.md +12 -0
- package/dist/universal/.agents/skills/citable/commands/measurement.md +20 -0
- package/dist/universal/.agents/skills/citable/commands/reporting.md +16 -0
- package/dist/universal/.agents/skills/citable/manifest.json +17 -12
- package/dist/universal/.agents/skills/citable/schemas/cli-output-envelope.schema.json +30 -0
- package/dist/universal/.agents/skills/citable/schemas/experiment.schema.json +1 -1
- package/dist/universal/.agents/skills/citable/schemas/finding.schema.json +69 -0
- package/dist/universal/.agents/skills/citable/schemas/fleet.schema.json +93 -0
- package/dist/universal/.agents/skills/citable/schemas/funnel.schema.json +116 -0
- package/dist/universal/.agents/skills/citable/schemas/mcp-transport-envelope.schema.json +244 -0
- package/dist/universal/.agents/skills/citable/schemas/observation.schema.json +1 -1
- package/dist/universal/.agents/skills/citable/schemas/remediation-verification.schema.json +98 -0
- package/dist/universal/.claude/agents/citable/manifest.json +2 -2
- package/dist/universal/.claude/skills/citable/SKILL.md +51 -1
- package/dist/universal/.claude/skills/citable/VERSION +1 -1
- package/dist/universal/.claude/skills/citable/commands/README.md +3 -1
- package/dist/universal/.claude/skills/citable/commands/governance.md +12 -0
- package/dist/universal/.claude/skills/citable/commands/measurement.md +20 -0
- package/dist/universal/.claude/skills/citable/commands/reporting.md +16 -0
- package/dist/universal/.claude/skills/citable/manifest.json +17 -12
- package/dist/universal/.claude/skills/citable/schemas/cli-output-envelope.schema.json +30 -0
- package/dist/universal/.claude/skills/citable/schemas/experiment.schema.json +1 -1
- package/dist/universal/.claude/skills/citable/schemas/finding.schema.json +69 -0
- package/dist/universal/.claude/skills/citable/schemas/fleet.schema.json +93 -0
- package/dist/universal/.claude/skills/citable/schemas/funnel.schema.json +116 -0
- package/dist/universal/.claude/skills/citable/schemas/mcp-transport-envelope.schema.json +244 -0
- package/dist/universal/.claude/skills/citable/schemas/observation.schema.json +1 -1
- package/dist/universal/.claude/skills/citable/schemas/remediation-verification.schema.json +98 -0
- package/dist/universal/.cursor/skills/citable/SKILL.md +51 -1
- package/dist/universal/.cursor/skills/citable/VERSION +1 -1
- package/dist/universal/.cursor/skills/citable/commands/README.md +3 -1
- package/dist/universal/.cursor/skills/citable/commands/governance.md +12 -0
- package/dist/universal/.cursor/skills/citable/commands/measurement.md +20 -0
- package/dist/universal/.cursor/skills/citable/commands/reporting.md +16 -0
- package/dist/universal/.cursor/skills/citable/manifest.json +17 -12
- package/dist/universal/.cursor/skills/citable/schemas/cli-output-envelope.schema.json +30 -0
- package/dist/universal/.cursor/skills/citable/schemas/experiment.schema.json +1 -1
- package/dist/universal/.cursor/skills/citable/schemas/finding.schema.json +69 -0
- package/dist/universal/.cursor/skills/citable/schemas/fleet.schema.json +93 -0
- package/dist/universal/.cursor/skills/citable/schemas/funnel.schema.json +116 -0
- package/dist/universal/.cursor/skills/citable/schemas/mcp-transport-envelope.schema.json +244 -0
- package/dist/universal/.cursor/skills/citable/schemas/observation.schema.json +1 -1
- package/dist/universal/.cursor/skills/citable/schemas/remediation-verification.schema.json +98 -0
- package/dist/universal/.gemini/skills/citable/SKILL.md +51 -1
- package/dist/universal/.gemini/skills/citable/VERSION +1 -1
- package/dist/universal/.gemini/skills/citable/commands/README.md +3 -1
- package/dist/universal/.gemini/skills/citable/commands/governance.md +12 -0
- package/dist/universal/.gemini/skills/citable/commands/measurement.md +20 -0
- package/dist/universal/.gemini/skills/citable/commands/reporting.md +16 -0
- package/dist/universal/.gemini/skills/citable/manifest.json +17 -12
- package/dist/universal/.gemini/skills/citable/schemas/cli-output-envelope.schema.json +30 -0
- package/dist/universal/.gemini/skills/citable/schemas/experiment.schema.json +1 -1
- package/dist/universal/.gemini/skills/citable/schemas/finding.schema.json +69 -0
- package/dist/universal/.gemini/skills/citable/schemas/fleet.schema.json +93 -0
- package/dist/universal/.gemini/skills/citable/schemas/funnel.schema.json +116 -0
- package/dist/universal/.gemini/skills/citable/schemas/mcp-transport-envelope.schema.json +244 -0
- package/dist/universal/.gemini/skills/citable/schemas/observation.schema.json +1 -1
- package/dist/universal/.gemini/skills/citable/schemas/remediation-verification.schema.json +98 -0
- package/dist/universal/.github/skills/citable/SKILL.md +51 -1
- package/dist/universal/.github/skills/citable/VERSION +1 -1
- package/dist/universal/.github/skills/citable/commands/README.md +3 -1
- package/dist/universal/.github/skills/citable/commands/governance.md +12 -0
- package/dist/universal/.github/skills/citable/commands/measurement.md +20 -0
- package/dist/universal/.github/skills/citable/commands/reporting.md +16 -0
- package/dist/universal/.github/skills/citable/manifest.json +17 -12
- package/dist/universal/.github/skills/citable/schemas/cli-output-envelope.schema.json +30 -0
- package/dist/universal/.github/skills/citable/schemas/experiment.schema.json +1 -1
- package/dist/universal/.github/skills/citable/schemas/finding.schema.json +69 -0
- package/dist/universal/.github/skills/citable/schemas/fleet.schema.json +93 -0
- package/dist/universal/.github/skills/citable/schemas/funnel.schema.json +116 -0
- package/dist/universal/.github/skills/citable/schemas/mcp-transport-envelope.schema.json +244 -0
- package/dist/universal/.github/skills/citable/schemas/observation.schema.json +1 -1
- package/dist/universal/.github/skills/citable/schemas/remediation-verification.schema.json +98 -0
- package/dist/universal/.kiro/skills/citable/SKILL.md +51 -1
- package/dist/universal/.kiro/skills/citable/VERSION +1 -1
- package/dist/universal/.kiro/skills/citable/commands/README.md +3 -1
- package/dist/universal/.kiro/skills/citable/commands/governance.md +12 -0
- package/dist/universal/.kiro/skills/citable/commands/measurement.md +20 -0
- package/dist/universal/.kiro/skills/citable/commands/reporting.md +16 -0
- package/dist/universal/.kiro/skills/citable/manifest.json +17 -12
- package/dist/universal/.kiro/skills/citable/schemas/cli-output-envelope.schema.json +30 -0
- package/dist/universal/.kiro/skills/citable/schemas/experiment.schema.json +1 -1
- package/dist/universal/.kiro/skills/citable/schemas/finding.schema.json +69 -0
- package/dist/universal/.kiro/skills/citable/schemas/fleet.schema.json +93 -0
- package/dist/universal/.kiro/skills/citable/schemas/funnel.schema.json +116 -0
- package/dist/universal/.kiro/skills/citable/schemas/mcp-transport-envelope.schema.json +244 -0
- package/dist/universal/.kiro/skills/citable/schemas/observation.schema.json +1 -1
- package/dist/universal/.kiro/skills/citable/schemas/remediation-verification.schema.json +98 -0
- package/dist/universal/.opencode/skills/citable/SKILL.md +51 -1
- package/dist/universal/.opencode/skills/citable/VERSION +1 -1
- package/dist/universal/.opencode/skills/citable/commands/README.md +3 -1
- package/dist/universal/.opencode/skills/citable/commands/governance.md +12 -0
- package/dist/universal/.opencode/skills/citable/commands/measurement.md +20 -0
- package/dist/universal/.opencode/skills/citable/commands/reporting.md +16 -0
- package/dist/universal/.opencode/skills/citable/manifest.json +17 -12
- package/dist/universal/.opencode/skills/citable/schemas/cli-output-envelope.schema.json +30 -0
- package/dist/universal/.opencode/skills/citable/schemas/experiment.schema.json +1 -1
- package/dist/universal/.opencode/skills/citable/schemas/finding.schema.json +69 -0
- package/dist/universal/.opencode/skills/citable/schemas/fleet.schema.json +93 -0
- package/dist/universal/.opencode/skills/citable/schemas/funnel.schema.json +116 -0
- package/dist/universal/.opencode/skills/citable/schemas/mcp-transport-envelope.schema.json +244 -0
- package/dist/universal/.opencode/skills/citable/schemas/observation.schema.json +1 -1
- package/dist/universal/.opencode/skills/citable/schemas/remediation-verification.schema.json +98 -0
- package/dist/universal/.pi/agent/skills/citable/SKILL.md +51 -1
- package/dist/universal/.pi/agent/skills/citable/VERSION +1 -1
- package/dist/universal/.pi/agent/skills/citable/commands/README.md +3 -1
- package/dist/universal/.pi/agent/skills/citable/commands/governance.md +12 -0
- package/dist/universal/.pi/agent/skills/citable/commands/measurement.md +20 -0
- package/dist/universal/.pi/agent/skills/citable/commands/reporting.md +16 -0
- package/dist/universal/.pi/agent/skills/citable/manifest.json +17 -12
- package/dist/universal/.pi/agent/skills/citable/schemas/cli-output-envelope.schema.json +30 -0
- package/dist/universal/.pi/agent/skills/citable/schemas/experiment.schema.json +1 -1
- package/dist/universal/.pi/agent/skills/citable/schemas/finding.schema.json +69 -0
- package/dist/universal/.pi/agent/skills/citable/schemas/fleet.schema.json +93 -0
- package/dist/universal/.pi/agent/skills/citable/schemas/funnel.schema.json +116 -0
- package/dist/universal/.pi/agent/skills/citable/schemas/mcp-transport-envelope.schema.json +244 -0
- package/dist/universal/.pi/agent/skills/citable/schemas/observation.schema.json +1 -1
- package/dist/universal/.pi/agent/skills/citable/schemas/remediation-verification.schema.json +98 -0
- package/dist/universal/.qoder/skills/citable/SKILL.md +51 -1
- package/dist/universal/.qoder/skills/citable/VERSION +1 -1
- package/dist/universal/.qoder/skills/citable/commands/README.md +3 -1
- package/dist/universal/.qoder/skills/citable/commands/governance.md +12 -0
- package/dist/universal/.qoder/skills/citable/commands/measurement.md +20 -0
- package/dist/universal/.qoder/skills/citable/commands/reporting.md +16 -0
- package/dist/universal/.qoder/skills/citable/manifest.json +17 -12
- package/dist/universal/.qoder/skills/citable/schemas/cli-output-envelope.schema.json +30 -0
- package/dist/universal/.qoder/skills/citable/schemas/experiment.schema.json +1 -1
- package/dist/universal/.qoder/skills/citable/schemas/finding.schema.json +69 -0
- package/dist/universal/.qoder/skills/citable/schemas/fleet.schema.json +93 -0
- package/dist/universal/.qoder/skills/citable/schemas/funnel.schema.json +116 -0
- package/dist/universal/.qoder/skills/citable/schemas/mcp-transport-envelope.schema.json +244 -0
- package/dist/universal/.qoder/skills/citable/schemas/observation.schema.json +1 -1
- package/dist/universal/.qoder/skills/citable/schemas/remediation-verification.schema.json +98 -0
- package/dist/universal/.rovodev/skills/citable/SKILL.md +51 -1
- package/dist/universal/.rovodev/skills/citable/VERSION +1 -1
- package/dist/universal/.rovodev/skills/citable/commands/README.md +3 -1
- package/dist/universal/.rovodev/skills/citable/commands/governance.md +12 -0
- package/dist/universal/.rovodev/skills/citable/commands/measurement.md +20 -0
- package/dist/universal/.rovodev/skills/citable/commands/reporting.md +16 -0
- package/dist/universal/.rovodev/skills/citable/manifest.json +17 -12
- package/dist/universal/.rovodev/skills/citable/schemas/cli-output-envelope.schema.json +30 -0
- package/dist/universal/.rovodev/skills/citable/schemas/experiment.schema.json +1 -1
- package/dist/universal/.rovodev/skills/citable/schemas/finding.schema.json +69 -0
- package/dist/universal/.rovodev/skills/citable/schemas/fleet.schema.json +93 -0
- package/dist/universal/.rovodev/skills/citable/schemas/funnel.schema.json +116 -0
- package/dist/universal/.rovodev/skills/citable/schemas/mcp-transport-envelope.schema.json +244 -0
- package/dist/universal/.rovodev/skills/citable/schemas/observation.schema.json +1 -1
- package/dist/universal/.rovodev/skills/citable/schemas/remediation-verification.schema.json +98 -0
- package/dist/universal/.trae/skills/citable/SKILL.md +51 -1
- package/dist/universal/.trae/skills/citable/VERSION +1 -1
- package/dist/universal/.trae/skills/citable/commands/README.md +3 -1
- package/dist/universal/.trae/skills/citable/commands/governance.md +12 -0
- package/dist/universal/.trae/skills/citable/commands/measurement.md +20 -0
- package/dist/universal/.trae/skills/citable/commands/reporting.md +16 -0
- package/dist/universal/.trae/skills/citable/manifest.json +17 -12
- package/dist/universal/.trae/skills/citable/schemas/cli-output-envelope.schema.json +30 -0
- package/dist/universal/.trae/skills/citable/schemas/experiment.schema.json +1 -1
- package/dist/universal/.trae/skills/citable/schemas/finding.schema.json +69 -0
- package/dist/universal/.trae/skills/citable/schemas/fleet.schema.json +93 -0
- package/dist/universal/.trae/skills/citable/schemas/funnel.schema.json +116 -0
- package/dist/universal/.trae/skills/citable/schemas/mcp-transport-envelope.schema.json +244 -0
- package/dist/universal/.trae/skills/citable/schemas/observation.schema.json +1 -1
- package/dist/universal/.trae/skills/citable/schemas/remediation-verification.schema.json +98 -0
- package/dist/universal/.trae-cn/skills/citable/SKILL.md +51 -1
- package/dist/universal/.trae-cn/skills/citable/VERSION +1 -1
- package/dist/universal/.trae-cn/skills/citable/commands/README.md +3 -1
- package/dist/universal/.trae-cn/skills/citable/commands/governance.md +12 -0
- package/dist/universal/.trae-cn/skills/citable/commands/measurement.md +20 -0
- package/dist/universal/.trae-cn/skills/citable/commands/reporting.md +16 -0
- package/dist/universal/.trae-cn/skills/citable/manifest.json +17 -12
- package/dist/universal/.trae-cn/skills/citable/schemas/cli-output-envelope.schema.json +30 -0
- package/dist/universal/.trae-cn/skills/citable/schemas/experiment.schema.json +1 -1
- package/dist/universal/.trae-cn/skills/citable/schemas/finding.schema.json +69 -0
- package/dist/universal/.trae-cn/skills/citable/schemas/fleet.schema.json +93 -0
- package/dist/universal/.trae-cn/skills/citable/schemas/funnel.schema.json +116 -0
- package/dist/universal/.trae-cn/skills/citable/schemas/mcp-transport-envelope.schema.json +244 -0
- package/dist/universal/.trae-cn/skills/citable/schemas/observation.schema.json +1 -1
- package/dist/universal/.trae-cn/skills/citable/schemas/remediation-verification.schema.json +98 -0
- package/dist/universal/manifest.json +208 -148
- package/package.json +1 -1
- package/schemas/cli-output-envelope.schema.json +30 -0
- package/schemas/experiment.schema.json +1 -1
- package/schemas/finding.schema.json +69 -0
- package/schemas/fleet.schema.json +93 -0
- package/schemas/funnel.schema.json +116 -0
- package/schemas/mcp-transport-envelope.schema.json +244 -0
- package/schemas/observation.schema.json +1 -1
- package/schemas/remediation-verification.schema.json +98 -0
- package/skill/SKILL.md +51 -1
- package/skill/commands/README.md +3 -1
- package/skill/commands/governance.md +12 -0
- package/skill/commands/measurement.md +20 -0
- package/skill/commands/reporting.md +16 -0
- package/src/analysis/saliency.js +119 -0
- package/src/cli/index.js +651 -13
- package/src/commands/attributeImpact.js +54 -0
- package/src/commands/audit.js +2 -2
- package/src/commands/ciWorkflow.js +63 -0
- package/src/commands/compatibility.js +205 -0
- package/src/commands/connect.js +3 -0
- package/src/commands/context.js +2 -1
- package/src/commands/edgeRules.js +196 -0
- package/src/commands/edgeSecurity.js +192 -0
- package/src/commands/exceptions.js +241 -0
- package/src/commands/experimentGuardrails.js +213 -0
- package/src/commands/fleet.js +104 -0
- package/src/commands/generateLlmsTxt.js +111 -0
- package/src/commands/goldenCorpus.js +155 -0
- package/src/commands/implementationKit.js +202 -0
- package/src/commands/inspectAeo.js +74 -0
- package/src/commands/inspectCro.js +142 -0
- package/src/commands/inspectGeo.js +52 -0
- package/src/commands/inspectSerp.js +317 -0
- package/src/commands/lintComponents.js +132 -0
- package/src/commands/monitor.js +138 -0
- package/src/commands/observe.js +6 -1
- package/src/commands/planExperiment.js +120 -0
- package/src/commands/previewCro.js +241 -0
- package/src/commands/probe.js +70 -0
- package/src/commands/remediate.js +461 -0
- package/src/commands/reportConsensus.js +48 -0
- package/src/commands/testFunnel.js +107 -0
- package/src/commands/verifyRemediation.js +204 -0
- package/src/commands/visualRegression.js +165 -0
- package/src/components/index.js +556 -0
- package/src/connectors/index.js +6 -1
- package/src/connectors/indexnow.js +431 -0
- package/src/connectors/mcp/allowlist.js +107 -0
- package/src/connectors/mcp/client.js +239 -0
- package/src/connectors/mcp/diagnostics.js +214 -0
- package/src/connectors/mcp/gscServer.js +155 -0
- package/src/connectors/mcp/http.js +130 -0
- package/src/connectors/mcp/index.js +7 -0
- package/src/connectors/mcp/pilot.js +138 -0
- package/src/connectors/mcp/pilotServer.js +80 -0
- package/src/connectors/mcp/sanitizer.js +38 -0
- package/src/connectors/mcp/stdio.js +178 -0
- package/src/crawler/ipRanges.js +161 -0
- package/src/detectors/agent.js +127 -0
- package/src/detectors/ans.js +282 -0
- package/src/detectors/crawl.js +46 -0
- package/src/detectors/cro.js +825 -0
- package/src/detectors/cwv.js +38 -1
- package/src/detectors/evd.js +101 -0
- package/src/detectors/framework.js +32 -2
- package/src/detectors/geoReco.js +408 -0
- package/src/detectors/index.js +4 -2
- package/src/detectors/link.js +112 -1
- package/src/detectors/page.js +101 -0
- package/src/detectors/schemaData.js +529 -0
- package/src/detectors/tech.js +306 -0
- package/src/extractor/page.js +186 -2
- package/src/extractor/site.js +9 -2
- package/src/installer/index.js +45 -2
- package/src/monitoring/alertDelivery.js +101 -7
- package/src/observations/attribution.js +217 -0
- package/src/registries/index.js +14 -0
- package/src/reporting/consensus.js +416 -0
- package/src/reporting/executiveExport.js +244 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nebulacomponents/citable",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.17.0",
|
|
4
4
|
"description": "Production-grade SEO, AEO, and GEO agent skill with auditable detection, claim governance, evidence validation, and multi-agent installation.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"seo",
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$id": "citable://schemas/cli-output-envelope.schema.json",
|
|
3
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
4
|
+
"title": "CLI JSON output envelope",
|
|
5
|
+
"description": "Stable envelope for every `citable <command> --json` output. Consumers read `citable_output_schema` for envelope compatibility and read command data from `result`. The envelope version changes only on breaking envelope changes; command payloads evolve backward-compatibly inside result.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"required": ["citable_output_schema", "tool_version", "generated_at", "result"],
|
|
8
|
+
"properties": {
|
|
9
|
+
"citable_output_schema": {
|
|
10
|
+
"type": "string",
|
|
11
|
+
"pattern": "^\\d+\\.\\d+$",
|
|
12
|
+
"description": "Envelope contract version. 1.0 is the initial stable contract."
|
|
13
|
+
},
|
|
14
|
+
"tool_version": {
|
|
15
|
+
"type": "string",
|
|
16
|
+
"description": "Citable package version that produced the output."
|
|
17
|
+
},
|
|
18
|
+
"command": {
|
|
19
|
+
"type": ["string", "null"],
|
|
20
|
+
"description": "Top-level command that produced this output."
|
|
21
|
+
},
|
|
22
|
+
"generated_at": {
|
|
23
|
+
"type": "string",
|
|
24
|
+
"description": "ISO-8601 timestamp of when the output was generated."
|
|
25
|
+
},
|
|
26
|
+
"result": {
|
|
27
|
+
"description": "Command-specific payload. Structure is defined per command and evolves backward-compatibly within an envelope major version."
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
"properties": {
|
|
16
16
|
"experiment_id": { "$ref": "citable://schemas/common.defs.json#/definitions/id" },
|
|
17
17
|
"hypothesis": { "type": "string", "minLength": 10 },
|
|
18
|
-
"discipline": { "type": "array", "items": { "type": "string", "enum": ["seo", "aeo", "geo"] } },
|
|
18
|
+
"discipline": { "type": "array", "items": { "type": "string", "enum": ["seo", "aeo", "geo", "cro"] } },
|
|
19
19
|
"primary_metric": { "type": "string" },
|
|
20
20
|
"secondary_metrics": { "type": "array", "items": { "type": "string" } },
|
|
21
21
|
"prompt_cohort": { "type": "array", "items": { "type": "string" } },
|
|
@@ -257,6 +257,75 @@
|
|
|
257
257
|
}
|
|
258
258
|
}
|
|
259
259
|
},
|
|
260
|
+
"provenance": {
|
|
261
|
+
"type": "object",
|
|
262
|
+
"required": [
|
|
263
|
+
"detector_version",
|
|
264
|
+
"tool_version",
|
|
265
|
+
"evidence_source",
|
|
266
|
+
"methodology",
|
|
267
|
+
"revalidation_required"
|
|
268
|
+
],
|
|
269
|
+
"properties": {
|
|
270
|
+
"detector_version": {
|
|
271
|
+
"type": "integer",
|
|
272
|
+
"minimum": 1
|
|
273
|
+
},
|
|
274
|
+
"tool_version": {
|
|
275
|
+
"type": "string"
|
|
276
|
+
},
|
|
277
|
+
"source_url": {
|
|
278
|
+
"type": [
|
|
279
|
+
"string",
|
|
280
|
+
"null"
|
|
281
|
+
]
|
|
282
|
+
},
|
|
283
|
+
"source_file": {
|
|
284
|
+
"type": [
|
|
285
|
+
"string",
|
|
286
|
+
"null"
|
|
287
|
+
]
|
|
288
|
+
},
|
|
289
|
+
"evidence_selector": {
|
|
290
|
+
"type": [
|
|
291
|
+
"string",
|
|
292
|
+
"null"
|
|
293
|
+
]
|
|
294
|
+
},
|
|
295
|
+
"evidence_source": {
|
|
296
|
+
"type": "string",
|
|
297
|
+
"enum": [
|
|
298
|
+
"dom_parse",
|
|
299
|
+
"registry",
|
|
300
|
+
"registry+dom_parse",
|
|
301
|
+
"controlled_observation",
|
|
302
|
+
"configuration"
|
|
303
|
+
]
|
|
304
|
+
},
|
|
305
|
+
"viewport": {
|
|
306
|
+
"type": [
|
|
307
|
+
"string",
|
|
308
|
+
"null"
|
|
309
|
+
]
|
|
310
|
+
},
|
|
311
|
+
"viewport_note": {
|
|
312
|
+
"type": [
|
|
313
|
+
"string",
|
|
314
|
+
"null"
|
|
315
|
+
]
|
|
316
|
+
},
|
|
317
|
+
"methodology": {
|
|
318
|
+
"type": "string"
|
|
319
|
+
},
|
|
320
|
+
"revalidation_required": {
|
|
321
|
+
"type": "string",
|
|
322
|
+
"enum": [
|
|
323
|
+
"on_next_audit",
|
|
324
|
+
"human_review_before_action"
|
|
325
|
+
]
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
},
|
|
260
329
|
"status": {
|
|
261
330
|
"type": "object",
|
|
262
331
|
"required": [
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$id": "citable://schemas/fleet.schema.json",
|
|
3
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
4
|
+
"title": "Fleet Properties registry",
|
|
5
|
+
"allOf": [
|
|
6
|
+
{
|
|
7
|
+
"$ref": "citable://schemas/common.defs.json#/definitions/registryFile"
|
|
8
|
+
}
|
|
9
|
+
],
|
|
10
|
+
"properties": {
|
|
11
|
+
"kind": {
|
|
12
|
+
"const": "fleet"
|
|
13
|
+
},
|
|
14
|
+
"entries": {
|
|
15
|
+
"items": {
|
|
16
|
+
"$ref": "#/definitions/fleetProperty"
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
"definitions": {
|
|
21
|
+
"fleetProperty": {
|
|
22
|
+
"type": "object",
|
|
23
|
+
"additionalProperties": false,
|
|
24
|
+
"required": [
|
|
25
|
+
"property_id",
|
|
26
|
+
"name",
|
|
27
|
+
"primary_domain",
|
|
28
|
+
"environment",
|
|
29
|
+
"status"
|
|
30
|
+
],
|
|
31
|
+
"properties": {
|
|
32
|
+
"property_id": {
|
|
33
|
+
"$ref": "citable://schemas/common.defs.json#/definitions/id"
|
|
34
|
+
},
|
|
35
|
+
"name": {
|
|
36
|
+
"type": "string",
|
|
37
|
+
"minLength": 1
|
|
38
|
+
},
|
|
39
|
+
"description": {
|
|
40
|
+
"type": "string"
|
|
41
|
+
},
|
|
42
|
+
"primary_domain": {
|
|
43
|
+
"type": "string",
|
|
44
|
+
"minLength": 3
|
|
45
|
+
},
|
|
46
|
+
"domains": {
|
|
47
|
+
"type": "array",
|
|
48
|
+
"items": {
|
|
49
|
+
"type": "string"
|
|
50
|
+
}
|
|
51
|
+
},
|
|
52
|
+
"environment": {
|
|
53
|
+
"type": "string",
|
|
54
|
+
"enum": [
|
|
55
|
+
"production",
|
|
56
|
+
"staging",
|
|
57
|
+
"development",
|
|
58
|
+
"preview"
|
|
59
|
+
]
|
|
60
|
+
},
|
|
61
|
+
"base_url": {
|
|
62
|
+
"type": "string"
|
|
63
|
+
},
|
|
64
|
+
"built_output_dir": {
|
|
65
|
+
"type": "string"
|
|
66
|
+
},
|
|
67
|
+
"owner": {
|
|
68
|
+
"type": "string"
|
|
69
|
+
},
|
|
70
|
+
"tags": {
|
|
71
|
+
"type": "array",
|
|
72
|
+
"items": {
|
|
73
|
+
"type": "string"
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
"audit_schedule": {
|
|
77
|
+
"type": "string"
|
|
78
|
+
},
|
|
79
|
+
"status": {
|
|
80
|
+
"type": "string",
|
|
81
|
+
"enum": [
|
|
82
|
+
"active",
|
|
83
|
+
"paused",
|
|
84
|
+
"archived"
|
|
85
|
+
]
|
|
86
|
+
},
|
|
87
|
+
"updated": {
|
|
88
|
+
"$ref": "citable://schemas/common.defs.json#/definitions/isoDate"
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$id": "citable://schemas/funnel.schema.json",
|
|
3
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
4
|
+
"title": "Conversion Funnel registry",
|
|
5
|
+
"allOf": [
|
|
6
|
+
{
|
|
7
|
+
"$ref": "citable://schemas/common.defs.json#/definitions/registryFile"
|
|
8
|
+
}
|
|
9
|
+
],
|
|
10
|
+
"properties": {
|
|
11
|
+
"kind": {
|
|
12
|
+
"const": "funnels"
|
|
13
|
+
},
|
|
14
|
+
"entries": {
|
|
15
|
+
"items": {
|
|
16
|
+
"$ref": "#/definitions/funnel"
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
"definitions": {
|
|
21
|
+
"funnelStep": {
|
|
22
|
+
"type": "object",
|
|
23
|
+
"additionalProperties": false,
|
|
24
|
+
"required": [
|
|
25
|
+
"step_id",
|
|
26
|
+
"url_pattern",
|
|
27
|
+
"role"
|
|
28
|
+
],
|
|
29
|
+
"properties": {
|
|
30
|
+
"step_id": {
|
|
31
|
+
"$ref": "citable://schemas/common.defs.json#/definitions/id"
|
|
32
|
+
},
|
|
33
|
+
"name": {
|
|
34
|
+
"type": "string"
|
|
35
|
+
},
|
|
36
|
+
"url_pattern": {
|
|
37
|
+
"type": "string",
|
|
38
|
+
"minLength": 1
|
|
39
|
+
},
|
|
40
|
+
"page_id": {
|
|
41
|
+
"type": "string"
|
|
42
|
+
},
|
|
43
|
+
"role": {
|
|
44
|
+
"type": "string",
|
|
45
|
+
"enum": [
|
|
46
|
+
"entry",
|
|
47
|
+
"consideration",
|
|
48
|
+
"commitment",
|
|
49
|
+
"completion"
|
|
50
|
+
]
|
|
51
|
+
},
|
|
52
|
+
"expected_cta": {
|
|
53
|
+
"type": "string"
|
|
54
|
+
},
|
|
55
|
+
"preserve_params": {
|
|
56
|
+
"type": "array",
|
|
57
|
+
"items": {
|
|
58
|
+
"type": "string"
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
},
|
|
63
|
+
"funnel": {
|
|
64
|
+
"type": "object",
|
|
65
|
+
"additionalProperties": false,
|
|
66
|
+
"required": [
|
|
67
|
+
"funnel_id",
|
|
68
|
+
"name",
|
|
69
|
+
"primary_goal",
|
|
70
|
+
"steps",
|
|
71
|
+
"status"
|
|
72
|
+
],
|
|
73
|
+
"properties": {
|
|
74
|
+
"funnel_id": {
|
|
75
|
+
"$ref": "citable://schemas/common.defs.json#/definitions/id"
|
|
76
|
+
},
|
|
77
|
+
"name": {
|
|
78
|
+
"type": "string",
|
|
79
|
+
"minLength": 3
|
|
80
|
+
},
|
|
81
|
+
"description": {
|
|
82
|
+
"type": "string"
|
|
83
|
+
},
|
|
84
|
+
"primary_goal": {
|
|
85
|
+
"type": "string",
|
|
86
|
+
"minLength": 2
|
|
87
|
+
},
|
|
88
|
+
"target_audience": {
|
|
89
|
+
"type": "string"
|
|
90
|
+
},
|
|
91
|
+
"owner": {
|
|
92
|
+
"type": "string"
|
|
93
|
+
},
|
|
94
|
+
"steps": {
|
|
95
|
+
"type": "array",
|
|
96
|
+
"minItems": 2,
|
|
97
|
+
"items": {
|
|
98
|
+
"$ref": "#/definitions/funnelStep"
|
|
99
|
+
}
|
|
100
|
+
},
|
|
101
|
+
"status": {
|
|
102
|
+
"type": "string",
|
|
103
|
+
"enum": [
|
|
104
|
+
"draft",
|
|
105
|
+
"active",
|
|
106
|
+
"deprecated",
|
|
107
|
+
"archived"
|
|
108
|
+
]
|
|
109
|
+
},
|
|
110
|
+
"provenance": {
|
|
111
|
+
"$ref": "citable://schemas/common.defs.json#/definitions/provenance"
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
}
|
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$id": "citable://schemas/mcp-transport-envelope.schema.json",
|
|
3
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
4
|
+
"title": "Model Context Protocol evidence transport envelope",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"additionalProperties": false,
|
|
7
|
+
"required": [
|
|
8
|
+
"schema_version",
|
|
9
|
+
"transport",
|
|
10
|
+
"server",
|
|
11
|
+
"tool",
|
|
12
|
+
"request",
|
|
13
|
+
"response",
|
|
14
|
+
"provenance",
|
|
15
|
+
"authority",
|
|
16
|
+
"status",
|
|
17
|
+
"collected_at"
|
|
18
|
+
],
|
|
19
|
+
"properties": {
|
|
20
|
+
"schema_version": {
|
|
21
|
+
"const": 1
|
|
22
|
+
},
|
|
23
|
+
"transport": {
|
|
24
|
+
"type": "object",
|
|
25
|
+
"additionalProperties": false,
|
|
26
|
+
"required": [
|
|
27
|
+
"type",
|
|
28
|
+
"protocol_version",
|
|
29
|
+
"timeout_ms",
|
|
30
|
+
"max_bytes"
|
|
31
|
+
],
|
|
32
|
+
"properties": {
|
|
33
|
+
"type": {
|
|
34
|
+
"type": "string",
|
|
35
|
+
"enum": [
|
|
36
|
+
"stdio",
|
|
37
|
+
"http"
|
|
38
|
+
]
|
|
39
|
+
},
|
|
40
|
+
"protocol_version": {
|
|
41
|
+
"type": "string",
|
|
42
|
+
"pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$|^[0-9]+\\.[0-9]+.*$"
|
|
43
|
+
},
|
|
44
|
+
"timeout_ms": {
|
|
45
|
+
"type": "integer",
|
|
46
|
+
"minimum": 100,
|
|
47
|
+
"maximum": 60000
|
|
48
|
+
},
|
|
49
|
+
"max_bytes": {
|
|
50
|
+
"type": "integer",
|
|
51
|
+
"minimum": 1024,
|
|
52
|
+
"maximum": 10485760
|
|
53
|
+
},
|
|
54
|
+
"retries": {
|
|
55
|
+
"type": "integer",
|
|
56
|
+
"minimum": 0,
|
|
57
|
+
"maximum": 5
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
"server": {
|
|
62
|
+
"type": "object",
|
|
63
|
+
"additionalProperties": false,
|
|
64
|
+
"required": [
|
|
65
|
+
"server_id",
|
|
66
|
+
"transport_target",
|
|
67
|
+
"allowlisted"
|
|
68
|
+
],
|
|
69
|
+
"properties": {
|
|
70
|
+
"server_id": {
|
|
71
|
+
"type": "string",
|
|
72
|
+
"pattern": "^[a-z0-9_.-]+$"
|
|
73
|
+
},
|
|
74
|
+
"package_name": {
|
|
75
|
+
"type": [
|
|
76
|
+
"string",
|
|
77
|
+
"null"
|
|
78
|
+
]
|
|
79
|
+
},
|
|
80
|
+
"pinned_version": {
|
|
81
|
+
"type": [
|
|
82
|
+
"string",
|
|
83
|
+
"null"
|
|
84
|
+
]
|
|
85
|
+
},
|
|
86
|
+
"transport_target": {
|
|
87
|
+
"type": "string",
|
|
88
|
+
"minLength": 1
|
|
89
|
+
},
|
|
90
|
+
"allowlisted": {
|
|
91
|
+
"type": "boolean"
|
|
92
|
+
},
|
|
93
|
+
"capabilities": {
|
|
94
|
+
"type": "object"
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
},
|
|
98
|
+
"tool": {
|
|
99
|
+
"type": "object",
|
|
100
|
+
"additionalProperties": false,
|
|
101
|
+
"required": [
|
|
102
|
+
"name",
|
|
103
|
+
"read_only",
|
|
104
|
+
"input_schema_hash"
|
|
105
|
+
],
|
|
106
|
+
"properties": {
|
|
107
|
+
"name": {
|
|
108
|
+
"type": "string",
|
|
109
|
+
"pattern": "^[a-zA-Z0-9_.-]+$"
|
|
110
|
+
},
|
|
111
|
+
"description": {
|
|
112
|
+
"type": [
|
|
113
|
+
"string",
|
|
114
|
+
"null"
|
|
115
|
+
]
|
|
116
|
+
},
|
|
117
|
+
"read_only": {
|
|
118
|
+
"type": "boolean"
|
|
119
|
+
},
|
|
120
|
+
"input_schema_hash": {
|
|
121
|
+
"type": "string",
|
|
122
|
+
"pattern": "^[a-f0-9]{64}$"
|
|
123
|
+
},
|
|
124
|
+
"input_schema": {
|
|
125
|
+
"type": "object"
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
},
|
|
129
|
+
"request": {
|
|
130
|
+
"type": "object",
|
|
131
|
+
"additionalProperties": false,
|
|
132
|
+
"required": [
|
|
133
|
+
"arguments_hash",
|
|
134
|
+
"arguments"
|
|
135
|
+
],
|
|
136
|
+
"properties": {
|
|
137
|
+
"arguments_hash": {
|
|
138
|
+
"type": "string",
|
|
139
|
+
"pattern": "^[a-f0-9]{64}$"
|
|
140
|
+
},
|
|
141
|
+
"arguments": {
|
|
142
|
+
"type": "object"
|
|
143
|
+
},
|
|
144
|
+
"authorization_mode": {
|
|
145
|
+
"type": "string",
|
|
146
|
+
"enum": [
|
|
147
|
+
"none",
|
|
148
|
+
"environment",
|
|
149
|
+
"bearer_token",
|
|
150
|
+
"header"
|
|
151
|
+
]
|
|
152
|
+
},
|
|
153
|
+
"scopes": {
|
|
154
|
+
"type": "array",
|
|
155
|
+
"items": {
|
|
156
|
+
"type": "string"
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
},
|
|
161
|
+
"response": {
|
|
162
|
+
"type": "object",
|
|
163
|
+
"additionalProperties": false,
|
|
164
|
+
"required": [
|
|
165
|
+
"raw_sha256",
|
|
166
|
+
"content_bytes",
|
|
167
|
+
"is_error",
|
|
168
|
+
"retention_reason"
|
|
169
|
+
],
|
|
170
|
+
"properties": {
|
|
171
|
+
"raw_sha256": {
|
|
172
|
+
"type": "string",
|
|
173
|
+
"pattern": "^[a-f0-9]{64}$"
|
|
174
|
+
},
|
|
175
|
+
"content_bytes": {
|
|
176
|
+
"type": "integer",
|
|
177
|
+
"minimum": 0
|
|
178
|
+
},
|
|
179
|
+
"is_error": {
|
|
180
|
+
"type": "boolean"
|
|
181
|
+
},
|
|
182
|
+
"retention_reason": {
|
|
183
|
+
"type": "string",
|
|
184
|
+
"enum": [
|
|
185
|
+
"raw_preserved",
|
|
186
|
+
"hash_locked_only",
|
|
187
|
+
"redacted_sensitive"
|
|
188
|
+
]
|
|
189
|
+
},
|
|
190
|
+
"content": {
|
|
191
|
+
"type": "array"
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
},
|
|
195
|
+
"provenance": {
|
|
196
|
+
"type": "object",
|
|
197
|
+
"additionalProperties": false,
|
|
198
|
+
"required": [
|
|
199
|
+
"adapter_version",
|
|
200
|
+
"normalization_version",
|
|
201
|
+
"sanitized_redactions"
|
|
202
|
+
],
|
|
203
|
+
"properties": {
|
|
204
|
+
"adapter_version": {
|
|
205
|
+
"type": "string"
|
|
206
|
+
},
|
|
207
|
+
"normalization_version": {
|
|
208
|
+
"type": "string"
|
|
209
|
+
},
|
|
210
|
+
"sanitized_redactions": {
|
|
211
|
+
"type": "integer",
|
|
212
|
+
"minimum": 0
|
|
213
|
+
},
|
|
214
|
+
"duration_ms": {
|
|
215
|
+
"type": "number",
|
|
216
|
+
"minimum": 0
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
},
|
|
220
|
+
"authority": {
|
|
221
|
+
"$ref": "citable://schemas/evidence-authority.schema.json"
|
|
222
|
+
},
|
|
223
|
+
"status": {
|
|
224
|
+
"type": "string",
|
|
225
|
+
"enum": [
|
|
226
|
+
"success",
|
|
227
|
+
"incomplete",
|
|
228
|
+
"failed",
|
|
229
|
+
"unsupported",
|
|
230
|
+
"unauthorized"
|
|
231
|
+
]
|
|
232
|
+
},
|
|
233
|
+
"collected_at": {
|
|
234
|
+
"type": "string",
|
|
235
|
+
"format": "date-time"
|
|
236
|
+
},
|
|
237
|
+
"limitations": {
|
|
238
|
+
"type": "array",
|
|
239
|
+
"items": {
|
|
240
|
+
"type": "string"
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"required": ["observation_id", "kind", "state", "collected_at", "collection_method", "confidence", "source", "evidence_hash", "data"],
|
|
8
8
|
"properties": {
|
|
9
9
|
"observation_id": { "type": "string", "minLength": 1 },
|
|
10
|
-
"kind": { "type": "string", "enum": ["render", "browser_journey", "index", "citation", "citation_review", "crawler_log", "crawler_probe", "regional_network", "bing_webmaster", "passage", "canonical_freshness", "performance", "corroboration", "metric", "media_pdf", "media_transcript", "media_image", "representation_drift", "stance"] },
|
|
10
|
+
"kind": { "type": "string", "enum": ["render", "browser_journey", "index", "citation", "citation_review", "crawler_log", "crawler_probe", "regional_network", "bing_webmaster", "passage", "canonical_freshness", "performance", "corroboration", "metric", "media_pdf", "media_transcript", "media_image", "representation_drift", "stance", "mcp_transport", "attribution"] },
|
|
11
11
|
"state": { "type": "string", "enum": ["observed", "not_observed", "not_evidenced", "incomplete", "review_required", "failed"] },
|
|
12
12
|
"collected_at": { "type": "string", "format": "date-time" },
|
|
13
13
|
"collection_method": { "type": "string", "enum": ["live_api", "browser", "owner_import", "synthetic_fetch", "static_analysis", "human_review"] },
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$id": "citable://schemas/remediation-verification.schema.json",
|
|
3
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
4
|
+
"title": "Remediation verification record",
|
|
5
|
+
"description": "Closed-loop evidence that a detector finding was addressed: before-run finding, applied patch, re-run detector result, and verdict. Proves only that the detector no longer reports the same subject; it never proves a conversion or outcome guarantee.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"required": [
|
|
8
|
+
"verification_id", "timestamp", "status", "tool_version",
|
|
9
|
+
"source_run_id", "detector_id", "subject", "verdict",
|
|
10
|
+
"provenance", "limitations"
|
|
11
|
+
],
|
|
12
|
+
"properties": {
|
|
13
|
+
"verification_id": { "type": "string", "pattern": "^VR-[0-9]{14,20}-[a-z0-9]{2,8}$" },
|
|
14
|
+
"timestamp": { "type": "string" },
|
|
15
|
+
"status": { "type": "string", "enum": ["verified", "not_resolved", "blocked", "patch_refused"] },
|
|
16
|
+
"tool_version": { "type": "string" },
|
|
17
|
+
"repository_commit": { "type": ["string", "null"] },
|
|
18
|
+
"source_run_id": { "type": ["string", "null"], "minLength": 1 },
|
|
19
|
+
"recheck_run_id": { "type": ["string", "null"] },
|
|
20
|
+
"detector_id": { "type": ["string", "null"] },
|
|
21
|
+
"subject": {
|
|
22
|
+
"type": ["object", "null"],
|
|
23
|
+
"properties": {
|
|
24
|
+
"type": { "type": "string" },
|
|
25
|
+
"identifier": { "type": ["string", "null"] }
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
"verdict": {
|
|
29
|
+
"type": "object",
|
|
30
|
+
"required": ["resolved"],
|
|
31
|
+
"properties": {
|
|
32
|
+
"resolved": { "type": "boolean" },
|
|
33
|
+
"before_finding_ids": { "type": "array", "items": { "type": "string" } },
|
|
34
|
+
"after_finding_ids": { "type": "array", "items": { "type": "string" } },
|
|
35
|
+
"new_regressions": {
|
|
36
|
+
"type": "array",
|
|
37
|
+
"items": {
|
|
38
|
+
"type": "object",
|
|
39
|
+
"required": ["finding_id", "detector_id", "severity", "summary"],
|
|
40
|
+
"properties": {
|
|
41
|
+
"finding_id": { "type": "string" },
|
|
42
|
+
"detector_id": { "type": "string" },
|
|
43
|
+
"severity": { "type": "string" },
|
|
44
|
+
"summary": { "type": "string" }
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
"resolution_definition": {
|
|
49
|
+
"type": "string",
|
|
50
|
+
"description": "States the exact resolution criterion used; detector absence is not an outcome guarantee."
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
"patch": {
|
|
55
|
+
"type": ["object", "null"],
|
|
56
|
+
"properties": {
|
|
57
|
+
"target_file": { "type": "string" },
|
|
58
|
+
"framework": { "type": ["string", "null"] },
|
|
59
|
+
"patcher_class": { "type": ["string", "null"] },
|
|
60
|
+
"confidence": { "type": ["number", "null"] },
|
|
61
|
+
"validation_passed": { "type": "boolean" },
|
|
62
|
+
"applied": { "type": "boolean" },
|
|
63
|
+
"refusal_reason": { "type": ["string", "null"] },
|
|
64
|
+
"rollback_snapshot": { "type": ["string", "null"] },
|
|
65
|
+
"before_sha256": { "type": ["string", "null"] },
|
|
66
|
+
"after_sha256": { "type": ["string", "null"] }
|
|
67
|
+
}
|
|
68
|
+
},
|
|
69
|
+
"provenance": {
|
|
70
|
+
"type": "object",
|
|
71
|
+
"required": ["command", "recheck_target", "detectors_run"],
|
|
72
|
+
"properties": {
|
|
73
|
+
"command": { "type": "string" },
|
|
74
|
+
"recheck_target": { "type": ["string", "null"] },
|
|
75
|
+
"detectors_run": { "type": "array", "items": { "type": "string" } },
|
|
76
|
+
"detectors_skipped": {
|
|
77
|
+
"type": "array",
|
|
78
|
+
"items": {
|
|
79
|
+
"type": "object",
|
|
80
|
+
"properties": {
|
|
81
|
+
"detector_id": { "type": "string" },
|
|
82
|
+
"reason": { "type": "string" }
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
},
|
|
86
|
+
"recheck_errors": { "type": "array", "items": { "type": "string" } },
|
|
87
|
+
"recheck_warnings": { "type": "array", "items": { "type": "string" } }
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
"limitations": {
|
|
91
|
+
"type": "array",
|
|
92
|
+
"items": { "type": "string" },
|
|
93
|
+
"minItems": 1
|
|
94
|
+
},
|
|
95
|
+
"bundle_dir": { "type": ["string", "null"] },
|
|
96
|
+
"bundle_checksums": { "type": "object" }
|
|
97
|
+
}
|
|
98
|
+
}
|