Files
git.stella-ops.org/docs/modules/concelier/schemas/advisory-linkset.schema.json
StellaOps Bot 47168fec38 feat: Add VEX compact fixture and implement offline verifier for Findings Ledger exports
- Introduced a new VEX compact fixture for testing purposes.
- Implemented `verify_export.py` script to validate Findings Ledger exports, ensuring deterministic ordering and applying redaction manifests.
- Added a lightweight stub `HarnessRunner` for unit tests to validate ledger hashing expectations.
- Documented tasks related to the Mirror Creator.
- Created models for entropy signals and implemented the `EntropyPenaltyCalculator` to compute penalties based on scanner outputs.
- Developed unit tests for `EntropyPenaltyCalculator` to ensure correct penalty calculations and handling of edge cases.
- Added tests for symbol ID normalization in the reachability scanner.
- Enhanced console status service with comprehensive unit tests for connection handling and error recovery.
- Included Cosign tool version 2.6.0 with checksums for various platforms.
2025-12-02 21:08:01 +02:00

86 lines
2.6 KiB
JSON

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://stellaops.local/concelier/schemas/advisory-linkset.schema.json",
"title": "Concelier Advisory Linkset",
"type": "object",
"additionalProperties": false,
"required": [
"linksetId",
"tenantId",
"advisoryId",
"source",
"observationIds",
"createdAt"
],
"properties": {
"linksetId": { "type": "string", "pattern": "^sha256:[A-Fa-f0-9]{64}$" },
"tenantId": { "type": "string", "minLength": 1 },
"source": { "type": "string", "minLength": 1 },
"advisoryId": { "type": "string", "minLength": 1 },
"observationIds": {
"type": "array",
"items": { "type": "string", "minLength": 1 },
"uniqueItems": true,
"minItems": 1
},
"normalized": {
"type": ["object", "null"],
"additionalProperties": true
},
"provenance": {
"type": ["object", "null"],
"additionalProperties": false,
"properties": {
"observationHashes": {
"type": "array",
"items": { "type": "string", "pattern": "^sha256:[A-Fa-f0-9]{64}$" },
"uniqueItems": true
},
"toolVersion": { "type": "string" },
"policyHash": { "type": "string" }
}
},
"confidence": { "type": ["number", "null"], "minimum": 0, "maximum": 1 },
"conflicts": {
"type": ["array", "null"],
"items": {
"type": "object",
"additionalProperties": false,
"required": ["field", "reason"],
"properties": {
"field": { "type": "string" },
"reason": {
"type": "string",
"enum": [
"severity-mismatch",
"affected-range-divergence",
"reference-clash",
"alias-inconsistency",
"metadata-gap",
"statement-conflict"
]
},
"sourceIds": {
"type": ["array", "null"],
"items": { "type": "string" },
"uniqueItems": true
}
}
}
},
"aliases": {
"type": ["object", "null"],
"additionalProperties": false,
"properties": {
"primary": { "type": "string" },
"others": { "type": "array", "items": { "type": "string" }, "uniqueItems": true }
}
},
"purls": { "type": ["array", "null"], "items": { "type": "string" }, "uniqueItems": true },
"cpes": { "type": ["array", "null"], "items": { "type": "string" }, "uniqueItems": true },
"createdAt": { "type": "string", "format": "date-time" },
"updatedAt": { "type": ["string", "null"], "format": "date-time" },
"builtByJobId": { "type": ["string", "null"] }
}
}