This commit is contained in:
+213
-1
@@ -1,6 +1,5 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"activationCommit": "f4fd5967fc5d4cbc72d680b199d88224aa855131",
|
||||
"gateRoots": ["gates"],
|
||||
"governingClaimFiles": ["docs/remediation/MISSION.md", "docs/remediation/GATE-CLAIMS.md"],
|
||||
"coverageBoundary": {
|
||||
@@ -34,6 +33,13 @@
|
||||
"checkout-preflight/criterion-misbinding",
|
||||
"checkout-preflight/missing-meaning-provenance",
|
||||
"checkout-preflight/prose-claim-misbinding",
|
||||
"checkout-preflight/history-seam-head",
|
||||
"checkout-preflight/history-seam-parent",
|
||||
"checkout-preflight/history-seam-introduction",
|
||||
"checkout-preflight/provider-cross-commit-duplicate",
|
||||
"checkout-preflight/misspelled-outcome-field",
|
||||
"checkout-preflight/wrong-outcome-field-type",
|
||||
"checkout-preflight/empty-outcome-pattern",
|
||||
"ci-queue-wait/no-status-required",
|
||||
"ci-queue-wait/unknown-option",
|
||||
"hook-pre-commit/lint-staged-failure",
|
||||
@@ -225,6 +231,41 @@
|
||||
}
|
||||
],
|
||||
"caseRefs": ["ci-queue-wait/terminal-success", "ci-queue-wait/unknown-option"]
|
||||
},
|
||||
{
|
||||
"id": "RM02-HISTORY-BOUNDARY",
|
||||
"originalText": "The history activation boundary is derived as the parent of the first first-parent commit that introduces the registry.",
|
||||
"currentText": "The history activation boundary is derived as the parent of the first first-parent commit that introduces the registry.",
|
||||
"claimType": "integrity",
|
||||
"source": "docs/remediation/TASKS.md#d-17",
|
||||
"meaningChanges": [],
|
||||
"caseRefs": [
|
||||
"checkout-preflight/history-seam-head",
|
||||
"checkout-preflight/history-seam-parent",
|
||||
"checkout-preflight/history-seam-introduction"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "RM02-EVIDENCE-SUBJECT-BINDING",
|
||||
"originalText": "A provider evidence identity cannot establish success for more than one commit subject.",
|
||||
"currentText": "A provider evidence identity cannot establish success for more than one commit subject.",
|
||||
"claimType": "integrity",
|
||||
"source": "docs/remediation/TASKS.md#d-38",
|
||||
"meaningChanges": [],
|
||||
"caseRefs": ["checkout-preflight/provider-cross-commit-duplicate"]
|
||||
},
|
||||
{
|
||||
"id": "RM02-TYPE-STRICT-SCHEMA",
|
||||
"originalText": "Every registry discriminator and comparison field is recursively closed and type-strict so a misspelling cannot disable an assertion.",
|
||||
"currentText": "Every registry discriminator and comparison field is recursively closed and type-strict so a misspelling cannot disable an assertion.",
|
||||
"claimType": "integrity",
|
||||
"source": "docs/remediation/TASKS.md#d-40",
|
||||
"meaningChanges": [],
|
||||
"caseRefs": [
|
||||
"checkout-preflight/misspelled-outcome-field",
|
||||
"checkout-preflight/wrong-outcome-field-type",
|
||||
"checkout-preflight/empty-outcome-pattern"
|
||||
]
|
||||
}
|
||||
],
|
||||
"proseClaims": [
|
||||
@@ -678,6 +719,177 @@
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "history-seam-head",
|
||||
"criterionIds": ["RM02-CHECK-RIGHT", "RM02-HISTORY-BOUNDARY"],
|
||||
"mustFail": true,
|
||||
"invocation": ["node", "scripts/gate-history-boundary-control.mjs", "head"],
|
||||
"required": {
|
||||
"exitCode": 1,
|
||||
"outputPattern": "history boundary candidate head rejected"
|
||||
},
|
||||
"actual": {
|
||||
"exitCode": 1,
|
||||
"outputPattern": "history boundary candidate head rejected"
|
||||
},
|
||||
"reasonPattern": "derived activation is parent of registry introduction"
|
||||
},
|
||||
{
|
||||
"id": "history-seam-parent",
|
||||
"criterionIds": ["RM02-CHECK-RIGHT", "RM02-HISTORY-BOUNDARY"],
|
||||
"mustFail": true,
|
||||
"invocation": ["node", "scripts/gate-history-boundary-control.mjs", "parent"],
|
||||
"required": {
|
||||
"exitCode": 1,
|
||||
"outputPattern": "history boundary candidate parent rejected"
|
||||
},
|
||||
"actual": {
|
||||
"exitCode": 1,
|
||||
"outputPattern": "history boundary candidate parent rejected"
|
||||
},
|
||||
"reasonPattern": "derived activation is parent of registry introduction"
|
||||
},
|
||||
{
|
||||
"id": "history-seam-introduction",
|
||||
"criterionIds": ["RM02-CHECK-RIGHT", "RM02-HISTORY-BOUNDARY"],
|
||||
"mustFail": true,
|
||||
"invocation": ["node", "scripts/gate-history-boundary-control.mjs", "introduction"],
|
||||
"required": {
|
||||
"exitCode": 1,
|
||||
"outputPattern": "history boundary candidate introduction rejected"
|
||||
},
|
||||
"actual": {
|
||||
"exitCode": 1,
|
||||
"outputPattern": "history boundary candidate introduction rejected"
|
||||
},
|
||||
"reasonPattern": "derived activation is parent of registry introduction"
|
||||
},
|
||||
{
|
||||
"id": "provider-cross-commit-duplicate",
|
||||
"criterionIds": ["RM02-CHECK-RIGHT", "RM02-EVIDENCE-SUBJECT-BINDING"],
|
||||
"mustFail": true,
|
||||
"invocation": ["node", "scripts/gate-provider-binding-control.mjs"],
|
||||
"required": {
|
||||
"exitCode": 1,
|
||||
"outputPattern": "duplicate pipeline identity across commits"
|
||||
},
|
||||
"actual": {
|
||||
"exitCode": 1,
|
||||
"outputPattern": "duplicate pipeline identity across commits"
|
||||
},
|
||||
"reasonPattern": "duplicate pipeline identity across commits"
|
||||
},
|
||||
{
|
||||
"id": "misspelled-outcome-field",
|
||||
"criterionIds": ["RM02-CHECK-RIGHT", "RM02-TYPE-STRICT-SCHEMA"],
|
||||
"mustFail": true,
|
||||
"invocation": [
|
||||
"node",
|
||||
"scripts/gate-verify.mjs",
|
||||
"--root",
|
||||
".",
|
||||
"--manifest",
|
||||
"gates/gates.manifest.json",
|
||||
"--structure-only"
|
||||
],
|
||||
"required": {
|
||||
"exitCode": 1,
|
||||
"outputPattern": "required: unknown field outputPatern"
|
||||
},
|
||||
"actual": {
|
||||
"exitCode": 1,
|
||||
"outputPattern": "required: unknown field outputPatern"
|
||||
},
|
||||
"reasonPattern": "required: unknown field outputPatern",
|
||||
"fixture": {
|
||||
"copyPaths": [
|
||||
"gates/gates.manifest.json",
|
||||
"scripts/gate-verify.mjs",
|
||||
"scripts/gate-history.mjs"
|
||||
],
|
||||
"replaceFiles": [
|
||||
{
|
||||
"path": "gates/gates.manifest.json",
|
||||
"find": "\"required\": {\n \"exitCode\": 0,\n \"outputPattern\": \"checkout preflight passed\"\n },\n \"actual\":",
|
||||
"replace": "\"required\": {\n \"exitCode\": 0,\n \"outputPatern\": \"checkout preflight passed\"\n },\n \"actual\":"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "wrong-outcome-field-type",
|
||||
"criterionIds": ["RM02-CHECK-RIGHT", "RM02-TYPE-STRICT-SCHEMA"],
|
||||
"mustFail": true,
|
||||
"invocation": [
|
||||
"node",
|
||||
"scripts/gate-verify.mjs",
|
||||
"--root",
|
||||
".",
|
||||
"--manifest",
|
||||
"gates/gates.manifest.json",
|
||||
"--structure-only"
|
||||
],
|
||||
"required": {
|
||||
"exitCode": 1,
|
||||
"outputPattern": "required.exitCode: expected an integer"
|
||||
},
|
||||
"actual": {
|
||||
"exitCode": 1,
|
||||
"outputPattern": "required.exitCode: expected an integer"
|
||||
},
|
||||
"reasonPattern": "required.exitCode: expected an integer",
|
||||
"fixture": {
|
||||
"copyPaths": [
|
||||
"gates/gates.manifest.json",
|
||||
"scripts/gate-verify.mjs",
|
||||
"scripts/gate-history.mjs"
|
||||
],
|
||||
"replaceFiles": [
|
||||
{
|
||||
"path": "gates/gates.manifest.json",
|
||||
"find": "\"required\": {\n \"exitCode\": 0,\n \"outputPattern\": \"checkout preflight passed\"\n },\n \"actual\":",
|
||||
"replace": "\"required\": {\n \"exitCode\": \"0\",\n \"outputPattern\": \"checkout preflight passed\"\n },\n \"actual\":"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "empty-outcome-pattern",
|
||||
"criterionIds": ["RM02-CHECK-RIGHT", "RM02-TYPE-STRICT-SCHEMA"],
|
||||
"mustFail": true,
|
||||
"invocation": [
|
||||
"node",
|
||||
"scripts/gate-verify.mjs",
|
||||
"--root",
|
||||
".",
|
||||
"--manifest",
|
||||
"gates/gates.manifest.json",
|
||||
"--structure-only"
|
||||
],
|
||||
"required": {
|
||||
"exitCode": 1,
|
||||
"outputPattern": "required.outputPattern: expected a non-empty pattern"
|
||||
},
|
||||
"actual": {
|
||||
"exitCode": 1,
|
||||
"outputPattern": "required.outputPattern: expected a non-empty pattern"
|
||||
},
|
||||
"reasonPattern": "required.outputPattern: expected a non-empty pattern",
|
||||
"fixture": {
|
||||
"copyPaths": [
|
||||
"gates/gates.manifest.json",
|
||||
"scripts/gate-verify.mjs",
|
||||
"scripts/gate-history.mjs"
|
||||
],
|
||||
"replaceFiles": [
|
||||
{
|
||||
"path": "gates/gates.manifest.json",
|
||||
"find": "\"required\": {\n \"exitCode\": 0,\n \"outputPattern\": \"checkout preflight passed\"\n },\n \"actual\":",
|
||||
"replace": "\"required\": {\n \"exitCode\": 0,\n \"outputPattern\": \" \"\n },\n \"actual\":"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user