Skip to content

fix(core): resolve conflicts and drift between review skills#709

Draft
superzadeh wants to merge 14 commits into
mainfrom
claude/trusting-lovelace-gPPSo
Draft

fix(core): resolve conflicts and drift between review skills#709
superzadeh wants to merge 14 commits into
mainfrom
claude/trusting-lovelace-gPPSo

Conversation

@superzadeh

Copy link
Copy Markdown
Member

Why

Follow-up to #649. The two new review skills (in-depth-review and simple-review) share a large, intentionally-duplicated rubric. A review for duplicated/conflicting content surfaced three outright contradictions and several places where the duplicated checklists had already drifted apart. This PR reconciles them. It targets the #649 branch so the fixes can land with that PR.

What changed

Conflicts resolved

  • simple-review contradicted itself on convention sources. The Conventions lens said "In the Summary, list the convention sources you consulted" while the Summary section said "Do not … list the convention sources you consulted — that metadata is noise." Dropped the "list in the Summary" instruction so it matches the Summary section (and in-depth-review's "methodology is noise" stance).
  • TaskCreateTodoWrite. in-depth-review's author-mode Execute step referenced a non-existent TaskCreate tool; simple-review used TodoWrite. Aligned on TodoWrite.
  • /tmp wording. simple-review said "no /tmp/* persistence needed" but its posting reference writes /tmp/simple-review-payload.json. Clarified that review state is in-context while the posting step writes one transient payload file.

Rubric drift reconciled (ported simple-review's extra checks up into in-depth-review, the higher-stakes path, so the shared checklists match)

  • Security: numeric min/max bounds + Number.MAX_SAFE_INTEGER/BigInt/negative handling and 400-vs-500 behavior.
  • Database: Mongoose Number precision note, dual-write canonicalization, backfill for new fields.
  • Conventions: service test-structure specifics (createTestContext/tearDown, beforeAll/afterAll for GET).
  • Engineering: route consumer-break suspicions through the cross-repo evidence policy instead of asserting them.

Generated .agents/skills copies regenerated via node --run sync-ai-rules.

Not included (left for a follow-up decision)

  • The two posting-pr-review.md and cross-repo-evidence.md reference files are ~95% / partially duplicated across the skills and have also drifted. They could be consolidated into shared references, but that's a structural change deferred for now.

Validation

  • oxfmt --check — pass (4 files)
  • markdownlint-cli2 — 0 errors
  • cspell — pass (all ported vocabulary already existed in simple-review)
  • Source and generated .agents copies verified identical for both skills
  • Pre-commit hooks (cspell, oxfmt, markdownlint, embed:check) passed
  • Note: the local pre-push verify runs a repo-wide oxlint that fails on pre-existing lint errors in unrelated TypeScript packages (mongo-jobs, notifications, util-ts, …). This is a markdown-only change; nx affected CI does not lint those projects.

Generated by Claude Code

superzadeh and others added 14 commits May 13, 2026 18:20
…view-skill

# Conflicts:
#	.agents/skills/commit-push-pr/SKILL.md
#	plugins/core/skills/commit-push-pr/SKILL.md
Refresh /simple-review and /in-depth-review from latest local Claude
commands. Apply markdownlint --fix and oxfmt to normalize formatting
(blank lines around fences/lists/headings, emphasis style, table
alignment) and add cursorrules, luxon, unvalidated, reviewee to the
cspell dictionary.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…view-skill

# Conflicts:
#	.agents/skills/babysit-pr/SKILL.md
#	.agents/skills/babysit-pr/scripts/_sentinel.sh
#	.agents/skills/commit-push-pr/SKILL.md
#	cspell.json
#	plugins/core/.claude-plugin/plugin.json
#	plugins/core/skills/babysit-pr/SKILL.md
#	plugins/core/skills/babysit-pr/scripts/_sentinel.sh
#	plugins/core/skills/commit-push-pr/SKILL.md
…eview

Carry the simple-review noise guardrails and comment-body formatting
rules into in-depth-review so both skills produce equally terse PR
comments:

- Add the "concrete, current, product-visible cost" litmus test to the
  severity rubric (binding for all agents).
- Replace the comment-body template with the terse budget (<=60 words +
  code block), word caps on title/point/why-it-matters, and the
  drop-when-rephrasing rule.
- Flip the Example/context fenced block to opt-out by default and add
  the no-bulleted-lists / no-prose-preamble / no-trailing-addenda rules.
- Surface the terseness guardrail in the Rules summary.

Regenerated the .agents/skills copy to match the plugins/core source.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Align in-depth-review and simple-review with Anthropic's Agent Skills
best practices:

- Progressive disclosure: extract the conditional "Cross-repo evidence
  policy" and end-of-run "Posting an anchored PR review" sections into
  one-level-deep references/*.md, loaded on demand. SKILL.md bodies drop
  under the 500-line guideline (in-depth 611->491, simple 614->472), with
  prominent pointers left in place.
- Descriptions: rewrite both frontmatter descriptions to state what the
  skill does plus explicit "Use when" triggers and a simple<->in-depth
  selection cue, so Claude can pick the right skill.

Kept Claude-Code-first by design (multi-agent dispatch, AskUserQuestion
gates). Regenerated the .agents/skills copies to match the plugins/core
source.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Reconcile duplicated and conflicting guidance across the in-depth-review
and simple-review skills (and their generated .agents copies).

Conflicts resolved:
- simple-review told the agent both to list and to never list convention
  sources in the Summary; drop the "list in the Summary" instruction so it
  matches the Summary section's "methodology is noise" stance (and
  in-depth-review's behavior).
- Align the author-mode Execute step on `TodoWrite`; in-depth-review
  referenced a non-existent `TaskCreate` tool.
- Clarify simple-review's "no /tmp persistence" note, which contradicted the
  posting reference that writes a transient payload file.

Rubric drift reconciled (ported simple-review's extra checks up into
in-depth-review so the shared checklists match):
- Security: numeric min/max bounds and overflow/400-vs-500 handling.
- Database: Mongoose Number precision, dual-write canonicalization, backfill.
- Conventions: service test-structure specifics.
- Engineering: route consumer-break suspicions through the cross-repo policy
  instead of asserting them.
@coderabbitai

coderabbitai Bot commented Jun 5, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

📝 Walkthrough

Walkthrough

This PR introduces two new code review skills—in-depth-review and simple-review—to the plugin system, version bumps to 3.5.0, updates existing skill documentation with the new version markers, and adds spell-check dictionary entries for terminology used in the new skills and documentation.

Changes

Code Review Skills and Plugin Infrastructure

Layer / File(s) Summary
Version bump and spell-check dictionary
plugins/core/.claude-plugin/plugin.json, cspell.json
Plugin version updated from 3.4.1 to 3.5.0; spell-check dictionary expanded with 12 new allowed terms (AntiSlop, anchorable, cursorrules, defensiveness, denormalization, luxon, oncall, passthroughs, permalinks, reviewee, subagents, unvalidated) introduced by the new skills and documentation.
Plugin documentation and existing skill updates
plugins/core/README.md, plugins/core/skills/babysit-pr/SKILL.md, plugins/core/skills/babysit-pr/scripts/_sentinel.sh, plugins/core/skills/commit-push-pr/SKILL.md
README adds table-of-contents links and skill descriptions for in-depth-review and simple-review; babysit-pr and commit-push-pr skill documentation and scripts refreshed to version 3.5.0 for sentinels and PR-body markers.
in-depth-review skill specification
plugins/core/skills/in-depth-review/SKILL.md, plugins/core/skills/in-depth-review/references/cross-repo-evidence.md, plugins/core/skills/in-depth-review/references/posting-pr-review.md
Complete specification for multi-agent in-depth code review: agent roster with opt-in Adversarial agent, parallel round-1 reviews with Engineering/Minimalist/Conventions/AntiSlop lenses plus optional Security/Database/Frontend specialists, freshness preflight validation, binding cross-repo evidence policy with severity caps, Round 2 debate with vote-based consensus, moderator-filtered synthesis, user gates, and anchored PR review posting via GitHub API.
simple-review skill specification
plugins/core/skills/simple-review/SKILL.md, plugins/core/skills/simple-review/references/cross-repo-evidence.md, plugins/core/skills/simple-review/references/posting-pr-review.md
Complete specification for single-pass code review using the same severity rubric as in-depth-review: diff classification with conditional Security/Database/Frontend lenses, mandatory freshness preflight, per-lens checklists (Engineering/Minimalism/Conventions/AntiSlop), slop-auditing self-filter, finding caps (6 actionable, 8 nits), required failure_mode and suggested_fix schema, user gates for finding selection with mode-aware branching, and anchored PR review posting. Cross-repo evidence policy and PR posting procedures referenced and fully documented.

🎯 3 (Moderate) | ⏱️ ~20 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title 'fix(core): resolve conflicts and drift between review skills' accurately reflects the main change: reconciling contradictions and drift between two review skills (in-depth-review and simple-review).
Description check ✅ Passed The description comprehensively explains the PR's purpose, the conflicts resolved, rubric drift reconciled, validation performed, and deferred work, directly addressing the changeset's scope and objectives.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch claude/trusting-lovelace-gPPSo
⚔️ Resolve merge conflicts
  • Resolve merge conflict in branch claude/trusting-lovelace-gPPSo

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

@nx-cloud

nx-cloud Bot commented Jun 5, 2026

Copy link
Copy Markdown

View your CI Pipeline Execution ↗ for commit 10f1556

Command Status Duration Result
nx affected --configuration ci --parallel 8 --t... ✅ Succeeded <1s View ↗
nx build ai-rules ✅ Succeeded 2s View ↗

☁️ Nx Cloud last updated this comment at 2026-06-05 08:47:23 UTC

Base automatically changed from codex/add-in-depth-review-skill to main June 10, 2026 15:21
@superzadeh superzadeh marked this pull request as ready for review June 12, 2026 16:18
@superzadeh superzadeh marked this pull request as draft June 12, 2026 16:18

@mendral-app mendral-app Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM

This is a documentation-only PR that reconciles known contradictions between two review skill files. The stated conflicts are properly resolved, reference files exist in all expected locations, and the .agents/ copies match their plugins/core/ sources. The architectural differences between the two skills (e.g., text-prompt vs structured picker for user gates) are intentional given their different complexity levels, not unresolved drift.

What this PR does

Reconciles conflicts and drift between the in-depth-review and simple-review skills by resolving three outright contradictions (convention-source listing, TaskCreateTodoWrite, /tmp wording) and porting missing rubric checks from simple-review into in-depth-review. Also bumps version sentinels from core@3.4.1 to core@3.5.0 in babysit-pr and commit-push-pr skills, and regenerates .agents/skills copies.

Tag @mendral-app with feedback or questions. View session

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🧹 Nitpick comments (2)
plugins/core/skills/simple-review/references/posting-pr-review.md (1)

93-93: 💤 Low value

Replace "addenda" with a clearer English phrase.

Line 93 uses "No trailing addenda" — LanguageTool suggests this foreign term may be unclear to all readers. Consider "No trailing additions," "No trailing extra notes," or "No appendices."

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@plugins/core/skills/simple-review/references/posting-pr-review.md` at line
93, Replace the unclear phrase "No trailing addenda" with a clearer English
alternative (e.g., "No trailing additions" or "No trailing extra notes") in the
markdown entry that currently reads "No trailing addenda. \"If feature X isn't
shipped yet…\", \"Note that this also affects…\", \"While you're here…\" — these
belong in the in-chat synthesis, not on the posted comment."; update that exact
sentence (search for the string "No trailing addenda") so the surrounding
guidance remains identical but uses the clearer wording.
plugins/core/skills/simple-review/SKILL.md (1)

72-72: 💤 Low value

Use a more specific number or phrase than "small number."

Line 72 says "more than a small number of commits" — this is vague. Replace with "more than a few" or specify a threshold (e.g., "more than 5 commits").

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@plugins/core/skills/simple-review/SKILL.md` at line 72, Replace the vague
phrase "more than a small number of commits" in the sentence "5. `HEAD` is more
than a small number of commits ahead of `origin/${base}` on Path A." with a
clearer term or explicit threshold (e.g., "more than a few commits" or "more
than 5 commits") so the condition in SKILL.md is unambiguous; update that exact
bullet item text to use the chosen phrasing.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@plugins/core/skills/simple-review/references/posting-pr-review.md`:
- Line 93: Replace the unclear phrase "No trailing addenda" with a clearer
English alternative (e.g., "No trailing additions" or "No trailing extra notes")
in the markdown entry that currently reads "No trailing addenda. \"If feature X
isn't shipped yet…\", \"Note that this also affects…\", \"While you're here…\" —
these belong in the in-chat synthesis, not on the posted comment."; update that
exact sentence (search for the string "No trailing addenda") so the surrounding
guidance remains identical but uses the clearer wording.

In `@plugins/core/skills/simple-review/SKILL.md`:
- Line 72: Replace the vague phrase "more than a small number of commits" in the
sentence "5. `HEAD` is more than a small number of commits ahead of
`origin/${base}` on Path A." with a clearer term or explicit threshold (e.g.,
"more than a few commits" or "more than 5 commits") so the condition in SKILL.md
is unambiguous; update that exact bullet item text to use the chosen phrasing.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: a65ad8f7-657d-49c3-9a7b-18946812c9c8

📥 Commits

Reviewing files that changed from the base of the PR and between 7be1e72 and 10f1556.

⛔ Files ignored due to path filters (9)
  • .agents/skills/babysit-pr/SKILL.md is excluded by !.agents/skills/**
  • .agents/skills/babysit-pr/scripts/_sentinel.sh is excluded by !.agents/skills/**
  • .agents/skills/commit-push-pr/SKILL.md is excluded by !.agents/skills/**
  • .agents/skills/in-depth-review/SKILL.md is excluded by !.agents/skills/**
  • .agents/skills/in-depth-review/references/cross-repo-evidence.md is excluded by !.agents/skills/**
  • .agents/skills/in-depth-review/references/posting-pr-review.md is excluded by !.agents/skills/**
  • .agents/skills/simple-review/SKILL.md is excluded by !.agents/skills/**
  • .agents/skills/simple-review/references/cross-repo-evidence.md is excluded by !.agents/skills/**
  • .agents/skills/simple-review/references/posting-pr-review.md is excluded by !.agents/skills/**
📒 Files selected for processing (12)
  • cspell.json
  • plugins/core/.claude-plugin/plugin.json
  • plugins/core/README.md
  • plugins/core/skills/babysit-pr/SKILL.md
  • plugins/core/skills/babysit-pr/scripts/_sentinel.sh
  • plugins/core/skills/commit-push-pr/SKILL.md
  • plugins/core/skills/in-depth-review/SKILL.md
  • plugins/core/skills/in-depth-review/references/cross-repo-evidence.md
  • plugins/core/skills/in-depth-review/references/posting-pr-review.md
  • plugins/core/skills/simple-review/SKILL.md
  • plugins/core/skills/simple-review/references/cross-repo-evidence.md
  • plugins/core/skills/simple-review/references/posting-pr-review.md
🔗 Linked repositories identified

CodeRabbit considers these linked repositories for cross-repo context during reviews:

  • ClipboardHealth/cbh-core (manual)

@stale

stale Bot commented Jun 19, 2026

Copy link
Copy Markdown

Is this still relevant? If so, what is blocking it? Is there anything you can do to help move it forward?

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs.

@stale stale Bot added the wontfix This will not be worked on label Jun 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

wontfix This will not be worked on

Development

Successfully merging this pull request may close these issues.

2 participants