test(browser): require Agent Task browser-process termination evidence - #142
Conversation
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: trueThanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
…-evidence' into test/agent-task-browser-process-termination-evidence Signed-off-by: Seongho Bae <me@seonghobae.me>
|
Exact-head review of The two remaining informational findings do not warrant a source change:
All 187 Python contracts pass on the unchanged head, including parser ambiguity, PID reuse, live-identity timeout and successful-task termination-gate checks. The extra probes are controlled diagnostics on macOS, not live Linux process or pinned-browser execution evidence. Worktree remains unchanged. Current hosted Rust/coverage run |
Partial implementation of #28, dependency-realigned on the current PR #141 head
bc9b265f31f2c4c7ddb700e865ec1f7b3daa6b01.Buyer/reliability boundary
The controlled pinned-Chromium Agent Task must prove that the Chrome root process actually terminates after session/driver shutdown. Temporary-profile deletion alone is not sufficient because a surviving browser process can retain resources or task state.
Implemented contract
The runner:
/proc/<pid>/statstart-time identity;browser_process_terminated: trueonly after the exact identity has ended.TDD provenance
Exact test-only RED head
146f742b140b54577b1e349be9c4a815fd6691d9established the missing PID/start-time/process-exit contract before production support existed. Subsequent commits implemented and hardened the boundary.Stack repair
The prior branch head was still rooted at obsolete PR #141 head
42af52f77336112c4fbe1da5c5283899f6bd288e. GitHub's clean synthetic merge of that child with live #141 produced tree642f8ed67ff1bb791504d21b9f1460e967c52243; this branch was then advanced non-destructively with merge commit6c01e5370b0001c58f89cd772cbaf62e197db9f5, preserving the child delta while incorporating live #141.Fresh ancestry now reports live #141 as the merge base with the branch ahead-only; no predecessor CI/review evidence is transferred.
Exact-current proof
On unchanged exact head
6c01e5370b0001c58f89cd772cbaf62e197db9f5against exact live basebc9b265f31f2c4c7ddb700e865ec1f7b3daa6b01:32606849757: success;97113009399: checkout, Python repository contracts, formatting, workspace/all-target check, full tests, strict Clippy, and rustdoc success;97113009621: exact production function/line/region/branch measurement and enforcement success;32606849733: success;No prerequisite result, predecessor result, synthetic merge result, status, comment, or model output is treated as approval.
Stack / authority
This PR remains Draft while #141 and its prerequisite stack remain active. PR #143 is a descendant and is being revalidated independently on its own fresh head. No merge, approval, workflow, secret, ruleset, tag, release, or publication mutation is included.
Truth boundary
This lane proves termination of the exact Chrome root identity for the controlled Linux Agent Task path. Descendant-process-set teardown, broader process ownership, cross-platform supervision, authenticated browser provenance, and OS-wide orphan absence remain separate boundaries.