456 lines
15 KiB
JSON
456 lines
15 KiB
JSON
{
|
|
"blocked_count": 6,
|
|
"candidate_eligible": false,
|
|
"checks": {
|
|
"blocker_identity": {
|
|
"all_items_have_owner_and_evidence": "K8-REL-13",
|
|
"expected_count": 6,
|
|
"expected_ids": [
|
|
"accepted_entries_missing",
|
|
"browser_matrix_unverified",
|
|
"configuration_resources_missing",
|
|
"license_closure_incomplete",
|
|
"manifest_seed_unassigned",
|
|
"official_oracle_missing"
|
|
],
|
|
"identity_preserved": true,
|
|
"observed_count": 6,
|
|
"observed_ids": [
|
|
"accepted_entries_missing",
|
|
"browser_matrix_unverified",
|
|
"configuration_resources_missing",
|
|
"license_closure_incomplete",
|
|
"manifest_seed_unassigned",
|
|
"official_oracle_missing"
|
|
],
|
|
"status": "verified"
|
|
},
|
|
"context_consistency": {
|
|
"context_id": "linuxcnc-2.10.0-pre0-wasm-m1-py-c1",
|
|
"reports": [
|
|
{
|
|
"context_id": "linuxcnc-2.10.0-pre0-wasm-m1-py-c1",
|
|
"path": "coverage/k8-milestone-closeout.report.json",
|
|
"status": "verified"
|
|
},
|
|
{
|
|
"context_id": "linuxcnc-2.10.0-pre0-wasm-m1-py-c1",
|
|
"path": "coverage/post-release-audit.report.json",
|
|
"status": "verified"
|
|
},
|
|
{
|
|
"context_id": "linuxcnc-2.10.0-pre0-wasm-m1-py-c1",
|
|
"path": "coverage/release-candidate-gate.report.json",
|
|
"status": "verified"
|
|
},
|
|
{
|
|
"context_id": "linuxcnc-2.10.0-pre0-wasm-m1-py-c1",
|
|
"path": "coverage/release-closure.report.json",
|
|
"status": "verified"
|
|
},
|
|
{
|
|
"context_id": "linuxcnc-2.10.0-pre0-wasm-m1-py-c1",
|
|
"path": "coverage/release-evidence-index.json",
|
|
"status": "verified"
|
|
}
|
|
],
|
|
"status": "verified"
|
|
},
|
|
"input_hashes": {
|
|
"comparisons": [
|
|
{
|
|
"actual_bytes": 26665,
|
|
"actual_sha256": "3ab0c8bf670141cd23a5698bbb94df8416020939b046e1c1b79a1ee9ae69d872",
|
|
"expected_bytes": 26665,
|
|
"expected_sha256": "3ab0c8bf670141cd23a5698bbb94df8416020939b046e1c1b79a1ee9ae69d872",
|
|
"path": "coverage/post-release-audit.report.json",
|
|
"role": "post_release_audit",
|
|
"status": "verified"
|
|
},
|
|
{
|
|
"actual_bytes": 7196,
|
|
"actual_sha256": "7ef2381f4ee627a4792cf5448362c31c4bc8b3670ccda53a70b7955093398f67",
|
|
"expected_bytes": 7196,
|
|
"expected_sha256": "7ef2381f4ee627a4792cf5448362c31c4bc8b3670ccda53a70b7955093398f67",
|
|
"path": "coverage/release-candidate-gate.report.json",
|
|
"role": "release_candidate_gate",
|
|
"status": "verified"
|
|
},
|
|
{
|
|
"actual_bytes": 1945,
|
|
"actual_sha256": "d586d30720723ad9e9375bc7309751bef5db37d34c6c0de98f7f0a7f9b2e6900",
|
|
"expected_bytes": 1945,
|
|
"expected_sha256": "d586d30720723ad9e9375bc7309751bef5db37d34c6c0de98f7f0a7f9b2e6900",
|
|
"path": "coverage/release-closure.report.json",
|
|
"role": "release_closure",
|
|
"status": "verified"
|
|
},
|
|
{
|
|
"actual_bytes": 1435099,
|
|
"actual_sha256": "92435805bfcbc19244d90d322293711e0306f445997c233a5dd98ebbc63fd333",
|
|
"expected_bytes": 1435099,
|
|
"expected_sha256": "92435805bfcbc19244d90d322293711e0306f445997c233a5dd98ebbc63fd333",
|
|
"path": "coverage/release-evidence-index.json",
|
|
"role": "release_evidence_index",
|
|
"status": "verified"
|
|
},
|
|
{
|
|
"actual_bytes": 7647,
|
|
"actual_sha256": "785051d2a826ff45223da0a3dada919b75ac03a4ffb3c7e6f19083e78adc1abc",
|
|
"expected_bytes": 7647,
|
|
"expected_sha256": "785051d2a826ff45223da0a3dada919b75ac03a4ffb3c7e6f19083e78adc1abc",
|
|
"path": "context-lock.json",
|
|
"role": "context_lock",
|
|
"status": "verified"
|
|
}
|
|
],
|
|
"status": "verified"
|
|
},
|
|
"no_reclassification": {
|
|
"status": "verified"
|
|
},
|
|
"source_report_self_hashes": {
|
|
"reports": [
|
|
{
|
|
"actual": "5979dc1dd8275cb163bf8eed396a6c6afbe80714a5c9db91ccc8ab7fd5f9720b",
|
|
"declared": "5979dc1dd8275cb163bf8eed396a6c6afbe80714a5c9db91ccc8ab7fd5f9720b",
|
|
"path": "coverage/k8-milestone-closeout.report.json",
|
|
"status": "verified"
|
|
},
|
|
{
|
|
"actual": "515d7c8a1fccc01a04d2c611a3338b06418d178c20b84263c75f145e65b6424f",
|
|
"declared": "515d7c8a1fccc01a04d2c611a3338b06418d178c20b84263c75f145e65b6424f",
|
|
"path": "coverage/post-release-audit.report.json",
|
|
"status": "verified"
|
|
},
|
|
{
|
|
"actual": "b55d68c975511f6dede4aa1bc03eeae5a815947d6217d7e3a8061fa1cba201b8",
|
|
"declared": "b55d68c975511f6dede4aa1bc03eeae5a815947d6217d7e3a8061fa1cba201b8",
|
|
"path": "coverage/release-candidate-gate.report.json",
|
|
"status": "verified"
|
|
},
|
|
{
|
|
"actual": "2d73eaeaf8cc7798ef1279e309417ee72ba0e122b4ab5312998668208d100fa1",
|
|
"declared": "2d73eaeaf8cc7798ef1279e309417ee72ba0e122b4ab5312998668208d100fa1",
|
|
"path": "coverage/release-closure.report.json",
|
|
"status": "verified"
|
|
},
|
|
{
|
|
"actual": "d7f0d686152e6317925d7cbf104efdd1980dd5b74bdf503f2f532df18d60c229",
|
|
"declared": "d7f0d686152e6317925d7cbf104efdd1980dd5b74bdf503f2f532df18d60c229",
|
|
"path": "coverage/release-evidence-index.json",
|
|
"status": "verified"
|
|
}
|
|
],
|
|
"status": "verified"
|
|
},
|
|
"stop_decision_preserved": {
|
|
"release_action": "STOP_RELEASE",
|
|
"status": "verified"
|
|
}
|
|
},
|
|
"context_id": "linuxcnc-2.10.0-pre0-wasm-m1-py-c1",
|
|
"errors": {},
|
|
"failure_policy": {
|
|
"forbidden": [
|
|
"delete_samples",
|
|
"lower_checks",
|
|
"reclassify_as_REAL-EXCLUDED",
|
|
"promote_blocked_to_accepted"
|
|
],
|
|
"on_context_drift": "STOP_RELEASE",
|
|
"on_hash_mismatch": "STOP_RELEASE",
|
|
"on_missing_input": "STOP_RELEASE"
|
|
},
|
|
"generated_at": "2026-08-21T00:00:00+08:00",
|
|
"inputs": [
|
|
{
|
|
"bytes": 10299,
|
|
"path": "coverage/k8-milestone-closeout.report.json",
|
|
"role": "k8_milestone_closeout",
|
|
"sha256": "6fe244b20e501083e4fabd46f51f9f1736c4c289fe7233e77d2f10924fadc823",
|
|
"status": "present"
|
|
},
|
|
{
|
|
"bytes": 26665,
|
|
"path": "coverage/post-release-audit.report.json",
|
|
"role": "post_release_audit",
|
|
"sha256": "3ab0c8bf670141cd23a5698bbb94df8416020939b046e1c1b79a1ee9ae69d872",
|
|
"status": "present"
|
|
},
|
|
{
|
|
"bytes": 7196,
|
|
"path": "coverage/release-candidate-gate.report.json",
|
|
"role": "release_candidate_gate",
|
|
"sha256": "7ef2381f4ee627a4792cf5448362c31c4bc8b3670ccda53a70b7955093398f67",
|
|
"status": "present"
|
|
},
|
|
{
|
|
"bytes": 1945,
|
|
"path": "coverage/release-closure.report.json",
|
|
"role": "release_closure",
|
|
"sha256": "d586d30720723ad9e9375bc7309751bef5db37d34c6c0de98f7f0a7f9b2e6900",
|
|
"status": "present"
|
|
},
|
|
{
|
|
"bytes": 1435099,
|
|
"path": "coverage/release-evidence-index.json",
|
|
"role": "release_evidence_index",
|
|
"sha256": "92435805bfcbc19244d90d322293711e0306f445997c233a5dd98ebbc63fd333",
|
|
"status": "present"
|
|
},
|
|
{
|
|
"bytes": 7647,
|
|
"path": "context-lock.json",
|
|
"role": "context_lock",
|
|
"sha256": "785051d2a826ff45223da0a3dada919b75ac03a4ffb3c7e6f19083e78adc1abc",
|
|
"status": "present"
|
|
}
|
|
],
|
|
"intake_decision": "remediation_required",
|
|
"intake_id": "K8-REL-07",
|
|
"next_tasks": [
|
|
{
|
|
"depends_on": [
|
|
"K8-REL-07"
|
|
],
|
|
"status": "pending",
|
|
"task_id": "K8-REL-08",
|
|
"title": "manifest ownership remediation"
|
|
},
|
|
{
|
|
"depends_on": [
|
|
"K8-REL-07"
|
|
],
|
|
"status": "pending",
|
|
"task_id": "K8-REL-09",
|
|
"title": "release acceptance evidence remediation"
|
|
},
|
|
{
|
|
"depends_on": [
|
|
"K8-REL-07"
|
|
],
|
|
"status": "pending",
|
|
"task_id": "K8-REL-10",
|
|
"title": "official oracle input remediation"
|
|
},
|
|
{
|
|
"depends_on": [
|
|
"K8-REL-07"
|
|
],
|
|
"status": "pending",
|
|
"task_id": "K8-REL-11",
|
|
"title": "configuration resource remediation"
|
|
},
|
|
{
|
|
"depends_on": [
|
|
"K8-REL-07"
|
|
],
|
|
"status": "pending",
|
|
"task_id": "K8-REL-12",
|
|
"title": "browser matrix verification"
|
|
},
|
|
{
|
|
"depends_on": [
|
|
"K8-REL-07"
|
|
],
|
|
"status": "pending",
|
|
"task_id": "K8-REL-13",
|
|
"title": "implementation license closure"
|
|
}
|
|
],
|
|
"rebuild": {
|
|
"commands": [
|
|
"python3 scripts/generate_release_closure.py",
|
|
"python3 scripts/generate_post_release_audit.py",
|
|
"python3 scripts/generate_k8_milestone_closeout.py",
|
|
"python3 scripts/generate_release_remediation_intake.py",
|
|
"python3 -m unittest discover -s scripts -p 'test_*.py' -v"
|
|
],
|
|
"deterministic_inputs": [
|
|
"context-lock.json",
|
|
"coverage/k8-milestone-closeout.report.json",
|
|
"coverage/post-release-audit.report.json",
|
|
"coverage/release-candidate-gate.report.json",
|
|
"coverage/release-closure.report.json",
|
|
"coverage/release-evidence-index.json"
|
|
]
|
|
},
|
|
"release_action": "STOP_RELEASE",
|
|
"release_decision": "blocked_not_release_candidate",
|
|
"report_sha256": "683a0ed187fec180705ce42becf3ce6d921018c1d0bfb4ebb99c9a85c768bb49",
|
|
"schema": "release-remediation-intake.v1",
|
|
"source_baseline": {
|
|
"context_lock": {
|
|
"bytes": 7647,
|
|
"path": "context-lock.json",
|
|
"role": "context_lock",
|
|
"sha256": "785051d2a826ff45223da0a3dada919b75ac03a4ffb3c7e6f19083e78adc1abc",
|
|
"status": "present"
|
|
},
|
|
"linuxcnc_source_sha": "239dcf4284762ad7e9c65d390bc5524d855c2f8e",
|
|
"linuxcnc_version": "2.10.0~pre0"
|
|
},
|
|
"status": "complete",
|
|
"work_items": [
|
|
{
|
|
"count": 6249,
|
|
"evidence": [
|
|
{
|
|
"path": "coverage/release-evidence-index.json",
|
|
"status": "present"
|
|
},
|
|
{
|
|
"path": "coverage/manifest.jsonl",
|
|
"status": "present"
|
|
}
|
|
],
|
|
"id": "manifest_seed_unassigned",
|
|
"intake_status": "verified",
|
|
"owner": "manifest-feature-ownership",
|
|
"reason": "manifest seed entries still have no feature owner",
|
|
"release_effect": "STOP_RELEASE",
|
|
"remediation": "assign an accountable feature owner to every needs_owner manifest seed and regenerate the evidence index",
|
|
"review_owner": "release-closure-owner",
|
|
"review_trigger": "manifest mapping changes or the release closure is regenerated",
|
|
"sequence": 1,
|
|
"status": "blocked",
|
|
"task_id": "K8-REL-08",
|
|
"title": "manifest ownership remediation"
|
|
},
|
|
{
|
|
"count": 0,
|
|
"evidence": [
|
|
{
|
|
"path": "coverage/release-evidence-index.json",
|
|
"status": "present"
|
|
},
|
|
{
|
|
"path": "coverage/release-candidate-gate.report.json",
|
|
"status": "present"
|
|
}
|
|
],
|
|
"id": "accepted_entries_missing",
|
|
"intake_status": "verified",
|
|
"owner": "release-acceptance-owner",
|
|
"reason": "no manifest entry is accepted for release",
|
|
"release_effect": "STOP_RELEASE",
|
|
"remediation": "complete acceptance evidence for eligible entries; do not promote blocked or derived entries by relabeling",
|
|
"review_owner": "release-gate-owner",
|
|
"review_trigger": "any entry changes to accepted or the acceptance policy changes",
|
|
"sequence": 2,
|
|
"status": "blocked",
|
|
"task_id": "K8-REL-09",
|
|
"title": "release acceptance evidence remediation"
|
|
},
|
|
{
|
|
"count": 1,
|
|
"evidence": [
|
|
{
|
|
"path": "coverage/compatibility-matrix.report.json",
|
|
"status": "present"
|
|
},
|
|
{
|
|
"path": "coverage/kinematics-oracle.report.json",
|
|
"status": "present"
|
|
},
|
|
{
|
|
"path": "coverage/workspace-recovery.report.json",
|
|
"status": "present"
|
|
}
|
|
],
|
|
"id": "official_oracle_missing",
|
|
"intake_status": "verified",
|
|
"owner": "upstream-oracle-owner",
|
|
"reason": "locked source has no official kinematics/recovery oracle root",
|
|
"release_effect": "STOP_RELEASE",
|
|
"remediation": "add the locked official kinematics and recovery oracle inputs, then rerun the native/WASM comparison",
|
|
"review_owner": "kinematics-recovery-reviewer",
|
|
"review_trigger": "the locked source gains or changes an official oracle root",
|
|
"sequence": 3,
|
|
"status": "blocked",
|
|
"task_id": "K8-REL-10",
|
|
"title": "official oracle input remediation"
|
|
},
|
|
{
|
|
"count": 997,
|
|
"evidence": [
|
|
{
|
|
"path": "coverage/compatibility-matrix.report.json",
|
|
"status": "present"
|
|
},
|
|
{
|
|
"path": "coverage/configuration-regression.report.json",
|
|
"status": "present"
|
|
}
|
|
],
|
|
"id": "configuration_resources_missing",
|
|
"intake_status": "verified",
|
|
"owner": "configuration-closure-owner",
|
|
"reason": "configuration startup/resource gaps remain",
|
|
"release_effect": "STOP_RELEASE",
|
|
"remediation": "resolve missing and unindexed configuration resources and unregistered startup references without dropping rows",
|
|
"review_owner": "configuration-regression-reviewer",
|
|
"review_trigger": "configuration graph or startup preflight counts change",
|
|
"sequence": 4,
|
|
"status": "blocked",
|
|
"task_id": "K8-REL-11",
|
|
"title": "configuration resource remediation"
|
|
},
|
|
{
|
|
"count": 1,
|
|
"evidence": [
|
|
{
|
|
"path": "coverage/compatibility-matrix.report.json",
|
|
"status": "present"
|
|
},
|
|
{
|
|
"path": "context-lock.json",
|
|
"status": "present"
|
|
}
|
|
],
|
|
"id": "browser_matrix_unverified",
|
|
"intake_status": "verified",
|
|
"owner": "browser-compatibility-owner",
|
|
"reason": "Chromium/Firefox/Safari minimum versions remain TBD",
|
|
"release_effect": "STOP_RELEASE",
|
|
"remediation": "pin minimum Chromium, Firefox and Safari versions in the locked browser matrix and execute the required checks",
|
|
"review_owner": "release-gate-owner",
|
|
"review_trigger": "browser minimums or cross-origin isolation policy changes",
|
|
"sequence": 5,
|
|
"status": "blocked",
|
|
"task_id": "K8-REL-12",
|
|
"title": "browser matrix verification"
|
|
},
|
|
{
|
|
"count": 1,
|
|
"evidence": [
|
|
{
|
|
"path": "coverage/license-closure.report.json",
|
|
"status": "present"
|
|
},
|
|
{
|
|
"path": "coverage/license-source-index.jsonl",
|
|
"status": "present"
|
|
},
|
|
{
|
|
"path": "docs/linuxcnc-web-wasm-license-decision.md",
|
|
"status": "present"
|
|
}
|
|
],
|
|
"id": "license_closure_incomplete",
|
|
"intake_status": "verified",
|
|
"owner": "implementation-license-owner",
|
|
"reason": "57 Web/WASM entries have no approved SPDX/NOTICE assignment",
|
|
"release_effect": "STOP_RELEASE",
|
|
"remediation": "approve SPDX/NOTICE metadata for all 57 Web/WASM implementation entries; upstream declarations do not substitute for it",
|
|
"review_owner": "license-audit-reviewer",
|
|
"review_trigger": "implementation license metadata or source-root ownership changes",
|
|
"sequence": 6,
|
|
"status": "blocked",
|
|
"task_id": "K8-REL-13",
|
|
"title": "implementation license closure"
|
|
}
|
|
]
|
|
}
|