Address the Codex GPT-5.5 review of the standalone fake C++ gRPC Shard
worker. Four root protocol defects fixed:
- Fail closed before SessionOpen: a per-session `opened` flag gates
chunk/decode so no activation bypasses lifecycle, cancellation, epoch
or flow-control state (terminal ERROR_CODE_INTERNAL), even when an
out-of-band Cancel created placeholder state.
- Strict flow-control negotiation: NegotiateFlow takes the strictest of
peer-vs-worker bounds (mirrors codec.negotiate_flow_control) and the
negotiated per-session max_chunk_bytes is enforced on every bundle
instead of trusting the peer proposal.
- In-stream ReleaseSignal now erases session state immediately.
- SessionOpen rejects incompatible schema, fingerprint, and shard-range
identity and reports the worker's own served fingerprint rather than
echoing the caller.
Adds 9 regression tests (worker suite 18 -> 27). Real gates on the
rebuilt pinned-gRPC binary: cmake build exit 0; ctest 2/2; worker
pytest 27 passed; harness+protocol 63 passed; compileall 0; diff --check
clean; ldd/nm show 0 llama/ggml linkage. DGR-033 passes -> true.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Configs hardcoded .venv-rocm/bin/python (this Linux box's ROCm venv), which
doesn't exist on the Windows dev machine. Switch to
${command:python.interpreterPath} so each machine resolves whatever
interpreter is selected in the VS Code Python extension locally.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Real ShardRuntimeServicer process bound to a real localhost socket, driven
by a generated ShardRuntimeStub over grpc.insecure_channel from a separately
spawned subprocess. Proves direct-hop and opaque-relay (exact captured
request bytes re-sent, no reinterpretation) produce byte-identical server
responses, cross-checked against an independent server-side wire capture.
Fails closed on the required negative paths: stale route epoch, expired
deadline, malformed/non-tiling fragments, checksum failure, exhausted
flow-control credit (with in-band top-up), duplicate idempotency steps
(acked, not re-applied), and cancel — both in-band CancelSignal (single
work item vs whole session) and the out-of-band unary Cancel RPC, including
a Cancel that races ahead of SessionOpen.
Supersedes the earlier in-memory fake-seam approach for this ticket, which
a policy audit rejected under the no-fake-data rule; that code is not
reintroduced. Evidence README rewritten to describe the actual files.
11 passed in tests/test_shard_runtime_harness.py.
Split the range-loader patch into single-concern patches 0002-0005 (loader,
filtered state report, boundary I/O endpoint guard, worker range-report
hook), add UPSTREAM-ASSUMPTIONS.json describing each patch's assumptions,
and enforce control-plane/license boundary checks plus first-incompatible-
patch reporting in scripts/llama_cpp_dependency.py apply/reverse/verify.
7 passed in tests/test_llama_cpp_dependency.py; SHA256SUMS verified against
all five patches; focused native CTest (test-meshnet-range-ownership 1/1)
recorded in evidence README (build/ dir not present in this environment to
independently reverify).
Append +artifact.<sha256> to the llama.cpp runtime axis, computed from the
exact bytes read by attest_loaded_runtime, so a differently-built shared
object with copied lock values can no longer forge a certified runtime
identity. Node/tracker parsers require the suffix; new test proves a
byte-identical-lock but different-binary artifact produces a different
recipe fingerprint. Regenerates conformance vectors accordingly.
105 passed in tests/test_native_identity_emission.py,
tests/test_runtime_pin_identity.py, tests/test_runtime_recipe_identity.py.
Derive the recipe's runtime_version axis from the DGR-027 lock manifest
(exact upstream commit + ordered patch-stack byte digest) in new
meshnet_node.runtime_pin, failing closed on any lock/series/SHA256SUMS/
patch disagreement, and enforce pin discipline on runtime_version in both
the node and tracker identity implementations.
Also repair pre-existing backlog consistency: add missing DGR-022/DGR-027
completionNotes, regenerate the DGR-022/025/027 issue projections, and
relocate three pre-DGR legacy GLM issue files to issues/legacy/. Mark
DGR-025 passes=true with evidence at evidence/DGR-025/README.md.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>