Skip to content

Role guides and access boundaries ​

Manual home · Gap register

Reading paths ​

Tenant owner ​

Provision local users and workspace policy, publish evaluation configuration, configure sources/models and supervise quality. Owner-gated settings require the owner role, even when a manager has many equivalent permissions. Tenant owner does not imply platform-console operator access.

Recommended path: ACC-01 → ACC-02 → ACC-05 → ACC-07 → ACC-08 → ACC-09 → OPS-01 → OPS-02 → OPS-05 → XFN-02.

Manager ​

Allocate reviews, resolve disputes, distribute/finalise group calibration, manage coaching/training and measure improvements. Connector mutations and owner-only settings remain owner-gated.

Recommended path: INS-01 → QMS-01 → QMS-05 → QMS-06 → QMS-08 → QMS-09 → QMS-10 → QMS-12 → LRN-03 → LRN-05 → LRN-06 → JNY-05.

Reviewer ​

Complete your assigned reviews, calibrations and independent re-reviews. Reviewer ownership is enforced; audit-trail access does not expose other reviewers’ private draft answers. Assigned-coach API updates may be available, but the local coaching page has an access mismatch (GAP-01).

Recommended path: ACC-01 → QMS-01 → QMS-02 → QMS-03 → QMS-04 → QMS-06 → QMS-07 → QMS-11 → INS-08.

Agent ​

Use permitted ingestion/evidence features, read published knowledge and complete personal learning. Personal coaching milestone and live-assist UI handoffs are incomplete for local agents (GAP-01/02); role permission alone must not be described as a working navigation path.

Recommended path: ACC-01 → ACC-10 → INT-01 → INT-02 → INT-04 → INT-05 → KNO-01 → LRN-01 → LRN-04 → LRN-07.

Viewer ​

Read permitted operational/knowledge records and personal learning where assigned. qms:read includes some APIs with writes to personal progress/views; viewer is not a universal database read-only guarantee. Intelligence navigation and management workflows remain restricted.

Recommended path: ACC-01 → ACC-10 → INT-01 → KNO-01 → LRN-01 → LRN-04 → INS-01.

Platform administrator/operator ​

Use the separate platform login to maintain tenants, system models/prices/budgets, transcriber policy and platform quality review. A platform:admin principal can satisfy many tenant permission middleware checks but is distinct from a provisioned platform operator session.

Recommended path: OPS-07 → OPS-08 → OPS-09 → ASK-03 → OPS-10.

Technical operator/integration maintainer ​

Operate ingestion, callbacks, queues, recovery and retention using the service-specific authentication boundary. “Technical operator” is a responsibility, not a built-in tenant role; obtain the exact tenant/platform/infrastructure access required for each action.

Recommended path: OPS-01 → OPS-02 → OPS-03 → OPS-04 → INT-03 → INT-06 → INT-07 → INT-08 → INT-11 → OPS-10 → OPS-11 → OPS-12.

Default local-role permission matrix ​

This matrix comes from localRolePermissions in services/api/src/identity/authenticator.ts. It describes local accounts. Auth0 principals use validated token permissions; do not infer equivalent grants from a role label. The development authenticator can grant broad explicit permissions and is unsuitable for verifying real local-role restrictions.

PermissionOwnerManagerReviewerAgentViewer
qms:readYesYesYesYesYes
interactions:writeYesYes—Yes—
artifacts:writeYesYesYesYes—
scorecards:writeYesYes———
scorecards:publishYesYes———
scorecards:assignYesYes———
audits:reviewYesYesYes——
audits:manageYesYes———
calibrations:reviewYesYesYes——
calibrations:manageYesYes———
calibrations:adjudicateYesYes———
re_reviews:reviewYesYesYes——
audit-trail:readYesYesYes——
knowledge:writeYesYes———
knowledge:publishYesYes———
members:readYesYesYesYesYes
members:manageYesYes———
teams:readYesYesYes——
teams:manageYesYes———
alerts:readYesYes———
alerts:manageYesYes———
operations:manageYesYes———
molecules:manageYesYes———
reports:manageYesYes———
usage:readYesYes———
integrations:manageYesYes———
ask:quality:reviewYesYes———
transcriptions:manageYesYes———
platform:admin—————

UI and server checks must both pass ​

SurfaceLocal UI gateServer boundary / effect
Users / teams / companiesmembers:manage / teams:manageMember/team APIs apply their own read/manage and owner safeguards.
Workspacemembers:manageRetention, timezone, transcription and several feature settings are owner-gated; review-assignment uses audits:manage.
LLM connections, usage, pricing, LLM testingOwner or platform overrideSome list/usage APIs accept members:manage or usage:read; this does not imply UI access.
Intelligence paths, coaching, reports library/insights, journeys, AI learning and live assistalerts:read or platform override, through canAccessIntelligence in local modeSeveral backing APIs accept qms:read, own-record access or another permission; see GAP-01/02/07.
Ask quality reviewask:quality:review plus Ask client gateServer Ask enablement, quality scope and opt-in/expiry checks also apply.
AI learningask:quality:review OR audits:manage, plus intelligence gateSame review permission alternatives, with tenant scope.
Transcription list/reviewtranscriptions:manageIndividual associated job detail can be qms:read; approval/cancel remain privileged.
Integration settingsintegrations:manageGeneric credential lifecycle uses this permission; most provider connector mutations additionally require owner.
Platform consoleSeparate platform authenticationOperator session and endpoint-specific validation; tenant owner role is insufficient.

These local web rules are in apps/web/src/app.tsx. Permission middleware/owner override is in services/api/src/identity/access.ts. Object ownership, independence, tenant membership, feature gates and lifecycle state still apply after a permission check succeeds. Source-specific checks appear in each workflow and API coverage row.