CRI-CORE — Deterministic enforcement kernel for controlling whether system actions are allowed to execute.
Project description
title: "CRI-CORE — Deterministic Enforcement Kernel" filetype: "documentation" type: "repository-overview" domain: "enforcement" version: "0.12.0" doi: "10.5281/zenodo.19080238" status: "Active" created: "2026-02-19" updated: "2026-04-01"
author: name: "Shawn C. Wright" email: "swright@waveframelabs.org" orcid: "https://orcid.org/0009-0006-6043-9295"
maintainer: name: "Waveframe Labs" url: "https://waveframelabs.org"
license: "Apache-2.0"
copyright: holder: "Waveframe Labs" year: "2026"
ai_assisted: "partial"
dependencies: []
anchors:
- "CRI-CORE v0.12.0"
- "Deterministic Enforcement Kernel"
- "Execution Boundary Enforcement"
CRI-CORE
CRI-CORE v0.12.0 — Deterministic Enforcement Kernel
Concept DOI: https://doi.org/10.5281/zenodo.19080238
CRI-CORE is a deterministic enforcement kernel that controls whether system actions are allowed to execute.
It operates at the execution boundary — the exact point where a system attempts to mutate state.
Instead of detecting or auditing issues after execution, CRI-CORE determines:
- whether an action is allowed to occur
- or whether it is prevented entirely
The kernel evaluates structural, authority, integrity, binding, and publication constraints over a sealed run artifact.
It does not interpret meaning.
It evaluates deterministic structure and invariants only.
This makes CRI-CORE a control point, not a validation layer.
What It Does
CRI-CORE sits directly at the execution boundary — the point where a system attempts to act.
It evaluates a run artifact representing a proposed state mutation and returns a single decision:
- allow execution
- block execution
No warnings.
No after-the-fact auditing.
Execution either happens — or it does not.
Installation
Install from PyPI:
pip install cricore
Requires Python 3.10+.
Minimal Usage
CRI-CORE is typically integrated as an execution gate.
from cricore.interface.governed_execute import governed_execute
def execute_fn(proposal):
return perform_mutation(proposal)
result = governed_execute(
proposal=proposal,
policy=policy,
execute_fn=execute_fn,
)
if result["commit_allowed"]:
# execution occurred inside governed path
pass
else:
# execution prevented
handle_block(result["summary"])
Kernel-Level API
The kernel API is also available directly:
from cricore import evaluate
result = evaluate(
run_path=".",
run_context={
"identities": {},
"integrity": {},
"publication": {},
},
)
Returns:
result.commit_allowed # bool
result.failed_stages # List[str]
result.summary # str
Runtime Input Contracts
CRI-CORE evaluates deterministic run artifacts and explicit mutation requests.
The kernel relies on two structured input contracts:
- Run artifact contract (run directory structure)
- Mutation proposal object (canonical proposal envelope)
Proposal objects are validated against the canonical proposal schema before enforcement.
Compiled governance contracts may be used by external systems to construct proposal objects.
Proposals reference the governing contract using:
contract.id
contract.version
contract.hash
During enforcement the kernel verifies that the proposal's contract hash matches the compiled contract artifact used by the run.
The kernel does not interpret governance policy semantics.
It verifies only deterministic contract identity and structural alignment between proposal and compiled contract artifacts.
run_context supplies execution-time identity, integrity references, and publication context.
It is treated as declarative input and is not resolved or validated against external systems.
Core Model
Exploration (high velocity, non-deterministic)
→
Deterministic enforcement gate (CRI-CORE)
→
Governed state mutation
The kernel ensures that only structurally valid and cryptographically sealed runs are permitted to mutate governed state.
Run Lifecycle
CRI-CORE operates on sealed run artifacts:
generate → finalize → evaluate → (optionally) commit
Once finalized, a run is immutable.
Any modification invalidates the seal and will cause enforcement failure.
Enforcement Pipeline (v0.12.0)
Canonical stage order:
- run-structure
- structure-contract-version-gate
- structure-contract-hash-gate
- independence
- integrity
- integrity-finalization
- publication
- publication-commit
The pipeline is deterministic and ordered.
The contract hash gate verifies that mutation proposals are bound to the exact compiled governance contract used during enforcement.
Contract-Version Behavior
CRI-CORE enforces versioned structural guarantees:
For contract_version < 0.3.0:
- Structural validation
- Independence enforcement
- Integrity manifest verification
For contract_version ≥ 0.3.0:
- binding.json required
- SEAL.json required
- claim_ref required
- Strict cryptographic seal validation
- Immutable artifact boundary enforcement
Enforcement meaning is isolated per declared contract version.
Historical runs are validated under their declared version.
Independence Model
The kernel enforces structural role separation:
- Explicit actor identities
- Optional declared role requirements (
required_roles) - Strict prohibition on multi-role identity when roles are required
- Explicit override pathway (recorded, never implicit)
The kernel evaluates identity structure only.
It does not evaluate competence or review quality.
Cryptographic Guarantees
Finalized runs must include:
- Deterministic SHA256 manifest
- Payload archive
- Structural binding artifact
- Deterministic SEAL.json
The seal covers:
- All run files (deterministic ordering)
- Binding artifact
- Manifest hash
- Payload hash
Any mutation changes the seal hash.
The seal provides tamper evidence.
It is not a signature.
Atomic Commit Semantics
CRI-CORE does not mutate state.
It emits a deterministic authorization decision:
commit_allowed = publication_commit_stage.passed
The caller is expected to route execution through this decision.
Runtime Packaging Guarantees
CRI-CORE is distributed as a self-contained runtime.
- Schema artifacts are embedded within the package (
cricore.schema) - No dependency on repository-relative paths
- Deterministic behavior across local, CI, and installed environments
All validation logic operates against packaged artifacts, not filesystem assumptions.
What CRI-CORE Does Not Do
CRI-CORE does not:
- Interpret lifecycle semantics
- Judge correctness of domain objects
- Evaluate epistemic sufficiency
- Enforce governance policy meaning
- Perform distributed consensus
- Prevent bypass outside invocation
It is a deterministic structural enforcement gate only.
Design Principles
- Deterministic evaluation
- No network calls
- No model calls
- No semantic inference
- Opaque reference handling
- Versioned enforcement meaning
- Strict immutability after finalization
Intended Use
CRI-CORE is designed to sit beneath:
- Workflow engines
- CI pipelines
- Agent execution runtimes
- Domain governance systems
It provides:
- Structural admissibility validation
- Cryptographic immutability guarantees
- Centralized execution authorization
It is domain-agnostic.
Citation
If you use CRI-CORE in your work, please cite the concept DOI:
CRI-CORE — Deterministic Enforcement Kernel
Wright, Shawn C.; Waveframe Labs (2026)
https://doi.org/10.5281/zenodo.19080238
BibTeX
@software{cricore_concept_2026,
title = {CRI-CORE: Deterministic Enforcement Kernel},
author = {Wright, Shawn C. and Waveframe Labs},
year = {2026},
doi = {10.5281/zenodo.19080238},
url = {https://doi.org/10.5281/zenodo.19080238}
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cricore-0.12.0.tar.gz.
File metadata
- Download URL: cricore-0.12.0.tar.gz
- Upload date:
- Size: 30.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
93c482beef9908ccad8710d04db19b58cc52b89f60074dabd3ce8152a37b37c5
|
|
| MD5 |
328c16227d0c2f5fddeb027d110e26a2
|
|
| BLAKE2b-256 |
5c040b600524e88464c7ff8d4126b18495dd44b2c1d492083b7770267512e369
|
File details
Details for the file cricore-0.12.0-py3-none-any.whl.
File metadata
- Download URL: cricore-0.12.0-py3-none-any.whl
- Upload date:
- Size: 47.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3bbc0b7836b6df573059ffae415c717013bae0f1cbfe069b989bfb8936ec47cc
|
|
| MD5 |
c1e21e96d7439d6434a11b3ce0f6cfab
|
|
| BLAKE2b-256 |
6cd905ab909ce584e55d3740bbf318314bbcb16afc56cee5941345274b46d4d7
|