{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://bare-os.dev/schemas/kernel-extensions.registry.schema.json", "title": "Bare OS /proc/bare_os/extensions.json (schema v2–v9)", "oneOf": [ { "type": "object", "required": ["schema", "entries"], "additionalProperties": true, "properties": { "schema": { "type": "integer", "const": 2 }, "featureBitsDoc": { "type": "integer", "minimum": 0 }, "entries": { "type": "array", "items": { "type": "object", "required": ["dropin", "script", "atMs"], "additionalProperties": true, "properties": { "dropin": { "type": "string" }, "script": { "type": "string" }, "semver": { "type": "string" }, "capabilities": { "type": "array", "items": { "type": "string" }, "maxItems": 32 }, "atMs": { "type": "integer", "minimum": 0 } } } }, "atMs": { "type": "integer", "minimum": 0 } } }, { "type": "object", "required": ["schema", "entries"], "additionalProperties": true, "properties": { "schema": { "type": "integer", "const": 5 }, "featureBitsDoc": { "type": "integer", "minimum": 0 }, "entries": { "type": "array", "items": { "type": "object", "required": ["dropin", "script", "atMs"], "additionalProperties": true, "properties": { "dropin": { "type": "string" }, "script": { "type": "string" }, "semver": { "type": "string" }, "capabilities": { "type": "array", "items": { "type": "string" }, "maxItems": 32 }, "compatPearBundleId": { "type": "string", "maxLength": 256, "description": "Opaque Pear bundle id for operator correlation (v5)" }, "atMs": { "type": "integer", "minimum": 0 } } } }, "atMs": { "type": "integer", "minimum": 0 } } }, { "type": "object", "required": ["schema", "entries"], "additionalProperties": true, "properties": { "schema": { "type": "integer", "const": 8 }, "featureBitsDoc": { "type": "integer", "minimum": 0 }, "extensionSignerPinsV4Note": { "type": "string", "maxLength": 256, "description": "Optional operator note correlating boot.policy extensionSignerPinsV4 (word 11)" }, "entries": { "type": "array", "items": { "type": "object", "required": ["dropin", "script", "atMs"], "additionalProperties": true, "properties": { "dropin": { "type": "string" }, "script": { "type": "string" }, "semver": { "type": "string" }, "capabilities": { "type": "array", "items": { "type": "string" }, "maxItems": 32 }, "compatPearBundleId": { "type": "string", "maxLength": 256 }, "trustPolicy": { "type": "string", "enum": ["default", "pinned", "quorum-sketch"], "description": "Optional operator trust class for extension resolution (schema 8)" }, "abiRange": { "type": "object", "additionalProperties": false, "properties": { "min": { "type": "string", "maxLength": 32 }, "max": { "type": "string", "maxLength": 32 } }, "description": "Optional ctx / bundle ABI semver window for this entry" }, "atMs": { "type": "integer", "minimum": 0 } } } }, "atMs": { "type": "integer", "minimum": 0 } } }, { "type": "object", "required": ["schema", "entries"], "additionalProperties": true, "properties": { "schema": { "type": "integer", "const": 9 }, "featureBitsDoc": { "type": "integer", "minimum": 0 }, "resolverModule": { "type": "string", "description": "Shared topological resolver module id (schema 9)" }, "ed25519PolicyBridge": { "type": "object", "additionalProperties": true }, "entries": { "type": "array", "items": { "type": "object", "required": ["dropin", "script", "atMs"], "additionalProperties": true, "properties": { "dropin": { "type": "string" }, "script": { "type": "string" }, "semver": { "type": "string" }, "capabilities": { "type": "array", "items": { "type": "string" }, "maxItems": 32 }, "id": { "type": "string" }, "dependsOn": { "type": "array", "items": { "type": "string" } }, "signaturePointer": { "type": "string", "maxLength": 512 }, "loadMs": { "type": "integer", "minimum": 0, "maximum": 3600000, "description": "Wall ms for extension script execution (schema 9)" }, "atMs": { "type": "integer", "minimum": 0 } } } }, "atMs": { "type": "integer", "minimum": 0 } } } ] }