Skip to content

Add blog post: previous-version CLI and SDK docs on the docs site#20033

Merged
CamSoper merged 10 commits into
masterfrom
claude/cli-sdk-versioned-docs-post-8y3add
Jul 8, 2026
Merged

Add blog post: previous-version CLI and SDK docs on the docs site#20033
CamSoper merged 10 commits into
masterfrom
claude/cli-sdk-versioned-docs-post-8y3add

Conversation

@CamSoper

@CamSoper CamSoper commented Jul 1, 2026

Copy link
Copy Markdown
Contributor

Proposed changes

Adds a short announcement post (category: product) under my byline covering the new version selector on the Pulumi CLI command reference and the SDK API docs. Mirrors the earlier "Previous Provider Version Docs in Pulumi Registry" post by the same author.

  • New post: content/blog/previous-cli-and-sdk-version-docs/index.md
  • Sections: How it works / What's available / Get started, closing with a blog/cta-button.
  • Covers the CLI command reference and the Node.js, Python, .NET, and Java SDK API docs, with a brief coverage note (history back to ~v3.150.0; the Go SDK is versioned on pkg.go.dev).
  • Social copy for X / LinkedIn / Bluesky in frontmatter, each within platform limits and following the social-review rules (no banned phrases, no first-person singular, correct paragraph counts).

Related issues (optional)

Announces the feature from #19800 (Add versioned SDK & CLI docs).

Short announcement (category: product) under Cam Soper's byline covering the
new version selector on the Pulumi CLI command reference and the SDK API docs,
plus X/LinkedIn/Bluesky social copy. Includes a brief coverage note (history
back to ~v3.150.0; Go SDK lives on pkg.go.dev).

meta.png/feature.png are the repo placeholders pending a design-team feature
image (PR labeled needs-design). Two in-body screenshots
(cli-version-selector.png, sdk-version-selector.png) still to be added.

Co-Authored-By: Claude <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DXJSTjHKva4deisVWmnL3i
@github-actions

github-actions Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor

Social Media Review

content/blog/previous-cli-and-sdk-version-docs/index.md

X — PASS

LinkedIn — PASS

Bluesky — PASS


Suggestions (advisory)

These are stylistic notes — they don't block the post.

X

  • Lacks specificity — "an older Pulumi CLI or SDK release" and "docs that describe a newer one" have no named version or language to anchor on, unlike the LinkedIn copy's "Node.js, Python, .NET, and Java"

LinkedIn

  • Third paragraph spells out the fix's exact scope ("CLI command reference and the SDK API docs, across Node.js, Python, .NET, and Java") — that's the article's key fact already spent, so the closing "Here's what changed" pointer promises information the post just delivered
  • Extra LinkedIn space goes to enumerating the fix's coverage rather than a richer story beat — same information as X and Bluesky, just spelled out further

Bluesky

  • No suggestions

Updated for commit a40cbfe1a5e36534ac220b4117aec81b9b49c91e (short: a40cbfe) at 2026-07-03 17:56 UTC.

@pulumi-bot

pulumi-bot commented Jul 1, 2026

Copy link
Copy Markdown
Collaborator

@CamSoper CamSoper marked this pull request as ready for review July 1, 2026 21:22
@github-actions github-actions Bot added review:triaging Claude Triage is currently classifying the PR domain:blog PR touches blog posts or customer stories review:in-progress Claude review is currently running and removed review:triaging Claude Triage is currently classifying the PR labels Jul 1, 2026
@github-actions

github-actions Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor

Pre-merge Review — Last updated 2026-07-07T22:09:06Z

Tip

