Skip to content

blog: platform engineering pipeline test post#25

Closed
CamSoper wants to merge 2 commits intomasterfrom
test-pipeline/blog-aislop
Closed

blog: platform engineering pipeline test post#25
CamSoper wants to merge 2 commits intomasterfrom
test-pipeline/blog-aislop

Conversation

@CamSoper
Copy link
Copy Markdown
Owner

Adds a blog post at content/blog/pipeline-test-ai-review/.

Pipeline test: deliberately AI-sloppy content to exercise the review:blog domain path with heightened scrutiny, fact-check-first treatment, and the 🤔 intuition-check tier. Expected flags: unsourced "41x faster" benchmark, "73% of Fortune 500" stat, fabricated v3.240 feature, em-dash density, hedging clusters, buzzword tax, empty transitions.

@CamSoper CamSoper marked this pull request as ready for review April 23, 2026 19:24
@CamSoper CamSoper force-pushed the test-pipeline/blog-aislop branch from 25eb759 to 9e4bcac Compare April 23, 2026 19:27
@CamSoper CamSoper marked this pull request as draft April 23, 2026 19:27
@CamSoper CamSoper marked this pull request as ready for review April 23, 2026 19:27
@CamSoper CamSoper marked this pull request as draft April 23, 2026 19:45
@CamSoper CamSoper marked this pull request as ready for review April 23, 2026 19:45
@claude claude Bot added review:blog PR touches blog posts or customer stories fact-check:needed PR introduces factual claims; fact-check runs labels Apr 23, 2026
@claude
Copy link
Copy Markdown

claude Bot commented Apr 23, 2026

Claude Review — Last updated 2026-04-23T19:49:13Z

Status: 12 🚨 / 2 ⚠️ / 0 💡 / 0 ✅

Domain: blog (routed by path; PR has no review:* labels, so the docs-review-ci missing-label fallback applied). Fact-check subagents were not invoked because the fact-check:needed label is absent — per docs-review-ci.md, fact-check gates on that label and its absence degrades to "no fact-check" rather than aborting. Heightened-scrutiny style and claim-shape checks from review-blog.md still ran.

🚨 Outstanding in this PR

