ClaimLost

org.llm4s.agent.graph.GraphError.ClaimLost
final case class ClaimLost(threadId: String, token: FencingToken, current: Option[FencingToken]) extends GraphError, NonRecoverableError

The run lost its claim on the thread, so it stopped: its lease passed with no renewal landing (the run judges this itself, by its own monotonic clock), a renewal was refused (StaleClaim), or the store refused one of its commits as stale. The run commits nothing more - not even a RunFailed - and drops what it had not yet written; whatever it made durable before stands. token is the run's own claim, and current the thread's current claim when the store named one: another run then holds the thread. None means the store named none - the run judged its lease passed without asking it, or the store found no current claim (a successor that took over has since released it). A failure the run was recording when its commit was refused is logged, not carried. Unlike CheckpointWriteFailed, it is not a store outage. recover may be attempted once the thread is free: it is refused with ThreadBusy while a successor holds the thread, so retry; a successor that finished the work leaves the thread's state showing it (NothingToRecover); and a lease that lapsed with no successor leaves the last checkpoint Running, which recover continues.

Attributes

Graph
Supertypes
trait GraphError
trait LLMError
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Members list

Value members

Inherited methods

def code: Option[String]

Optional error code for programmatic handling

Optional error code for programmatic handling

Attributes

Inherited from:
LLMError
def context: Map[String, String]

Additional context information

Additional context information

Attributes

Inherited from:
LLMError
def correlationId: Option[String]

Error correlation IDs for debugging

Error correlation IDs for debugging

Attributes

Inherited from:
LLMError
def formatted: String

Formatted error message with context

Formatted error message with context

Attributes

Inherited from:
LLMError
def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product

Concrete fields

override val message: String

Human-readable error message

Human-readable error message

Attributes