Files
linuxcncWebWASM/docs/linuxcnc-web-wasm-owner-decision-intake.md

30 lines
1.4 KiB
Markdown

# Owner Decision Intake
输入文件:`coverage/owner-decisions.json`
模板:`coverage/owner-decision-intake.template.json`
验证器:`python3 scripts/validate_owner_decision_intake.py`
当前状态:`coverage/owner-decisions.json` 尚未提供,验证报告应保持 `blocked`。模板文件是唯一允许复制的输入起点;不要直接修改 `context-lock.json` 或 release gate 报告。
## Required Shape
The input must use schema `owner-decision-intake.v1`, match the locked
`context_id`, and contain exactly one decision for each of the six blocker IDs:
`manifest_seed_unassigned`, `accepted_entries_missing`,
`official_oracle_missing`, `configuration_resources_missing`,
`browser_matrix_unverified`, `license_closure_incomplete`.
Each decision requires `decision` (`approve`, `reject`, or `defer`), non-empty
`owner`, non-empty `reviewer`, a rationale, an evidence list, and an explicit
`new_context_required` boolean. Evidence entries require a repository-relative
path and SHA-256 hash. The validator checks shape and identity only; it never
creates a context, changes `context-lock.json`, promotes an entry, or refreshes
the release gate.
All six decisions must be `approve` and accompanied by a reviewed new context
input before K8 release refresh can be opened. Missing, partial, deferred,
rejected, duplicate, stale-context, or hash-invalid input remains blocked.