Arcane separates transaction execution from disclosure review. Applications execute private transactions directly against the privacy-pool contract. The Auditing Portal does not sit in the transaction path. It observes registered contract events, interprets encrypted audit payloads, and exposes reviewed data through permissioned workflows.

End-to-end flow

StepComponentResult
1ApplicationInitializes the privacy-pool SDK and prepares transaction inputs
2WalletSigns the Soroban transaction submitted by the application
3Soroban privacy-pool contractVerifies proof bytes and public signals, updates commitment/nullifier/root state, and performs token movement
4Soroban event streamEmits AuditEncodedDigest with the encrypted audit payload
5Backend scannerReads registered contract events from Stellar RPC and writes raw audit rows
6Interpretation workerDecrypts and normalizes audit payloads into audit_interpretation rows
7Auditing PortalEnforces organization, application, case, and permission scope for review and reporting

Disclosure model

The platform is built around scoped disclosure rather than global visibility.
LayerVisibility model
Public ledgerContract calls, events, commitments, nullifiers, roots, and public transaction metadata
Encrypted audit payloadEmitted on-chain but readable only with the registered contract decoding key
Backend interpretationStored in PostgreSQL after scanner and interpretation workers process registered contracts
Portal accessRestricted by organization, application, case assignment, permissions, and access windows
Reports and logsGenerated and downloaded only through explicit report permissions and logged activity

Main boundaries

BoundaryWhat crosses it
Application to contractProof bytes, public signals, encrypted audit payload, wallet-signed transaction
Contract to ledgerContract state updates and AuditEncodedDigest event
Ledger to backendRegistered contract events read through Stellar RPC
Backend to portalScoped API responses for authenticated users
Portal to auditorCase-scoped review, reports, downloads, and activity-log records

Operational split

DomainCan be used independently?Notes
Privacy PoolsYesApplications can use the on-chain privacy-pool contract and SDK without the portal being in the transaction path
Auditing PortalYes, with registered data sourcesThe portal consumes indexed and interpreted audit data; it is organized around applications, cases, reports, and user access
The two domains are connected by the audit event boundary: the privacy pool emits data; the backend indexes and interprets it for scoped disclosure.

Technical references

TopicPage
System-level actors and external systemsSystem Context
Runtime componentsArchitecture Map
Privacy-pool implementationPrivacy Pools overview
Backend indexing pathIndexing and Interpretation
Disclosure workflowDisclosure, Cases, and Reports