# `Runic.Workflow.Events.FactProduced`
[🔗](https://github.com/zblanco/runic/blob/main/lib/workflow/events/fact_produced.ex#L1)

Event emitted when a fact is produced during workflow execution.

The `producer_label` indicates what kind of production edge should be drawn:
`:produced`, `:state_produced`, `:state_initiated`, `:reduced`, `:fan_out`, `:joined`, or `:input`.

At runtime, `value` is always present. For journal persistence, the Store adapter
may extract values to a content-addressed fact store keyed by hash.

# `t`

```elixir
@type t() :: %Runic.Workflow.Events.FactProduced{
  ancestry: {term(), term()} | nil,
  hash: term(),
  meta: map(),
  producer_label: atom(),
  value: term(),
  weight: non_neg_integer()
}
```

---

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