feat(skills): add terraform safety core#177
Merged
Merged
Conversation
- add a shared terraform-risk-playbook skill for response contract, risk routing, version guards, and LLM mistake checks - wire the existing Terraform skills to the shared safety layer and tighten their ownership boundaries - update the Terraform module profile, docs, and generated skill index to include the new shared skill
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR strengthens the Terraform skill set by adding a shared safety and
diagnostics layer, then wiring the existing Terraform skills to use it
explicitly.
The goal is to keep the current split by intent (design, module authoring,
testing, infrastructure structure, emulator usage) while importing the
strongest parts of Anton Babenko's Terraform skill: response contract
discipline, diagnose-first routing, version-aware guards, and common LLM
mistake prevention.
Why
Our Terraform skills were already strong on AWS-focused structure, module
authoring, and terraform-native testing, but the safety guidance was spread
across multiple skills and not expressed as one consistent contract.
This created a few gaps:
recovery were not routed consistently
centralized
providers, write_only, and S3 use_lockfile were not governed by one shared
runtime matrix
What changed
New shared Terraform skill
Added
terraform-risk-playbookas a new shared Terraform safety core.It defines:
recommendations
Existing Terraform skills now delegate shared safety behavior
Updated the existing Terraform skills so they explicitly treat
terraform-risk-playbookas the shared safety layer instead of each onepartially reinventing it.
That means:
design-aws-terraform-iacnow emphasizes explicit runtime/backendassumptions, risk categories, validation expectations, and rollback notes in
the design brief
create-terraform-modulenow calls out address-stability guardrails, prefersfor_eachovercountwhere identity matters, and requires migration notesor
movedblocks for address refactorscreate-terraform-testsnow maps risk categories to test coverage moreexplicitly, including identity churn, provider/runtime upgrade compatibility,
computed-value assertions, and confidence-level reporting
terraform-infrastructurenow states its authoritative scope more clearly,delegates shared safety concerns to the new playbook, and updates its backend
guidance to prefer
use_lockfileon Terraform 1.10+ with DynamoDB lockingframed as an older-runtime compatibility path
use-aws-mini-stack-emulatornow makes the emulator boundary more explicit bydocumenting what local emulation cannot prove for production-impacting
changes
Profile and catalog updates
terraform-risk-playbookto thehcl-aws-terraform-moduleprofile so Terraform-focused projects receive theshared safety layer by default
docs/skills.mdto describe the new skill and to tighten the wordingfor
terraform-infrastructureindex/skills.jsonschemas/profile.schema.jsonso the new skill is part of the allowedprofile skill enum
Design intent
This PR does not collapse the Terraform skills into one monolithic skill.
Instead, it keeps the existing separation of concerns and makes it safer:
validation contract, and rollback expectations
This keeps the skill family modular while removing duplicated or inconsistent
safety guidance.
Validation
Ran:
just indexjust lintFiles touched
Primary changes are limited to:
skills/devops/andskills/backend/profiles/hcl-aws-terraform-module.yamldocs/skills.mdindex/skills.json,schemas/profile.schema.jsonNo runtime tooling behavior changed in this PR.