Skip to content

[finding] No page defines the org-membership tier vocabulary — delegated_admin is addressable in two places and explained in none #153

Description

@os-zhuang

Found while implementing #131 (PR #152), which adds delegated_admin to the tier list on build/automation/approvals.mdx. Out of that card's scope — #131 is one file and its job is to make the vocabulary correct, not to introduce a definition.

What is missing

After #152 lands, the four-value org-membership tier vocabulary (owner, admin, delegated_admin, member — ADR-0108, sys_member.role) appears in exactly two places in the English corpus, both of which only use it:

  • content/docs/configure/notifications.mdx:137 — as the values a role: principal selector accepts.
  • content/docs/build/automation/approvals.mdx:77 and :88 — as the values an org_membership_level approver accepts.

No page says what the tiers are, what a delegated admin may do, or where the tier is set. A reader who meets delegated_admin on either page has nowhere in the corpus to go.

Why this is more than a missing gloss

The nearest anchor a reader (or an author adding a link) would reach for is wrong:

  • configure/permissions/permission-sets.mdx:120Delegated administration — documents a permission set carrying an adminScope. That is a different mechanism from the delegated_admin membership tier.

Upstream is explicit that these must not be merged. objectstack:packages/spec/src/identity/membership-role.ts heads a section "Three facts that look like one — do not merge them", and says of the tier:

It carries NO ObjectStack authority by construction […] Reaching the endpoint is not authority to place — placement authority comes solely from a separately-granted adminScope. Role = can reach the endpoint; adminScope = what the endpoint permits.

The two are doubly opt-in and independent: someone must set the membership tier and grant an adminScope. So a reader who assumes the tier grants the delegated-administration powers documented at permission-sets#delegated-administration has formed exactly the belief the spec is built to prevent — and the corpus currently offers nothing that corrects it.

configure/users.mdx does not cover this either: its "memberships" section is about sys_business_unit_member (org-tree placement), a different object from sys_member.

Suggested shape (not a decision)

A short tier table on an identity/permissions page — most likely configure/users.mdx alongside memberships, or configure/permissions/ — giving each of the four tiers a one-line meaning, stating that the tier is a grade that decides what you can reach rather than a bundle of permissions, and explicitly distinguishing delegated_admin from an adminScope. The two consuming pages could then link to it instead of repeating a bare list.

Filing unassigned for triage; no page's current statement is false, so this is a coverage gap rather than a defect.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions