Overview
decision-gate.toml configures the public Decision Gate OSS runtime. The schema, registry rows, example TOML, JSON projection, and digests are emitted by decision-gate-config as one source-owned contract.
Contract Authority
| Field | Value |
|---|---|
| Owner | decision-gate-config |
| Subject | public_decision_gate_config |
| Version | 1 |
| Contract digest | 07960b001effedd4f43ff99422ecd90c3cface2182072e559f4b4c7b97bbc0ff |
| Example digest | e89ffd3b90a3a3e71b1b457a57a8374033e707a8edd5ffc109c5a57233660ab3 |
| Example validation | owner_loader |
Registry Fields
Every field row below is derived from the public schema leaf set and validated by validate_config_registry() before docs are emitted.
| Path | Sources | Sensitivity | Notes |
|---|---|---|---|
accepted_run_store | file:decision-gate.toml | public | Accepted-run conditional-commit authority configuration. |
accepted_run_store.acceptance_time_authority_id | file:decision-gate.tomldefault:serde_default:RawDecisionGateConfig | public | Reviewed by schema/registry contract. |
accepted_run_store.acceptance_time_authority_revision | file:decision-gate.tomldefault:serde_default:RawDecisionGateConfig | public | Reviewed by schema/registry contract. |
accepted_run_store.busy_timeout_ms | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
accepted_run_store.limits.accepted_record_bytes | file:decision-gate.tomldefault:serde_default:RawDecisionGateConfig | public | Reviewed by schema/registry contract. |
accepted_run_store.limits.current_state_bytes | file:decision-gate.tomldefault:serde_default:RawDecisionGateConfig | public | Reviewed by schema/registry contract. |
accepted_run_store.limits.intent_family_bytes | file:decision-gate.tomldefault:serde_default:RawDecisionGateConfig | public | Reviewed by schema/registry contract. |
accepted_run_store.limits.intents_per_mutation | file:decision-gate.tomldefault:serde_default:RawDecisionGateConfig | public | Reviewed by schema/registry contract. |
accepted_run_store.limits.page_items | file:decision-gate.tomldefault:serde_default:RawDecisionGateConfig | public | Reviewed by schema/registry contract. |
accepted_run_store.limits.sqlite_read_connections | file:decision-gate.tomldefault:serde_default:RawDecisionGateConfig | public | Reviewed by schema/registry contract. |
accepted_run_store.limits.sqlite_writer_queue | file:decision-gate.tomldefault:serde_default:RawDecisionGateConfig | public | Reviewed by schema/registry contract. |
accepted_run_store.limits.transaction_bytes | file:decision-gate.tomldefault:serde_default:RawDecisionGateConfig | public | Reviewed by schema/registry contract. |
accepted_run_store.memory_capacity.max_records_per_run | file:decision-gate.tomldefault:serde_default:RawDecisionGateConfig | public | Reviewed by schema/registry contract. |
accepted_run_store.memory_capacity.max_runs | file:decision-gate.tomldefault:serde_default:RawDecisionGateConfig | public | Reviewed by schema/registry contract. |
accepted_run_store.memory_capacity.max_scenario_laws | file:decision-gate.tomldefault:serde_default:RawDecisionGateConfig | public | Reviewed by schema/registry contract. |
accepted_run_store.path | file:decision-gate.toml | internal | Reviewed by schema/registry contract. |
accepted_run_store.type | file:decision-gate.tomldefault:serde_default:RawDecisionGateConfig | public | Reviewed by schema/registry contract. |
docs.enable_resources | file:decision-gate.toml | public | Enable MCP resources list/read. |
docs.enable_search | file:decision-gate.toml | public | Enable docs search tool. |
docs.enabled | file:decision-gate.toml | public | Enable docs surfaces globally. |
docs.extra_paths | file:decision-gate.toml | internal | Extra doc paths to ingest (files or directories). |
docs.extra_paths.* | file:decision-gate.toml | internal | Reviewed by schema/registry contract. |
docs.include_default_docs | file:decision-gate.toml | public | Include the embedded default docs set. |
docs.max_doc_bytes | file:decision-gate.toml | public | Maximum size for a single doc entry in bytes. |
docs.max_docs | file:decision-gate.toml | public | Maximum number of docs in the catalog. |
docs.max_sections | file:decision-gate.toml | public | Maximum sections returned by docs search. |
docs.max_total_bytes | file:decision-gate.toml | public | Maximum total docs bytes for the catalog. |
local_acquisition.document_roots | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
local_acquisition.document_roots.*.absolute_root | file:decision-gate.toml | public | Explicit absolute capability root. |
local_acquisition.document_roots.*.root_id | file:decision-gate.toml | public | Capability-rooted document authority identity. |
local_acquisition.document_roots.*.root_revision.algorithm | file:decision-gate.toml | public | Closed digest algorithm identity. |
local_acquisition.document_roots.*.root_revision.value | file:decision-gate.toml | public | Canonical lowercase SHA-256 hexadecimal syntax. |
local_acquisition.environment_snapshots | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
local_acquisition.environment_snapshots.*.allowlisted_keys | file:decision-gate.toml | public | Complete allowlisted environment key denominator. |
local_acquisition.environment_snapshots.*.allowlisted_keys.* | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
local_acquisition.environment_snapshots.*.authority_id | file:decision-gate.toml | public | Environment snapshot authority identity. |
local_acquisition.environment_snapshots.*.authority_revision.algorithm | file:decision-gate.toml | public | Closed digest algorithm identity. |
local_acquisition.environment_snapshots.*.authority_revision.value | file:decision-gate.toml | public | Canonical lowercase SHA-256 hexadecimal syntax. |
local_acquisition.maximum_concurrency | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
local_acquisition.maximum_operations | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
local_acquisition.time_authorities | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
local_acquisition.time_authorities.*.authority_id | file:decision-gate.toml | public | Named time-authority identity. |
local_acquisition.time_authorities.*.authority_revision.algorithm | file:decision-gate.toml | public | Closed digest algorithm identity. |
local_acquisition.time_authorities.*.authority_revision.value | file:decision-gate.toml | public | Canonical lowercase SHA-256 hexadecimal syntax. |
local_acquisition.time_authorities.*.resolution_nanoseconds | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
local_acquisition.time_authorities.*.uncertainty_nanoseconds | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
namespace.allow_default | file:decision-gate.tomldefault:serde_default:RawDecisionGateConfig | public | Allow the default namespace ID (1). |
policy | file:decision-gate.toml | public | Dispatch policy engine configuration. |
policy.engine | file:decision-gate.tomldefault:serde_default:RawDecisionGateConfig | public | Dispatch policy engine selection. |
policy.static | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.default | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.* | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.content_types | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.content_types.* | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.effect | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.error_message | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.forbid_labels | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.forbid_labels.* | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.forbid_policy_tags | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.forbid_policy_tags.* | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.packet_ids | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.packet_ids.* | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.require_labels | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.require_labels.* | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.require_policy_tags | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.require_policy_tags.* | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.scenario_ids | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.scenario_ids.* | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.schema_ids | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.schema_ids.* | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.stage_ids | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.stage_ids.* | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.target_kinds | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.target_kinds.* | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.targets | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.targets.*.system | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.targets.*.target | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.targets.*.target_id | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
policy.static.rules.*.targets.*.target_kind | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
runpack_storage | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
runpack_storage.repository_id | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
runpack_storage.root | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
runpack_storage.type | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
schema_registry.acl.allow_local_only | file:decision-gate.toml | public | Allow local-only subjects to access the registry when using the built-in ACL. |
schema_registry.acl.default | file:decision-gate.toml | public | Default decision when no rules match (custom only). |
schema_registry.acl.mode | file:decision-gate.toml | public | Built-in role rules or custom ACL rules. |
schema_registry.acl.require_signing | file:decision-gate.toml | public | Require schema signing metadata on writes. |
schema_registry.acl.rules | file:decision-gate.toml | public | Custom ACL rules (mode = custom). |
schema_registry.acl.rules.*.actions | file:decision-gate.toml | public | Registry actions covered by the rule. |
schema_registry.acl.rules.*.actions.* | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
schema_registry.acl.rules.*.effect | file:decision-gate.toml | public | Rule effect. |
schema_registry.acl.rules.*.namespaces | file:decision-gate.toml | public | Namespace identifier scope. |
schema_registry.acl.rules.*.namespaces.* | file:decision-gate.toml | public | Namespace identifier. |
schema_registry.acl.rules.*.policy_classes | file:decision-gate.toml | public | Policy class labels in scope. |
schema_registry.acl.rules.*.policy_classes.* | file:decision-gate.toml | public | Policy class label. |
schema_registry.acl.rules.*.roles | file:decision-gate.toml | public | Role names in scope. |
schema_registry.acl.rules.*.roles.* | file:decision-gate.toml | public | Role name. |
schema_registry.acl.rules.*.subjects | file:decision-gate.toml | public | Principal subjects in scope. |
schema_registry.acl.rules.*.subjects.* | file:decision-gate.toml | public | Principal subject. |
schema_registry.batch_max_bytes | file:decision-gate.toml | public | SQLite writer batch max aggregate bytes. |
schema_registry.batch_max_ops | file:decision-gate.toml | public | SQLite writer batch max operation count. |
schema_registry.batch_max_wait_ms | file:decision-gate.toml | public | SQLite writer batch max wait window (ms). |
schema_registry.busy_timeout_ms | file:decision-gate.toml | public | SQLite busy timeout (ms). |
schema_registry.journal_mode | file:decision-gate.toml | public | SQLite journal mode. |
schema_registry.max_entries | file:decision-gate.toml | public | Optional max schemas per namespace. |
schema_registry.max_schema_bytes | file:decision-gate.toml | public | Maximum schema payload size in bytes. |
schema_registry.path | file:decision-gate.toml | internal | Reviewed by schema/registry contract. |
schema_registry.read_pool_size | file:decision-gate.toml | public | SQLite read connection pool size. |
schema_registry.sync_mode | file:decision-gate.toml | public | SQLite sync mode. |
schema_registry.type | file:decision-gate.toml | public | Schema registry backend selection. |
schema_registry.writer_queue_capacity | file:decision-gate.toml | public | SQLite writer queue capacity. |
server | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
server.audit.enabled | file:decision-gate.toml | public | Enable structured audit logging (JSON lines). |
server.audit.log_precheck_payloads | file:decision-gate.toml | public | Log raw precheck payloads (explicit opt-in). |
server.audit.path | file:decision-gate.toml | internal | Reviewed by schema/registry contract. |
server.auth | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
server.auth.bearer_tokens | file:decision-gate.toml | internal | Reviewed by schema/registry contract. |
server.auth.bearer_tokens.*.encoding | file:decision-gate.toml | internal | Reviewed by schema/registry contract. |
server.auth.bearer_tokens.*.key | file:decision-gate.toml | internal | Reviewed by schema/registry contract. |
server.auth.bearer_tokens.*.provider | file:decision-gate.toml | internal | Reviewed by schema/registry contract. |
server.auth.bearer_tokens.*.version | file:decision-gate.toml | internal | Reviewed by schema/registry contract. |
server.auth.mode | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
server.auth.principals | file:decision-gate.toml | internal | Reviewed by schema/registry contract. |
server.auth.principals.*.policy_class | file:decision-gate.toml | internal | Reviewed by schema/registry contract. |
server.auth.principals.*.roles | file:decision-gate.toml | internal | Reviewed by schema/registry contract. |
server.auth.principals.*.roles.*.name | file:decision-gate.toml | internal | Reviewed by schema/registry contract. |
server.auth.principals.*.roles.*.namespace_id | file:decision-gate.toml | internal | Reviewed by schema/registry contract. |
server.auth.principals.*.subject | file:decision-gate.toml | internal | Reviewed by schema/registry contract. |
server.bind | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
server.limits.max_inflight | file:decision-gate.toml | public | Maximum concurrent MCP requests. |
server.limits.rate_limit | file:decision-gate.toml | public | Optional rate limit configuration. |
server.limits.rate_limit.max_entries | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
server.limits.rate_limit.max_requests | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
server.limits.rate_limit.window_ms | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
server.max_body_bytes | file:decision-gate.tomldefault:serde_default:RawDecisionGateConfig | public | Maximum JSON-RPC request size in bytes. |
server.tls | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
server.tls.cert_path | file:decision-gate.toml | internal | Reviewed by schema/registry contract. |
server.tls.key_path | file:decision-gate.toml | internal | Reviewed by schema/registry contract. |
server.tls_termination | file:decision-gate.toml | public | Where TLS is terminated for HTTP/SSE transport. |
server.tools.allowlist | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
server.tools.allowlist.* | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
server.tools.denylist | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
server.tools.denylist.* | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
server.transport | file:decision-gate.tomldefault:serde_default:RawDecisionGateConfig | public | Transport protocol for MCP. |
value_limits.array_elements | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
value_limits.byte_value_bytes | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
value_limits.canonical_candidate_bytes | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
value_limits.canonical_snapshot_bytes | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
value_limits.canonical_value_bytes | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
value_limits.composite_depth | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
value_limits.decimal_precision | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
value_limits.decimal_scale | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
value_limits.document_bytes | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
value_limits.document_fields | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
value_limits.document_nodes | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
value_limits.document_roots | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
value_limits.environment_entries | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
value_limits.environment_key_bytes | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
value_limits.environment_snapshot_bytes | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
value_limits.environment_value_bytes | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
value_limits.evidence_candidates_per_condition | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
value_limits.evidence_candidates_per_snapshot | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
value_limits.integer_digits | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
value_limits.json_pointer_bytes | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
value_limits.json_pointer_tokens | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
value_limits.record_field_name_bytes | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
value_limits.record_fields | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
value_limits.relative_path_bytes | file:decision-gate.toml | internal | Reviewed by schema/registry contract. |
value_limits.relative_path_component_bytes | file:decision-gate.toml | internal | Reviewed by schema/registry contract. |
value_limits.relative_path_components | file:decision-gate.toml | internal | Reviewed by schema/registry contract. |
value_limits.string_bytes | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
value_limits.union_members | file:decision-gate.toml | public | Reviewed by schema/registry contract. |
Local Acquisition Profile
The initial OSS profile admits only named time authorities, immutable allowlisted environment snapshots, and capability-rooted JSON/YAML documents. All values remain bounded by value_limits, and scenario laws bind exact source identities and revisions. Network, subprocess, remote MCP, native plugins, and remote evaluators are not representable in this configuration contract.
Example Account
The example below is owner-model validated, schema validated, and published with digest e89ffd3b90a3a3e71b1b457a57a8374033e707a8edd5ffc109c5a57233660ab3.
[server]
transport = "stdio"
tls_termination = "server"
max_body_bytes = 1048576
[server.limits]
max_inflight = 256
[server.audit]
enabled = true
path = "decision-gate-governance-audit.jsonl"
log_precheck_payloads = false
[server.tools]
allowlist = []
denylist = []
[namespace]
allow_default = false
[value_limits]
integer_digits = 128
decimal_precision = 128
decimal_scale = 64
string_bytes = 65536
byte_value_bytes = 1048576
composite_depth = 16
array_elements = 256
record_fields = 128
union_members = 16
record_field_name_bytes = 128
canonical_value_bytes = 1048576
evidence_candidates_per_condition = 16
evidence_candidates_per_snapshot = 1024
canonical_candidate_bytes = 1048576
canonical_snapshot_bytes = 4194304
environment_key_bytes = 255
environment_value_bytes = 65536
environment_entries = 256
environment_snapshot_bytes = 1048576
document_roots = 16
document_bytes = 1048576
relative_path_components = 32
relative_path_bytes = 4096
relative_path_component_bytes = 255
document_nodes = 65536
document_fields = 16384
json_pointer_bytes = 4096
json_pointer_tokens = 64
[local_acquisition]
maximum_operations = 256
maximum_concurrency = 1
time_authorities = []
environment_snapshots = []
document_roots = []
[policy]
engine = "permit_all"
[accepted_run_store]
type = "sqlite"
path = "decision-gate.db"
busy_timeout_ms = 5000
acceptance_time_authority_id = "dg-local-system-wall-clock-v1"
acceptance_time_authority_revision = "dg-local-system-wall-clock-v1"
[accepted_run_store.limits]
current_state_bytes = 1048576
accepted_record_bytes = 4194304
intent_family_bytes = 4194304
transaction_bytes = 8388608
intents_per_mutation = 128
page_items = 64
sqlite_writer_queue = 1024
sqlite_read_connections = 4
[schema_registry]
type = "memory"
busy_timeout_ms = 5000
journal_mode = "wal"
sync_mode = "full"
max_schema_bytes = 1048576
writer_queue_capacity = 1024
batch_max_ops = 64
batch_max_bytes = 524288
batch_max_wait_ms = 2
read_pool_size = 4
[schema_registry.acl]
mode = "builtin"
default = "deny"
allow_local_only = false
require_signing = false
rules = []
[docs]
enabled = true
enable_search = true
enable_resources = true
include_default_docs = true
extra_paths = []
max_doc_bytes = 262144
max_total_bytes = 1048576
max_docs = 32
max_sections = 10