Skip to content

docs: downshift model recommendations toward cheaper tiers#1

Merged
cristim merged 3 commits into
mainfrom
docs/cheaper-model-recs
Apr 30, 2026
Merged

docs: downshift model recommendations toward cheaper tiers#1
cristim merged 3 commits into
mainfrom
docs/cheaper-model-recs

Conversation

@cristim
Copy link
Copy Markdown
Member

@cristim cristim commented Apr 30, 2026

Summary

  • Rewrites the model-tier rubrics in CLAUDE.md §2 and triage.md to push tasks toward cheaper tiers wherever the cheaper tier is plausibly capable, per the existing "go one tier cheaper when in doubt" principle (line 209).
  • CLAUDE.md: Haiku gains (default for most delegations) plus 6 example tasks downshifted from Sonnet (test from tight spec, small-diff code review, mechanical API migration, rubric-driven labelling, etc.). Sonnet narrows to multi-file judgement, function impl with 1–2 design choices, multi-file/non-trivial-logic review, clear-target refactors, and reasoning-heavy agentic loops. Opus narrows "reading a large unfamiliar codebase" to the no-graphify case.
  • triage.md: default flips from Sonnet to Haiku (most chunks). Sonnet reserved for chunks needing priority calibration. Opus marked "rare", reserved for CVE-class security or architecture-proposal chunks.
  • Untouched: the meta-principle on line 209 and the pre-existing Task vs. Agent terminology drift on line 210 (flagged for separate cleanup).

Test plan

  • Read CLAUDE.md §2 lines 205–210 standalone — rubric reads coherently after rewrite
  • Read triage.md lines 217–221 standalone — rubric reads coherently after rewrite
  • Read both back-to-back — Haiku/Sonnet/Opus assignments are consistent across files (e.g. triage's "Haiku default" supported by CLAUDE.md's Haiku list including "labelling against a clear rubric")
  • git diff --stat origin/main shows exactly two files changed, two hunks total

Summary by CodeRabbit

  • Documentation
    • Refined model-tier guidance: Haiku set as default and broadened to include routine git/gh ops, small single-file reviews, tightly-specified impl/tests, rubric-driven classification, and short-input summarization.
    • Sonnet redefined for multi-file coordination, limited design judgment, and non-trivial agentic reasoning loops.
    • Opus clarified for deep understanding scenarios (including large-codebase onboarding constraints).
    • CI/watchers: prefer Haiku with explicit conditional escalation to Sonnet for complex reasoning or exploratory debugging.

Rewrites the model-tier rubrics in CLAUDE.md §2 and triage.md to reflect
Haiku 4.5's expanded capabilities. Tasks that can plausibly run on a
cheaper tier now do — most notably the triage default flips from Sonnet
to Haiku, and several Sonnet-tier examples (test writing from a tight
spec, small-diff code review, mechanical API migrations) move to Haiku.
Sonnet's "agentic loops" example is qualified to "non-trivial reasoning
per step" so rubric-driven loops stay on Haiku. Opus narrows
"reading a large unfamiliar codebase" to the case without graphify.

The "When in doubt, go one tier cheaper" meta-principle (line 209) and
the Task vs. Agent terminology drift on line 210 are intentionally
unchanged.
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Apr 30, 2026

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: feb21627-27ba-4f38-be17-9e9f7d34f00a

📥 Commits

Reviewing files that changed from the base of the PR and between bca50e5 and 3863e7f.

📒 Files selected for processing (1)
  • git-workflow.md

📝 Walkthrough

Walkthrough

Documentation updates refining model-tier guidance and CI watcher agent behavior: CLAUDE.md broadens Haiku and redefines Sonnet/Opus distinctions (adds graphify-out/ note); triage.md marks Haiku as default and tightens Sonnet/Opus criteria; git-workflow.md sets watcher agents to model: haiku with conditional Sonnet respawn for complex reasoning.

Changes

