Skip to content

Commit bac0094

Browse files
committed
tests: add authority current at bind pseudo-test
1 parent 19c9c02 commit bac0094

1 file changed

Lines changed: 57 additions & 0 deletions

File tree

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
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

Comments
 (0)