Skip to content

feat: setting to turn off the leftover agent process reaper (INC-489) - #538

Merged
arzafran merged 2 commits into
mainfrom
franco/inc-489-reaper
Nov 4, 2026
Merged

arzafran merged 2 commits into
mainfrom
franco/inc-489-reaper

Conversation

@arzafran

@arzafran arzafran commented Nov 4, 2026

Copy link
Copy Markdown
Member

Adds a setting to turn off the leftover agent process reaper. When an agent exits, Programa stops the processes it left behind (MCP servers and the like). Some people don't want that, so it can now be switched off.

  • New app.reapLeftoverAgentProcesses setting, on by default, with a "Stop Leftover Agent Processes" toggle in Settings > App (English and Japanese).
  • Off cancels the 10 second check and signals nothing. The interrupted-agent banner still works.
  • Docs explain what gets stopped and what is kept.
  • The reaper takes an injectable system seam, with 7 tests on a fake process table. The fake pids sit above the macOS limit, so nothing real can be signalled.
  • Supervision finish loops now log per-record errors instead of dropping them.
  • If the setting is turned off during the 3 second grace period, the final SIGKILL is skipped.

Not run locally; CI runs the tests.

Fixes INC-489

@arzafran
arzafran merged commit 003595a into main Nov 4, 2026
12 checks passed
@arzafran
arzafran deleted the franco/inc-489-reaper branch November 4, 2026 21:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant