## TL;DR

`dynamodb_table` in the S3 backend is deprecated (AWS provider 5.100+). The replacement is S3-native locking: `use_lockfile = true` in the backend block, which needs Terraform 1.10+. Make the switch, run `terraform init -reconfigure`, and you can drop the DynamoDB table.

## The warning

```text
Warning: Deprecated Parameter
The parameter "dynamodb_table" is deprecated. Use parameter "use_lockfile" instead.
```

## Steps to fix

1. Confirm your Terraform version is 1.10+ (`terraform version`); `use_lockfile` does not exist earlier.
   - Expected: version requirement met, or upgrade first.
2. Update the backend block:
   ```hcl
   backend "s3" {
     bucket       = "llmops-bedrock-tfstate"
     key [your value]
     region       = "us-east-1"
     use_lockfile = true
     encrypt      = true
   }
   ```
   - Expected: no `dynamodb_table` remains.
3. Run `terraform init -reconfigure`.
   - Expected: init succeeds; locking now uses a `.tflock` object in S3.
4. After confirming applies lock correctly, decommission the DynamoDB table.
   - Expected: one less resource to manage, warning gone.

## When to use this

- `terraform init`/`plan` prints the `dynamodb_table` deprecation warning on AWS provider 5.100+.

## When NOT to use this

- Actual lock failures (`ConditionalCheckFailedException`) are operational, not deprecation, and are fixed by unlocking, not by migrating. Do not migrate mid-incident.

## Compatibility

- `use_lockfile`: Terraform 1.10+, AWS provider 5.100+. Older setups keep `dynamodb_table` with no warning.

## Root cause

S3 now supports conditional writes, so Terraform can implement locking with a lockfile object in the bucket itself. The provider deprecated the DynamoDB path to consolidate on the simpler mechanism.

## Edge cases

- Both set: `use_lockfile` wins; remove `dynamodb_table` to silence the warning.
- Cross-account state buckets need the caller's S3 permissions to include the lockfile object operations.
- Teams pinned to Terraform < 1.10 must stay on `dynamodb_table` and accept the warning (or upgrade Terraform).