{"content":"Dev journal — merged fix/dsh-zstd-migration-race into main (merge 80a6afbc, --no-ff). The concurrency fix for the zstd session-root migration is now on main: kernelEnsureChain only serializes kernel boots per provider slot while all slots share one sessionRoot, so parallel first-launch warmups could race two migration passes and the losing rollback left a mixed-encoding root the 0.1.2 persistence backend rejects until an app restart. The module-level in-flight dedup now collapses concurrent callers onto one pass, and the final-unlink ENOENT is tolerated (external writer, identical bytes) with the converged artifact leaving the rollback set. Post-merge verification on main: all four persistence-zstd checks green including the concurrent-collapsing unit, and the two-kernel parallel ensureRuntime E2E green. Branch and worktree cleaned up after confirmed full absorption.","contentType":"text/plain;utf-8","attachments":[],"quotePin":""}