docs: add a contributor-facing capability glossary - #48
Merged
SignalLayerLabs merged 2 commits intoAug 19, 2026
Merged
Conversation
Observe, Tool Enforcement and Full Compute Enforcement are defined in the integration overview's "Integration labels" section, but an adapter PR had no single page to link to, and the reasoning a reviewer applies was spread across the overview and CONTRIBUTING. Add docs/reference/capability-glossary.md restating the three definitions verbatim in substance, plus the boundaries that decide between them: - a prompt instruction, skill, or advisory middleware is not enforced interception; - transporting a protocol directive is not implementing it -- protocol v1 defines seven, the reference v0.2 runtime emits allow and deny; - Enforce Mode requires block_actions=True, and UniversalRuntime rejects an observe-only adapter configured as enforced. Uses the two current examples the codebase already documents: Codex as Tool Enforcement (not Full Compute Enforcement, because specialized and hosted tool paths can fall outside local hook coverage) and Claude Code as Observe. The Claude Code entry notes that engine-declared outcome evidence is a statement about evidence quality, not capability, since that is the likeliest way to misread the label. Closes with a four-step "choosing a label" checklist that resolves ties downward: under-claiming is conservative, over-claiming invites a user to rely on a control that fails open. No capability claim is broadened; every statement traces to overview.md or CONTRIBUTING.md. Linked from docs/index.md, the integration overview and the adapter section of CONTRIBUTING.md. Closes SignalLayerLabs#37
…CONTRIBUTING The glossary is only useful if an adapter PR can find it. Link it from the three places a contributor actually looks: - docs/index.md, under Reference; - the "Integration labels" section of the integration overview, next to the normative definitions it restates; - the adapter section of CONTRIBUTING.md, after the Full Compute Enforcement bar. Refs SignalLayerLabs#37
SignalLayerLabs
approved these changes
Aug 19, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #37.
Adds
docs/reference/capability-glossary.md— one page an adapter PR can link to.Acceptance criteria
docs/index.mdunder Reference.On not broadening claims
Every statement traces to an existing source. Specifically preserved:
block_actions=True;UniversalRuntimerejects an observe-only adapter configured as enforced.The "choosing a label" checklist resolves ties downward: under-claiming is merely conservative, over-claiming invites a user to rely on a control that fails open.
Verification
#integration-labels,#adapter-contributions) exist.Unrelated pre-existing failure, flagged for you
python scripts/validate_readme_pages.pyfails on a clean checkout ofmain:README.mdhas no such heading (grep -creturns 0). I confirmed this by stashing my changes and re-running — it is not caused by this PR, and I have deliberately not touchedREADME.mdto fix it. Happy to open a separate issue if useful.