Thanks to visit codestin.com
Credit goes to github.com

Skip to content

docs: document configurable default member roles experiment - #26702

Closed
Emyrk wants to merge 2 commits into
mainfrom
gateway-accounts/docs-default-member-roles
Closed

docs: document configurable default member roles experiment#26702
Emyrk wants to merge 2 commits into
mainfrom
gateway-accounts/docs-default-member-roles

Conversation

@Emyrk

@Emyrk Emyrk commented Jun 25, 2026

Copy link
Copy Markdown
Member

Stacked on #26699 (gateway-accounts/experiment-safe).

Documents the minimum-implicit-member experiment under the configurable per-org default_org_member_roles setting introduced by #25994. Adds the section to the existing Organizations admin page (rather than a standalone file) since it's an org-scoped knob, with a cross-link from Groups and Roles and the auto-generated Early Access entry in feature-stages.md.

Changes

  • docs/admin/users/organizations.md: new Configurable default member roles section covering what default_org_member_roles does, how to enable the experiment, how to PATCH the org via the API, and the limitations (built-in role names only, read-only in CLI and UI today, deployment-wide RBAC impact).
  • docs/admin/users/groups-roles.md: short cross-link near the existing implicit Member sentence pointing to the new section.
  • docs/install/releases/feature-stages.md: regenerated Early Access table via scripts/release/docs_update_feature_stages.sh (table-formatter normalized; only the minimum-implicit-member row is added).
Verification
  • make lint/emdash clean.
  • pnpm run lint-docs clean (0 errors).
  • pnpm run format-docs no further changes after edits.
  • Anchor targets verified against docs/reference/api/organizations.md#update-organization, docs/admin/security/audit-logs.md, and the new heading #configurable-default-member-roles.
  • Default value ["organization-workspace-access"] confirmed against rbac.DefaultOrgMemberRoles() and migrations/000516_org_default_member_roles.up.sql.
  • 403 Forbidden behavior confirmed against enterprise/coderd/organizations.go (rejects non-default values without the experiment).
  • Role list confirmed against coderd/rbac/roles.go org role constants.
Why a section, not a new page

Per docs/.style/content-guidelines.md, safe experiments / Early Access features need at least one docs page covering enable/what/limits. The setting is org-scoped configuration that org admins reach through the Organizations page, so adding a section there avoids a tiny single-purpose file and keeps the configurable knob next to its parent concept. The Early Access callout flags the experiment dependency at the top of the section.

Refs #25936 (PLAT-217).


Coder Agents on behalf of @Emyrk.

Promotes the minimum-implicit-member experiment (Gateway Accounts) from
the unsafe set into ExperimentsSafe so it is enabled via
--experimental='*' and exposed through the AvailableExperiments API.

This corresponds to the early access bar in
docs/.style/content-guidelines.md, where docs follow safe experiments.

Refs #25936 (PLAT-217).
@github-actions

Copy link
Copy Markdown
Contributor

Docs preview

📖 View docs preview for docs/admin/users/groups-roles.md

@Emyrk
Emyrk force-pushed the gateway-accounts/docs-default-member-roles branch 6 times, most recently from 6faaf82 to ef918bd Compare June 25, 2026 15:07
@Emyrk
Emyrk marked this pull request as ready for review June 25, 2026 15:58
@Emyrk
Emyrk requested a review from bartekgatzcoder June 25, 2026 15:58
Base automatically changed from gateway-accounts/experiment-safe to main June 25, 2026 15:58
@coderagents

coderagents Bot commented Jun 25, 2026

Copy link
Copy Markdown
Contributor

Documentation Check

Updates Needed

  • docs/admin/users/organizations.md - The new "Configurable default member roles" section now includes dashboard navigation instructions for configuring default_org_member_roles (Admin settings > Organizations > Roles > Default Roles). Previous feedback addressed.

What Looks Good

  • Cross-link from docs/admin/users/groups-roles.md to the new section is correct and anchor target is valid.
  • docs/install/releases/feature-stages.md Early Access table entry matches the code description exactly.
  • > [!NOTE] callout format is correct. No emdash/endash violations.
  • Page already has (Premium) title suffix and "state": ["premium"] in manifest.json; no changes needed.
  • Role names in the docs match coderd/rbac/roles.go constants exactly.
  • Default value ["organization-workspace-access"] matches DefaultOrgMemberRoles() in code.
  • Section-in-existing-page approach is compliant with content guidelines for safe experiments.

Automated review via Coder Agents

Adds a Configurable default member roles section to the Organizations
admin page covering what the setting does, how to enable the
minimum-implicit-member experiment, how to PATCH the org via the API,
and the limitations (built-in roles only, read-only in CLI and UI,
deployment-wide RBAC impact).

Cross-links from the Groups and Roles page near the implicit Member
mention.

Regenerates the Early Access table in feature-stages.md from the
ExperimentsSafe entry, via scripts/release/docs_update_feature_stages.sh.

Refs #25936.
@Emyrk
Emyrk force-pushed the gateway-accounts/docs-default-member-roles branch from ef918bd to e7ed607 Compare June 25, 2026 21:15
@github-actions github-actions Bot added the stale This issue is like stale bread. label Jul 3, 2026
@github-actions github-actions Bot closed this Jul 7, 2026
@linear-code

linear-code Bot commented Jul 7, 2026

Copy link
Copy Markdown

DOCS-464

Emyrk added a commit that referenced this pull request Aug 3, 2026
Frontend (Default Roles surface):
- Correct the Default Roles copy: changes apply to existing members as
  well as new ones, and the internal term 'floor' is gone from all
  user-facing strings (CRF-11, CRF-12).
- Show the Default Roles section read-only to viewers without
  editSettings; only the Edit button is permission-gated. Also disables
  Edit until the org roles query resolves (CRF-24, CRF-25, CRF-26).
- Roles a member holds explicitly stay selectable in the member role
  dialog even when implied by org defaults, so overlapping explicit
  grants can be removed (CRF-13).
- Rename stories named after the deleted prop (CRF-8).

RBAC:
- Restore prose explaining that organization-member grants no workspace
  access and define the floor/workspace-access split where it lives
  (CRF-14, CRF-27, CRF-5).
- Unexport OrgWorkspaceAccessMemberPerms (CRF-18).
- Rework the member-roles test to assert against the registered
  organization-workspace-access role instead of a witness derived from
  itself; use slices.ContainsFunc; drop the no-op reload pair
  (CRF-17, CRF-29, CRF-30, CRF-32, CRF-6).
- coderd.go builds the full RoleOptions struct and compares to the zero
  value, so new fields cannot be silently ignored (CRF-20).

Tests:
- Remove the no-op ReloadBuiltinRoles(nil) pairs from the license
  usercount tests and parallelize them; rename the MinimumMember
  subtest; drop the orphaned bench comment (CRF-1, CRF-7, CRF-4).

Docs:
- Add a 'Default member roles' section to the organizations admin page
  and cross-link it from groups-roles, adapted for GA from the closed
  docs PR #26702 (CRF-3).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

stale This issue is like stale bread.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant