Skip to content

Conversation

@hyperpolymath
Copy link
Owner

Add the gating-contract crate which formalizes the policy enforcement contract with:

  • Inputs: GatingRequest with proposal, context, and metadata
  • Outputs: GatingDecision with verdict, refusal details, evaluations
  • Refusal Taxonomy: 11 categories with 25+ specific refusal codes
    • Language violations (100-199)
    • Toolchain violations (200-299)
    • Security violations (300-399)
    • Pattern violations (400-499)
    • Spirit violations (500-599)
    • System errors (900-999)
  • Audit Log: AuditEntry with full decision traceability
  • Minimal Runner: ContractRunner and TestHarness for validation

CLI additions:

  • conative contract schema: Display contract specification
  • conative contract test: Run tests from training data
  • conative contract eval: Evaluate gating requests with audit output

All 8 contract unit tests pass. Test harness exposes known Oracle limitations (marker-based detection has false positives for TypeScript and Python markers in Rust/Elixir code).

Add the gating-contract crate which formalizes the policy enforcement
contract with:

- Inputs: GatingRequest with proposal, context, and metadata
- Outputs: GatingDecision with verdict, refusal details, evaluations
- Refusal Taxonomy: 11 categories with 25+ specific refusal codes
  - Language violations (100-199)
  - Toolchain violations (200-299)
  - Security violations (300-399)
  - Pattern violations (400-499)
  - Spirit violations (500-599)
  - System errors (900-999)
- Audit Log: AuditEntry with full decision traceability
- Minimal Runner: ContractRunner and TestHarness for validation

CLI additions:
- conative contract schema: Display contract specification
- conative contract test: Run tests from training data
- conative contract eval: Evaluate gating requests with audit output

All 8 contract unit tests pass. Test harness exposes known Oracle
limitations (marker-based detection has false positives for TypeScript
and Python markers in Rust/Elixir code).
@hyperpolymath hyperpolymath merged commit 89da01b into main Dec 27, 2025
14 of 22 checks passed
@hyperpolymath hyperpolymath deleted the claude/freeze-gating-contract-JSyXa branch December 27, 2025 14:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants