| Domain | Main implementation | Responsibility |
|---|---|---|
| Privacy Pools | Soroban contract, Circom circuits, client SDK | Execute private asset movements on-chain, maintain commitment/nullifier state, verify proofs, and emit encrypted audit payloads |
| Auditing Portal | NestJS backend, PostgreSQL, scanner, interpretation worker, React Audit UI | Index registered contracts, interpret audit payloads, enforce organization/application/case access, manage disclosure workflows, reports, and activity logs |
Documentation map
System Context
Users, external systems, the privacy pool, and the auditing portal.
Architecture Map
Runtime components and the event path between them.
Privacy Pools
Soroban contract, SDK, cryptography, on-chain state, and audit event boundary.
Auditing Portal
Backend modules, data model, indexing, interpretation, identity, cases, reports, and UI.
Runtime summary
| Path | Sequence |
|---|---|
| Private transaction execution | Application -> SDK -> wallet -> PrivacyPoolsContract.transact |
| Audit event handoff | PrivacyPoolsContract.transact -> AuditEncodedDigest -> Stellar RPC |
| Indexing and interpretation | Stellar RPC -> scanner -> audit -> interpretation worker -> audit_interpretation |
| Portal review | Audit UI -> backend API -> scoped cases, reports, and auditors_log |
Boundaries
| Boundary | Implementation | Responsibility |
|---|---|---|
| External application | Reference app or partner integration | End-user wallet flow, SDK initialization, proof generation, transaction submission |
| SDK and wallet | @auditable/privacy-pool-zk-sdk plus Stellar wallet | Coin construction, witness preparation, proof generation, Soroban serialization, signing |
| Soroban privacy-pool contract | PrivacyPoolsContract | Proof verification, root/nullifier checks, commitment insertion, token movement, audit event emission |
| Backend scanner and interpreter | ScannerModule, StellarLedgerScannerService, AuditInterpretationRunnerService | Registered-contract scanning, raw audit upsert, decryption, normalized interpretation rows |
| Audit API and UI | NestJS controllers/guards plus React/Vite UI | Authenticated access, disclosure cases, transaction review, reports, activity logs |
| PostgreSQL | TypeORM entities and migrations | Registry, audit, interpretation, access, workflow, report, and log storage |
Implementation repositories
| Area | Repository |
|---|---|
| Backend, scanner, API, PostgreSQL entities | stellar-privacy-layer-backend |
| Audit UI | stellar-audit-ui |
| Soroban contract, circuits, SDK | stellar-privacy-layer-contracts |