Non-streaming Behavior
For non-streaming calls, Averta can return:allow: return the original provider resultblock: throwAvertaSdkErrorrewrite: request a safer provider rewrite, then check that rewritten output once more
Rewrite Behavior
When Averta returnsrewrite, the wrapper sends a provider-specific rewrite instruction and checks the rewritten text with rewriteAttempt: 1 in JavaScript or rewrite_attempt: 1 in Python.
If the rewritten output is not allowed, the wrapper throws. Rewrites do not get an unbounded retry loop.