What Is Changing
Starting in v0.179, each guardrail policy is a namedgateway-guardrails-config — the same grain as logging configuration: one configuration name, one when block, and the four hook arrays.
Previously, all rules lived in a single document:
Why This Change
Named configs match how other multi-instance gateway policies work (for example logging). You can create, edit, and delete one policy without rewriting the entire set, and GitOps can own one file per policy.What You Need to Do
GitOps / tfy apply
- For each entry under the old
rules[]array, create one YAML file (or one document) with:type: gateway-guardrails-configname: <old rule id>- top-level
whenand the four*_guardrailsarrays (not nested underrules)
- Remove the folded parent document that only wraps
rules: [...]. - Apply with
tfy apply(each named config is an independent resource). - Prefer copying YAML from the UI (Edit as YAML on a rule) so the shape matches production.
Changes in YAML Schema
when, hook field names (llm_input_guardrails, …), and custom_error_message are unchanged — only the document grain changes.
If you face any issues in the migration, reach out to support@truefoundry.com.