cv2(gpu-death): compose guest GPU-death fix onto the deployed capstats+rearm lineage (deploy-ready superset) #42

Merged
triform-admin merged 1 commit from cv2/gpu-death-recycle into capstats-plus-rearm 2026-07-10 07:53:05 +00:00

Deploy-ready superset for the CV2 WebRTC ≥90% gate

The deployed cb-chromium image cr7727-f5dcb6087fa9 = this base branch capstats-plus-rearm (getCaptureStats health-gate + capture-rearm). The last measured residual (~15-20%) is the guest run11 zero-production GPU death — root-caused live: full WebRTC handshake completes (offer+answer+ICE delivered, ICE connected) yet the guest sends 0 RTP.

The fix (guest self-detect GPU death → kSessionUnhealthy envelope → recycle; physics consumer #157 already landed) lives on cv2/gpu-death-recycle. It was merged to main (PR #41), but main lacks getCaptureStats — building from main would regress the poisoned-golden health-gate the isolator + recycler depend on.

This PR composes the fix onto the correct lineage: capstats-plus-rearm + the gpu-death commit = getCaptureStats + capture-rearm + gpu-death (verified all three coexist; merge-base is #37 so only the gpu-death delta lands). Merging here yields the exact image to build → cr7727-<sha> → cb-rootfs bake → pin → roll → re-measure ≥90%.

🤖 Generated with Claude Code

## Deploy-ready superset for the CV2 WebRTC ≥90% gate The deployed cb-chromium image `cr7727-f5dcb6087fa9` = this base branch `capstats-plus-rearm` (getCaptureStats health-gate + capture-rearm). The last measured residual (~15-20%) is the guest run11 zero-production GPU death — root-caused live: full WebRTC handshake completes (offer+answer+ICE delivered, ICE connected) yet the guest sends 0 RTP. The fix (guest self-detect GPU death → `kSessionUnhealthy` envelope → recycle; physics consumer #157 already landed) lives on `cv2/gpu-death-recycle`. It was merged to `main` (PR #41), but **main lacks getCaptureStats** — building from main would regress the poisoned-golden health-gate the isolator + recycler depend on. This PR composes the fix onto the **correct lineage**: `capstats-plus-rearm` + the gpu-death commit = getCaptureStats + capture-rearm + gpu-death (verified all three coexist; merge-base is #37 so only the gpu-death delta lands). Merging here yields the exact image to build → `cr7727-<sha>` → cb-rootfs bake → pin → roll → re-measure ≥90%. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
cv2(gpu-death): guest self-detect permanent renderer/GPU death -> signal + recycle
Some checks failed
CI / Docs link check (pull_request) Failing after 2s
CI / Lint (pull_request) Failing after 30s
CodeQL / Analyze javascript-typescript (pull_request) Failing after 30s
CodeQL / Analyze go (pull_request) Failing after 31s
native-peer-gate / Build chromeless:ci for gate (pull_request) Failing after 1m1s
native-peer-gate / native-peer-gate-scaffold (permissive) (pull_request) Has been skipped
native-peer-gate / native-peer-gate-strict (M7 gate) (pull_request) Has been skipped
E2E / docker-compose + Playwright (pull_request) Failing after 1m8s
CI / Build container image (pull_request) Failing after 1m11s
CI / Container smoke test (pull_request) Has been skipped
0a997b2142
Run11-class residual (~8% after the =15 GPU-crash fix): guest whose BeginFrame ack-loop is healthy but renderer produces ZERO frames forever. Guest detects (captured_delta==0 for 30s once armed) -> session_unhealthy wire envelope -> CloseUnhealthy -> clean exit so physics re-pins a fresh guest. Review-hardened: arm-gate prevents warm-boot latch-burnout; PrepareForTeardown before close; +tests. Strings-gate marker CV2-GPU-DEATH.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
triform-admin merged commit 78e5bb4138 into capstats-plus-rearm 2026-07-10 07:53:05 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
triform/chromeless!42
No description provided.