Documentation

Constitution authoring

How a version is ratified, hashed and superseded.

The governing document of Gospel in Action. It is loaded by the API at startup, hashed, and rendered into per-agent policy packs. No agent operates from memory of doctrine.

Files

File Role
current.json pointer to the active version
versions/<semver>.json immutable, ratified policy text
CHANGELOG.md rationale for every change, with authorisation
schemas/constitution.schema.json shape required for a new version

Rules

  1. Never edit a released version file. Corrections create a new version (1.0.1, 1.1.0, …).
  2. Every change is authorised. Add an entry to CHANGELOG.md naming who authorised it and why.
  3. Hashes are permanent. Every audit and agent run records constitution_sha256, so any past output remains explainable even after policy changes.
  4. Tightening is safe; loosening is not. Removing a prohibition or downgrading a blocker is a policy change requiring explicit sign-off, not an implementation detail.
  5. Theology is not a variable. Agents, prompts, models, and providers may change. The constitution changes only by the process above.

Authoring a new version

cp constitution/versions/1.0.0.json constitution/versions/1.0.1.json
# edit, bump "version", update CHANGELOG.md
echo '{"version": "1.0.1"}' > constitution/current.json
cd services/api && ./.venv/bin/pytest -q

Startup registers the new version in constitution_versions; existing audits keep pointing at the version that governed them.

Structure (what each block does)

Block Enforced where
core_claim injected into every policy pack
doctrines[] filtered per agent role; becomes binding requirements
prohibitions[].detectors regex execution in the audit engine
terminology.avoid scanned in every artifact, negation-aware
validation_rules[] required attestations per document kind
statuses / publication_gate workflow gate and API responses
disputed_interpretations[] injected when a role touches contested topics
approved_sources citation checks; corpus manifest path
dispensationalism_rejection blocking across all audit points

Current version

1.0.0, ratified 2026-11-01. Framework: Relational Oneness Theology.

Source

Rendered from constitution/README.md at build time. Return to the documentation index.