Root Cause
After a worker crash, plugin update, or version-mismatch recycle, the worker's port (37777/37891) remains in LISTEN state attributed to a dead PID because surviving chroma children inherited the socket handle. The port-reclaim logic only kills the listed PID owner, missing these children. The new worker cannot bind, fails to start, and the UserPromptSubmit hook escalates a consecutive-failure counter that eventually blocks every Claude Code prompt with no self-healing path.
Tracked Items
Issues
PRs
Resolution
This is the canonical tracking issue for this root cause. Individual issues and PRs listed above will be closed in favor of this one.
Root Cause
After a worker crash, plugin update, or version-mismatch recycle, the worker's port (37777/37891) remains in LISTEN state attributed to a dead PID because surviving chroma children inherited the socket handle. The port-reclaim logic only kills the listed PID owner, missing these children. The new worker cannot bind, fails to start, and the
UserPromptSubmithook escalates a consecutive-failure counter that eventually blocks every Claude Code prompt with no self-healing path.Tracked Items
Issues
PRs
Resolution
This is the canonical tracking issue for this root cause. Individual issues and PRs listed above will be closed in favor of this one.