Terraform Provider v1.14.0 - Added `request_timeout` and hardened GraphQL query construction
Aug 18, 2026•GuardrailsTerraform
What's new?
ENHANCEMENTS:
- provider: New request_timeout argument bounds each Guardrails API request, given as a Go duration string such as "30s" or "10m". Requests previously had no deadline at all, so a hung connection could hang an entire apply indefinitely. The default is 15 minutes — deliberately generous, since harvest and control operations can be legitimately slow — and can be raised for resources whose operations run long. (#250)
BUG FIXES:
- errors: Terraform no longer drops a live resource from state because an unrelated error happened to mention not found. The check matched that phrase anywhere in a message, so an error about a missing dependency — for example a policy type belonging to an uninstalled mod — could be read as "this resource is gone", removing it from state and recreating it. It now recognises only the shapes Guardrails emits for a genuinely missing resource. (#250)
SECURITY:
- Hardened GraphQL query construction: the read and delete query builders that take a resource identifier now pass it to Guardrails as a query variable rather than embedding it in the query text, matching what every write operation in the provider already did. This prevents a crafted identifier from altering the structure of the query the provider sends. Each argument type was confirmed against the Guardrails schema before conversion, and a build-time check now fails if any future query builder embeds a caller-supplied value. (#250)