Normandy.Guardrails.GuardError exception (normandy v2.2.0)

View Source

Raised by a guard when host code it calls fails: the :classifier or :fast_path function of Normandy.Guardrails.Builtins.SemanticScope, or the same in a guard of your own. Normandy.Guardrails.run/3 handles it under the guard's :on_error like any other crash, so a guard's own configuration errors (an ArgumentError or KeyError from a built-in guard) stay apart from failures of the code the host injected.

  • kind - :error (a raise), :exit or :throw.
  • reason - the exception, exit reason or thrown value. It is never shown: the message names the exception's module or the exit's tag only.

Summary

Types

t()

@type t() :: %Normandy.Guardrails.GuardError{
  __exception__: true,
  kind: :error | :exit | :throw,
  reason: term()
}