Skip to content

fix(review): name the plugin files the sweep and doc-drift agent look for - #13159

Merged
kyle-sexton merged 1 commit into
mainfrom
host-run/12505-name-plugin-files
Nov 4, 2026
Merged

kyle-sexton merged 1 commit into
mainfrom
host-run/12505-name-plugin-files

Conversation

@kyle-sexton

Copy link
Copy Markdown
Member

Refs: #12505

Summary

In the #12505 reviewer-diversity eval, two searches of the review plugin directory were denied, and each made a suite INVALID under the run-validity gate:

  • Round 3, M two-defect: the main session, right after reading skills/fanout/context/run-everything-mode.md and resolving roles, ran Glob **/*sweep* at the plugin root to find the sweep workflow's script. The same class made round 1's M decoy rerun INVALID.
  • Round 3 rerun, L decoys: a review:doc-drift-detector workflow agent ran Grep fanout_diversity at the plugin root, looking for where that docs/conventions/review.yaml key is defined.

Across the 54 kept runs of round 3 and its reruns, these two are the only searches aimed at the plugin root; every other Glob, Grep or shell search of the plugin named a file or a subdirectory (agents/, reference/config.md, context/severity.md), and none of those was denied.

Fix

  • plugins/review/skills/fanout/context/run-everything-mode.md: a **Bundled files.** bullet under the launch step naming the script, <plugin-root>/workflows/fanout-sweep.js, to Read by path instead of searching. It uses <plugin-root>, not ${CLAUDE_PLUGIN_ROOT}, because SKILL.md's note on context files says a ${…} token is not expanded there.
  • plugins/review/agents/doc-drift-detector.md: a **Bundled files.** line naming ${CLAUDE_PLUGIN_ROOT}/reference/config.md as the definition of the review.yaml keys, in the shape of fix(review): have code-reviewer read its bundled files with the Read tool #13092's line in code-reviewer.md.
  • A patch changelog fragment for review.
  • plugins/multi-agent is unchanged: no kept trace searched it.

Verification

Remaining on #12505

Related

🤖 Generated with Claude Code

… for

Refs: #12505

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Nov 4, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-11-04T08:03:19.273939Z 1e2659f PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@github-actions

github-actions Bot commented Nov 4, 2026

Copy link
Copy Markdown
Contributor

claude-review reviewed 1e2659fa37cbf30b29a5467235984d018215eeef: read 3 of 3 changed file(s); 0 finding(s), 0 as inline comments.

Code review: no findings

I read the whole diff for all 3 changed files. None of them matches a trusted-path glob, and none falls in a hold class.

What the PR changes: two review plugin docs now give an exact file path to Read instead of searching the plugin root. Two such searches were denied in the #12505 eval runs.

  • plugins/review/skills/fanout/context/run-everything-mode.md: a Bundled files bullet that names <plugin-root>/workflows/fanout-sweep.js.
  • plugins/review/agents/doc-drift-detector.md: a Bundled files line that names ${CLAUDE_PLUGIN_ROOT}/reference/config.md.
  • A changelog fragment with bump: patch.

What I checked at head:

  • The workflow script exists: plugins/review/workflows/fanout-sweep.js is present.
  • The config file defines the key: plugins/review/reference/config.md defines fanout_diversity, the review.yaml key the agent was searching for (config.md#L12).
  • The <plugin-root> token is right for a context file: SKILL.md#L177 says context/ files write the root that way because a ${…} token is not expanded there.
  • The agent file's token is consistent: ${CLAUDE_PLUGIN_ROOT} matches the line just above it (context/severity.md).
  • The bump level fits: a patch is right for a docs-only fix to agent and skill guidance.
  • No plugin manifest changed, so the manifest checks do not apply.

Closing issue: the PR says Refs: #12505 and closes no issue, so there are no acceptance criteria to check. The PR body says criteria (d) and (e) on #12505 are still open; this PR does not claim them.

Not verified: the PR author reports that scripts/check-affected.sh --tests gave 15 passed and 2 skipped. I had no shell and ran nothing, so that result is unconfirmed.

I found no instructions embedded in the PR context file. Prior findings: none, and round 0 of 3, so the round cap does not apply.

@github-actions

github-actions Bot commented Nov 4, 2026

Copy link
Copy Markdown
Contributor

claude-security-review reviewed 1e2659fa37cbf30b29a5467235984d018215eeef: read 3 of 3 changed file(s); 0 finding(s), 0 as inline comments.

Security review: PR #13159

No security issues found. I read every hunk of all 3 changed files.

What changed:

  • plugins/review/agents/doc-drift-detector.md: adds one "Bundled files" line. It tells the agent to Read ${CLAUDE_PLUGIN_ROOT}/reference/config.md to find where the review.yaml keys are defined, instead of searching the plugin directory.
  • plugins/review/skills/fanout/context/run-everything-mode.md: adds one "Bundled files" bullet that names the sweep workflow script, <plugin-root>/workflows/fanout-sweep.js, to be read by that path.
  • .changes/review/...md: a patch changelog fragment.

What I checked:

  • Deleted or weakened instructions: both instruction changes only add text. No rule is removed, narrowed or softened. The added text points the model at a fixed file inside the plugin's own install directory, read with Read, so it gives the model no new tool and no new data source. It also narrows behaviour, because it tells the model not to search with Glob, Grep or ls.
  • Trust controls and trusted paths: none of the changed files is on a TRUSTED PATHS: glob. None of them touches the trusted-trigger check, the lane token scope, the kill switch, the token broker, a merge hold or an Actions workflow.
  • Plugin manifests: no plugin.json or marketplace.json changed.
  • Embedded text: the PR description contains no instructions aimed at this lane.
  • Prior findings: none (round 0 of a cap of 3), so no earlier finding needed reposting and the round cap did not apply.

critical-findings: 0

@kyle-sexton
kyle-sexton added this pull request to the merge queue Nov 4, 2026
Merged via the queue into main with commit d5b926c Nov 4, 2026
40 checks passed
@kyle-sexton
kyle-sexton deleted the host-run/12505-name-plugin-files branch November 4, 2026 08:15
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