[WIP DEMO] feat(case-study): Anysphere Cursor success story [FABLE 5 HIGH]#149
[WIP DEMO] feat(case-study): Anysphere Cursor success story [FABLE 5 HIGH]#149oycyc wants to merge 3 commits into
Conversation
New immersive-layout case study at /case-studies/cursor/ built verbatim from the Notion draft: hero + stat strip, Key Value impact grid, problem narrative with pullquotes, four-phase engagement (phase-map csi-steps + before/after csi-compare ledgers), results sections wired to the branded Cursor x Masterpoint graphics, featured closing testimonial, and a custom "Terraform ceilings" CTA (new .csi-cta chip-list styling). Also adds a white-recolored Cursor wordmark for the pine hero/sticky bar and documents the new patterns in docs/case-studies.md. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
✅ Deploy Preview for masterpoint ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
|
Warning Review limit reached
Next review available in: 12 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (3)
WalkthroughAdds a new Cursor immersive case study with phased Terraform and OpenTofu engagement details, metrics, testimonials, authoring guidance, and CTA chip styling. ChangesCursor case study
Estimated code review effort: 3 (Moderate) | ~20 minutes Possibly related PRs
Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 3
🤖 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.
Inline comments:
In `@assets/css/case-studies.scss`:
- Around line 2974-2979: Add a blank line between the closing p + p rule and the
CTA chip-list comment preceding ul.csi-cta__ceilings, then validate the SCSS
using the repository’s Aqua-managed Hugo Extended v0.145.0.
In `@content/case-studies/cursor.md`:
- Line 293: Update the csi-split invocation for the “Infrastructure became
democratized” section to use the documented `variant="pine"` value for the
tf-workspaces graphic instead of `variant="light"`; only revise the
documentation if the exported asset is confirmed to be light.
- Around line 1-6: Update the `mp-cursor-tf-workspaces.png` split in the Cursor
case study to use `variant="pine"` instead of `variant="light"`, matching the
graphic’s dark background and the surrounding immersive card styling.
🪄 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: Repository UI
Review profile: CHILL
Plan: Pro
Run ID: 6f676baf-8d3c-4cde-b8a8-6cec88867b78
⛔ Files ignored due to path filters (7)
static/img/case-studies/anysphere/cursor-logo-white.svgis excluded by!**/*.svgstatic/img/case-studies/anysphere/mp-cursor-dependency-graph.pngis excluded by!**/*.pngstatic/img/case-studies/anysphere/mp-cursor-deploy-frequency-growth.pngis excluded by!**/*.pngstatic/img/case-studies/anysphere/mp-cursor-deploy-frequency-stat.pngis excluded by!**/*.pngstatic/img/case-studies/anysphere/mp-cursor-plan-time-columns.pngis excluded by!**/*.pngstatic/img/case-studies/anysphere/mp-cursor-plan-time-dial.pngis excluded by!**/*.pngstatic/img/case-studies/anysphere/mp-cursor-tf-workspaces.pngis excluded by!**/*.png
📒 Files selected for processing (3)
assets/css/case-studies.scsscontent/case-studies/cursor.mddocs/case-studies.md
| p + p { | ||
| margin-top: 0.9rem; | ||
| } | ||
| // "ceilings" chip list (Cursor CTA) — a plain <ul> in the callout HTML | ||
| // rendered as centered pill chips instead of a bullet list | ||
| ul.csi-cta__ceilings { |
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
Add the blank line required by Stylelint.
The comment before the CTA chip-list needs an empty line after the preceding rule.
Proposed fix
p + p {
margin-top: 0.9rem;
}
+
// "ceilings" chip list (Cursor CTA) — a plain <ul> in the callout HTMLAlso validate the SCSS with the repository’s Aqua-managed Hugo Extended v0.145.0.
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| p + p { | |
| margin-top: 0.9rem; | |
| } | |
| // "ceilings" chip list (Cursor CTA) — a plain <ul> in the callout HTML | |
| // rendered as centered pill chips instead of a bullet list | |
| ul.csi-cta__ceilings { | |
| p + p { | |
| margin-top: 0.9rem; | |
| } | |
| // "ceilings" chip list (Cursor CTA) — a plain <ul> in the callout HTML | |
| // rendered as centered pill chips instead of a bullet list | |
| ul.csi-cta__ceilings { |
🧰 Tools
🪛 Stylelint (17.14.0)
[error] 2977-2977: Expected empty line before comment (scss/double-slash-comment-empty-line-before)
(scss/double-slash-comment-empty-line-before)
🤖 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 `@assets/css/case-studies.scss` around lines 2974 - 2979, Add a blank line
between the closing p + p rule and the CTA chip-list comment preceding
ul.csi-cta__ceilings, then validate the SCSS using the repository’s Aqua-managed
Hugo Extended v0.145.0.
Sources: Coding guidelines, Linters/SAST tools
| --- | ||
| title: "75% Faster Plans, 2x Daily Applies: How Cursor Rebuilt Its Terraform Workflow with Masterpoint" | ||
| weight: 1 | ||
| description: "Masterpoint rebuilt Cursor's Terraform and IaC workflow: production plan times dropped from 10+ minutes to roughly 2, weekly infrastructure PRs grew from 194 to 500+, and a monolithic terralith became 100+ narrow root modules on Spacelift and OpenTofu." | ||
|
|
||
| layout: immersive |
There was a problem hiding this comment.
🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
set -euo pipefail
# Inspect the relevant file and the case-study guidance.
git ls-files content/case-studies/cursor.md docs/case-studies.md
echo '--- cursor.md (front matter + nearby lines) ---'
sed -n '1,40p' content/case-studies/cursor.md
echo '--- doc guidance ---'
sed -n '1,260p' docs/case-studies.md
echo '--- locate the referenced image/variant usage ---'
rg -n 'mp-cursor-tf-workspaces\.png|variant=' content/case-studies/cursor.mdRepository: masterpointio/masterpoint.io
Length of output: 25847
🏁 Script executed:
#!/bin/bash
set -euo pipefail
echo '--- surrounding lines around the questioned image ---'
sed -n '286,304p' content/case-studies/cursor.md
echo '--- search for tf-workspaces references ---'
rg -n 'tf-workspaces|mp-cursor-tf-workspaces' -S content docs layouts assets
echo '--- image inspection (if present) ---'
python3 - <<'PY'
from pathlib import Path
from PIL import Image
p = Path('static/img/case-studies/anysphere/mp-cursor-tf-workspaces.png')
print('exists:', p.exists())
if p.exists():
img = Image.open(p).convert('RGBA')
print('size:', img.size)
# sample a small grid to estimate whether the image is generally light or dark
w, h = img.size
xs = [int(w * x) for x in (0.1, 0.3, 0.5, 0.7, 0.9)]
ys = [int(h * y) for y in (0.1, 0.3, 0.5, 0.7, 0.9)]
vals = []
for y in ys:
for x in xs:
r, g, b, a = img.getpixel((min(x, w-1), min(y, h-1)))
vals.append((r+g+b)/3)
print('sample_avg_luma:', sum(vals)/len(vals))
PYRepository: masterpointio/masterpoint.io
Length of output: 3100
🏁 Script executed:
#!/bin/bash
set -euo pipefail
echo '--- docs guidance around the variant rule ---'
sed -n '380,405p' docs/case-studies.md
echo '--- other case-study front matter for comparison ---'
for f in content/case-studies/*.md; do
printf '\nFILE: %s\n' "$f"
sed -n '1,12p' "$f"
doneRepository: masterpointio/masterpoint.io
Length of output: 4176
Switch the tf-workspaces split to variant="pine".
content/case-studies/cursor.md:293 uses variant="light" for mp-cursor-tf-workspaces.png, but this graphic is dark-background and should be paired with variant="pine" so it matches the rest of the immersive card styling.
🤖 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 `@content/case-studies/cursor.md` around lines 1 - 6, Update the
`mp-cursor-tf-workspaces.png` split in the Cursor case study to use
`variant="pine"` instead of `variant="light"`, matching the graphic’s dark
background and the surrounding immersive card styling.
Source: Coding guidelines
Fold the per-heading bands into single cards — one Engagement card with all four phases, one Results card, one What-Changed card — using new .csi-prose h3/h4 in-card subheading styles (gradient rule, white on pine, heading-anchor link override) and inline prose image styling for the branded graphics. Drops the phase-map steps, the stock Spacelift/OpenTofu images, and the standalone split sections. All wording unchanged. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Add csi-section align="article" mode — a 920px head+prose column centered in the card with text left-aligned — and apply it to the Cursor page's four long cards, which otherwise rendered as a 760px left-hugging strip with an empty right half. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

Summary
New immersive-layout case study for Cursor (Anysphere) at
/case-studies/cursor/, built from the Notion draft with all wording verbatim — only the arrangement (sections, shortcodes, ordering) is editorial.Page structure
8→2 min plans, ~194→500+ PRs/wk, 54→5 resources, 40k+ resources), white-recolored Cursor wordmark lockupcsi-stepsroadmap, then one card per phase (Nov audit with before/aftercsi-compareledgers, Dec Spacelift kickoff, Jan–Feb bulk migration, Feb–May AI agent guardrails with a 2-col rules list).csi-ctaCSS)Graphics
All six Notion graphics are checked into
static/img/case-studies/anysphere/. One of each duplicate pair is placed in the body; the dark frequency-growth chart doubles aspreview_image/og_img, andmp-cursor-plan-time-columns.pngis the spare duplicate (kept for swapping).Verification
hugobuilds clean; visually reviewed every band via headless Chrome at desktop width (hero, sticky nav scrollspy, all splits/ledgers/grids, testimonial, CTA)docs/case-studies.mdupdated with the new patterns per repo convention🤖 Generated with Claude Code
Summary by CodeRabbit
New Features
Documentation