a11oy / packages /policy /src /gates /README.md
betterwithage's picture
sync(space): full source mirror — resolve all GitHub<->Space drift (CTO)
a6a5d8e verified
|
Raw History Blame
9.33 kB

a11oy Policy Gates — All 35 Anchor Formulas

Author: Lutar, Stephen P. — ORCID 0009-0001-0110-4173 — SZL Holdings
Lean commit anchor: 1dca00032dfc9aa8559cc6c2e4b63192fcf52371
Zenodo concept DOI: https://doi.org/10.5281/zenodo.20162352
License: Apache-2.0

This directory contains Layer 6 (L6 policy gate) implementations for all 35 anchor formulas instilled across the 7-layer SZL stack (L1 Lean, L2 TS runtime, L3 parity, L4 OTel, L5 DSSE receipt, L6 policy gate, L7 forecast).

Five gates were wired in a11oy#108 (cursor/policy-gates-hardening-2f18). Thirty new gates are added here. All 35 are barrel-exported from index.ts.


Legend

Column Meaning
Lean status theorem = no sorrys; axiom = design axiom; conjectured = pending proof; measured = empirical; sorry = active sorry
Severity enforced = blocks pipeline; advisory = warns only (STAGED)
Layer Axioms (A), Derivations (T), New Theorems (TH), Lean Theorems (TH_L)

All 35 Gates

Already wired in a11oy#108 (5)

# ID Gate file Formula Lean file Lean status Severity
1 TH8 adversarialRobustness_gate.ts AdversarialRobustness Lutar/Composition/AdversarialRobustness.lean theorem enforced
2 Rhind falsePosition_gate.ts FalsePosition Lutar/Calibration/FalsePosition.lean theorem enforced
3 Liu Hui liuHuiPi_gate.ts LiuHuiPi Lutar/Banach/LiuHuiPi.lean axiom advisory
4 Mādhava madhavaBound_gate.ts MadhavaBound Lutar/PACBayes/MadhavaBound.lean theorem enforced
5 Khipu summationInvariant_gate.ts SummationInvariant Lutar/Khipu/SummationInvariant.lean theorem enforced

Axiom gates — A1–A9 (9 new gates)

# ID Gate file Formula Lean file Lean status Severity
6 A1 soundnessAxiom_gate.ts SoundnessAxiom Lutar/Gate/SoundnessAxiom.lean theorem enforced
7 A2 moralGroundingFloor_gate.ts MoralGroundingFloor Lutar/Gate/MoralGrounding.lean theorem enforced
8 A3 measurabilityHonestyFloor_gate.ts MeasurabilityHonestyFloor Lutar/Gate/MeasurabilityHonesty.lean theorem enforced
9 A4 dualWitnessDisjointness_gate.ts DualWitnessDisjointness Lutar/Gate/DualWitness.lean theorem enforced
10 A5 deterministicReplay_gate.ts DeterministicReplay Lutar/Gate/DeterministicReplay.lean theorem enforced
11 A6 hashChainIntegrity_gate.ts HashChainIntegrity Lutar/Gate/HashChainIntegrity.lean theorem enforced
12 A7 bekensteinBound_gate.ts BekensteinBound Lutar/Gate/BekensteinBound.lean conjectured advisory (STAGED)
13 A8 ingestDiscipline_gate.ts IngestDiscipline Lutar/Gate/IngestDiscipline.lean theorem enforced
14 A9 doctrineCompleteness_gate.ts DoctrineCompleteness Lutar/Gate/DoctrineCompleteness.lean theorem enforced

Proposed Axiom gates — A10–A14 (4 new gates; A13 = adversarialRobustness, already done)

# ID Gate file Formula Lean file Lean status Severity
15 A10 temporalConsistency_gate.ts TemporalConsistency Lutar/Gate/TemporalConsistency.lean theorem enforced
16 A11 causalSeparability_gate.ts CausalSeparability Lutar/Gate/CausalSeparability.lean theorem enforced
17 A12 constructiveTransparency_gate.ts ConstructiveTransparency Lutar/Gate/ConstructiveTransparency.lean theorem enforced
18 A14 economicGrounding_gate.ts EconomicGrounding Lutar/Gate/EconomicGrounding.lean theorem enforced

Derivation gates — T1–T10 (10 new gates)

