Repository navigation
Replies: 2 comments
|
From a Linux systemd service before #17662. The service's Drafted with Claude Opus 5.5 in Claude Code (T3 Code harness). 🤖 Generated with Claude Code |
|
Adding the Linux shared-budget details requested in the closure of #18357. Our WSL incident in #18350 is an example where memory use alone did not explain the apparent lack of progress. In the October 11 capture, the shared agents slice used about 3.43 GiB against a 3.35 GiB soft threshold and a 5.03 GiB hard limit, plus about 1.46 GiB of swap. The guest had all 2 GiB of swap in use and severe memory stalls. The captured cgroup counters recorded no OOM kill. Two concurrent dependency installs ran in one Codex scope. The client showed reconnecting, and independent ordinary WSL launches also hung. Kernel records showed communication-ring allocation failures, tracked upstream in WSL #40795. The T3 triage reply confirmed that soft-limit throttling is intentional. These observations do not establish that the soft limit alone caused the WSL failure. For this diagnostics proposal, it would help to:
That would let a user understand why a running command may progress slowly and decide whether to run expensive commands one at a time. Detection should preserve active work and avoid automatic termination or limit changes. Optional resource-budget configuration can remain a separate follow-up to visibility, with the current defaults retained. Sequential-install testing is still pending. No threshold change has been tested, so this case supports better diagnosis rather than a claim that a new setting would fix WSL. |
Uh oh!
There was an error while loading. Please reload this page.
Summary
Make T3 Code's existing resource diagnostics answer "which thread, agent, or exec command is consuming this machine's resources?" Surface sustained heavy activity with a direct link to the responsible workload and enough process detail to investigate it.
Problem to solve
Running many agents on one local machine also runs their compilers, tests, shell commands, and background services. An agent waiting for a command can appear quiet while its descendants consume substantial CPU or memory. A list of busy executables such as
node,rustc, or a test binary does not tell the user which conversation started them, whether several worker batches are competing, or where to intervene.In one observed macOS incident involving T3 Code Nightly and Codex, the whole-machine CPU display reached 100%. A live process snapshot contained 33 test-binary processes and 17 processes matching
rustc; several inspected tests had been running for roughly 23–45 minutes. Parent-chain inspection traced named headless workers throughcodex execto T3's shared Codex app-server. At least two worker batches were active. The busiest individual processes also included macOS filesystem and security services. These observations establish an attribution problem; they do not establish that an individual agent caused all system activity or that the long-running tests were stuck.This becomes harder as users run dozens of agents on CPU- and memory-constrained machines. Cloud-hosted execution can move the capacity constraint, but users still need to identify the workload and the environment where it runs.
Proposed behavior
Acceptance criteria
Affected area
Resource diagnostics, provider and exec/terminal ownership reporting, delegated-agent visibility, and client navigation from heavy-workload warnings to the originating thread or command.
Non-goals
Automatic killing or throttling, CPU quotas, memory limits, a new scheduler, Linux cgroup isolation, cloud migration, or monitoring unrelated agents outside the execution environment's observable ownership. OS services may appear as host-level context, but high activity in a filesystem or security daemon must not be attributed to a particular agent without supporting evidence.
Alternatives considered
Supporting context
Classification is a feature request. No failure of a promised resource-attribution or warning contract was established, and the incident does not demonstrate a T3 CPU leak.
Source inspection used upstream
mainat737993303d36e10674c54b95e5bd3826682c99c7, not a verified commit of the affected Nightly installation. The existing resource telemetry design describes native process counters and bounded history. The resource telemetry contract exposes process identities, parent PIDs, categories, and counters without thread/turn/exec ownership fields. This proposal builds on existing diagnostics rather than requesting the first resource monitor.Related proposals cover thread-aware process launch/disposal hooks, CLI-delegated child agents in the Agents panel, and launch-environment thread lineage. Related reports cover Linux OOM containment and collector overhead. They overlap with parts of the problem but do not individually cover owner-linked resource diagnosis and sustained-load warnings. No complete duplicate was found in a bounded search of open and closed issues and discussions.
All reactions