# AGENTS.md

Terraform enables you to safely and predictably create, change, and improve infrastructure. It is a source-available tool that codifies APIs into declarative configuration files that can be shared amongst team members, treated as code, edited, reviewed, and versioned.

## Setup

```
go mod download
```

## Commands

```
make generate
make protobuf
make defect-detector
make fmtcheck
make importscheck
make vetcheck
```

## Layout

- `internal/` 1951 source files
- `scripts/`  12 source files
- `tools/`    8 source files
- `version/`  3 source files

## Conventions

- Tests live alongside the code they cover, following `.github/scripts/equivalence-test.sh`.
- CI defines what passing means. See `.github/workflows/backport.yml`, and keep it green.
- TODO: add the two or three conventions a newcomer always gets wrong here.

## Gotchas

- `internal/terraform/context_apply_test.go` is 363KB. It will not fit comfortably in context, so read it in parts.

---

Drafted by agentreadme.com from what is in this repository. Everything marked TODO
needs a human. Check it in as AGENTS.md at the root.
