Skip to content

test(browser): require sampled Chromium process-set termination evidence - #144

Draft
seonghobae wants to merge 3 commits into
test/agent-task-failure-process-termination-evidencefrom
test/agent-task-process-set-termination-evidence
Draft

test(browser): require sampled Chromium process-set termination evidence#144
seonghobae wants to merge 3 commits into
test/agent-task-failure-process-termination-evidencefrom
test/agent-task-process-set-termination-evidence

Conversation

@seonghobae

@seonghobae seonghobae commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

Partial implementation of #28, stacked on exact current PR #143 head d2dbf3bbee883b91812690089bb33bd274a4687a.

Buyer/reliability gap

PR #143 proves PID-reuse-safe teardown evidence for the exact Chrome root process after both successful and reviewed failed controlled Agent Tasks. Chromium is multi-process, so renderer, GPU, utility, and other descendants sampled before shutdown can survive even when the root exits. This lane extends the controlled acceptance boundary to the entire exact sampled Chromium process set.

Dependency

This Draft targets exact current #143 head d2dbf3bbee883b91812690089bb33bd274a4687a and must remain Draft while #143 and its prerequisite stack remain active. No prerequisite check, review, status, coverage, mergeability, synthetic-merge, predecessor-head, skipped, cancelled, queued, or absent evidence transfers.

TDD evidence

Exact test-only RED head d20fd0f0d02e4c9d58a5c471b25b13e82d9ddac3 ran CI 31673100891; Rust contracts job 94361750201 failed first at Check Python repository contracts, while the production-coverage job was green because production support was intentionally absent from that test-only head.

Production support was added on 9c3af05a889160844e487710e4fa37bad1d89a6a and the canonical changelog was then reconciled on the current exact head fea7bec6a3ef3f378884b717d36028d9103bde92.

The implemented boundary:

  • binds every PID in the already sampled bounded Chromium process set to its exact Linux /proc/<pid>/stat PID/start-time identity before shutdown;
  • preserves process-set ordering and rejects empty, duplicate, invalid, or prematurely disappeared identities;
  • waits under one shared bounded deadline for every exact sampled identity to exit;
  • treats PID reuse as termination of the original identity while any surviving exact identity fails closed; and
  • requires chromium_process_set_terminated: true in successful Agent Task evidence and aggregate acceptance.

Current exact-head proof on fea7bec6a3ef3f378884b717d36028d9103bde92:

  • CI 31676844681: completed successfully;
  • Manifest V3 Compatibility 31676844704: completed successfully.

There are currently no formal reviews, requested reviewers, or unresolved review threads on this exact head. The PR remains Draft because its prerequisite stack remains active and scheduled agents are not authorized to merge.

Truth boundary

This lane proves only the exact bounded Linux Chromium process set discovered from the runner's sampled /proc lineage snapshot before shutdown. It does not prove cgroup/task ownership beyond that sampled lineage, processes that appear only after the snapshot, cross-platform process supervision, authenticated Chromium/ChromeDriver provenance, OS-wide orphan absence, or completion of #28.

@coderabbitai

coderabbitai Bot commented Aug 13, 2026

Copy link
Copy Markdown

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 80017a14-7b7a-4e89-9d8b-cce24b6de75d

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

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