Skip to content

Create semantic-ambiguity-gate proof demo #19

@LalaSkye

Description

@LalaSkye

Purpose

Create a companion proof demo named semantic-ambiguity-gate.

This demo should show a narrow control pattern: a syntactically valid transaction can be refused before mutation when an unresolved term affects authority, scope, expiry, revocation, or downstream consequence.

Core invariant

No consequence-binding transaction may commit while any term controlling authority, scope, expiry, recipient, revocation, or downstream effect remains unresolved.

Non-claims

This is not:

  • ethics detection
  • intent parsing
  • general semantic understanding
  • production safety
  • path-universal non-bypassability

It is unresolved binding risk at the commit boundary.

v0.1 scenario

Transaction:

{
  "action": "grant_access",
  "subject": "contractor_1842",
  "resource": "customer_records",
  "purpose": "support_review",
  "duration": "temporary",
  "approval_status": "approved"
}

Expected behaviour:

  • schema validation passes
  • commit boundary refuses or holds
  • downstream_send = false
  • mutation_occurred = false
  • receipt is written
  • replay proves no mutation occurred

Reason codes:

  • AMBIGUOUS_DURATION
  • MISSING_EXPIRY_TIMESTAMP
  • UNBOUND_REVOCATION_CONDITION
  • DOWNSTREAM_PERMISSION_RISK

Minimal repo spine

semantic-ambiguity-gate/
├── README.md
├── CLAIM-BOUNDARY.md
├── invariant.md
├── spec/
│   └── ambiguity-classes-v1.md
├── demo/
│   ├── transaction-input.json
│   ├── schema-pass.json
│   ├── ambiguity-scan-result.json
│   ├── deny-receipt.json
│   └── downstream-sim/
│       ├── if-allowed.md
│       └── if-blocked.md
├── tests/
│   └── test_ambiguity_gate.py
├── pre-registered-failures.md
└── receipts/

Proof role

  • commit-gate-core → structural refusal
  • receipt-chain-core → evidence of refusal
  • semantic-ambiguity-gate → refusal on unresolved meaning at consequence boundary

Acceptance criteria

  • One transaction fixture with duration: temporary.
  • One schema-pass artifact proving structure is valid.
  • One ambiguity scan artifact identifying unresolved binding terms.
  • One DENY/HOLD receipt with the reason codes above.
  • One downstream simulator note showing what would have happened if the transaction had been sent onward.
  • One replay test proving no mutation occurred.
  • Claim boundary file included.

Clean line

Tiny word, big blast radius. The demo should stay small, synthetic, and path-local.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions