|
All checks were successful
Build & Sign Wraith / Build Windows + Sign (push) Successful in 4m20s
Root cause: RDP was unresponsive due to frame pipeline bottleneck. - get_frame() held tokio::Mutex while cloning 8.3MB, blocking the RDP session thread from writing new frames (mutex contention) - Frontend fetched on every backend event with no coalescing - Every GraphicsUpdate emitted an IPC event, flooding the frontend Fix: - Double-buffer: back_buffer (tokio::Mutex, write path) and front_buffer (std::sync::RwLock, read path) — reads never block writes - get_frame() now synchronous, reads from front_buffer via RwLock - Backend throttles frame events to every other GraphicsUpdate - Frontend coalesces events via requestAnimationFrame - RdpView props now reactive (computed) for correct resize behavior - rdp_get_frame command no longer async (no .await needed) - screenshot_png_base64 no longer async Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| assets | ||
| components | ||
| composables | ||
| layouts | ||
| stores | ||
| App.vue | ||
| env.d.ts | ||
| main.ts | ||