Decision Gate Docs

Deterministic, replayable gate evaluation with auditable decisions.

Asset Core docs

Comparator Validation Architecture Reference

Overview

Decision Gate enforces comparator correctness in two layers:

  1. Authoring-time strict validation (default-on) in the MCP layer rejects invalid comparator/type combinations before a scenario or precheck runs. F:crates/decision-gate-mcp/src/validation.rs L36-L673 F:crates/decision-gate-mcp/src/tools.rs L2027-L2050 F:crates/decision-gate-mcp/src/tools.rs L2663-L2707
  2. Runtime comparator evaluation in the core returns tri-state results and yields Unknown when evidence types do not match expectations. F:crates/decision-gate-core/src/runtime/comparator.rs L39-L259

The strict validator is the gatekeeper; runtime logic is the last line of fail-closed behavior. F:crates/decision-gate-mcp/src/validation.rs L36-L170 F:crates/decision-gate-core/src/runtime/comparator.rs L39-L197

Source of Truth Map

AreaFileNotes
Comparator enum + EvidenceQueryF:crates/decision-gate-core/src/core/evidence.rs L32-L90Canonical comparator list and query shape.
Runtime comparator semanticsF:crates/decision-gate-core/src/runtime/comparator.rs L39-L308Decimal-aware ordering, lex/deep behavior, Unknown on mismatch.
Strict validation engineF:crates/decision-gate-mcp/src/validation.rs L36-L673Type-class matrix, schema parsing, domain overrides.
MCP tool integrationF:crates/decision-gate-mcp/src/tools.rs L2027-L2050 F:crates/decision-gate-mcp/src/tools.rs L2663-L2707scenario_define + precheck invoke strict validation.
Validation config surfaceF:crates/decision-gate-config/src/config.rs L1469-L1521ValidationConfig toggles and profile identifiers.
Contract schemasF:crates/decision-gate-contract/src/schemas.rs L1105-L1129Comparator schema and annotations.
Tooltips/docsF:crates/decision-gate-contract/src/tooltips.rs L260-L296Public-facing comparator and validation behavior.
Generated docsF:Docs/generated/decision-gate/tooling.md L1-L42 F:Docs/generated/decision-gate/tooltips.json L1-L80Regenerated after schema/tooltip updates.
MCP validation testsF:crates/decision-gate-mcp/tests/validation.rs L1-L220Unit coverage for strict mode.
System testsF:system-tests/tests/suites/validation.rs L1-L220End-to-end validation behavior.

Validation Pipeline (MCP)

Scenario definition (scenario_define)

Precheck (precheck tool)

Strict Validation Rules (Implementation Summary)

Type-class compatibility

Optional comparator families

Domain overrides

Union handling

Runtime Comparator Semantics (Core)

Configuration Surface

Contract + Docs Alignment

Change Checklist

  1. Update comparator semantics in crates/decision-gate-core/src/runtime/comparator.rs. F:crates/decision-gate-core/src/runtime/comparator.rs L39-L308
  2. Update strict validation logic in crates/decision-gate-mcp/src/validation.rs. F:crates/decision-gate-mcp/src/validation.rs L36-L673
  3. Update config toggles in crates/decision-gate-config/src/config.rs if needed. F:crates/decision-gate-config/src/config.rs L1469-L1521
  4. Align schemas/tooltips in crates/decision-gate-contract/src/schemas.rs and crates/decision-gate-contract/src/tooltips.rs. F:crates/decision-gate-contract/src/schemas.rs L1105-L1129 F:crates/decision-gate-contract/src/tooltips.rs L260-L296
  5. Regenerate Docs/generated/decision-gate/ artifacts. F:Docs/generated/decision-gate/tooling.md L1-L42
  6. Update unit + system tests. F:crates/decision-gate-mcp/tests/validation.rs L1-L220 F:system-tests/tests/suites/validation.rs L1-L220