Here’s an example:
Workflow.new()
|> Workflow.add(:worker, Worker.new(%{person_id: person.id}))
|> Oban.insert_all()
shows this warning under “.new()”
The call 'Elixir.Oban.Pro.Workflow':add
(#{'__struct__' := 'Elixir.Oban.Pro.Workflow',
'changesets' := [],
'check_deps' := 'true',
'grafts' := #{},
'id' := _,
'names' := #{'__struct__' := 'Elixir.MapSet', 'map' := #{}},
'opts' := map(),
'subs' := #{}},
'worker',
#{'__struct__' := 'Elixir.Ecto.Changeset',
'action' := atom(),
'changes' := #{atom() => _},
'constraints' :=
[#{'constraint' := binary() | map(),
'error_message' := binary(),
'error_type' := atom(),
'field' := atom(),
'match' := 'exact' | 'prefix' | 'suffix',
'type' :=
'check' | 'exclusion' | 'foreign_key' | 'unique'}],
'data' := 'nil' | map(),
'empty_values' := _,
'errors' := [{atom(), {_, _}}],
'filters' := #{atom() => _},
'params' := 'nil' | #{binary() => _},
'prepare' := [fun((_) -> any())],
'repo' := atom(),
'repo_opts' := [{atom(), _}],
'required' := [atom()],
'types' :=
#{atom() =>
atom() |
{'array' | 'assoc' | 'embed' | 'in' | 'map' |
'parameterized' | 'supertype' | 'try',
_}},
'valid?' := boolean(),
'validations' := [{atom(), _}]}) does not have a term of type
#{'__struct__' := 'Elixir.Oban.Pro.Workflow',
'changesets' :=
[#{'__struct__' := 'Elixir.Ecto.Changeset',
'action' := atom(),
'changes' := map(),
'constraints' := [any()],
'data' := map(),
'empty_values' := _,
'errors' := [any()],
'filters' := map(),
'params' := 'nil' | map(),
'prepare' := [any()],
'repo' := atom(),
'repo_opts' := [any()],
'required' := [any()],
'types' := map(),
'valid?' := boolean(),
'validations' := [any()]}],
'check_deps' := boolean(),
'grafts' := _,
'id' := binary(),
'names' :=
#{'__struct__' := 'Elixir.MapSet',
'map' := 'Elixir.MapSet':internal(_)},
'opts' := map(),
'subs' := map()} (with opaque subterms) as 1st argument