Record Class GateResponse.ToolApproval

java.lang.Object
java.lang.Record
com.agentforge4j.testkit.scenario.GateResponse.ToolApproval
Record Components:
toolInvocationId - id of the pending tool invocation to resolve, or null to auto-target the run's single current pending invocation (the harness fails closed when there is not exactly one)
approve - true to approve and invoke; false to reject
reason - rejection reason recorded when not approved; may be blank
All Implemented Interfaces:
GateResponse
Enclosing interface:
GateResponse

public static record GateResponse.ToolApproval(String toolInvocationId, boolean approve, String reason) extends Record implements GateResponse
An approve/reject decision for an AWAITING_TOOL_APPROVAL pause (tool policy RequireApproval). On approval the stored tool call is invoked and the run continues; on rejection the call is denied.
  • Constructor Details

    • ToolApproval

      public ToolApproval(String toolInvocationId, boolean approve, String reason)
      Validates the invocation id (only when an explicit one is given; null means auto-target).
      Parameters:
      toolInvocationId - id of the pending tool invocation, or null to auto-target
      approve - true to approve
      reason - rejection reason; may be blank
  • Method Details

    • toString

      public final String toString()
      Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components.
      Specified by:
      toString in class Record
      Returns:
      a string representation of this object
    • hashCode

      public final int hashCode()
      Returns a hash code value for this object. The value is derived from the hash code of each of the record components.
      Specified by:
      hashCode in class Record
      Returns:
      a hash code value for this object
    • equals

      public final boolean equals(Object o)
      Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared with Objects::equals(Object,Object); primitive components are compared with '=='.
      Specified by:
      equals in class Record
      Parameters:
      o - the object with which to compare
      Returns:
      true if this object is the same as the o argument; false otherwise.
    • toolInvocationId

      public String toolInvocationId()
      Returns the value of the toolInvocationId record component.
      Returns:
      the value of the toolInvocationId record component
    • approve

      public boolean approve()
      Returns the value of the approve record component.
      Returns:
      the value of the approve record component
    • reason

      public String reason()
      Returns the value of the reason record component.
      Returns:
      the value of the reason record component