Skip to content

Commit 7112282

Browse files
committed
docs(plugin-security): the delegated-admin gate's caller organization under single is the Default Organization
Comment only. Since ADR-0131 C1 every session on a stock single boot carries the Default Organization as its active organization, so the docblock no longer says the caller organization is undefined there. Claude-Session: https://claude.ai/code/session_01WkL6Eijt432S1Y7ekb6ovQ Co-authored-by: Claude <noreply@anthropic.com>
1 parent 825d19a commit 7112282

1 file changed

Lines changed: 6 additions & 4 deletions

File tree

‎packages/plugins/plugin-security/src/delegated-admin-gate.ts‎

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -82,9 +82,11 @@ const DEFAULT_DELEGATION_CEILING_MS = 30 * 24 * 60 * 60 * 1000;
8282
* any other organization pairs an authority minted in one tenant with a tree
8383
* owned by another — which is what an unscoped by-name read did.
8484
*
85-
* Undefined for a `single`-posture caller, and for any context carrying no
86-
* organization at all: the organization-less surface that posture correctly
87-
* has, where a by-name anchor is unambiguous and nothing here changes.
85+
* Under the `single` posture this is the Default Organization: since ADR-0131
86+
* C1 it exists from boot, and every session on a stock `single` deployment —
87+
* the administrator's and a delegate's alike — carries it as its active
88+
* organization. Undefined only for a context carrying no organization at all,
89+
* where a by-name anchor is read organization-less and nothing here changes.
8890
*
8991
* Under the `group` posture (ADR-0105 D2) this is the ACTIVE organization, not
9092
* the caller's whole membership set. That is the narrower of the two, which is
@@ -102,7 +104,7 @@ function callerOrganizationId(context: any): string | undefined {
102104
* The runtime resolver's own answer (`resolveAuthzContext` step 4, in
103105
* `@objectstack/core`): a holding stamped with a DIFFERENT organization grants
104106
* nothing there; an organization-less holding grants in every organization;
105-
* `organizationId` undefined (a `single`-posture caller) drops nothing.
107+
* `organizationId` undefined (a context carrying no organization) drops nothing.
106108
*
107109
* Every holding the gate reasons about goes through this, because
108110
* `sys_user_position.position` is a position NAME and `sys_position.name` is

0 commit comments

Comments
 (0)