# 07 — Add isolated concurrent local Hot KV State Status: ready-for-agent ## Mandatory fresh-session context - Read [RALPH-CONTEXT.md](../RALPH-CONTEXT.md) completely before changing code. - This issue is `DGR-007` in [prd.json](../prd.json). - Read the evidence README for every dependency listed below. - Inspect current code and `git status`; historical text and previous agent claims are not evidence. ## Description As a client, I need concurrent Route Sessions to retain independent per-Shard cache so that one request cannot clear or corrupt another. ## Expected durable outputs - Concurrent local KV/session manager - Isolation, eviction, cancellation and cleanup tests - evidence/DGR-007/README.md ## Acceptance criteria - [ ] Map `(Route Session ID, route epoch)` to an isolated llama sequence or bounded context. - [ ] Allocate KV only for owned layers. - [ ] Support prefill append, decode append, truncate, release, TTL/LRU eviction, and explicit cache-miss response. - [ ] Reject stale epochs and incompatible cache recipes. - [ ] At least four concurrent sessions on a small model complete without token or KV cross-talk. - [ ] Cancellation/release of one session leaves other sessions intact and memory returns to the configured budget. - [ ] Targeted pytest tests pass - [ ] python -m compileall packages tests passes for Python changes - [ ] git diff --check passes - [ ] Default tests remain deterministic, model-download-free, API-credit-free, and GPU-free - [ ] Full deterministic pytest -q passes, or the exact pre-existing unrelated failure is recorded with a clean-tree reproduction - [ ] Pinned native C++ target builds and focused CTest/protocol tests pass where native code is touched - [ ] llama.cpp patch stack applies cleanly to the exact pinned commit where patch code is touched - [ ] Read .scratch/distributed-gguf-runtime/RALPH-CONTEXT.md and this story issue completely before changing code - [ ] Read and verify every dependency evidence README before relying on dependency behavior - [ ] Preserve all pre-existing working-tree changes and stage only files belonging to this story - [ ] Write .scratch/distributed-gguf-runtime/evidence/DGR-007/README.md with files changed, exact commands and real results, limitations, compatibility notes, and dependent-story handoff - [ ] Update only this story issue to Status: done after every acceptance criterion and quality gate passes ## Dependency handoff - `DGR-006` and `DGR-019` must have `passes: true`; read both evidence READMEs and verify their referenced files/commands. ## Finish contract - Create the task evidence directory and durable handoff required above. - Preserve real failures and blockers; never fabricate benchmark, model, test or hardware output. - Change this issue to `Status: done` only after all criteria pass. - Emit `COMPLETE` only after the evidence handoff exists. ## References - [Ralph execution context](../RALPH-CONTEXT.md) - [PRD](../PRD.md) - [Implementation strategy](../implementation-strategy.md) - [Current architecture](../architecture.md) - [Architecture decision](../ADR-0020-distributed-gguf-runtime.md)