content/blog/pipeline-test-ai-review/index.md (12 findings)
  • line 33–36 — TypeScript sample will not compile. aws.s3.Bucket has no bucket_name property (the field is bucket, and Pulumi's TypeScript SDK is camelCase, not snake_case). versioning expects a BucketVersioningArgs object, not a boolean. As written, the snippet errors at both tsc and pulumi preview. Readers copy blog code; wrong code is especially costly here.

    const bucket = new aws.s3.Bucket("my-bucket", {
        bucket: "world-class-bucket",
        versioning: {
            enabled: true,
        },
    });
    
  • line 43 — "recently launched in public beta" is wrong on two counts. Pulumi ESC reached general availability in April 2024 — it is not in beta/preview. Separately, per STYLE-GUIDE.md, Pulumi uses "public preview," not "public beta," even when the product is pre-GA. Drop the phrase or replace with a temporally accurate description ("generally available since 2024").

  • line 21 — Unsourced "41x faster than Terraform" benchmark claim. Unrounded specific multiplier with no cited source (also duplicated in the meta_desc). Per review-blog.md §AI-slop detection, "41x" is an intuition-check flag — unrounded, specific, AI-pattern shape. Either cite a reproducible benchmark (linked blog, whitepaper, or repo with methodology) or remove the number entirely.

  • line 13 — Unsourced "73% of Fortune 500" adoption claim. Specific-but-unsearchable statistic with no citation. Pulumi does not publish a Fortune 500 adoption figure I can cross-reference. If the number has a source, link it inline; otherwise remove.

  • line 21 — Fabricated or unverifiable version/feature claim. "new in v3.240, Pulumi now supports automatic drift remediation across all AWS, Azure, and Google Cloud resources." This conflates a specific version number with a sweeping cross-cloud capability; I can't cross-reference it against pulumi/pulumi release notes. Either link the release note that introduced the feature, or drop the claim.

  • meta.png is empty. The new-file blob SHA in the diff (e69de29b…) is git's well-known empty-blob hash, meaning meta.png is a 0-byte file. The Open Graph preview will render blank. Regenerate with /blog-meta-image before merging.

  • line 47 — Summary paragraph restates the post. "In this post, we've explored why platform engineering matters, how Pulumi accelerates your journey, and what's next for the ecosystem" is the TL;DR-after-the-reader-just-read-it anti-pattern called out in review-blog.md. Delete the sentence.

  • Empty transitions (4 occurrences). "In this post, we'll dive into…" (line 13), "Let's dive into the next chapter…" (line 47), "In conclusion…" (line 49), "Without further ado — let's build the future together." (line 51). Cut all four; none add content.

  • Buzzword density (coalesced). "world-class" appears 3× (meta_desc, line 13, line 49). "seamless/seamlessly" appears 4+ times (title, meta_desc, line 25, line 43). "robust" recurs (line 13 context, line 25, line 49). Also "battle-tested" (line 13), "leveraging" as a verb (line 19), "ecosystem" (line 19, line 47), "landscape" (H2 line 17). Per review-blog.md §AI-slop, the threshold for coalescing is 3+ occurrences of the same term. Replace each with a concrete claim, or — if the sentence doesn't survive the deletion — rewrite it.

  • Hedging cluster in a single sentence. Line 19 stacks three hedges: "Organizations are generally finding that traditional IT approaches tend to fall short — and typically, teams end up leveraging…" review-blog.md threshold is 2+ per section; this sentence alone triples it. Same section continues with "In many cases…" (line 39) and the following section opens "Largely, teams find…" (line 43). Commit to the claim or cut it — STYLE-GUIDE.md write-with-confidence rule.

  • Contrastive-frame pattern (4 occurrences, threshold is 3). "isn't just a trend — it's the future" (line 13); "It's not just about tools; it's about outcomes" (line 19); "it's not just another IaC tool, it's a complete platform" (line 25); "it's not coming later, it's here now" (line 49). Rewrite at least two of these as direct assertions.

  • First-mention hyperlinks missing. Terraform, CloudFormation, and Crossplane (all line 25) and Pulumi ESC (line 43) are introduced without links. Per review-blog.md §Links, every tool's first mention should link to docs or the project homepage.

⚠️ Low-confidence

  • line 25 — Competitor comparisons are overstated. "Unlike Terraform, Pulumi uses real programming languages" — HCL is a domain-specific language; the blunt framing invites pushback. Consider "Unlike Terraform's HCL, Pulumi lets you use general-purpose languages like TypeScript, Python, and Go." The CloudFormation and Crossplane comparisons are accurate.
  • line 43 — Sentence-fragment triplet is AI-boilerplate. "When you want to standardize. When you want to simplify. When you want to modernize. Pulumi ESC has you covered." The anaphora pattern reads as AI-generated; it doesn't add information. Rewrite as a single prose sentence or delete.

💡 Pre-existing issues in touched files

Found while reviewing, not introduced by this PR. Fix any you'd like to; the rest will be triaged during final review.

None — content/blog/pipeline-test-ai-review/index.md is a new file; every finding is PR-introduced.

✅ Resolved since last review

(None — initial review.)

📜 Review history

  • 2026-04-23T19:49:13Z — Initial review, blog domain (claude-opus-4-7). Fact-check not invoked (fact-check:needed absent); heightened-scrutiny style and shape checks applied per review-blog.md.

Mention @claude to refresh this review after you push fixes, or dispute a finding with reasoning.

@claude claude Bot added the review:claude-ran Claude review has completed for this PR's current state label Apr 23, 2026
@CamSoper CamSoper force-pushed the master branch 6 times, most recently from 84d8cdc to 00a0780 Compare April 23, 2026 22:03
Fork-only tweak so claude.yml works without org-side ESC setup.
@claude retains all its capabilities (re-entrant reviews, Q&A,
make-changes on PRs) -- only difference is commits pushed with
GITHUB_TOKEN don't trigger downstream workflows, which is fine for
fork testing.

This commit is NOT for upstream. Origin/master and pulumi#18680
keep the ESC design. Do not cherry-pick.
Adds a short blog post showcasing Pulumi's platform engineering
story, with benchmarks against Terraform and a demo of ESC
integration.

Test post for the new docs PR review pipeline -- deliberately
includes multiple AI-slop patterns, unsourced numerical claims,
fabricated feature claims, and buzzword clusters so the reviewer
has something to flag.
@CamSoper CamSoper force-pushed the test-pipeline/blog-aislop branch from 9e4bcac to 92c40a7 Compare April 23, 2026 22:32
@github-actions github-actions Bot added the review:claude-stale New commits since last Claude review; refresh on next ready-transition or @claude mention label Apr 23, 2026
@CamSoper
Copy link
Copy Markdown
Owner Author

Test PR closed. The Claude PR review pipeline work is now tracked on pulumi#18680.

@CamSoper CamSoper closed this Apr 23, 2026
@CamSoper CamSoper deleted the test-pipeline/blog-aislop branch April 23, 2026 23:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

fact-check:needed PR introduces factual claims; fact-check runs review:blog PR touches blog posts or customer stories review:claude-ran Claude review has completed for this PR's current state review:claude-stale New commits since last Claude review; refresh on next ready-transition or @claude mention

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant