Files
jobtrackingapp/docs/automation/handoffs/pre-phase10/ENTRY_PROPOSAL_SCHEMA.json
T

68 lines
4.2 KiB
JSON

{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "urn:jobjakt:p10-entry-final:proposal:1",
"title": "Evidence-only Phase10 entry proposal; never an approval",
"type": "object",
"additionalProperties": false,
"required": ["schemaVersion", "workstreamId", "authority", "candidateCommit", "acceptedBranch", "applicationFixCommit", "packageHeadRule", "entryDecision", "eligibleForAutomaticExecution", "cleanupScope", "pdfDecisions", "outstandingBlockerIds", "deferralRequests", "requiredDecisions", "testEvidence", "publication", "productionDecision", "generatedUtc"],
"properties": {
"schemaVersion": { "const": 1 },
"workstreamId": { "const": "P10-ENTRY-FINAL" },
"authority": { "const": "EVIDENCE_ONLY_NOT_OWNER_APPROVAL" },
"candidateCommit": { "$ref": "#/definitions/commit" },
"acceptedBranch": { "const": "test/pre-phase10-ux-acceptance" },
"applicationFixCommit": { "$ref": "#/definitions/commit" },
"packageHeadRule": { "const": "Resolve final clean published envelope HEAD independently; bind it, the candidate snapshot, exact scope, policy and artifact hashes in protected approval. No self-referential commit claim." },
"entryDecision": { "const": "NO-GO" },
"eligibleForAutomaticExecution": { "const": false },
"productionDecision": { "const": "NO-GO" },
"cleanupScope": {
"type": "object", "additionalProperties": false,
"required": ["disposition", "inventory", "proposedFirstAction", "approvedRemovalCandidates", "implementationPermission"],
"properties": {
"disposition": { "const": "ASSESSMENT_ONLY_NO_REMOVALS_APPROVED" },
"inventory": { "type": "string", "minLength": 1 },
"proposedFirstAction": { "type": "string", "minLength": 1 },
"approvedRemovalCandidates": { "type": "array", "maxItems": 0 },
"implementationPermission": { "const": false }
}
},
"pdfDecisions": {
"type": "object", "additionalProperties": false,
"required": ["originalCorpus", "actualAccentClippingFix", "unchangedRevisedOracle", "proposedBaselineDiagnostic", "metricDisposition", "humanVisual", "actualPrinting"],
"properties": {
"originalCorpus": { "const": "PASS" },
"actualAccentClippingFix": { "const": "PASS_AUTOMATED_FINITE_CORPUS" },
"unchangedRevisedOracle": { "const": "FAIL" },
"proposedBaselineDiagnostic": { "const": "PASS_OWNER_APPROVED_S01_Y_METRIC" },
"metricDisposition": { "const": "OWNER_APPROVED_S01_METRIC_ONLY" },
"humanVisual": { "const": "OWNER_APPROVED_FOR_DEVELOPMENT" },
"actualPrinting": { "const": "NOT_TESTED" }
}
},
"outstandingBlockerIds": { "$ref": "#/definitions/strings" },
"deferralRequests": {
"type": "array", "items": {
"type": "object", "additionalProperties": false, "required": ["id", "scope", "sourceAuthority", "state"],
"properties": { "id": { "type": "string" }, "scope": { "type": "string" }, "sourceAuthority": { "type": "string" }, "state": { "const": "REQUESTED_NOT_GRANTED_OR_EXECUTABLE" } }
}
},
"requiredDecisions": {
"type": "array", "minItems": 1, "items": {
"type": "object", "additionalProperties": false, "required": ["id", "action", "state", "authority"],
"properties": { "id": { "type": "string" }, "action": { "type": "string" }, "state": { "const": "PENDING" }, "authority": { "enum": ["EXPLICIT_OWNER_REFERENCE_DISPOSITION", "EXTERNAL_PROTECTED_OWNER_OR_OPERATOR_DECISION"] } }
}
},
"testEvidence": { "$ref": "#/definitions/strings" },
"publication": {
"type": "object", "additionalProperties": false, "required": ["status", "candidateRemoteCommit", "observedUtc", "finalHeadMustBeRechecked"],
"properties": { "status": { "const": "VERIFIED_CANDIDATE_SNAPSHOT" }, "candidateRemoteCommit": { "$ref": "#/definitions/commit" }, "observedUtc": { "type": "string", "format": "date-time" }, "finalHeadMustBeRechecked": { "const": true } }
},
"generatedUtc": { "type": "string", "format": "date-time" }
},
"definitions": {
"commit": { "type": "string", "pattern": "^[a-f0-9]{40}$" },
"strings": { "type": "array", "items": { "type": "string", "minLength": 1 }, "uniqueItems": true }
}
}