Status: IN
The WAL carefully serializes all mutations (append, append_batch, checkpoint, truncate) under a threading.Lock, but both callers that depend on it have no synchronization for their own shared state: the LSM tree mutates _memtable, _sstables, and _immutable_memtables without any locking or atomic swaps, and _sstables specifically is mutated by both flush (append) and compact (full replacement) concurrently — the lock protects the log but not the data structures built from it.
WAL's threading.Lock is the only concurrency protection in the storage stack, but it guards the wrong layer — callers that depend on WAL durability have no protection for their own shared state
Depends on (SL): wal-all-mutations-under-lock, lsm-no-synchronization, lsm-sstables-unprotected-mutation