Terraform check blocks are special blocks that run during the terraform plan phase. They evaluate a condition expression. If the condition is true, the plan continues normally. If the condition is false, Terraform stops the plan and shows the error message defined in the check block. This helps catch configuration mistakes before applying infrastructure. Check blocks do not run during apply, only during plan. In the example, the check asserts that the variable 'names' list is not empty. Since it is not empty, the plan passes and resources are created.