# `Runic.Workflow.IdentityConflictError`
[🔗](https://github.com/zblanco/runic/blob/main/lib/workflow/identity_conflict_error.ex#L1)

Raised when distinct workflow vertices claim the same identity.

Runic treats an identity match as an optimization only when the available
identity evidence is equivalent. A conflict is raised before graph mutation
so an existing vertex cannot be silently substituted for a new one.

# `t`

```elixir
@type t() :: %Runic.Workflow.IdentityConflictError{
  __exception__: true,
  context: atom() | nil,
  existing: map() | nil,
  identity: term(),
  incoming: map() | nil
}
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
