GuardFailure

works.iterative.workflow.GuardFailure

The result of a failed guard evaluation.

Sum-aware: carries structural information about which guards failed and why. Unauthorized is intentionally a distinct case from Leaf so that callers (e.g. MEDECA-377, MEDECA-378) can distinguish "missing data" from "missing permission" without further refactoring.

  • Leaf — a data guard (Requirement) failed; carries the predicate label and message key
  • Unauthorized — an auth guard (RequireRole or RequireIdentity) failed
  • Conjunction — an And guard: all failing branches accumulated (flat, no nesting)
  • Disjunction — an Or guard: all branches failed (node-level, two elements)

Attributes

Graph
Supertypes
trait Enum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Members list

Type members

Enum entries

final case class Conjunction(failures: List[GuardFailure])
final case class Disjunction(failures: List[GuardFailure])
final case class Leaf(label: String, message: UserMessage)
final case class Unauthorized(label: String)