|
| 1 | +# Pseudo-Test: Authority Must Be Current at Bind Time |
| 2 | +**Status:** Design-level, non-executable |
| 3 | +**Purpose:** Illustrate expected behaviour if this invariant were evaluated. |
| 4 | + |
| 5 | +--- |
| 6 | + |
| 7 | +## Scenario 1 — Authority is current at bind time |
| 8 | +**Fixture:** `valid_authority.json` |
| 9 | + |
| 10 | +**Given:** |
| 11 | +- Authority was issued at T0. |
| 12 | +- Bind attempt occurs at T1. |
| 13 | +- `T1 < valid_until`. |
| 14 | +- Authority is still checkable and not revoked. |
| 15 | + |
| 16 | +**Expectation (design-level):** |
| 17 | +This invariant would not block binding on authority-currency grounds alone. |
| 18 | + |
| 19 | +This does not mean binding is fully permitted. |
| 20 | +Other authority, scope, evidence, policy, and execution-boundary checks may still block or hold the action. |
| 21 | + |
| 22 | +No runtime enforcement is implied. |
| 23 | + |
| 24 | +--- |
| 25 | + |
| 26 | +## Scenario 2 — Authority is stale at bind time |
| 27 | +**Fixture:** `stale_authority.json` |
| 28 | + |
| 29 | +**Given:** |
| 30 | +- Authority was issued at T0. |
| 31 | +- Bind attempt occurs at T1. |
| 32 | +- `T1 > valid_until`. |
| 33 | +- Authority record exists but is no longer current. |
| 34 | + |
| 35 | +**Expectation (design-level):** |
| 36 | +This invariant would treat the authority as stale and would not support binding on authority-currency grounds. |
| 37 | + |
| 38 | +This is a design expectation only. |
| 39 | + |
| 40 | +--- |
| 41 | + |
| 42 | +## Scenario 3 — Authority exists but is not checkable |
| 43 | +(No fixture provided; conceptual only.) |
| 44 | + |
| 45 | +**Given:** |
| 46 | +- Authority record exists. |
| 47 | +- At bind time, the authority cannot be revalidated (e.g., missing, orphaned, or unverifiable). |
| 48 | + |
| 49 | +**Expectation (design-level):** |
| 50 | +This invariant would not support binding when authority cannot be checked. |
| 51 | + |
| 52 | +--- |
| 53 | + |
| 54 | +## Notes |
| 55 | +- These scenarios do not assert that the system performs these checks. |
| 56 | +- They do not define a runtime mechanism. |
| 57 | +- They serve only to illustrate the invariant’s intended meaning. |
0 commit comments