odysseus/src/tools
Alexandre Teixeira f9aa2818c4 refactor(runtime): centralize verified process lifecycle
Extract the generic process lifecycle layer (src/process_lifecycle.py)
shared by runtime-owned subprocesses: process identity (pid + boot-bound
start token), identity-bound observation, group and pidfd probes, the
TERM -> verify -> KILL -> verify escalation with re-gating before
escalation, identity-scoped sweeps, and the termination receipt.

Containment, the PTY shell, the Cookbook survivor sweep, the browser
lifecycle, web_tools browser cleanup, kill_process_tree and the startup
reaper consume it while keeping their own ownership semantics.

Safety corrections:
- browser membership and identity are bound in one snapshot; no identity
  is recaptured after membership is decided
- web_tools legacy pid-file and profile-match kills signal only verified
  identities; browser CLI groups only while their spawn identity verifies
- Cookbook and legacy-tmux descendant capture bind membership to identity
- PTY teardown never signals the server's own process group
- unverifiable processes are reported, never signalled
2026-10-02 01:27:08 +01:00
..
__init__.py refactor(tools): split tool_implementations.py into src/tools/ package (#4423) 2026-06-26 15:40:04 +01:00
_common.py refactor(tools): split tool_implementations.py into src/tools/ package (#4423) 2026-06-26 15:40:04 +01:00
calendar.py Preserve preview harness, editor, email and task improvements 2026-10-01 01:34:26 +00:00
contacts.py Squash Odysseus development history 2026-09-11 06:04:19 +00:00
cookbook.py refactor(runtime): centralize verified process lifecycle 2026-10-02 01:27:08 +01:00
image.py Preserve preview harness, editor, email and task improvements 2026-10-01 01:34:26 +00:00
notes.py Preserve preview harness, editor, email and task improvements 2026-10-01 01:34:26 +00:00
research.py Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
search.py Squash Odysseus development history 2026-09-11 06:04:19 +00:00
system.py feat(runtime): enforce server request authority 2026-10-01 18:35:41 +01:00
vault.py refactor(tools): split tool_implementations.py into src/tools/ package (#4423) 2026-06-26 15:40:04 +01:00