()
| 186 | |
| 187 | /** Whether playwright is available on this machine. Used by `/network` etc. */ |
| 188 | export async function isPlaywrightAvailable(): Promise<boolean> { |
| 189 | try { |
| 190 | await importPlaywright(); |
| 191 | return true; |
| 192 | } catch { |
| 193 | return false; |
| 194 | } |
| 195 | } |
| 196 | |
| 197 | // Register process exit hook so we don't leak a chromium process if the user |
| 198 | // Ctrl+C's QodeX without cleanup. Best-effort: if it doesn't fire (SIGKILL etc), |
nothing calls this directly
no test coverage detected