Auditing Portal components
Runtime responsibilities
| Area | Implementation | Responsibility |
|---|---|---|
| Backend runtime | NestJS, TypeORM, scheduled jobs | Module graph, API routes, scanner ticks, interpretation batches |
| Registry | chain, contracts, assets, applications | Defines which contracts are scanned and how contracts map to organizations and applications |
| Scanner | ScannerModule, chain scanner services | Reads registered chain data and writes raw audit rows plus scan checkpoints |
| Interpretation | AuditInterpretationRunnerService | Decrypts raw audit rows and writes normalized audit_interpretation rows |
| Identity and access | AuthModule, WorkosAuthModule, MagicAuthModule, guards | Maps authenticated users to organizations, applications, permission buckets, and route scope |
| Disclosure workflow | CasesModule, DisclosureRequestModule | Request creation, approval and close decisions, approved cases, assignments, access windows |
| Reports | ReportsModule | Report generation, listing, download, and report metadata |
| Activity log | AuditorsLogModule | Activity staging, persistence, list, export |
| UI | React and Vite | Organization owner and application workspaces |
Access model
The portal is organized around:- Organizations.
- Applications.
- Cases.
- Assignments.
- Permission buckets.
- Access windows.
Documentation
Disclosure requests
Request scoped access for a review case.
Case review
Review approved case transactions.
Reports
Generate reports and review activity logs.
Permissions and access
Understand portal identity and route enforcement.
Disclosure, cases, and reports
See the disclosure lifecycle, case storage, reports, and activity logs.
Data model
Review core PostgreSQL tables and relationships.
Indexing and interpretation
Understand scanner checkpoints, raw audit rows, and interpretation batches.
Audit UI
Review organization and application workspace routes.