Gralkor.Capture (jido_gralkor v11.0.0)

Copy Markdown View Source

One conversation turn captured through an explicit route.

{:direct, destination} writes the conversation to a registered Destination without Lens authorship. {:lenses, names} runs each distinct selected Lens with its own Destination, ontology, and ingestion process. The operator identifier is supplied separately and never contains a resolved graph name.

Summary

Types

resolved_route()

@type resolved_route() :: {:direct, String.t(), module()} | {:lens, Gralkor.Lens.t()}

route()

@type route() :: {:direct, String.t()} | {:lenses, [String.t()]}

t()

@type t() :: %Gralkor.Capture{
  agent_name: String.t(),
  messages: [Gralkor.Message.t()],
  operator_id: String.t(),
  route: route(),
  session_id: String.t(),
  user_name: String.t()
}

Functions

resolve!(owner, request)

@spec resolve!(pid(), t()) :: [resolved_route()]

validate!(request)

@spec validate!(t()) :: :ok