Cohort / File(s) Summary
Model-tier guidance
CLAUDE.md
Expanded Haiku to cover routine gh/git ops, tightly-specified implementations/tests, small single-file reviews, SDK/API migration docs, rubric-based labeling, and short summaries. Rewrote Sonnet to clarify multi-file coordination and limited design judgement (including non-trivial agentic loops). Updated Opus to clarify “understanding required” scenarios and added the graphify-out/ availability constraint for large-codebase onboarding.
Triage rules
triage.md
Designated Haiku as the default for mechanical, rubric-driven triage (typo/dup/stale with clear severity/effort). Recast Sonnet for priority calibration requiring judgement and project-context tradeoffs. Tightened Opus guidance for exploitability/security assessments and architecture proposals needing deep design judgement.
CI / agent workflow
git-workflow.md
Set model: haiku for CI run watcher (ci-watch-<sha>-<workflow-slug>-<run-id>), CodeRabbit PR watcher, and merge watcher. Introduced unique naming including run-id and conditional guidance to respawn only relevant fix/verification sub-steps on Sonnet when tasks need non-trivial reasoning or exploratory UI debugging.

Sequence Diagram(s)

sequenceDiagram
    participant CI as CI (GitHub Actions)
    participant Watcher as CI-watch agent
    participant Model as Model tier selector
    participant Sonnet as Sonnet agent
    participant Repo as Repository / PR

    CI->>Watcher: push / workflow run
    Watcher->>Model: evaluate task complexity & rubric
    alt Mechanical / rubric-driven
        Model->>Watcher: choose Haiku
        Watcher->>Repo: run mechanical triage/fixes (Haiku)
    else Requires non-trivial reasoning
        Model->>Watcher: choose Haiku then escalate
        Watcher->>Sonnet: respawn specific fix/verification step (Sonnet)
        Sonnet->>Repo: handle exploratory or multi-file reasoning
    end
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Poem

🐇 I hopped through lines to mend the tiers,
Haiku for small hops, Sonnet ponders gears,
Opus maps the sprawling ground,
Agents now know when to bound. ✨

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely summarizes the main objective: downshifting model recommendations toward cheaper tiers across documentation files.
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 unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/cheaper-model-recs

Review rate limit: 3/5 reviews remaining, refill in 21 minutes and 44 seconds.

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

Adds explicit `model: haiku` hints (with re-spawn-on-Sonnet escalation
notes) at the three background-agent spawn sites in git-workflow.md:
ci-watch, cr-watch, and merge-watch. Their core work is polling,
log/triage, and routine deploy verification — Haiku per the rubric just
updated in CLAUDE.md §2. The escalation notes preserve the meta-rule
on line 209: re-spawn on a stronger tier only when a specific step
genuinely needs it.

This locks the choice in at the spawn site rather than relying on the
spawning agent to reconsult CLAUDE.md every time.
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@git-workflow.md`:
- Line 67: The watcher name template "ci-watch-<short-sha>-<workflow-slug>" can
collide across runs; update the agent spawn logic that creates the Agent tool
(where you set run_in_background: true and model: haiku and call SendMessage) to
include the unique <run-id> in the name (e.g.,
"ci-watch-<run-id>-<short-sha>-<workflow-slug>") so each Agent instance is
globally unique and addressable via SendMessage; keep the rest of the Agent
options (run_in_background, model: haiku) unchanged and ensure any code that
looks up agents by name uses the new template.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: e1b3b645-fac6-4856-a631-9ff7e36a7083

📥 Commits

Reviewing files that changed from the base of the PR and between 54373d2 and bca50e5.

📒 Files selected for processing (1)
  • git-workflow.md

Comment thread git-workflow.md Outdated
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
@cristim cristim merged commit 057c838 into main Apr 30, 2026
1 check was pending
@cristim cristim deleted the docs/cheaper-model-recs branch April 30, 2026 12:33
@cristim cristim added triaged Item has been triaged type/docs Documentation severity/low Minor harm urgency/eventually No deadline impact/internal Team-internal only effort/xs Trivial / one-liner priority/p3 Polish / idea / may never ship labels Apr 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

effort/xs Trivial / one-liner impact/internal Team-internal only priority/p3 Polish / idea / may never ship severity/low Minor harm triaged Item has been triaged type/docs Documentation urgency/eventually No deadline

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant