Conversation
ApprovabilityVerdict: Not approved Macroscope's review found this PR not approvable — This production change alters Cursor usage pricing and cache-savings calculations by normalizing additional Claude model aliases. Although the logic is localized and tested, pricing/metering changes require human review. You can add or adjust custom eligibility rules. Learn more. |
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository: pingdotgg/t3code/.coderabbit.yaml Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (3)
Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 9 remain after this review. 📝 WalkthroughWalkthroughCursor Claude model names now map to canonical rate-table keys after supported trailing modifiers are removed. Pricing and transcript tests cover version-first names and provider-reported costs. ChangesCursor Claude rate model normalization
Priority: ➖ Normal Estimated code review effort: 2 (Simple) | ~10 minutes Change: Bug fix Merge Risk: ⚪ Minimal · up to The Cursor Claude alias change has no identified issue that needs resolution before merge; normal checks still apply. 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
Cursor reports Claude model IDs such as
claude-4.5-sonnetandclaude-4.6-opus-high-thinking. The rate table usesclaude-sonnet-4-5andclaude-opus-4-6, so these records still show zero cache savings after #13731. When Cursor omits a cost, the same mismatch leaves the record unpriced.Extend the existing Cursor rate-name helper to normalize version-first Claude names and strip recognized effort/thinking suffixes in either order. The reader keeps the original display model; provider-reported costs and exact-model custom prices retain their existing precedence. All clients receive the corrected server usage summary.
The version-first name is documented in Cursor's usage API examples, and the
-high-thinkingordering is already present in this repo's Cursor provider fixtures. No existing open PR covers this normalization gap.Validation:
unpricedinstead ofmodelPriced, then passes with the fix.git diff --checkpassed.Model: GPT-6. Harness: Codex.
Summary by CodeRabbit