Skip to content

Abstract Class: BaseConnectorTurn<TState>

Makaio Framework


Makaio Framework / ai-adapters-core / BaseConnectorTurn

Defined in: ../../../adapters/core/src/connector/base-connector-turn.ts:28

Base abstract class for connector turn implementations.

Turns manage the state machine for a single user message:

  • State transitions (idle to turn_started to step_started to …)
  • Pause/resume mechanics
  • Safe boundary detection for immediate messages
  • Message handle delegation (acknowledgment, completion)

Each adapter implements its own turn subclass with adapter-specific state handling and SDK integration.

TState extends string = string

Turn state enum type (string union)

new BaseConnectorTurn<TState>(bus, adapterId, adapterName, initialState): BaseConnectorTurn<TState>

Defined in: ../../../adapters/core/src/connector/base-connector-turn.ts:41

ScopedBus<string>

string

string

TState

BaseConnectorTurn<TState>

abstract protected activeMessageHandle: MessageHandle

Defined in: ../../../adapters/core/src/connector/base-connector-turn.ts:39

Active message handle for this turn. Subclasses must provide this handle for message lifecycle management.


protected readonly adapterId: string

Defined in: ../../../adapters/core/src/connector/base-connector-turn.ts:31


protected readonly adapterName: string

Defined in: ../../../adapters/core/src/connector/base-connector-turn.ts:32


protected readonly bus: ScopedBus<string>

Defined in: ../../../adapters/core/src/connector/base-connector-turn.ts:30


protected state: TState

Defined in: ../../../adapters/core/src/connector/base-connector-turn.ts:29


protected optional stateChangedCallback?: (oldState, newState) => void | Promise<void>

Defined in: ../../../adapters/core/src/connector/base-connector-turn.ts:33

TState

TState

void | Promise<void>

abstract protected emitStateChange(oldState, newState): Promise<void>

Defined in: ../../../adapters/core/src/connector/base-connector-turn.ts:97

Emit state change event - implemented by subclass with typed subjects.

TState

Previous state

TState

New state

Promise<void>


getMessageHandle(): MessageHandle

Defined in: ../../../adapters/core/src/connector/base-connector-turn.ts:111

Get the message handle for this turn.

MessageHandle

The message handle for this turn


getState(): TState

Defined in: ../../../adapters/core/src/connector/base-connector-turn.ts:103

Get current turn state.

TState

Current turn state


abstract isPaused(): boolean

Defined in: ../../../adapters/core/src/connector/base-connector-turn.ts:63

Check if turn is currently paused.

boolean


markAcknowledged(): void

Defined in: ../../../adapters/core/src/connector/base-connector-turn.ts:118

Mark message handle as acknowledged.

void


markCompleted(result): void

Defined in: ../../../adapters/core/src/connector/base-connector-turn.ts:126

Mark message handle as completed.

The completion result with outcome and optional result/error

unknown

string

unknown

void


onStateChanged(cb): void

Defined in: ../../../adapters/core/src/connector/base-connector-turn.ts:69

Register callback for state changes.

(oldState, newState) => void | Promise<void>

Callback to invoke on state transitions

void


abstract pause(): Promise<PauseResult<TState>>

Defined in: ../../../adapters/core/src/connector/base-connector-turn.ts:52

Pause the turn at next safe boundary.

Promise<PauseResult<TState>>

Pause result indicating whether turn already ended


abstract resume(message?): Promise<void>

Defined in: ../../../adapters/core/src/connector/base-connector-turn.ts:58

Resume the paused turn with optional additional message.

unknown

Optional message to inject when resuming

Promise<void>


protected transitionTo(newState): Promise<void>

Defined in: ../../../adapters/core/src/connector/base-connector-turn.ts:81

Transition to new state and notify listeners. Template method for shared state transition pattern.

NOTE: Subclasses should use their typed namespace subjects for emission. This is a template - concrete implementation in adapter-specific Turn classes.

TState

New state to transition to

Promise<void>