Audit trail, RBAC, MFA, separation of duties, encryption are foundational architecture — not features you toggle on later. Inspection-readiness is the default state.
Every GxP-relevant action is recorded as an immutable audit entry: actor, timestamp with timezone, previous vs new values, reason, study/site/subject context. Tamper-evident storage. AI actors are distinguishable from human actors in every row.
Unique user accounts — no shared logins, ever. Eleven predefined roles with fine-grained permissions per module, per data domain, per blinding scope. Conflicting roles cannot stack on a single user. The user who creates a record cannot approve it.
AWS hosting in the US region. EC2 + RDS Postgres + S3 + CloudFront in a private VPC. Bastion-only SSH. Container images scanned on every build. Three environments (DEV / SANDBOX / PROD) with separate databases, separate keys, separate logging. Production deploys are user-authorised.
Validation deliverables are generated from the same source of truth as the code: User Requirements, Functional Requirements, Validation Plan, Risk Assessment, IQ/OQ/PQ scripts, Traceability Matrix. Refreshed on every release. Shipped under NDA.
We'll send the URS Pack, a security one-pager, and a sample audit-trail export — all under NDA, within one business day.