mirror of
https://github.com/heygen-com/hyperframes.git
synced 2026-09-04 07:19:52 +00:00
feat(engine,producer,cli): drawElement release telemetry on render_complete (#2002)
Default-on drawElement ships with a runtime self-verification net (#1998); this makes its in-the-wild behavior observable. Every render_complete event now answers: which capture mode actually ran, why drawElement disengaged when it did (compile gate / producer clamp / engine init gate), whether the self-verify net fired and why, and how much margin verification had. Follows the static-dedup telemetry pattern: engine session fields → CapturePerfSummary → RenderPerfSummary.drawElement → snake_case props on render_complete. New event props: de_capture_mode, de_compile_gate, de_clamp_reason, de_gate_reason, de_worker_encode, de_verify_armed, de_verify_checked, de_verify_min_db (margin above the 32dB threshold — drift here is the early-warning signal before fallbacks spike), de_verify_init_ms, de_self_verify_fallback, de_fallback_reason, de_blank_suspects, de_blank_deterministic_accepts, de_blank_recaptures, de_boundary_frames, de_ncpr_fallbacks. Validated end-to-end on live renders: drawelement path reports mode/verify counters/minDb/init cost; a blur-gated comp reports mode=screenshot + gate_reason=css_effect:filter; a forced verification failure reports self_verify_fallback=true + fallback_reason=psnr. Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
parent
906c8d04f8
commit
1005703441
@@ -1662,6 +1662,22 @@ function trackRenderMetrics(
|
||||
staticDedupSkipReason: perf?.staticDedup?.skipReason,
|
||||
staticDedupPredictedFrames: perf?.staticDedup?.predictedFrames,
|
||||
staticDedupReusedFrames: perf?.staticDedup?.reusedFrames,
|
||||
deCaptureMode: perf?.drawElement?.mode,
|
||||
deCompileGate: perf?.drawElement?.compileGate,
|
||||
deClampReason: perf?.drawElement?.clampReason,
|
||||
deGateReason: perf?.drawElement?.gateReason,
|
||||
deWorkerEncode: perf?.drawElement?.workerEncode,
|
||||
deVerifyArmed: perf?.drawElement?.verifyArmed,
|
||||
deVerifyChecked: perf?.drawElement?.verifyChecked,
|
||||
deVerifyMinDb: perf?.drawElement?.verifyMinDb,
|
||||
deVerifyInitMs: perf?.drawElement?.verifyInitMs,
|
||||
deSelfVerifyFallback: perf?.drawElement?.selfVerifyFallback,
|
||||
deFallbackReason: perf?.drawElement?.fallbackReason,
|
||||
deBlankSuspects: perf?.drawElement?.blankSuspects,
|
||||
deBlankDeterministicAccepts: perf?.drawElement?.blankDeterministicAccepts,
|
||||
deBlankRecaptures: perf?.drawElement?.blankRecaptures,
|
||||
deBoundaryFrames: perf?.drawElement?.boundaryFrames,
|
||||
deNcprFallbacks: perf?.drawElement?.ncprFallbacks,
|
||||
compositionDurationMs,
|
||||
compositionWidth: perf?.resolution.width,
|
||||
compositionHeight: perf?.resolution.height,
|
||||
|
||||
Reference in New Issue
Block a user