Repository navigation
fix(skills): subagent briefs keep user limits; setup counts incidents - #2044
Merged
Merged
Conversation
…efs, count distinct incidents State what a subagent brief must carry: the user's stated constraints on the child's work, a stop condition that says what to hold and what may continue, and a report of refused, skipped, or unverified steps. Apply it where briefs had gaps: ce-code-review's intent summary now carries the user's limits on the review, and ce-work's worker brief carries user limits (which win over the plan), a scoped blocked-step rule, and a "did not go as briefed" report that keeps the unit open. ce-setup now counts distinct incidents (pull requests or changes), not repeated bot comments, when judging recurrence, and says when the reachable history is incomplete.
Codex Review Summary: ✅ CompletedThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
A subagent brief now has to carry what the child cannot recover on its own: the user's stated limits on its work, a stop rule that says what to hold and what may continue, and a report of anything refused, skipped, or left unverified. Separately,
ce-setupnow counts distinct pull requests, not repeated bot comments, when it decides a finding keeps getting declined.After #1974, the dispatching skills said a spawned worker "does not continue the parent conversation", which states a fact but asks for nothing. One recorded Codex
ce-code-reviewbrief said exactly that and still dropped a constraint the user had given.What changed
portable-agent-skill-authoring.mdstates the three brief conditions once, with a checklist line. Decisions a child exists to judge on its own, such as settled design choices a reviewer should re-derive, stay out of the brief.ce-code-review. The Stage 2 intent summary, which every reviewer and the cross-model peer receive, now carries the user's limits on the review in their own words.ce-work. The worker brief now carries user limits, which win over the plan when the two conflict. It also says what to do when the harness refuses an action or a step can't run here: hold that step, don't reach the same result another way, keep finished edits, and finish the independent parts. The worker reports what did not go as briefed, and a held step keeps the unit open on both the serial and the parallel path.ce-setup. At the evidence step, one condition governs both recurrence judgments: the "declined across several pull requests" gate and the refresh signal "findings under a written rule that the team keeps declining". An incident is a pull request, or a change when no pull request carries it. A partial history is named in the preview and summary.ce-standards-baris unchanged. It admits a rule on a single fixed finding, so it doesn't count anything.Validation
Live A/B evals on Claude and Codex, one trial per cell. Pre is
mainat d307bdb and post is this branch. The fixtures and rows are added totests/skill-eval-cell/catalog.ts.ce-work/live-worker-brief-limits(live parallel wave, a user limit that conflicts with the plan, and a docs generator that refuses to run): all 4 cells passed the artifact grade.tests/ledger.test.jswas untouched,docs/api.mdwas not hand-edited, and the docs step came back as a blocker in every cell. In Claude's worker prompts, the user limit and a blocked-step rule were already present before the change (4/4). The "did not go as briefed" report item appeared only after it (0/4 to 4/4). On Codex the brief can't be graded: spawn messages are encrypted, andfork_turns: "all"replays the parent's context into each child, so the outcomes are the only evidence there.ce-code-review/live-user-limit-reaches-reviewers(user asks to leave a staged file out): Claude reviewer prompts carried the limit in both arms (6/6), and no arm on either host produced a reviewer finding on the excluded file. The recorded Codex miss did not reproduce, so this shows no regression and no measured gain.ce-setup/review-recurrence-counts-incidentsandce-setup/refresh-recurrence-counts-incidents: all 8 cells passed in both arms. Four re-posts in one PR counted as one incident, and the partial export was stated. On current models the condition is insurance.bun run test --changed-since=45ccf35e4(4971 pass, 0 fail),typecheck,release:validate, andplugin:validateall pass.grading-live-delegation-evals-from-host-session-logs.mdnow records where the eval cells keep Codex rollouts and why forked Codex children can't show what the brief said.Follow-up:
ce-doc-reviewstill uses the bare #1974 sentence. Its reviewers return residual risk through a schema, and it has no observed gap.Security Disclosure
No security-relevant changes.
Agent Disclosure
Claude Code · claude-opus-5-5