Open research · Apache-2.0 where it is declared
Contribute
A platform contribution improves reproducibility, tests, or documentation. It does not rename the canon and does not imitate a TENIR 2.x version.
Sources and reading context
CONTRIBUTING.md of tenir_governance; vectors/CONTRIBUTING.md; namespace policy v2; Apache-2.0 LICENSE
Simplified public rendering, read on 19 October 2026. KB3: enacted, active doctrinal rendering line. It renders meaning; it is not the code, and not a constitution. KB2: prior rendering line. This site certifies no implementation. Read the detailed status →
On this page
The file CONTRIBUTING.md presents TENIR-Gov as research software accompanying a manuscript. It especially welcomes reproducibility, documentation, and test coverage. It currently points issues at skiredj-prog/tenir-gov, an earlier repository. For the active tree, issues on tenir_governance are the coherent address. The file has not yet followed the move.
Before a proposal
- Start from
mainon the repository concerned. For hyphenatedtenir-governance, the default branch that was read ismaster. - Say whether the change touches the runtime, a conformance vector, or documentation only.
- Do not present a profile, a module, or an extension as a new canonical version.
The test command cited by CONTRIBUTING.md:
pytest tests/ r4/tests/ \
r5_hardened/IRON_OMEGA_R5/test_r5_all.py \
r5_hardened/IRON_OMEGA_R5/test_institutional_hardening.py \
r5_wired/test_r5_governance_integration.py \
--cov=tenir_governance
The policy validator, for a change under tenir_governance/:
tenir-validate --policy default
tenir-validate --policy partner_a
tenir-validate --policy partner_b
Invariants the file asks contributors not to break: membrane decisions go through PolicyEngine.evaluate_membrane(); the CAVE expansion remains Control, Aim, Veto, Epistemics; a default policy fingerprint is given (d083e0b82a16c04d) and any intentional change must update it together with the policy version. Python 3.10 or newer.
REG vectors
The vectors/ directory separates core, commit, and extended vectors, and the statuses valid, proposed, rejected, deprecated. A proposal is not a ratification. compile.py produces the bundled JSON from the YAML.
Licence
Apache-2.0 is the licence text of tenir_governance, tenir-governance, tenir-gov, and reg-conformance. Contributing to those repositories, according to their CONTRIBUTING file, places the work under that licence. tenir-conformance-s1-g1 and tenir-schemas had no LICENSE file in the cloned trees. Do not assume the same licence without reading it there.
KB3 is not a file in these repositories. The prior rendering line and the versioning policy are not patched there by a pull request either. A definition disagreement is reported. It is not “fixed” in the runtime in order to make the words match. A change that would touch posture, the authority hierarchy, determinant logic, minimum required outputs, or profile boundaries is not a rendering patch: it is escalated. An edit of this site, or of the code, does not enact KB3 and does not redefine it.