Design and implement a durable (persistent) key-value store that survives process crashes and can recover its state on restart. The store must support standard get/put/delete operations. Key requirements include: (1) durability via a Write-Ahead Log (WAL) so data is not lost on crash; (2) WAL compaction to prevent unbounded disk…