K8: record blocked owner review and release evidence

This commit is contained in:
2026-08-21 14:27:23 +08:00
parent 2ef2d82db3
commit b1b5a3cc8a
62 changed files with 171781 additions and 19 deletions

View File

@@ -0,0 +1,189 @@
{
"blockers": [
"wasm_web_license_not_declared"
],
"context_id": "linuxcnc-2.10.0-pre0-wasm-m1-py-c1",
"download_artifacts": {
"artifacts": [
{
"bytes": 122027,
"license": "MPL-2.0",
"mirror_kind": "official",
"name": "pyodide-lock.json",
"origin_url": "https://github.com/pyodide/pyodide/releases/tag/0.29.4",
"role": "package_lock",
"sha256": "14d2c2dba101277999e17135e653d8f15389ad1437f53eae213bf0c3cdff723d",
"source_url": "https://cdn.jsdelivr.net/pyodide/v0.29.4/full/pyodide-lock.json",
"version": "0.29.4"
},
{
"bytes": 18597,
"license": "MPL-2.0",
"mirror_kind": "official",
"name": "pyodide.js",
"origin_url": "https://github.com/pyodide/pyodide/releases/tag/0.29.4",
"role": "loader_metadata",
"sha256": "7be9e63eddf6bd8786a5ab71c8689c35731d187e3415fe58d7cb95423b50421a",
"source_url": "https://cdn.jsdelivr.net/pyodide/v0.29.4/full/pyodide.js",
"version": "0.29.4"
}
],
"index": {
"bytes": 798,
"path": "vendor/downloads/index.jsonl",
"role": "download_index",
"sha256": "9f62fc263eea03a17222e6ba1f1f73561b9cd361efec9d320f303e64353cd532",
"status": "present"
},
"python_runtime_manifest": {
"bytes": 1902,
"path": "python-runtime/manifest.json",
"role": "python_runtime_manifest",
"schema": "python-runtime-manifest.v1",
"sha256": "340faa6ef5bedcaeb0583f463e6b89cb442ddf1d83d7e6ee8d96cee438fe4213",
"status": "present"
},
"status": "verified"
},
"entry_closure": {
"all_entries_have_evidence_status": true,
"all_entries_have_owner": true,
"closure_status": {
"blocked": 57,
"verified_scoped": 7996
},
"entries": 8053,
"index": {
"bytes": 6448888,
"path": "coverage/license-source-index.jsonl",
"role": "license_source_index",
"sha256": "1580979257ada2bd29b41c6ecc3165dd3c63d64175bac4e2d69194f22b56d5d6",
"status": "present"
},
"license_status": {
"blocked_unassigned": 57,
"scoped_declared": 7996
},
"owner_semantics": "license_audit_owner; does not replace manifest feature owner or promote needs_owner entries",
"owner_status": {
"assigned": 8053
},
"source_hash_status": {
"verified": 8053
},
"status": "blocked"
},
"implementation_license": {
"decision": "unassigned_and_blocked",
"decision_artifact": {
"bytes": 1088,
"path": "docs/linuxcnc-web-wasm-license-decision.md",
"role": "implementation_license_decision",
"sha256": "d5ba9a7bf72f2ac97f2855ae0cd87e11009aa8c879fcc20bdfd0aaaaefbe5dd7",
"status": "present"
},
"entries": 57,
"paths": [
"wasm-core/**",
"web/**"
],
"reason": "no repository LICENSE/NOTICE/SPDX metadata assigns a license to the Web/WASM implementation files; upstream LinuxCNC declarations are not inherited",
"status": "blocked"
},
"real_excluded": {
"runtime_categories": [
"hardware_driver",
"linux_realtime_kernel",
"host_device_access"
],
"status": "explicit",
"test_entry_count": 24,
"test_report_count": 24,
"test_source_ids": [
"test:linuxcnc/tests/build/header-sanity/test.sh",
"test:linuxcnc/tests/build/ui/test.sh",
"test:linuxcnc/tests/halcompile/command_line_flags/test.sh",
"test:linuxcnc/tests/halcompile/serial-out-of-tree/checkresult",
"test:linuxcnc/tests/halcompile/serial-out-of-tree/test.sh",
"test:linuxcnc/tests/hm2-idrom/test.sh",
"test:linuxcnc/tests/interp/g71-endless-loop/test.sh",
"test:linuxcnc/tests/linuxcncrsh-tcp/checkresult",
"test:linuxcnc/tests/linuxcncrsh-tcp/test.sh",
"test:linuxcnc/tests/linuxcncrsh/checkresult",
"test:linuxcnc/tests/linuxcncrsh/test.sh",
"test:linuxcnc/tests/mb2hal/mb2hal.1a/checkresult",
"test:linuxcnc/tests/mb2hal/mb2hal.1b/checkresult",
"test:linuxcnc/tests/mb2hal/mb2hal.2a/checkresult",
"test:linuxcnc/tests/mb2hal/mb2hal.2b/checkresult",
"test:linuxcnc/tests/mdi-queue/oword-queue-buster/test.sh",
"test:linuxcnc/tests/mdi-queue/simple-queue-buster/test.sh",
"test:linuxcnc/tests/mqtt/checkresult",
"test:linuxcnc/tests/mqtt/test.sh",
"test:linuxcnc/tests/t0/nonrandom/test.sh",
"test:linuxcnc/tests/t0/random-with-t0/test.sh",
"test:linuxcnc/tests/t0/random-without-t0/test.sh",
"test:linuxcnc/tests/toolchanger/toolno-pocket-differ/nonrandom/test.sh",
"test:linuxcnc/tests/toolchanger/toolno-pocket-differ/random/test.sh"
]
},
"release_decision": "license_closure_incomplete",
"report_sha256": "2f5ea77d2dd5c3d5afec0330589ff7a8de127f2e9613c25918c117e0d89e8daa",
"schema": "release-license-closure.v1",
"source_inventory": {
"entries": 8053,
"license_field_in_manifest": false,
"manifest_entries": 8053,
"manifest_license_field_missing_entries": 8053,
"path_roots": {
"linuxcnc": 7996,
"wasm-core": 45,
"web": 12
},
"reason": "manifest v1 has no license field; the external deterministic index below records scoped upstream evidence and keeps unassigned implementation licenses blocked",
"status": "partial",
"unassigned_license_entries": 57
},
"status": "blocked",
"upstream_declarations": {
"declared_spdx_or_legacy_ids": [
"BSD-3-Clause",
"Boost-1.0",
"CC-BY-3.0",
"GFDL-1.1+",
"GNU-All-Permissive",
"GPL-2",
"GPL-2+",
"GPL-3+",
"ISC",
"LGPL-2",
"LGPL-2.1+",
"MIT"
],
"default_scope": "linuxcnc/* (subject to debian/copyright path exceptions)",
"files": [
{
"bytes": 18092,
"path": "linuxcnc/COPYING",
"role": "license_text",
"sha256": "8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643",
"status": "present"
},
{
"bytes": 43090,
"path": "linuxcnc/COPYING.more",
"role": "license_text",
"sha256": "38a238c64e5e7f81f5232edabfa78c4031bc876bbfc6a3686384cd20a46ed2e4",
"status": "present"
},
{
"bytes": 42172,
"path": "linuxcnc/debian/copyright",
"role": "scoped_license_declarations",
"sha256": "b540e318b4b21e9a993e81baf4f56ee1b79656209fb1eda3738bbd507abb90a0",
"status": "present"
}
],
"matched_entries": 7996,
"status": "verified_scoped"
}
}