# ID Gate file Formula Lean file Lean status Severity
19 T1 rhoClosureComposition_gate.ts RhoClosureComposition Lutar/Gate/RhoClosureComposition.lean theorem enforced
20 T2 lambdaMonotonicity_gate.ts LambdaMonotonicity Lutar/Gate/LambdaMonotonicity.lean theorem enforced
21 T3 merkleDagBatch_gate.ts MerkleDagBatch Lutar/Gate/MerkleDagBatch.lean theorem enforced
22 T4 bekensteinEntropyMeasure_gate.ts BekensteinEntropyMeasure Lutar/Gate/BekensteinEntropyMeasure.lean conjectured enforced
23 T5 replayDeterminism_gate.ts ReplayDeterminism Lutar/Gate/ReplayDeterminism.lean theorem enforced
24 T6 conjunctiveGateCounterexample_gate.ts ConjunctiveGateCounterexample Lutar/Gate/ConjunctiveGate.lean theorem enforced
25 T7 privacyMask_gate.ts PrivacyMask Lutar/Gate/PrivacyMask.lean theorem enforced
26 T8 singleWitnessExclusion_gate.ts SingleWitnessExclusion Lutar/Gate/SingleWitnessExclusion.lean theorem enforced
27 T9 crossRegionPolicy_gate.ts CrossRegionPolicy Lutar/Gate/CrossRegionPolicy.lean theorem enforced
28 T10 doctrineEnforcement_gate.ts DoctrineEnforcement Lutar/Gate/DoctrineEnforcement.lean theorem enforced

New Theorem gates — TH1–TH7 (7 new gates; TH8 = adversarialRobustness, already done)

# ID Gate file Formula Lean file Lean status Severity
29 TH1 composability_gate.ts Composability Lutar/Composition/Composability.lean theorem enforced
30 TH2 replayDoiDuality_gate.ts ReplayDoiDuality Lutar/Composition/ReplayDoiDuality.lean theorem enforced
31 TH3 anatomyReduction_gate.ts AnatomyReduction Lutar/Composition/AnatomyReduction.lean theorem enforced
32 TH4 lambdaCategoryComposability_gate.ts LambdaCategoryComposability Lutar/LaxFunctor.lean conjectured advisory (STAGED)
33 TH5 receiptChainConfluence_gate.ts ReceiptChainConfluence Lutar/Composition/ReceiptChainConfluence.lean conjectured enforced
34 TH6 bekensteinEntropyDpi_gate.ts BekensteinEntropyDpi Lutar/EntropyBound.lean theorem enforced
35 TH7 curryHowardReceiptCalculus_gate.ts CurryHowardReceiptCalculus Lutar/CurryHoward.lean theorem enforced

Lean Theorem gates — TH_L1–TH_L4 (4 new gates)

# ID Gate file Formula Lean file Lean status Severity
32b TH_L1 lambdaUniquenessConjecture_gate.ts LambdaUniquenessConjecture Lutar/Uniqueness.lean conjecture-open (NOT a theorem — Doctrine v11) advisory-conjecture
33b TH_L2 lambdaMinMaxBounds_gate.ts LambdaMinMaxBounds Lutar/Bound.lean theorem (2 sorry in wider repo) enforced
34b TH_L3 bekensteinSoundness_gate.ts BekensteinSoundness Lutar/BekensteinSoundness.lean measured/conjectured advisory (STAGED)
35b TH_L4 rhoClosureProduction_gate.ts RhoClosureProduction Lutar/RhoClosureProduction.lean measured enforced

STAGED — Advisory-only gates

The following gates carry STAGED-ADVISORY labels. They warn but do not block production by default. They will be promoted to enforced when the corresponding Lean proofs are formally discharged:

Gate Reason for STAGED label
bekensteinBound_gate.ts (A7) Lean proof conjectured; TH6 DPI discharges formally but A7 file pending
lambdaCategoryComposability_gate.ts (TH4) Pending Lutar/LaxFunctor.lean
bekensteinSoundness_gate.ts (TH_L3) Pending lutar-lean PR #12
liuHuiPi_gate.ts (Liu Hui — from a11oy#108) Lean axiom-structured; advisory by design

To promote any STAGED gate to enforced, pass { enforced: true } in config or remove the enforced: false default.


Lean Status Summary

Status Count
theorem (0 sorry) 25
conjectured 4
axiom 1
measured 2
measured/conjectured 1
sorry (2 in wider repo, not gate file) 2
Total 35

Wiring to a11oy#108

To merge this output into the cursor/policy-gates-hardening-2f18 branch:

# From the a11oy repo root
cp formula_gates_30/packages/policy/src/gates/*_gate.ts packages/policy/src/gates/
cp formula_gates_30/packages/policy/src/gates/index.ts packages/policy/src/gates/index.ts
cp formula_gates_30/packages/policy/src/gates/README.md packages/policy/src/gates/README.md
cp formula_gates_30/packages/policy/src/gates/__tests__/policy_gates_extended.test.ts \
   packages/policy/src/gates/__tests__/policy_gates_extended.test.ts

# Run tests
pnpm vitest run packages/policy/src/gates/__tests__/

The extended test file (policy_gates_extended.test.ts) is additive — it imports from the barrel index.ts and runs 90 tests (3 per new gate). The existing policy_gates.test.ts from a11oy#108 continues to cover the original 5 gates.


Doctrine v6 compliance

  • No marketing superlatives in gate files, tests, or this README
  • All STAGED labels are honest and explicitly noted
  • Each gate file is signed with SPDX + ORCID header
  • Every gate cites the Lean file, theorem name, and commit SHA
  • Tests cover: positive (allow), negative (deny), edge (boundary/throw)
  • Lean status accurately reflects the knowledge.json maturity field