Summary: This PR announces a version selector on the Pulumi CLI command reference and SDK API docs. Since the last review, the author retitled the post (dropping the redundant "on pulumi.com"), bumped the publish date to match the actual merge date, tightened the "What's available" and "Get started" copy, and adopted the repo's build-time social-card convention (dropped the committed meta_image/meta.png in favor of the on-brand card generated from title + feature image, and re-rendered feature.png from the Rocket template). The kind of wrongness that would block a reader here is a claim about the version selector's behavior that doesn't match how it actually works — the rewritten "Get started" sentence asserts version selections are "sticky," which needed a look since the selector doesn't store a preference. It checks out as practically accurate (browsing stays within the chosen version's URL tree, so you're not asked to reselect) but is flagged below for imprecise wording. Passes run: claim re-verification on the fix-push diff (title/date/meta_image/body changes since the last review), the new behavior claim checked against the version-selector's source, frontmatter/social duplicate sweep (no social copy changed in this diff), and a fresh style lint.

Review confidence:

Dimension Level Notes
mechanics HIGH
facts HIGH One verified claim ("selections are sticky") flagged for imprecise wording — mechanism is URL-path scoping, not stored preference; practical effect described is accurate.
coherence HIGH
Investigation log
  • Cross-sibling reads: not run (not in a templated section)
  • External claim verification: 7 of 17 claims verified (0 unverifiable, 0 contradicted) · 4 specialists (numerical, cross-reference, capability, framing); 0 cross-specialist corroborations · routed: 1 inline, 12 Pass 1, 2 Pass 2 (verified 1, contradicted 0, unverifiable 0), 2 Pass 3 (verified 1, contradicted 0, unverifiable 1).
  • Cited-claim spot-checks: 2 of 2 cited claims fetched and compared
  • Frontmatter sweep: ran on body + meta_desc + social.{bluesky, linkedin, twitter}
  • Temporal-trigger sweep: ran (recency words present in diff; spot-check in-review)
  • Code execution: not run (no static/programs/ change)
  • Code-examples checks: not run (no fenced code blocks in content files)
  • Editorial-balance pass: ran (single-subject, N/A)
🚨 Outstanding ⚠️ Low-confidence 💡 Pre-existing ✅ Resolved
0 2 0 0

🔍 Verification trail

17 claims extracted · 7 verified · 0 unverifiable · 0 contradicted
  • L2 in content/blog/previous-cli-and-sdk-version-docs/index.md "title: 'New: Versioned CLI and SDK Docs'" → ➖ not-a-claim (evidence: front-matter title, not a falsifiable third-party assertion; source: repo:content/blog/previous-cli-and-sdk-version-docs/index.md)
  • L3 "date: 2026-07-07" → ➖ not-a-claim (evidence: front-matter publication date, updated to match the actual publish date; not a checkable claim; source: repo:content/blog/previous-cli-and-sdk-version-docs/index.md)
  • L5 "meta_desc: The Pulumi CLI command reference and SDK API docs now include a version selector..." (also L17, L21, L31, L36, L54) → ➖ not-a-claim (evidence: first-party announcement of a feature the docs team built and shipped on its own site, restated consistently across body/meta_desc/social; source: repo:content/blog/previous-cli-and-sdk-version-docs/index.md)
  • L36 "The CLI command reference and SDK API docs now include a version selector." (also L42) → ✅ verified (evidence: consistent across body and social copy; unchanged since last review; source: repo:content/blog/previous-cli-and-sdk-version-docs/index.md)
  • L36 "Users can pick their release from the dropdown and the docs will match what they're running." → ➖ not-a-claim (evidence: author's own description of this PR's feature, restated elsewhere; source: repo:content/blog/previous-cli-and-sdk-version-docs/index.md)
  • L36 "Pinned to an older Pulumi CLI or SDK version and finding that the docs describe a newer release?" → ➖ not-a-claim (evidence: the post's own framing of the problem its feature solves; source: repo:content/blog/previous-cli-and-sdk-version-docs/index.md)
  • L42 "When you open the CLI command reference, you'll see a version dropdown near the top of the page, below the title." (also L44, L46 image captions) → ✅ verified (evidence: unchanged since the last review, when the wording was corrected in commit f63c702 to match the post's own screenshot; source: repo:content/blog/previous-cli-and-sdk-version-docs/index.md)
  • L50 "Alongside the latest release, we keep immutable snapshots of previous versions going back to v3.150.0, covering the CLI command reference and the Node.js, Python, .NET, and Java SDK API docs." → ➖ not-a-claim (evidence: first-party description of this PR's own feature; source: repo:content/blog/previous-cli-and-sdk-version-docs/index.md)
  • L50 "The Go SDK is versioned on pkg.go.dev (https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3) rather than in the Pulumi docs." → ✅ verified (evidence: reworded from "rather than on the docs site" to "rather than in the Pulumi docs" in this diff — same claim, same cited URL, still a live pkg.go.dev page showing version info; source: https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3)
  • L54 "The CLI command reference is available at /docs/iac/cli/commands/." → ✅ verified (evidence: link unchanged in this diff; content/docs/iac/cli/commands/_index.md exists with title "Pulumi CLI commands"; source: repo:content/docs/iac/cli/commands/_index.md)
  • L54 "Selections are sticky, so when you navigate into a version, you'll be able to click around within that same version without having to choose it again." → ✅ verified (evidence: new claim introduced in commit 27bf0c5. static/js/versioned-docs.js navigates to a full URL under a per-version path when a version is chosen, and internal links within an archived version's docs stay under that same version's URL subtree — so in practice a reader doesn't have to reselect while browsing. The mechanism is URL-path scoping, not a stored/remembered preference (no cookie or localStorage entry holds the choice), so "sticky" slightly overclaims persisted state — flagged below as a wording nuance, not a factual error; source: repo:static/js/versioned-docs.js)
  • L56 "Issues can be opened on the pulumi/docs GitHub repository at https://github.com/pulumi/docs." → ➖ not-a-claim (evidence: a factual, non-third-party statement about where to file issues, unchanged in this diff; source: repo:content/blog/previous-cli-and-sdk-version-docs/index.md)
  • L58 "There is a CTA button linking to the CLI command reference at /docs/iac/cli/commands/, labeled 'Browse the CLI command reference.'" → ✅ verified (evidence: unchanged in this diff; {{< blog/cta-button "Browse the CLI command reference" "/docs/iac/cli/commands/" >}}; source: repo:content/blog/previous-cli-and-sdk-version-docs/index.md and repo:layouts/shortcodes/blog/cta-button.html)
  • L17 (twitter), L31 (bluesky) restatements of the version-selector announcement → ➖ not-a-claim (evidence: social copy unchanged in this diff, already verified in the prior review; source: repo:content/blog/previous-cli-and-sdk-version-docs/index.md)
  • L21 (linkedin) "We just removed that step for the CLI command reference and the SDK API docs, across Node.js, Python, .NET, and Java." → ➖ not-a-claim (evidence: first-party restatement of the SDK-language coverage, unchanged in this diff; source: repo:content/blog/previous-cli-and-sdk-version-docs/index.md)
  • L6 "feature_image: feature.png" (meta_image dropped) → ➖ not-a-claim (evidence: frontmatter change, not a factual assertion; re-rendered feature.png confirmed to be a real Rocket-template render, not a placeholder; adopting the build-time social-card convention is the repo-recommended path per AGENTS.md; source: repo:content/blog/previous-cli-and-sdk-version-docs/feature.png)

📊 Editorial balance

Single-subject post; balance check N/A.

🚨 Outstanding in this PR

No outstanding findings in this PR.

⚠️ Low-confidence

Review each and resolve as appropriate — these don't block the PR.

  • [L54] content/blog/previous-cli-and-sdk-version-docs/index.md — "Selections are sticky" describes a real effect (you won't be asked to reselect a version while browsing pages inside it), but the underlying mechanism is URL-path scoping, not a stored/remembered preference — nothing carries your choice across an external link back into "latest" docs or a fresh visit. Consider rewording to avoid implying persisted state, e.g. "navigating within a version keeps you on that version's docs."

Style findings

Found by pattern-based linting; Findings may be false positives.

  • line 54: [style] substitution — Use 'select' instead of 'click' (STYLE-GUIDE.md).

💡 Pre-existing issues in touched files (optional)

No pre-existing issues in touched files.

✅ Resolved since last review

Nothing was outstanding or low-confidence going into this run to resolve.

📜 Review history

  • 2026-07-01T21:25:39Z — Clean new product-announcement blog post; internal/external claims and product category verified, one first-party UI-placement claim left low-confidence (corroborated by the post's screenshot), plus one style nag. (9f62142)
  • 2026-07-01T21:43:07Z — Re-reviewed after fix push (1 new commit, f63c702): UI-placement wording corrected to match the post's own screenshot, resolving the prior low-confidence finding; the "click" style nag is also gone as a side effect (fresh Vale pass on HEAD returned no findings). Social copy for X/LinkedIn/Bluesky was substantially rewritten in the same commit — re-checked against hard-fail rules (banned phrases, "I" voice, URLs, hashtags, markdown, paragraph structure, char limits: X 194/255, LinkedIn 560/2950, Bluesky 225/300) and all three platforms pass; no new claims introduced (rewritten copy restates the same first-party feature description already covered in the body). (re-verified on request from @CamSoper)
  • 2026-07-07T22:09:06Z — Re-reviewed after fix push (4 new commits since f63c702: 14864ea merge from master, a40cbfe regenerate feature image + adopt build-time social card, 3114523 update publish date, 27bf0c5 refine wording): title tightened, publish date corrected to the actual publish date, meta_image/meta.png dropped in favor of the repo's build-time social card (per AGENTS.md convention), feature.png re-rendered from the Rocket template, and the "What's available"/"Get started" paragraphs revised. One new claim introduced by the wording change — "Selections are sticky…" — verified against the version-selector's implementation (static/js/versioned-docs.js): practically accurate, but the "sticky" wording implies stored state that doesn't exist, so it's flagged as low-confidence. Same style nit recurs on the rewritten line ('click' → 'select'). No other findings. (re-verified on request from @CamSoper) (27bf0c5)

Need a re-review? Want to dispute a finding? Mention @claude and include #update-review.
(For ad-hoc questions or fixes, just @claude — no hashtag.)

@github-actions github-actions Bot added review:no-blockers Claude review completed cleanly; outstanding is empty and removed review:in-progress Claude review is currently running labels Jul 1, 2026
claude added 2 commits July 1, 2026 21:30
Reworks the X, LinkedIn, and Bluesky posts to withhold the mechanism
(version selector) and end on a hook, per the social-review advisory
notes and the house "tee up, don't deliver" style. Verified within
platform limits (X 194/255, LinkedIn 560/2950, Bluesky 225/300).

Co-Authored-By: Claude <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DXJSTjHKva4deisVWmnL3i
Aligns the CLI selector description with the screenshot (the VERSION
dropdown sits near the top of the page, below the title, rather than
beside it) and swaps "a click away" for "select your version" per
STYLE-GUIDE.md. Addresses the two low-confidence pre-merge review notes.

Co-Authored-By: Claude <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DXJSTjHKva4deisVWmnL3i
@github-actions github-actions Bot added review:stale New commits since last Claude review; refresh on next ready-transition or @claude mention and removed review:no-blockers Claude review completed cleanly; outstanding is empty labels Jul 1, 2026
@CamSoper

CamSoper commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

I've tightened up the prose and the social copy, @claude. Please #update-review

@github-actions github-actions Bot removed the review:stale New commits since last Claude review; refresh on next ready-transition or @claude mention label Jul 1, 2026
@github-actions github-actions Bot removed the review:in-progress Claude review is currently running label Jul 1, 2026
Comment thread content/blog/previous-cli-and-sdk-version-docs/feature.png
cnunciato and others added 2 commits July 3, 2026 10:17
Merge from master brought in the new build-time meta-image system, which
replaces the committed meta.png for blog posts with an on-brand OpenGraph
card generated from the title + feature image (scripts/meta-images/blog.mjs).

- Re-render feature.png from the Rocket template (was a placeholder)
- Remove the obsolete committed meta.png
- Drop the meta_image frontmatter line so the build-time card takes over

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@github-actions github-actions Bot added review:stale New commits since last Claude review; refresh on next ready-transition or @claude mention and removed review:no-blockers Claude review completed cleanly; outstanding is empty labels Jul 3, 2026

@cnunciato cnunciato 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.

Leaving you an approval to keep you unblocked. I also rebased on current master to pull in the new approach to meta images, and regenerated based on my suggested title (but feel free to adjust if you like). Nice work by the way!

Comment on lines +51 to +53
Alongside the latest release, we keep immutable snapshots of previous versions. The CLI command reference and the Node.js, Python, .NET, and Java SDK API docs are all covered, so the matching docs are always a dropdown away.

History reaches back to around v3.150.0 (early 2025); older CLI releases already prompt you to upgrade, so that makes a sensible floor. The Go SDK is versioned on [pkg.go.dev](https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3), so its documentation lives there rather than on the docs site.

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.

Totally subjective suggestion here, just to tighten this up a bit — feel free to take it or leave it:

Suggested change
Alongside the latest release, we keep immutable snapshots of previous versions. The CLI command reference and the Node.js, Python, .NET, and Java SDK API docs are all covered, so the matching docs are always a dropdown away.
History reaches back to around v3.150.0 (early 2025); older CLI releases already prompt you to upgrade, so that makes a sensible floor. The Go SDK is versioned on [pkg.go.dev](https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3), so its documentation lives there rather than on the docs site.
Alongside the latest release, we keep immutable snapshots of previous versions going back to v3.150.0 (early 2025). The CLI command reference and the Node.js, Python, .NET, and Java SDK API docs are all covered, so the docs you need are only a dropdown away. (The Go SDK is versioned on [pkg.go.dev](https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3), so its documentation lives there rather than in the Pulumi docs.)


## Get started

Head to the [CLI command reference](/docs/iac/cli/commands/) or the [SDK API docs](/docs/reference/) and try the version dropdown. If your projects pin specific releases, select your version and read the docs that match.

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.

Suggested change
Head to the [CLI command reference](/docs/iac/cli/commands/) or the [SDK API docs](/docs/reference/) and try the version dropdown. If your projects pin specific releases, select your version and read the docs that match.
Head to the [CLI command reference](/docs/iac/cli/commands/) or the [SDK API docs](/docs/reference/) and try the version dropdown. Selections are sticky, so when you navigate into a version, you'll be able to click around within that same version without having to choose it again.

@@ -0,0 +1,61 @@
---
title: "New: Previous CLI and SDK Version Docs on pulumi.com"

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.

Suggested change
title: "New: Previous CLI and SDK Version Docs on pulumi.com"
title: "New: Versioned CLI and SDK Docs"

Comment thread content/blog/previous-cli-and-sdk-version-docs/index.md Outdated
@CamSoper CamSoper enabled auto-merge (squash) July 7, 2026 21:59
@CamSoper CamSoper disabled auto-merge July 7, 2026 21:59
@CamSoper

CamSoper commented Jul 7, 2026

Copy link
Copy Markdown
Contributor Author

@claude #update-review

@github-actions github-actions Bot added review:in-progress Claude review is currently running and removed review:stale New commits since last Claude review; refresh on next ready-transition or @claude mention labels Jul 7, 2026
@github-actions

github-actions Bot commented Jul 7, 2026

Copy link
Copy Markdown
Contributor

🤖 Review updated on @CamSoper's request.

@github-actions github-actions Bot added review:no-blockers Claude review completed cleanly; outstanding is empty and removed review:in-progress Claude review is currently running labels Jul 7, 2026
@CamSoper CamSoper merged commit 3999a22 into master Jul 8, 2026
10 checks passed
@CamSoper CamSoper deleted the claude/cli-sdk-versioned-docs-post-8y3add branch July 8, 2026 00:27
@github-actions

github-actions Bot commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

📣 Social media posts are live for https://www.pulumi.com/blog/previous-cli-and-sdk-version-docs/:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

domain:blog PR touches blog posts or customer stories review:no-blockers Claude review completed cleanly; outstanding is empty

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants