Skip to content

TilingOrchestratorOptions

Defined in: packages/client/src/lib/orchestrator/orchestrator.types.ts:51

Options under the default tiling mode — the only mode that can seed a first screen.

optional connection?: Partial<ConnectionOptions>

Defined in: packages/client/src/lib/orchestrator/orchestrator.types.ts:28

Connection options for the ConnectionManager

OrchestratorOptionsBase.connection


optional debounceDelayMs?: number

Defined in: packages/client/src/lib/orchestrator/orchestrator.types.ts:22

Debounce delay for update batching in ms (default: 300)

OrchestratorOptionsBase.debounceDelayMs


optional debug?: boolean

Defined in: packages/client/src/lib/orchestrator/orchestrator.types.ts:20

Enable debug logging (default: false)

OrchestratorOptionsBase.debug


optional initialLayout?: TilingLayout

Defined in: packages/client/src/lib/orchestrator/orchestrator.types.ts:76

Layout applied once at construction, before any engine round-trip — a proposed first screen. The engine sees it in the next chart request and may reshape or drop tiles to fit the real viewport.

Tiling-only, and typed that way: a grid layout can only reposition instances that already exist, and none do yet at construction, so GridOrchestratorOptions types initialLayout as never. The constructor repeats both rules at runtime as a backstop for untyped (JS) callers and as casts.

Every instance the seed names must resolve to a vessel and variant already registered via OrchestratorOptionsBase.vessels, every tree leaf must be declared in instances, and every declared instance must appear as a tree leaf; otherwise construction throws.

Switching to grid later via Orchestrator.setLayoutMode('grid') is not an error and does not undo the seed’s own validity — but the stored tiling layout can no longer be sent, so the next chart request carries a fresh empty grid layout and the arranged board is discarded (with a warning).


optional layoutMode?: "tiling"

Defined in: packages/client/src/lib/orchestrator/orchestrator.types.ts:53

Layout mode (default: ‘tiling’)


optional maxWaitMs?: number

Defined in: packages/client/src/lib/orchestrator/orchestrator.types.ts:24

Maximum wait time before forcing an update flush in ms (default: 1000)

OrchestratorOptionsBase.maxWaitMs


optional readyTimeoutMs?: number

Defined in: packages/client/src/lib/orchestrator/orchestrator.types.ts:26

Max wait time for instance readiness before skipping actions in ms (default: 500)

OrchestratorOptionsBase.readyTimeoutMs


optional sessionId?: SessionId

Defined in: packages/client/src/lib/orchestrator/orchestrator.types.ts:18

Session ID for conversation continuity. Auto-generated if omitted.

OrchestratorOptionsBase.sessionId


optional vessels?: readonly VesselDefinition[]

Defined in: packages/client/src/lib/orchestrator/orchestrator.types.ts:44

Vessel definitions to register before TilingOrchestratorOptions.initialLayout is validated and applied. Equivalent to calling vesselManager.registerVessel() for each immediately after construction — including its report-don’t-throw behavior: a definition that fails schema validation is skipped and logged rather than aborting construction, so one bad vessel cannot take down every other vessel. Registering here (rather than after construction) exists so an initialLayout seed can reference these vessels — the registry starts out empty otherwise. The one place this still throws is indirect: if initialLayout names an instance whose vessel failed validation (or was never listed here), construction throws naming that instance and vessel — a seed genuinely cannot be honored without the vessel it names.

OrchestratorOptionsBase.vessels