All Classes and Interfaces

Class
Description
Narrow strategy used by LocalSessionCache to lazily open a session.
Resolves and validates the agentRef bound to a ConversationId.
Cross-node mailbox SPI per design §5.6.2.
Thrown when a ConversationInbox backend fails to communicate (e.g.
Per-conversation distributed lock SPI.
Thrown when a ConversationLock backend fails to communicate (e.g.
Cross-node signal payload broadcast through ConversationSignalBus.
Builder for ConversationSignal.
Distinguishes the four cross-node signal flavors per design §5.4.
Cross-node pub/sub bus for ConversationSignals.
Handle to a single subscription.
Thrown when a ConversationSignalBus backend fails to communicate (e.g.
Default WebAgentSessionManager implementation that wires the in-memory and SPI components together to realize design §7.1's submit flow on a single node, with cross-node hooks for distributed deployments.
Deployment topology declared at builder time.
Periodic sweeper that detects holder loss via the IdempotencyStore and emits the recovery sequence required by design §6.3 D / §9.2 stale cleanup.
Thrown when a submit request reuses an idempotencyKey but its input hash differs from the previously stored entry.
Immutable IdempotencyStore entry.
Builder for IdempotencyEntry.
Lifecycle status of an idempotency entry.
Idempotency store SPI per design §9.2.
Thrown when an IdempotencyStore backend fails to communicate (e.g.
Immutable envelope appended to a ConversationInbox.
Builder for InboundMessage.
Stable opaque identifier of an InboundMessage appended to a ConversationInbox.
Single-process ConversationInbox backed by per-conversation lock-protected lists.
Single-process ConversationLock backed by a ConcurrentMap.
Single-process IdempotencyStore backed by a ConcurrentMap.
Single-process ConversationSignalBus backed by per-conversation subscriber lists.
Periodically extends a ConversationLock.LockHandle's lease (design §7.4) on a manager-owned ScheduledExecutorService.
Per-node, per-conversation session cache backed by Caffeine.
Live entry held by the cache: exposes the AgentSession and ensures idempotent close.
Distinguishes new-insert from already-present.
Bridges the session's submitAsync(input, listener) listener channel to (1) the local InProcessEventPublisher and (2) the cross-node ConversationSignalBus for ConversationSignal.SignalKind.EVENT broadcast (design §5.5).
Operational metric hooks for WebAgentSessionManager (design §12 WS-06).
Why the local session cache dropped an entry.
Multi-instance-ready agent session manager facade.
Fluent builder for WebAgentSessionManager (design §11.2).
Distinguishes the two manager-level outcomes.
Immutable submit request envelope for WebAgentSessionManager.submit(WebSubmitRequest).
Builder for WebSubmitRequest.