Contract: Actor identity
Status
Draft.
Purpose
This contract defines the minimum identity guarantees for BooksPlus actors.
Contract
Every protected BooksPlus action must be attributable to a BooksPlus actor.
A BooksPlus actor must represent one of:
- a mapped local operating system user;
- an explicitly defined application user;
- a service identity;
- a temporary support identity.
The canonical actor types are:
MappedOperatingSystemUser;ApplicationUser;ServiceIdentity;SupportIdentity.
Developer and test identities must use one of these actor types. BooksPlus must not add a special Developer actor type that bypasses normal authorization.
Required fields
A BooksPlus actor must include:
- stable actor identifier;
- display name;
- actor type;
- status;
- created timestamp;
- created by actor;
- disabled or retired timestamp when applicable;
- disabled or retired by actor when applicable.
Rules
- Actors with historical activity must not be deleted.
- Actors may be active, disabled, or retired.
- Retired actors must remain visible in historical audit trails.
- Service identities must be clearly distinguishable from human users.
- Support identities must be temporary and auditable.
- Protected actions may be performed only by active actors.
- Actor authorization must be evaluated with company context as defined by the Company Identity and Context contract when the action affects company data or company configuration.
- Development and test seed actors must be unavailable in production company data unless an explicit development or test mode is active.
Acceptance criteria
- A posted accounting entry records the responsible actor.
- A security audit event records the responsible actor.
- A retired actor remains visible in historical reports.
- Attempting to delete an actor with historical activity is blocked or converted to retirement.
- A disabled or retired actor cannot perform a protected action.
- A developer test actor uses ordinary actor identity, permission, policy, and audit behavior.