# DGR-031: Introduce the project-owned `ShardEngine` interface - **Status / triage:** specification only; `ready-for-agent`; `passes: false` - **Execution mode:** `AFK` - **Milestone:** `M1` - **Dependencies:** `DGR-021`, `DGR-025` - **Blocks (derived):** `DGR-032`, `DGR-034`, `DGR-035`, `DGR-037` - **Labels:** `area:engine`, `type:architecture`, `priority:p0`, `ready-for-agent` - **Evidence class:** `model-free` - **Hardware:** `none` - **Model:** `generic` - **Upstream:** `no` ## Objective / description Fresh Ralph session: read `.scratch/distributed-gguf-runtime/RALPH-CONTEXT.md`, source issue `.scratch/distributed-gguf-runtime/issues/031-introduce-the-project-owned-shardengine-interface.md`, and evidence READMEs for dependencies (DGR-021, DGR-025) before changing code. Inspect live source/tests rather than trusting legacy pass states. Objective: Isolate worker/protocol code from llama.cpp internals behind a stable project-owned engine contract. ## Acceptance criteria - [ ] Define load, capabilities, prefill/decode, boundary/logits result, cancel, release, health, and metrics operations. - [ ] Use project-owned request/result/state types; expose no `ggml_tensor`, llama context, scheduler, or ABI-owned structure. - [ ] Reserve typed MTP and architecture auxiliary-state hooks without enabling them. - [ ] Add contract tests proving fake and future llama implementations obey identical lifecycle semantics. - [ ] Applicable shared quality gates in `prd.json` pass, and the evidence handoff records exact commands/results, changed files, limitations, and dependency handoff. ## Shared quality gates - Targeted deterministic tests pass; Python changes also pass `python -m compileall packages tests`. - `git diff --check` passes. - Default tests are model-download-free, API-credit-free, and GPU-free. - Evidence README records exact changed files, commands/results, limitations, and dependency handoff; no fabricated evidence or inherited completion credit. - Native changes pass focused out-of-tree CMake build and CTest; patch changes verify clean apply/check/reverse against the exact llama.cpp pin. - Runs are opt-in and record exact artifact/split hashes, runtime/upstream pin, backend/driver, hardware, network, commands, and raw metrics. Model artifacts use configured mounted-drive storage and never `/home`. - Preserve existing Transformers behavior and backend-agnostic Tracker routing/load balancing/billing/relay semantics unless an explicit versioned contract says otherwise. One scoped story commit is expected during execution, but this specification-materialization change is not committed. ## Evidence handoff Write and verify `.scratch/distributed-gguf-runtime/evidence/DGR-031/README.md`. Until every criterion and applicable gate has real evidence, this story remains `passes: false`. Legacy evidence is provenance only, not completion credit.