{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://grids365.dev/runtime-build-provenance.schema.json","title":"Grid Runtime Host reviewed build provenance","type":"object","required":["$schema","schemaVersion","builds"],"properties":{"$schema":{"const":"/runtime-build-provenance.schema.json"},"schemaVersion":{"const":1},"builds":{"type":"array","minItems":1,"items":{"type":"object","required":["runtime","healthBuildProfile","capabilityCatalog","attestation"],"properties":{"runtime":{"type":"object","required":["gridVersion","buildSha256","buildSourceCommit","buildDirty","buildProfile","platform"],"properties":{"gridVersion":{"type":"string","minLength":1},"buildSha256":{"type":"string","pattern":"^[0-9a-f]{64}$"},"buildSourceCommit":{"type":"string","pattern":"^[0-9a-f]{40}$"},"buildDirty":{"const":false},"buildProfile":{"type":"string","minLength":1},"platform":{"const":"Darwin arm64"}},"additionalProperties":false},"healthBuildProfile":{"enum":["debug","release"]},"capabilityCatalog":{"type":"object","required":["schemaVersion","runtimeSha256","bodySha256"],"properties":{"schemaVersion":{"enum":[1,2]},"runtimeSha256":{"type":"string","pattern":"^[0-9a-f]{64}$"},"bodySha256":{"type":"string","pattern":"^[0-9a-f]{64}$"}},"additionalProperties":false},"attestation":{"oneOf":[{"type":"object","required":["kind","schemaVersion","builtAt","sourceTree","sourceArchive","cargoLockSha256","toolchain","build"],"properties":{"kind":{"const":"git-archive-cargo-locked-v1"},"schemaVersion":{"const":1},"builtAt":{"type":"string","format":"date-time"},"sourceTree":{"type":"string","pattern":"^[0-9a-f]{40}$"},"sourceArchive":{"type":"object","required":["format","sha256"],"properties":{"format":{"const":"git-archive-tar"},"sha256":{"type":"string","pattern":"^[0-9a-f]{64}$"}},"additionalProperties":false},"cargoLockSha256":{"type":"string","pattern":"^[0-9a-f]{64}$"},"toolchain":{"type":"object","required":["host","rustc","cargo","llvm","git"],"properties":{"host":{"const":"aarch64-apple-darwin"},"rustc":{"type":"string","minLength":1},"cargo":{"type":"string","minLength":1},"llvm":{"type":"string","minLength":1},"git":{"type":"string","minLength":1}},"additionalProperties":false},"build":{"type":"object","required":["workingDirectory","manifestPath","package","binary","profile","locked","defaultFeatures","features","environment"],"properties":{"workingDirectory":{"const":"source-archive-root"},"manifestPath":{"const":"rust/Cargo.toml"},"package":{"const":"grid-runtime-host"},"binary":{"const":"grid-runtime-host"},"profile":{"const":"dev"},"locked":{"const":true},"defaultFeatures":{"const":false},"features":{"type":"array","minItems":1,"items":{"type":"string","minLength":1},"uniqueItems":true},"environment":{"type":"object","required":["CARGO_BUILD_JOBS","CARGO_INCREMENTAL","CARGO_PROFILE_DEV_DEBUG"],"properties":{"CARGO_BUILD_JOBS":{"type":"string","pattern":"^[1-9][0-9]*$"},"CARGO_INCREMENTAL":{"const":"0"},"CARGO_PROFILE_DEV_DEBUG":{"const":"0"}},"additionalProperties":false}},"additionalProperties":false}},"additionalProperties":false}]}},"additionalProperties":false}}},"additionalProperties":false}