You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/VERSION_PLAN.md
+76-6Lines changed: 76 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -242,6 +242,11 @@ continues past the relevant dependency point.
242
242
| Threshold quorum safety needed exact mathematics. | Expanded `v0.79.0` with supported fault model, exact quorum formula, weighted-quorum policy, overflow-safe arithmetic, and policy-time rejection of impossible configurations. |
243
243
| Provider side-channel wording could admit variable-time signing into high-assurance profiles. | Added provider assurance classes in `v0.28.1` and required high-assurance profiles to admit only constant-time software or appropriately isolated hardware signing providers. |
244
244
| Invalid-result caching needed a complete semantic cache key. | Added cache-key requirements to `v0.17.1` covering statement, policy, trust, revocation, conflict, checkpoint, suite, and profile roots. |
245
+
| Replay stores could be poisoned before authentication. | Expanded `v0.23.0 - Validity And Atomic Replay Policy` with authenticate-before-commit ordering, bounded reservation semantics, advisory early duplicate checks, and invalid-signature/crash fixtures. |
246
+
| Provider threat claims needed a precise trust boundary. | Expanded `v0.28.1 - Provider Assurance Classes` so admitted primitive providers are part of the trusted computing base; provider crashes, format errors, resource abuse, and capability misreporting are defended, but arbitrary false cryptographic success from an admitted compromised provider is a trusted-boundary failure through `v1.0.0`. |
247
+
| Verification cacheability needed per-outcome rules. | Expanded `v0.17.1 - Verification Outcome And Receipt Model` with a cacheability matrix for decoding, crypto, policy, revocation, validity time, replay, missing evidence, provider availability, resource exhaustion, capability, delegation, and authority outcomes. |
248
+
| Verification receipts needed a nonrecursive signature domain. | Expanded `v0.41.0 - Receipt Model Split` with a distinct receipt-signature domain and direct receipt verification path that does not recursively require another verification receipt. |
249
+
| Missing-parent quotas could be bypassed with unauthenticated issuer claims. | Expanded `v0.21.0 - Missing Parent Reconciliation` with unauthenticated global/source quotas and authenticated per-issuer quotas only after issuer authentication. |
245
250
246
251
## Phase 0: Published Foundation And Direction Pivot
247
252
@@ -849,6 +854,20 @@ Deliverables:
849
854
- rule that invalid outcomes may be cached only when the cache key includes
850
855
every relevant statement, policy, trust, revocation, conflict, checkpoint,
851
856
suite, and profile root,
857
+
- cacheability matrix by outcome class:
858
+
canonical decoding failures are permanently cacheable by object bytes,
859
+
cryptographic failures are cacheable by statement, signature, key, suite, and
860
+
verifier profile,
861
+
policy or revocation failures are cacheable only with the exact policy,
862
+
trust, and root snapshot,
863
+
not-yet-valid results include evaluation time or expire at the validity
864
+
boundary,
865
+
expired results are cacheable only under the applicable clock or
866
+
evaluation-point policy,
867
+
replay or sequence results require replay-store generation or state binding,
868
+
missing evidence, provider unavailable, and resource exhausted outcomes are
869
+
never cached as invalid, and capability or delegation failures include
870
+
capability, delegation, and authority-state roots,
852
871
- rule that retrying with a larger locally permitted budget may complete
853
872
verification without changing the underlying statement validity,
854
873
- unsigned local verification receipts are diagnostics only,
@@ -872,6 +891,8 @@ Verification:
872
891
- outcome classification tests,
873
892
- cache-behavior tests proving resource exhaustion is not stored as invalid,
874
893
- complete invalid-result cache-key tests,
894
+
- per-outcome cacheability matrix tests,
895
+
- stale contextual cache fixtures,
875
896
- retry-with-larger-budget tests,
876
897
- verification receipt fixtures,
877
898
- unsigned receipt diagnostic-only fixtures,
@@ -1039,7 +1060,11 @@ Deliverables:
1039
1060
- deterministic reconciliation ordering,
1040
1061
- recheck of cycles when missing parents arrive,
1041
1062
- unresolved-parent table size bound,
1042
-
- per-issuer orphan count bound,
1063
+
- unauthenticated global orphan count bound,
1064
+
- unauthenticated transport-peer or source orphan count bound,
1065
+
- per-issuer orphan count bound only after issuer authentication,
1066
+
- rule that unauthenticated issuer claims cannot consume authenticated issuer
1067
+
quota,
1043
1068
- orphan lifetime and retention policy,
1044
1069
- fetch attempt and referenced-byte budgets,
1045
1070
- garbage collection rules that preserve checkpointed evidence,
@@ -1052,6 +1077,7 @@ Verification:
1052
1077
- late-parent cycle rejection tests,
1053
1078
- property tests for orphan promotion ordering,
1054
1079
- orphan table saturation tests,
1080
+
- unauthenticated orphan-quota bypass tests,
1055
1081
- explanation bundle tests for incomplete graphs.
1056
1082
1057
1083
Exit criteria:
@@ -1060,7 +1086,9 @@ Exit criteria:
1060
1086
become available,
1061
1087
- unresolved objects are staged and not causally usable until deterministic
1062
1088
promotion succeeds,
1063
-
- validly shaped missing-parent references cannot fill storage without bounds.
1089
+
- validly shaped missing-parent references cannot fill storage without bounds,
0 commit comments