Signal emitted when a tool execution starts.
Summary
Functions
Creates a new Signal instance with the configured type and validated data.
Creates a new Signal instance, raising an error if invalid.
Validates the data for the Signal according to its schema.
Functions
@spec new( map(), keyword() ) :: {:ok, Jido.Signal.t()} | {:error, String.t()}
Creates a new Signal instance with the configured type and validated data.
Parameters
data: A map containing the Signal's data payload.opts: Additional Signal options (source, subject, etc.)
Returns
{:ok, Signal.t()} if the data is valid, {:error, String.t()} otherwise.
Example
MySignal.new(valid_data, source: "/custom")
# => {:ok, signal} where signal.type == MySignal.type()
@spec new!( map(), keyword() ) :: Jido.Signal.t() | no_return()
Creates a new Signal instance, raising an error if invalid.
Parameters
data: A map containing the Signal's data payload.opts: Additional Signal options (source, subject, etc.)
Returns
Signal.t() if the data is valid.
Raises
RuntimeError if the data is invalid.
Example
MySignal.new!(valid_data, source: "/custom")
# => %Jido.Signal{} with type MySignal.type()
Validates the data for the Signal according to its schema.
Example
MySignal.validate_data(candidate_data)
# => {:ok, validated_data} | {:error, reason}