{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "ca-skeleton-frontend/release-verification.schema.json", "title": "artifacts/release/verification.json", "description": "pnpm verify:release 산출물. release-cache 가 생산하고 compat-governance 가 version tuple 호환 판정에 소비한다. FE-GATE-015 의 'mismatch detected / coherent set passes' 판정 근거.", "type": "object", "additionalProperties": true, "required": ["checkedAt", "activeReleaseId", "releaseTuple", "coherent"], "properties": { "checkedAt": { "type": "string", "format": "date-time" }, "activeReleaseId": { "type": "string", "description": "현재 활성 release. hub §11.1 telemetry allowlist 의 active_release_id 와 같은 값이지만, telemetry attribute 명명(snake_case)과 artifact 필드 명명(camelCase)은 별개 규약이다." }, "releaseTuple": { "type": "object", "description": "coherence 판정 대상 조합. 하나라도 서로 다른 release 를 가리키면 DEPLOY_MISMATCH 다.", "required": ["htmlReleaseId", "assetManifestHash", "configVersion", "releaseManifestId"], "additionalProperties": true, "properties": { "htmlReleaseId": { "type": "string" }, "assetManifestHash": { "type": "string" }, "configVersion": { "type": "string" }, "releaseManifestId": { "type": "string" }, "apiContractVersion": { "type": "string" } } }, "coherent": { "type": "boolean", "description": "true 면 FE-GATE-015 PASS." }, "mismatchKind": { "enum": ["DEPLOY_MISMATCH", "RELEASE_MANIFEST_FAILURE", "CONFIG_INCOMPATIBLE", null], "description": "coherent=false 일 때의 실패 종류. raw payload 는 담지 않는다." } } }