Repository navigation
Commit 8f5b14b
committed
docs(permissions): add the business-unit write as the fourth withdrawal moment
`sharing-rules.mdx` enumerated withdrawal as happening at exactly THREE
moments, in a definitive table. This change adds a fourth — a
`sys_business_unit` / `sys_business_unit_member` write — so an author
reasoning about revocation timing from that table was reading an incomplete
list, on the one topic the change is about.
The new row states the asymmetry rather than flattening it: recipients the
rule no longer reaches are revoked before the write returns, while the grant
direction is queued and coalesced per rule. It also scopes itself to the two
recipient kinds whose expansion reads the BU graph, so nobody infers that
every rule now recomputes on every business-unit write.
Deliberately unchanged, both checked rather than assumed:
- The "always recoverable from the API surface" paragraph below the table.
Its subject is an over-granting RULE recovered by switching it off or
deleting it — the rule-write axis, which this change does not touch — so it
stays exactly true, and its "not on the next time somebody happens to touch
the record" phrasing is the same line the new row echoes.
- The recipient table's `business_unit` row ("exactly that business unit (no
subtree)"). That states the DECLARED contract, matching the spec enum and
the ADR-0105 lint red-line. The runtime diverges by walking the subtree for
both BU kinds, which is filed as #7807 — rewriting the doc to match would
document an over-grant as intended behaviour. The new row is consistent with
it either way: a unit-only expansion still reads `sys_business_unit` for its
own active flag and `sys_business_unit_member` for its members, so it needs
the recompute under both readings.
`sharing-service.mdx` says nothing about recipient kinds or the BU graph;
absent is not wrong, so it is left alone.
Co-Authored-By: Claude <noreply@anthropic.com>1 parent 060617d commit 8f5b14b
1 file changed
Lines changed: 2 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
166 | 166 | | |
167 | 167 | | |
168 | 168 | | |
169 | | - | |
| 169 | + | |
170 | 170 | | |
171 | 171 | | |
172 | 172 | | |
173 | 173 | | |
174 | 174 | | |
| 175 | + | |
175 | 176 | | |
176 | 177 | | |
177 | 178 | | |
| |||
0 commit comments