Skip to content

Requirement 8 reaches Linux and WSL only, with no measured answer for macOS or Windows #1625

Description

@ptr727

Requirement 8, added in #1622, reports the processes a session leaves running. It decides which descendants survive by comparing session ids, read with ps -eo sess=,etimes=. Both are procps format keywords.

So the sweep runs on Linux and WSL, and stray-process-sweep.py returns immediately on Windows and on macOS rather than failing at every session end. claude/README.md states that scope.

Two gaps follow, and neither has a tested answer yet.

macOS

A BSD ps has etime rather than etimes, and its sess prints a session pointer rather than a decimal. A port needs a different field set and a different parse, and it needs running on a real macOS host before it is claimed to work.

Windows

There is no session test at all. Win32_Process gives a parent id and a command line, and nothing that says whether a child outlives its agent. Whether the leak even takes this shape there is unmeasured: Claude Code's Bash tool shells are setsid-detached on Linux, which is both why they survive and how they are identified, and the Windows equivalent is unknown.

Both are blocked on a host to measure on rather than on a design. Until then the requirement is honest about reaching two platforms of four, which is better than a branch nobody has run.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    agentsAgents instructions

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions