Repository navigation
Commit 6b2cdbd
committed
fix(backend): stage the tenant allowlist, correct what the flags do
Sets UNATTENDED_ENABLED_TENANTS and SAFE_WRITE_REQUIRED_TENANTS to
["metamind"] for Phase 3, and fixes the documentation around them,
which was wrong in three places.
SAFE_WRITE_REQUIRED_TENANTS is NOT the safe-write control. Its check
sits on the legacy command path, reached only when the caller omits
`understudy-command-contract: 2` AND the extension is protocol-1.
@understudy/connector has sent that header unconditionally since
0.5.0, so it cannot fire for a consumer on a current connector. The
protection it is named for is already unconditional in dispatchV2,
which refuses a protocol-1 write with the identical 426 for every
tenant. Recording its silence as an exercised safety control would
have enshrined a no-op in an evidence-gated rollout.
README.md required the allowlist to stay empty until acceptance
passed. The acceptance suite creates unattended sessions, so it can
never pass against an empty allowlist — the requirement was
unsatisfiable. apps/backend/README.md sanctioned ["*"] after rollout,
which the runbook rejects and which admits every tenant holding a
caller token.
stub-consumer.mjs posted `{}` to /v1/sessions, which is an UNATTENDED
request that 400s on the schema. It has not been able to verify the
attended path since attended creation became "no body", so it must
not be reached for as a regression check.
Also records for Phase 4 that the sweep's quarantine gate keys on
"understudy answered", not on refusal-ness — so a persistent 404 or
426 changes no state for 24 hours and then starts abandoning leases.1 parent 959e246 commit 6b2cdbd
5 files changed
Lines changed: 67 additions & 15 deletions
File tree
- apps/backend
- scripts
- docs
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
78 | 78 | | |
79 | 79 | | |
80 | 80 | | |
81 | | - | |
| 81 | + | |
82 | 82 | | |
83 | 83 | | |
84 | 84 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
97 | 97 | | |
98 | 98 | | |
99 | 99 | | |
100 | | - | |
| 100 | + | |
101 | 101 | | |
102 | | - | |
103 | | - | |
| 102 | + | |
| 103 | + | |
104 | 104 | | |
105 | 105 | | |
106 | | - | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
107 | 113 | | |
108 | 114 | | |
109 | 115 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
65 | 65 | | |
66 | 66 | | |
67 | 67 | | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
68 | 72 | | |
69 | 73 | | |
70 | 74 | | |
71 | 75 | | |
72 | | - | |
| 76 | + | |
73 | 77 | | |
74 | 78 | | |
75 | | - | |
| 79 | + | |
76 | 80 | | |
77 | 81 | | |
78 | 82 | | |
| |||
134 | 138 | | |
135 | 139 | | |
136 | 140 | | |
137 | | - | |
| 141 | + | |
138 | 142 | | |
139 | 143 | | |
140 | 144 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
91 | 91 | | |
92 | 92 | | |
93 | 93 | | |
94 | | - | |
95 | | - | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
96 | 109 | | |
97 | 110 | | |
98 | 111 | | |
| |||
0 commit comments