Interface EvalHandle


public interface EvalHandle
SPI handle for evaluation hook management.

This interface defines the eval hook management contract that Agent uses. The concrete implementation (EvalHookManager) lives in tnsai-quality and is discovered via SpiLoader.

When tnsai-quality is not on the classpath, the factory returns a no-op handle that silently ignores all hook operations.

  • Field Details

    • NOOP

      static final EvalHandle NOOP
      No-op implementation used when tnsai-quality is absent.
  • Method Details

    • addHook

      void addHook(EvalHook hook)
    • removeHook

      boolean removeHook(EvalHook hook)
    • clearHooks

      void clearHooks()
    • hookCount

      int hookCount()
    • setEnabled

      void setEnabled(boolean enabled)
    • isEnabled

      boolean isEnabled()
    • fireOnAgentStart

      void fireOnAgentStart(EvalContext ctx, String agentId, String sessionId)
    • fireOnBeforeChat

      void fireOnBeforeChat(EvalContext ctx, String message)
    • fireOnAfterChat

      void fireOnAfterChat(EvalContext ctx, String response, long latencyMs)
    • fireOnBeforeToolCall

      void fireOnBeforeToolCall(EvalContext ctx, String toolName, Map<String,Object> arguments)
    • fireOnAfterToolCall

      void fireOnAfterToolCall(EvalContext ctx, String toolName, Object result, boolean success, long latencyMs)
    • fireOnGoalCompleted

      void fireOnGoalCompleted(EvalContext ctx, String goalId, boolean success, Map<String,Object> details)
    • fireOnAgentStop

      void fireOnAgentStop(EvalContext ctx, String reason)
    • fireOnError

      void fireOnError(EvalContext ctx, Throwable error, String phase)
    • fireOnMemoryAccess

      void fireOnMemoryAccess(EvalContext ctx, String operation, String key, int resultCount, long latencyMs)
    • fireOnAgentCommunication

      void fireOnAgentCommunication(EvalContext ctx, String fromAgent, String toAgent, String messageType, long latencyMs)