Skip to content

docs: name the full share recipient set in the actions and record-access tables - #110

Merged
os-elon merged 1 commit into
mainfrom
claude/issue-91-share-recipient-vocabulary
Aug 18, 2026
Merged

docs: name the full share recipient set in the actions and record-access tables#110
os-elon merged 1 commit into
mainfrom
claude/issue-91-share-recipient-vocabulary

Conversation

@os-elon

Copy link
Copy Markdown
Collaborator

Fixes#91

Two table cells named the record-share recipient kinds with retired or incomplete vocabulary. Both now use the enumeration content/docs/configure/permissions/record-access.mdx already uses further down the same page.

FileBeforeAfter
content/docs/build/interface/actions.mdx:170Direct share with a user / roleDirect share with a user, team, position, business unit, or a unit and its subordinates
content/docs/configure/permissions/record-access.mdx:15Grant access to a specific user, position, or unit (with subordinates)Grant access to a specific user, team, position, business unit, or a unit and its subordinates

Source of truth

ShareRecipientType in packages/spec/src/security/sharing.zod.ts on objectstack@origin/main is exactly:

export const ShareRecipientType = z.enum([
'user',
'team',
'position',
'unit_and_subordinates',
'business_unit',
]);

role is not a member. The role -> position rename is ADR-0090 D3, recorded in docs/adr/0086 ("Renamed role->position (ADR-0090 D3); 'role' is now a reserved-forbidden word"), docs/adr/0087:378 and docs/adr/0090:176, and on this site already at content/docs/resources/changelog.mdx:212 and :260. The schema's own comment block records the sibling group -> team rename and the guest / queue exclusions, but not the role rename — that lives in the ADRs.

Wording: why the full five, not the four the triage comment sketched

Triage suggested "user, team, position, or business unit" for the actions.mdx cell. Both cells name all five kinds instead, verbatim from the page's own sentence at record-access.mdx:66 ("a user, team, position, business unit, or a unit and its subordinates").

The reason is that the second half of this card is the incomplete-subset defect: record-access.mdx:15 silently dropped two kinds. Fixing that row while shipping a four-of-five enumeration one page over would re-file the same defect in the file being fixed. The full list costs one line in an unaligned markdown table, and it makes both cells agree with :66 rather than with a third phrasing.

Not touched

content/docs/index.mdx:43 — triage excluded it: comparative prose about the Salesforce / NetSuite product category, not an authoring instruction.

Corpus grep

Triage's premise that these were the last English pages teaching the retired spelling does not hold: reference/cel.mdx:69 and :124 document and demonstrate os.user.roles, a key EvalUser does not have (it is positions), and configure/notifications.mdx:76 / :83 plus resources/glossary.mdx:161 still name role as a principal kind. Filed unassigned as #109. group as a recipient kind has zero English hits.

Verification at dcb25ee

GateResult
pnpm install --frozen-lockfileexit 0
pnpm turbo run type-check build test --continue --forceexit 0 — 2 tasks, cache bypassed (--force, no FULL TURBO); test matches no task in this repo, which is #72
node .github/scripts/check-translations.mjsexit 0, gate passed
node .github/scripts/check-translation-ownership.mjs --actor os-elon --files changed.txtexit 0 — 0 translation artifacts, 2 other files
node .github/scripts/check-translation-output.mjs --self-testexit 0 — 20 cases, every rule demonstrated able to fail
node .github/scripts/check-translation-output.mjs --files changed.txtexit 0 — 127 pre-existing findings reported, none from this diff

English only; no locale sibling touched. Both pages now have stale *.locale.mdx siblings, which is the designed outcome per AGENTS.md.


Generated by Claude Code

…ess tables
The built-in `share` row said "a user / role"; `role` is retired vocabulary
(ADR-0090 D3 renamed the sharing recipient `role` to `position`). The
record-access mechanisms row named three of the five recipient kinds. Both
now use the enumeration record-access.mdx already uses further down.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Yaqu7kmKZM3tRPd9Y4xivo
@os-elon
os-elon marked this pull request as ready for review August 18, 2026 15:49
@os-elon
os-elon merged commit 9794edc into mainAug 18, 2026
2 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

actions.mdx built-in share action names role as a recipient kind — same retired vocabulary as #80

2 participants

@os-elon@claude