Part of #14496 (maintainer ruling 2026-09-02, 「ok」 to option 2: mirror the open half, do not move files). Filed by the director seat, session session_01WXyGTWPbbreqXow7Z2pZCk. docs/adr/** is a governed surface: draft PR, human merge. Clause-②: no. domain:* is triage's.
What to write
A new local ADR (next free number) that states, as this repo enforces them, the decisions of cloud docs/adr/0081-org-management-open-basics-enterprise-organizations.md (Status: Accepted, founder-decided in-session, 2026-07-09) whose mechanism is open code. From the cloud record's own headings, the open half is:
- D1 basic "add a teammate" stays OPEN and always goes through better-auth invitations (
sys_invitation, the invite entry toolbar);
- D3 the in-shell surface is the org RECORD page reached by a
{current_org_id} nav deep-link, opening on tab-0 Members (cited today from sys-member.object.ts:47, invite-entry-toolbar.test.ts:4); the render side lives in objectui — state the contract this repo's metadata declares, cite objectui for the renderer;
- D4 control-plane roster reads:
sys_member becomes org-scoped (and the org-capability gate sys-user.object.ts:59 cites as "ADR-0081 D1").
Stays in cloud, cited as cloud ADR-0081: D2 multi-org machinery closes into @objectstack/organizations (enterprise), the non-goals and commercial consequences.
Shape (copy docs/adr/0079-record-display-name.md)
## Provenance — read this before citing this file first (original decision in objectstack-ai/cloud ADR-0081, 2026-07-09; the enterprise half stays there; this file written from the cloud record and the implementing code — packages/platform-objects/src/identity/sys-member.object.ts, sys-user.object.ts, sys-invitation*, the org-scoping service gate). Decisions restated with code anchors; ⛔ nothing decided that the cloud record did not decide. Cross-check against this repo's own ADR-0093 (tenancy mode and membership lifecycle) and ADR-0105 (group tenancy posture, which already links out to cloud) so the mirror does not restate what a local record already decides — where a local record already covers a point, cite it instead of duplicating.
Follow-ups the accepting seat files (not this card)
Refs: #14496 · #14361 · cloud ADR-0081 · ADR-0093 · ADR-0105 · ADR-0079.
Part of #14496 (maintainer ruling 2026-09-02, 「ok」 to option 2: mirror the open half, do not move files). Filed by the director seat, session
session_01WXyGTWPbbreqXow7Z2pZCk.docs/adr/**is a governed surface: draft PR, human merge. Clause-②: no.domain:*is triage's.What to write
A new local ADR (next free number) that states, as this repo enforces them, the decisions of cloud
docs/adr/0081-org-management-open-basics-enterprise-organizations.md(Status: Accepted, founder-decided in-session, 2026-07-09) whose mechanism is open code. From the cloud record's own headings, the open half is:sys_invitation, the invite entry toolbar);{current_org_id}nav deep-link, opening on tab-0 Members (cited today fromsys-member.object.ts:47,invite-entry-toolbar.test.ts:4); the render side lives in objectui — state the contract this repo's metadata declares, cite objectui for the renderer;sys_memberbecomes org-scoped (and the org-capability gatesys-user.object.ts:59cites as "ADR-0081 D1").Stays in cloud, cited as
cloud ADR-0081: D2 multi-org machinery closes into@objectstack/organizations(enterprise), the non-goals and commercial consequences.Shape (copy
docs/adr/0079-record-display-name.md)## Provenance — read this before citing this filefirst (original decision inobjectstack-ai/cloudADR-0081, 2026-07-09; the enterprise half stays there; this file written from the cloud record and the implementing code —packages/platform-objects/src/identity/sys-member.object.ts,sys-user.object.ts,sys-invitation*, the org-scoping service gate). Decisions restated with code anchors; ⛔ nothing decided that the cloud record did not decide. Cross-check against this repo's own ADR-0093 (tenancy mode and membership lifecycle) and ADR-0105 (group tenancy posture, which already links out to cloud) so the mirror does not restate what a local record already decides — where a local record already covers a point, cite it instead of duplicating.Follow-ups the accepting seat files (not this card)
ADR-0081citations (≥ 3 measured; the dev reads each —packages/platform-objects/src/identity/**,plugin-auth) to the new number; ⛔ not done here.Refs: #14496 · #14361 · cloud ADR-0081 · ADR-0093 · ADR-0105 · ADR-0079.