40 lines
3.0 KiB
Markdown
40 lines
3.0 KiB
Markdown
<!-- GENERATED FROM prd.json — DO NOT EDIT AS AN INDEPENDENT SOURCE. prd.json IS AUTHORITATIVE. -->
|
|
# DGR-037: Bind llama.cpp to the standalone worker
|
|
|
|
- **Status / triage:** specification only; `ready-for-agent`; `passes: false`
|
|
- **Execution mode:** `AFK`
|
|
- **Milestone:** `M2`
|
|
- **Dependencies:** `DGR-022`, `DGR-023`, `DGR-031`, `DGR-034`, `DGR-035`
|
|
- **Blocks (derived):** `DGR-038`, `DGR-039`, `DGR-040`, `DGR-051`
|
|
- **Labels:** `area:worker`, `area:llama`, `type:vertical-slice`, `priority:p0`, `ready-for-agent`
|
|
- **Evidence class:** `real-model`
|
|
- **Hardware:** `optional`
|
|
- **Model:** `dense-llama`
|
|
- **Upstream:** `yes`
|
|
|
|
## Objective / description
|
|
|
|
Fresh Ralph session: read `.scratch/distributed-gguf-runtime/RALPH-CONTEXT.md`, source issue `.scratch/distributed-gguf-runtime/issues/037-bind-llama-cpp-to-the-standalone-worker.md`, and evidence READMEs for dependencies (DGR-022, DGR-023, DGR-031, DGR-034, DGR-035) before changing code. Inspect live source/tests rather than trusting legacy pass states. Objective: Replace the fake engine with the pinned llama.cpp `ShardEngine` implementation without changing the public worker contract.
|
|
|
|
## Acceptance criteria
|
|
|
|
- [ ] Worker loads exactly one artifact/recipe/range identity and rejects mismatched stream requests.
|
|
- [ ] All execution passes through `ShardEngine`; llama.cpp implementation types remain private.
|
|
- [ ] Health and metrics expose loaded identity, authoritative ownership, memory, and execution state.
|
|
- [ ] Graceful shutdown releases model/session resources; injected process death is observable and bounded.
|
|
- [ ] 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-037/README.md`. Until every criterion and applicable gate has real evidence, this story remains `passes: false`. Legacy evidence is provenance only, not completion credit.
|