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": "6794b4fd2b3b2ffb54b6a48d298265a8ac9b700bf5e1da434d80c9bb2a45f328",
|
|
"expected_bytes": 26665,
|
|
"expected_sha256": "6794b4fd2b3b2ffb54b6a48d298265a8ac9b700bf5e1da434d80c9bb2a45f328",
|
|
"path": "coverage/post-release-audit.report.json",
|
|
"role": "post_release_audit",
|
|
"status": "verified"
|
|
},
|
|
{
|
|
"actual_bytes": 7196,
|
|
"actual_sha256": "2092257cc0aea41c5988b19a0e7aef74ed6ccae09062213e1a98f44adc4314b1",
|
|
"expected_bytes": 7196,
|
|
"expected_sha256": "2092257cc0aea41c5988b19a0e7aef74ed6ccae09062213e1a98f44adc4314b1",
|
|
"path": "coverage/release-candidate-gate.report.json",
|
|
"role": "release_candidate_gate",
|
|
"status": "verified"
|
|
},
|
|
{
|
|
"actual_bytes": 1945,
|
|
"actual_sha256": "7dea93eaf2ae9edcdc53c484171629f8bed1904679c062a9a328ddc15fa74986",
|
|
"expected_bytes": 1945,
|
|
"expected_sha256": "7dea93eaf2ae9edcdc53c484171629f8bed1904679c062a9a328ddc15fa74986",
|
|
"path": "coverage/release-closure.report.json",
|
|
"role": "release_closure",
|
|
"status": "verified"
|
|
},
|
|
{
|
|
"actual_bytes": 1435099,
|
|
"actual_sha256": "5eecf795a2d5a887a46ef0a0fcd0e9ea40de77a47553f582c8239da7d41161e5",
|
|
"expected_bytes": 1435099,
|
|
"expected_sha256": "5eecf795a2d5a887a46ef0a0fcd0e9ea40de77a47553f582c8239da7d41161e5",
|
|
"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": "9b55de44782ac77b58d4c7d0709bdbcc9647fdc550137883755c3fef83aa2d91",
|
|
"declared": "9b55de44782ac77b58d4c7d0709bdbcc9647fdc550137883755c3fef83aa2d91",
|
|
"path": "coverage/k8-milestone-closeout.report.json",
|
|
"status": "verified"
|
|
},
|
|
{
|
|
"actual": "2011f99b5e93b3d16697d0b347bdd55f572a99475ca518e9de9316baacf2b0aa",
|
|
"declared": "2011f99b5e93b3d16697d0b347bdd55f572a99475ca518e9de9316baacf2b0aa",
|
|
"path": "coverage/post-release-audit.report.json",
|
|
"status": "verified"
|
|
},
|
|
{
|
|
"actual": "9b75b848d1ab9c27cfe431776a59a3b5b15fab23c420c694a795c2db9f8fabc0",
|
|
"declared": "9b75b848d1ab9c27cfe431776a59a3b5b15fab23c420c694a795c2db9f8fabc0",
|
|
"path": "coverage/release-candidate-gate.report.json",
|
|
"status": "verified"
|
|
},
|
|
{
|
|
"actual": "26b10dd3747ec06a29b6188dca47a9aeb7d83ceaa4821fe93261086848f2f5d1",
|
|
"declared": "26b10dd3747ec06a29b6188dca47a9aeb7d83ceaa4821fe93261086848f2f5d1",
|
|
"path": "coverage/release-closure.report.json",
|
|
"status": "verified"
|
|
},
|
|
{
|
|
"actual": "f6e86b87f39436c1bac0ceb30cb19cae670dc4782a51448b3f5bb6404c9136d1",
|
|
"declared": "f6e86b87f39436c1bac0ceb30cb19cae670dc4782a51448b3f5bb6404c9136d1",
|
|
"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": "4fed8e96ae515e5c68c7c3c270cfe5bbab9416874260f19382a6085aa2490108",
|
|
"status": "present"
|
|
},
|
|
{
|
|
"bytes": 26665,
|
|
"path": "coverage/post-release-audit.report.json",
|
|
"role": "post_release_audit",
|
|
"sha256": "6794b4fd2b3b2ffb54b6a48d298265a8ac9b700bf5e1da434d80c9bb2a45f328",
|
|
"status": "present"
|
|
},
|
|
{
|
|
"bytes": 7196,
|
|
"path": "coverage/release-candidate-gate.report.json",
|
|
"role": "release_candidate_gate",
|
|
"sha256": "2092257cc0aea41c5988b19a0e7aef74ed6ccae09062213e1a98f44adc4314b1",
|
|
"status": "present"
|
|
},
|
|
{
|
|
"bytes": 1945,
|
|
"path": "coverage/release-closure.report.json",
|
|
"role": "release_closure",
|
|
"sha256": "7dea93eaf2ae9edcdc53c484171629f8bed1904679c062a9a328ddc15fa74986",
|
|
"status": "present"
|
|
},
|
|
{
|
|
"bytes": 1435099,
|
|
"path": "coverage/release-evidence-index.json",
|
|
"role": "release_evidence_index",
|
|
"sha256": "5eecf795a2d5a887a46ef0a0fcd0e9ea40de77a47553f582c8239da7d41161e5",
|
|
"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": "3b142c107e8174602c4d371b958b73c891cd3621b2142db0535213be0fac1e54",
|
|
"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"
|
|
}
|
|
]
|
|
}
|