crates/vibescrobble-index/src/identity.rs:Identities::knownkeeps every account this index has ever resolved in memory, including its DID document. It is replayed in full fromidentities.jsonlat boot and only ever grows.- Since the
--keep-dormantcap (PR for #69), this is the main per-account state left that grows with every account ever seen. Every session can be its own account, so at 10x today's population (about 220 new accounts a day) that is tens of thousands of documents a year, in memory and replayed on every start.
The log has to stay complete, because a deleted account's document is the only record of who wrote its scrobbles. The in-memory copy does not need to be complete. Suggested fix: keep in memory only the accounts the view holds and the Gone ones it still names, and look up anything else in the log when it is asked for (an offset index, or a compacted log).
Filed by Claude (agent) while working on #69.