Status. Proposed design only. Nothing in this vault is DG client approval. No application, service or test has been executed; every scenario is Not executed. Fees and dates are open.
T01 · Invitation-only access and single-company membership
| Field | Value |
|---|---|
| Status | Not executed |
| Type | Balanced software |
| Layer / kind | API · database · E2E |
| Priority | P0 |
| Gates | A04, A06 |
| Build step | Step-02-Identity-Membership-Roles |
| Decisions | Q01 |
Given
A user is uninvited; another user already has active membership in A. Two valid invitations compete for a previously unassigned user.
When
Attempt uninvited registration; accept a second-company invitation; race the two invitations.
Then / oracle
No uninvited membership or second active company membership is created. One atomic outcome wins in the race; no silent transfer or company switcher appears. Denials do not change existing assignments.
Evidence required
Membership constraints and transaction outcomes; safe invitation responses; audit without invitation tokens.
Decision dependency (verbatim)
Q01: reject second membership by default; company transfer is not included.
Source: TDD rev 1.3 (PDF); machine-readable in 10-Sources/tdd-bundle/. Back to Scenario-Index · Traceability-Matrix · integration dependencies in Dependency-and-Regression-Table.