Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
stop-slop, taste-skill, terrashark had embedded .git dirs causing Woodpecker clone to fail on submodule update.
2.1 KiB
2.1 KiB
Contributing to the Terraform Skill
We appreciate contributions to TerraShark. Every change should improve Terraform/OpenTofu output quality while staying lean on token usage.
Contribution Principles
Every change should answer three questions:
- Which failure mode does this prevent? — must map to at least one of the five failure modes
- What measurable quality gain does it provide? — demonstrate improvement
- Is the token cost justified? — every line must earn its place
Development Flow
- Create a branch
- Make focused changes
- Run local checks
- Open PR using
.github/PULL_REQUEST_TEMPLATE.md
Local Checks
# Quick sanity checks
rg -n "FIXME|placeholder-text" README.md SKILL.md references/*.md
python - <<'PY'
from pathlib import Path
assert Path('SKILL.md').exists()
assert Path('README.md').exists()
for p in [
'references/identity-churn.md',
'references/secret-exposure.md',
'references/blast-radius.md',
'references/ci-drift.md',
'references/compliance-gates.md',
]:
assert Path(p).exists(), f'missing {p}'
print('basic structure OK')
PY
Content Rules
- Keep examples original and clearly distinct
- Prefer failure-mode framing over generic "best-practice dump" text
- Avoid provider-specific deep dives unless they directly reduce a known LLM failure mode
- Keep claims precise; avoid vague "always" language when tradeoffs exist
Required for PR Approval
- Clear mapping to one or more failure modes
- No contradictory guidance across references
- Updated links/indexes if files were moved/renamed
- Validation workflow passing (
.github/workflows/validate.yml)
Security
- Never commit credentials, tokens, or secret values
- Do not paste real state snippets containing sensitive data
Reporting Issues
Open an issue with:
- Observed hallucination/failure pattern
- Minimal reproducible prompt/context
- Expected behavior
Community
- Submit an issue on GitHub
- Join GitHub Discussions
- Star the repository if TerraShark helps your project