# In progress โ€” iteration 22: db-bench, the measurement backbone > **Status: ๐Ÿ”„ in progress** (spec + plan approved 2026-08-21) โ€” second > slice of the concurrency chain **โœ… stage 3 โ†’ 22 โ†’ 31 โ†’ 24 โ†’ 23 โ†’ 32**. > Board: [../stories/00-status.md](../stories/00-status.md). > > One marker doc per active slice; deleted when the slice lands. ## What Execute [`superpowers/plans/2026-08-21-db-bench.md`](../superpowers/plans/2026-08-21-db-bench.md) (spec: [`2026-08-21-db-bench-design.md`](../superpowers/specs/2026-08-21-db-bench-design.md), approved): the `time.ticks` ยตs builtin, the `docs/examples/db-bench` sample (seed/read/query/write/mix/msgrate/verify), the campaign driver with relative gates vs `bench/baseline.json`, the restart proof and kill -9 battery at both shard counts, and the first committed baseline. ## Why now Nothing performance-shaped is sourced until this runs โ€” and the arc owes its before/after. One campaign now covers single- AND multi-shard honestly (stage 3 landed), prices the RPC, and produces the mutex-inbox number stage-2's deviation waits on. ## Story - [22 โ€” durability, throughput, scale](../stories/language-runtime-database/in-progress/22-durability-throughput-scale.md) ## Definition of done - Plan Tasks 1โ€“6 checked; `just db-bench` exit 0 twice in a row; gate-bites smoke proven (doctored results FAIL); baseline committed with rationale; arc delta + msgrate copied into story 8; full battery green. - Story 22 โ†’ done/; board standup written from the actual numbers; this file deleted. Next slice: iteration 31 (actor lifecycle).