Skip to content

feat(testing): run base and head in one worker - #6521

Merged
Rishet11 merged 9 commits into
feat/agentic-pr-testingfrom
ao/ao-agentic-testing-75/session-legs
Oct 10, 2026
Merged

Rishet11 merged 9 commits into
feat/agentic-pr-testingfrom
ao/ao-agentic-testing-75/session-legs

Conversation

@Rishet11

@Rishet11 Rishet11 commented Oct 10, 2026 •

Copy link
Copy Markdown
Collaborator

Code changes: +837 -128
Tests: +1036 -12
Others: +1973 -14

Testing MCP credentials were tied to one attempt, so switching revisions required a fresh investigator. This change attaches tools before the first worker turn and resolves the session's current attempt on every call. ao testing leg start base|head joins the previous target's cleanup and starts the selected pinned revision in the same worker. Calls using the old attempt or screenshot are refused.

Includes service lifecycle and persisted comparison legs, the new CLI/controller routes, session MCP wiring, checked target contexts, and generated API contracts. Worker cancellation joins target cleanup before provider teardown. Cleanup receipts retain failures, and screenshots, clips and reports remain in the evidence store.

A's #6518 intake, owned launch and worker skill are merged from feature 960e7ba56. Native evidence capture depends on C's #6522 at 0375450f2; C is combined only in the separate local proof checkout. The B branch retains normal merge history and contains no C changes.

The three native review findings are addressed separately: a real adapter regression covers pinned head preparation after base cleanup, the installed skill and worker prompt require the same investigator for both legs, and the bodyless leg POST now matches its API contract. A fourth commit requires foreground input and records refusals without dispatching input when actual delivery differs.

Validation:

  • Fresh complete changed-package tests passed before each review/foreground commit: local target, session manager, HTTP controllers, service/testing and ports. Tests cover session resolution, switching, stale targets, partial binding cleanup, cancellation and retained evidence.
  • Go build/vet, frontend typecheck, API generation and pinned golangci-lint 2.13.2 passed. Generated API files have no further drift.
  • The final enabled full hook finished with exactly the five approved host-package failures: OpenCode version tests in adapters/agent/opencode, adapters/agent/opencodev2 and adapters/chatdriver/opencodev2acp; gitdefault's legacy/empty-clone tests; and importer's Git-commit retry tests. No other package failed. Goose and HTTP passed. Allowed bypass commits followed fresh scoped checks. The orphan OpenCode test host was stopped and checked absent.
  • All 23 GitHub checks passed at final B head e2900c904, including full race, generated contract drift and native platform jobs. AO native code review approved that head; all three previous review threads are resolved.

Live proof on a separate immutable A+B+C build exercised PR #6266 base then head in one worker. Both native Harness/search actions and both 48-test frontend checks passed. Conversation, model and exact Codex/MCP process births stayed the same; one old-base frame was refused. Cancelling head finalized the recording and removed all captured app, daemon, driver, recorder, provider and MCP processes, listeners and control files. The live AO daemon stayed unchanged. The comparison, screenshots, original clips and cleanup observations are attached in AO.

The proof found two dependency gaps. Both target roots retained three private files despite complete cleanup receipts; A owns the minimal fix in feature commit 84d72b78d. Original QuickTime MOV clips stalled in AO Browser, while MP4 copies made with built-in avconvert passthrough played and advanced. All encoded H.264 packet hashes match the originals, with no re-encoding. C owns the recorder container follow-up. These findings are recorded in the AO comparison; a fully clean integrated trial remains pending those fixes.

Part of #6473.

@github-actions

Copy link
Copy Markdown
Contributor

🏆 Review leaderboard

Oct 3–10, 2026 · UTC

Rank Reviewer PRs reviewed Review rounds PR comments
🥇 @illegalcall @illegalcall 28 47 11
🥈 @ronishrohan @ronishrohan 20 23 17
🥉 @Vaibhaav-Tiwari @Vaibhaav-Tiwari 15 18 11
4 @Prasad-D-Ware @Prasad-D-Ware 10 27 1
5 @nikhilachale @nikhilachale 9 22 3
6 @axisrow @axisrow 8 10 44
7 @mohakchakraborty2004 @mohakchakraborty2004 7 7 1
8 @Rishet11 @Rishet11 6 15 2
9 @Pritom14 @Pritom14 5 5 3
10 @codebanditssss @codebanditssss 4 4 2

Ranked by distinct external PRs reviewed, then review rounds, then PR comments. Self-activity and bot activity are excluded.

Show 6 more reviewers
Rank Reviewer PRs reviewed Review rounds PR comments
11 @Annieeeee11 @Annieeeee11 3 6 1
12 @harshitsinghbhandari @harshitsinghbhandari 2 4 0
13 @neversettle17-101 @neversettle17-101 2 3 0
14 @whoisasx @whoisasx 2 2 0
15 @AgentWrapper @AgentWrapper 1 3 0
16 @ApexYash11 @ApexYash11 1 2 0

@Rishet11 Rishet11 left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes requested for commit bb076a2. Three required fixes are in inline comments: selected-revision preparation, conflicting worker skill instructions, and the leg-start request-body contract.

Reviewed the diff against base 6634181, including service lifecycle, session/MCP wiring, CLI and HTTP routes, storage, API contracts, and new tests. Tests and builds were not run under the reviewer rules. CI lint, API drift, sqlc drift and native jobs had passed when checked; other jobs were still running. Live base/head behavior remains unverified.

@Rishet11 Rishet11 left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved for this code review at commit e2900c9. No required changes found.

The three previous findings are addressed by inspection. The merged target adapter prepares the selected pinned revision, the installed testing skill keeps both legs in the same worker, and the leg-start handler accepts the bodyless POST declared by its API contract. Regression coverage now checks those boundaries. The new foreground guards reject unsupported configuration, stored background recipes, and conflicting per-tool delivery modes before input dispatch, with refusal entries in the action journal.

Reviewed the diff against base 960e7ba, including service lifecycle, session/MCP wiring, CLI and HTTP routes, persistence, API contracts, and changed tests. Tests and builds were not run under the reviewer rules. CI was still running when checked. The live same-worker base/head/cancellation proof remains unverified, so this code-review approval does not claim that runtime result.

@Rishet11
Rishet11 merged commit b16550c into feat/agentic-pr-testing Oct 10, 2026
23 checks passed
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