# `Jido.AI.Reasoning.ReAct.PendingToolCall`
[🔗](https://github.com/agentjido/jido_ai/blob/v2.4.0/lib/jido_ai/reasoning/react/pending_tool_call.ex#L1)

Tracks a tool call in the ReAct runtime.

# `t`

```elixir
@type t() :: %Jido.AI.Reasoning.ReAct.PendingToolCall{
  action_module: nil | atom(),
  arguments: map(),
  attempts: integer(),
  duration_ms: nil | integer(),
  id: binary(),
  name: binary(),
  result: nil | any(),
  status: atom()
}
```

# `complete`

```elixir
@spec complete(
  t(),
  Jido.AI.Effects.Applier.result_tuple(),
  non_neg_integer(),
  non_neg_integer()
) :: t()
```

Marks a pending call as completed with result, attempts, and duration metadata.

# `from_tool_call`

```elixir
@spec from_tool_call(map()) :: t()
```

Builds a normalized pending tool call from an LLM tool call map.

# `schema`

```elixir
@spec schema() :: term()
```

Returns the Zoi schema used to validate pending tool call entries.

---

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