()
| 200 | * exit notifications on this. Idempotent: subsequent calls return `false`. |
| 201 | */ |
| 202 | export async function releaseComputerUseLock(): Promise<boolean> { |
| 203 | unregisterCleanup?.() |
| 204 | unregisterCleanup = undefined |
| 205 | |
| 206 | const existing = await readLock() |
| 207 | if (!existing || existing.sessionId !== getSessionId()) return false |
| 208 | try { |
| 209 | await unlink(getLockPath()) |
| 210 | logForDebugging('Released computer-use lock') |
| 211 | return true |
| 212 | } catch { |
| 213 | return false |
| 214 | } |
| 215 | } |
| 216 |
no test coverage detected