Skip to content

glossary "Record Share" names two recipient kinds that no longer exist (role, group) #80

Description

@os-zhuang

Found while working #78. Out of that card's scope — it is pre-17.0 vocabulary drift (ADR-0090 / #52 era), not a 17.0 alignment defect — so it is filed rather than folded in.

content/docs/resources/glossary.mdx:180-182:

Record Share

A direct grant of access to a specific record for a specific user /
role / group. Stored as sys_record_share rows. Different from
sharing rules (declarative criteria).

Neither role nor group is a recipient kind. ShareRecipientType in packages/spec/src/security/sharing.zod.ts on objectstack@origin/main is exactly:

'user', 'team', 'position', 'unit_and_subordinates', 'business_unit'

and the file records both renames explicitly — roleposition (ADR-0090 D3, the whole Roles-and-Profiles-converge-on-Positions change) and, in the schema's own words, "the group / guest recipients (group renamed → team; anonymous access is the public-form grant / share-link surface)".

Cost of leaving it: a reader who takes the glossary at its word authors recipient_type: 'role' or 'group' and it matches nothing. The glossary is also the page a newcomer reads first, so it teaches the retired vocabulary before any other page can correct it.

Suggested fix — one line, plus a check of whether the entry should name the two recipient kinds the sentence omits entirely (unit_and_subordinates, business_unit):

A direct grant of access to a specific record for a specific user, team,
position, or business unit (optionally including its subordinate units).
Stored as `sys_record_share` rows.

Worth grepping the rest of content/docs/ for the same two words while in there — this scan only covered the glossary.

Verified against: packages/spec/src/security/sharing.zod.ts (ShareRecipientType and the removal note above it) on objectstack@origin/main.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions