# Structured bug-report Discussion values #1808
Replies: 1 comment
|
Investigated this report and produced a candidate fix, validated on a fork of this repository. Root cause, fix and validation from the working notes:
Diff: awhite0030/prime-agent@main...fix-ignore-forkserver-sockets-5319261959539241078 The change passes |
Uh oh!
There was an error while loading. Please reload this page.
Affected area
Coding agent and CLI
What happened?
What happened
A current
prime-agent status --jsonorprime-agent doctor --jsoncan discover a private control socket owned by a still-running pre-rlm.replworker during an upgrade. The socket matchesprime-agent-forkserver-??????/control.sock, is owned by a process titledprime-agent, but does not speak the daemon protocol. Probing it can terminate the legacy Python forkserver and its active kernel.Current all-current runtimes do not create this socket. The risk is cross-version coexistence because daemon discovery intentionally scans arbitrary live
prime-agentlisteners.Prior art: #1696 identified the collision but was closed unmerged by the contribution gate.
Steps to reproduce
Steps to reproduce
rlm.repldaemon worker that owns an active forkserver-backed Python kernel.ss -lxporlsofthat the worker process listens on.../prime-agent-forkserver-??????/control.sock.prime-agent status --jsonorprime-agent doctor --jsonin the same host/namespace.The prepared validation uses disposable PID/mount/network namespaces, two real workers and two real kernels. It never uses
doctor --fix, publicshutdown/stop, production processes, or external API traffic.Expected behavior
Expected behavior
Diagnostics must ignore the exact private legacy control-socket shape, still list genuine daemon/worker endpoints, and leave both legacy and current kernels operational with unchanged process/socket identity and state.
Prime Agent version
bc0fa7606abb3b7af0f765319518d255e6ae553d; - legacy resident topology fixture:0940833b771fbaf5144451988604b310a96722fd; - prepared compatibility patch:cb50afed353905330e653247c2601d31b6f0b571.Environment
Linux; Node.js 22; cross-version daemon/worker coexistence during upgrade. Validation uses isolated user/PID/mount/net/IPC/UTS/cgroup namespaces and real local Python kernels with a faux provider, so no production endpoint or credential is used.
Additional context
Contribution context request
This is a Discussion-first report under
CONTRIBUTING.md, not a submitted PR. Please confirm that the report is accepted, explicitly invite implementation/submission, and state whether the GitHub account that will open the PR is maintainer, collaborator, or vouched. Commit authorship is a separate decision and will not be attributed to a person without explicit consent and a GitHub-linked email.All reactions