docs(contract): the generic consumption contract, stated normatively
The plan document decided what the contract is and who owns it, and said of itself that nothing in it was implemented. This states the same six elements as numbered paragraphs with MUST and SHOULD, in the form a checker can read, and adds the three things the plan layer had no way to carry: concept identity as the (bundle_id, concept_id) tuple with a content digest per excerpt, the closed adjudication state set with unknown written explicitly rather than collapsed, and the prohibition on reaching the verdict layer with a query-time retrieval tool. The plan document is not rewritten to match. It records why; this binds. Two copies of the same rules drift, so the plan carries a pointer instead.
This commit is contained in:
parent
94f31ac880
commit
f9513cdcb4
2 changed files with 205 additions and 2 deletions
|
|
@ -1,7 +1,13 @@
|
|||
# The generic OKF bundle consumption contract
|
||||
|
||||
**Status: plan. Nothing here is implemented, and nothing here asks to be.**
|
||||
No module, no profile field, no version bump follows from this document. It
|
||||
**Status: plan, and now implemented elsewhere.** When this was written, nothing
|
||||
here was implemented and nothing here asked to be. That changed: the decisions
|
||||
below are stated normatively, with MUST and SHOULD and numbered paragraphs, in
|
||||
[`docs/consumption-contract.md`](consumption-contract.md), and checked by
|
||||
`tools/okf_contract_check.py`. **That document binds; this one records why.**
|
||||
Nothing here has been rewritten to match it -- the reasoning is the artifact,
|
||||
and two copies of the same rules would drift.
|
||||
No profile field and no version bump follow from this document. It
|
||||
fixes what the contract *is* and who owns it, so that the first bundle-specific
|
||||
consumption skill — written later, in whichever repo needs it — has something
|
||||
to be conformant to.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue