Skip to content

Playwright browser context lock persists on process SIGINT / tool failure, causing subsequent browser runs to fail #22

Description

@ui-webharry

Environment

  • OS: Linux x64 (Ubuntu 24.04 LTS) / macOS Sonoma (Apple Silicon)
  • Runtime / Binary: Standalone SEA / Node.js v20.x
  • atomic-agent version:v0.4.x (main branch)
  • Backend Model: Local llama.cpp (q4_k_m with TurboQuant KV-cache)

-Summary
When atomic-agent is executing a multi-step browser automation task via playwright-core and the process is unexpectedly interrupted (e.g., user sends Ctrl+C / SIGINT, or a tool invocation times out), the browser profile lock file under /browser/ is not cleaned up gracefully.

On subsequent runs, any tool call attempting to invoke browser.navigate or browser.inspect fails immediately with an unhandled rejection, as the agent assumes another browser instance is currently active.

Steps to Reproduce

  1. Start an atomic-agent task requiring web browsing:
    atomic-agent run "Navigate to news.ycombinator.com and extract top 3 posts" 

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions