Document the default policy groups - #20563
Conversation
Adds a "Default policy groups" section covering the two groups every organization gets, what can and cannot be changed about them, and the blast radius of adding a policy pack to the default preventative group. Corrects the group names, which were wrong. The real names are default-policy-group (stacks, preventative) and default-accounts-policy-group (accounts, audit). Also documents policy pack runtime requirements, which were previously undocumented: the pack's runtime, not the program's language, determines what the client needs, and every Pulumi pre-built pack runs on Node.js. Restructures both policy pages so they read top to bottom, and tones down the marketing voice on the policy packs page. Fixes #20554 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Pre-merge Review — Last updated 2026-07-29T18:59:40ZTip Summary: This PR expands the Insights Policy docs to document the two default policy groups ( Review confidence:
Investigation log
🔍 Verification trail73 claims extracted · 63 verified · 8 unverifiable · 0 contradicted
🚨 Outstanding in this PRNo outstanding findings in this PR.
|
📋 Triaged verifier findingsI double-checked these and realized they weren't real findings — click to expand
💡 Pre-existing issues in touched files (optional)No pre-existing issues in touched files. ✅ Resolved since last review
📜 Review history
Need a re-review? Want to dispute a finding? Mention |
|
Your site preview for commit b53aa3b is ready! 🎉 http://www-testing-pulumi-docs-origin-pr-20563-b53aa3b0.s3-website.us-west-2.amazonaws.com Changed pages: |
Removing packs isn't the only lever: `pulumi policy disable` acts on the default group, and enforcement is set per policy, so advisory works too. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
@claude #update-review |
|
🤖 Review updated on @jkodroff's request. |
CamSoper
left a comment
There was a problem hiding this comment.
Approving with one question
| ## Types of policy packs | ||
|
|
||
| Pulumi offers two approaches to policy enforcement: | ||
| - <a id="pre-built-policy-packs"></a>**[Pre-built policy packs](/docs/insights/policy/policy-packs/pre-built-packs/)** are written and maintained by Pulumi. They cover common compliance frameworks, including CIS, PCI DSS, HITRUST, and NIST, as well as security, cost, and operational best practices for AWS, Azure, and Google Cloud. You enable them from Pulumi Cloud without writing any code. |
There was a problem hiding this comment.
Why the anchors? I don't see any links to these anywhere.
Documents the two policy groups every organization gets automatically, and the policy pack runtime requirements that were previously undocumented.
Fixes #20554
Changes
/docs/insights/policy/policy-groups/covering both groups, automatic membership, which properties are immutable, and the blast radius of adding a pack to the default preventative group.default-preventative-policy-groupanddefault-audit-policy-group. Neither exists. Verified against four live orgs andpulumi-service(cmd/service/model/policy_groups.go): the real names aredefault-policy-group(stacks, preventative) anddefault-accounts-policy-group(accounts, audit). Also fixed on the discovery and policy get-started pages./docs/insights/policy/policy-packs/. The pack's runtime, not the program's language, decides what the client needs. All 28 Pulumi pre-built packs areruntime: nodejs, and Bun does not substitute. Cross-referenced from the CI/CD, CLI, and plugins pages.Follow-ups (not in this PR)
pulumi-servicespec PR:PATCH .../policygroups/{policyGroup}doesn't document thatnewNameis rejected on default groups, or that a group's type is set at creation only.runtime: bunon publish is unverified server-side, soproject-file.mdstill lists onlynodejs/python/opa.