Files
neuron-tai/.scratch/distributed-gguf-runtime/issues/023-make-python-and-c-protobuf-generation-reproducible.md

2.8 KiB

DGR-023: Make Python and C++ protobuf generation reproducible

  • Status / triage: specification only; ready-for-agent; passes: false
  • Execution mode: AFK
  • Milestone: M1
  • Dependencies: DGR-021
  • Blocks (derived): DGR-024, DGR-037
  • Labels: area:protocol, area:build, type:tooling, 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/023-make-python-and-c-protobuf-generation-reproducible.md, and evidence READMEs for dependencies (DGR-021) before changing code. Inspect live source/tests rather than trusting legacy pass states. Objective: Generate identical Python/C++ protocol bindings without manual copying or checked-in build debris.

Acceptance criteria

  • Pin protoc, gRPC, and plugin versions or declare a verified compatible range.
  • Generate Python and C++ bindings into out-of-tree build/package locations through documented commands.
  • Add Python↔C++ round-trip and descriptor compatibility tests.
  • A clean checkout regenerates bindings deterministically or fails with an actionable toolchain error.
  • 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-023/README.md. Until every criterion and applicable gate has real evidence, this story remains passes: false. Legacy evidence is provenance only, not completion credit.