- fix(docs): preserve sidebar context and explain component/workflow names @osterman (#3291)
- fix(website): unblock prod deploy; build website in merge queue @osterman (#3287)
- docs: improve navigation, command intros, and example guides @osterman (#3272)
- docs: add focused navigation and a first-class Steps reference @osterman (#3268)
- docs(skills): add GitHub Actions to Native CI migration reference @osterman (#3246)
- fix(ci): preserve release tags and isolate concurrent tests @osterman (#3243)
- fix(ci): drop HOMEBREW_NO_INSTALL_FROM_API from the Homebrew bump step @aknysh (#3240)
✨ Features
- feat(init): initialize from source directories without scaffolding @osterman (#3316)
- feat(describe affected): add --tags/--labels selectors and --flatten @osterman (#3297)
- fix(pro): pack uploads by bytes and recover from HTTP 413 @osterman (#3314)
- feat(scaffold): per-file template delimiters; honor custom delimiters everywhere @osterman (#3311)
- feat(store): tags and expiration for Azure Key Vault store secrets @osterman (#3285)
- feat(backend): add bucket_namespace option for S3 state bucket provisioning @osterman (#3288)
- feat(scaffold): !include and other YAML functions in scaffold.yaml @jorrite (#3230)
- feat(scaffold): handle file deletions during scaffold/init --update @jorrite (#3245)
- feat(helm): surface crash-looping pod diagnostics on release failure (#3271) @aknysh (#3273)
- feat(terraform): treat component mocks as fallbacks for missing state @osterman (#3244)
- feat(helm): native Helm server-side apply conflict control @aknysh (#3252)
- feat(scaffold): expose --max-changes as a configurable merge-threshold flag @jorrite (#3236)
- feat(auth): add azure/pim-role identity for just-in-time PIM role activation @aknysh (#3239)
🐛 Bug Fixes
- fix(ci): keep workflow-command metadata off stdout in legacy actions @aknysh (#3315)
- fix: tailor upgrade hints to the Atmos installation method @osterman (#3293)
- fix(git): keep-history init no longer requires branch in source @bonddim (#3255)
- fix(scaffold): stop leaking internal gitref-probe step name into spinner @jorrite (#3279)
- fix(agent-skills): track the Claude Code plugin version via Version Tracker @osterman (#3195)
- fix(toolchain): time out artifact downloads only when stalled @osterman (#3277)
- fix(mcp): respect .atmos.d fragments in mcp add/remove (#3269) @aknysh (#3270)
- docs(support): point paid support to Atmos Pro and Cloud Posse @osterman (#3262)
🤖 Automatic Updates
- build(deps): bump mvdan.cc/sh/v3 from 3.13.1 to 3.14.0 @dependabot[bot] (#3147)
- build(deps): bump alpine from
28bd5feto294b683in /examples/container-component @dependabot[bot] (#3256) - fix(deps): update module github.com/hashicorp/terraform-exec to v0.25.3 @renovate[bot] (#3168)
- build(deps): bump golang from
512690atof44f6e8in /.devcontainer @dependabot[bot] (#3150) - build(deps): bump alpine from
28bd5feto294b683in /examples/container-step @dependabot[bot] (#3257) - build(deps): bump debian from
d7e1218toa99cfc5@dependabot[bot] (#3258) - chore(deps): update dependency postcss-selector-parser@^6 to v7 [security] @renovate[bot] (#3281)
- build(deps): bump the cicd group with 10 updates @dependabot[bot] (#3260)
- build(deps): bump github.com/containerd/containerd/v2 from 2.3.5 to 2.3.6 in the go_modules group across 1 directory @dependabot[bot] (#3227)