The pool
The program keeps every account's funds in vaults it controls and makes every swap from them, so on chain there is one trader.
Vaults and notes
Each mint has one program-held vault, with SOL kept as wSOL. Ownership is tracked as notes, the leaves of a single on-chain Poseidon tree:
cost is the SOL those tokens cost. Spending a note publishes its nullifier and nothing more: the chain learns that a note was spent, not which one, and not whose.
Funding
A deposit moves SOL from a wallet into the SOL vault and adds a SOL note whose cost equals the amount. An account's first deposit also opens its ledger at that slot, once. The chain shows the sending wallet and the amount; it doesn't show which account received it.
Withdrawing
To take SOL out, the browser proves it owns SOL notes and the program pays the chosen address from the SOL vault, typically an address with no history. A withdrawal costs only the relayer fee and leaves the ledger as it is. SOL is the only thing that enters or leaves; tokens live inside the account between buy and sell.