takt/builtins/en/facets/instructions/implement-terraform.md
nrslib 1cd063680c feat: Terraform/AWS ピースとファセット一式を追加
hoicil-spot-tf の規約を分析し、専用のピース・ファセットを作成。
plan → implement → 3並列レビュー → fix → COMPLETE のワークフロー。
カテゴリに「インフラストラクチャ」を追加。
2026-02-25 23:50:52 +09:00

55 lines
1.6 KiB
Markdown

Implement Terraform code according to the plan.
Refer only to files within the Report Directory shown in the Piece Context. Do not search or reference other report directories.
**Important**: After implementation, run the following validations in order:
1. `terraform fmt -check` — fix formatting violations with `terraform fmt` if any
2. `terraform validate` — check for syntax and type errors
3. `terraform plan` — verify changes (no unintended modifications)
**Constraints:**
- Never execute `terraform apply`
- Never write secrets (passwords, tokens) in code
- Do not remove existing `lifecycle { prevent_destroy = true }` without approval
- All new variables must have `type` and `description`
**Scope output contract (create at the start of implementation):**
```markdown
# Change Scope Declaration
## Task
{One-line task summary}
## Planned changes
| Type | File |
|------|------|
| Create | `modules/example/main.tf` |
| Modify | `environments/sandbox/main.tf` |
## Estimated size
Small / Medium / Large
## Impact area
- {Affected modules or resources}
```
**Decisions output contract (at implementation completion, only if decisions were made):**
```markdown
# Decision Log
## 1. {Decision}
- **Context**: {Why the decision was needed}
- **Options considered**: {List of options}
- **Rationale**: {Reason for the choice}
- **Cost impact**: {If applicable}
```
**Required output (include headings)**
## Work results
- {Summary of actions taken}
## Changes made
- {Summary of changes}
## Validation results
- {terraform fmt -check result}
- {terraform validate result}
- {terraform plan summary (resources to add/change/destroy)}