Saltar al contenido principal

Class: KernelSession

Defined in: packages/plugin-sdk/src/kernel/session.ts:149

Constructors​

Constructor​

new KernelSession(port, options, limits?): KernelSession

Defined in: packages/plugin-sdk/src/kernel/session.ts:172

Parameters​

port​

MessagePort

options​

KernelSessionOptions

limits?​

Partial<StreamLimitsConfig>

Returns​

KernelSession

Properties​

limits​

readonly limits: StreamLimitsConfig

Defined in: packages/plugin-sdk/src/kernel/session.ts:163


scope​

readonly scope: Scope

Defined in: packages/plugin-sdk/src/kernel/session.ts:162

Accessors​

instanceId​

Get Signature​

get instanceId(): string

Defined in: packages/plugin-sdk/src/kernel/session.ts:168

Session/sandbox identifier, stable for the lifetime of the session.

Returns​

string


isDisposed​

Get Signature​

get isDisposed(): boolean

Defined in: packages/plugin-sdk/src/kernel/session.ts:196

Returns​

boolean

Methods​

call()​

call(method, params, options?): Promise<unknown>

Defined in: packages/plugin-sdk/src/kernel/session.ts:263

Invoke a remote method. Honors deadlineMs locally and forwards cancellation; the peer may also enforce its own deadline.

Parameters​

method​

string

params​

unknown

options?​
deadlineMs?​

number

idempotencyKey?​

string

signal?​

AbortSignal

Returns​

Promise<unknown>


dispose()​

dispose(): void

Defined in: packages/plugin-sdk/src/kernel/session.ts:666

Close everything: pending calls, in-flight streams, handlers.

Returns​

void


emitEvent()​

emitEvent(event, payload, cursor?): void

Defined in: packages/plugin-sdk/src/kernel/session.ts:249

Emit an evt.emit envelope to the peer (rev4 §E1). No credit/ack is involved: the peer drops envelopes it has no listener for. eventId is generated by the sender for ordering/debugging; cursor is optional and passed through when provided.

Parameters​

event​

string

payload​

unknown

cursor?​

string

Returns​

void


getInboundStream()​

getInboundStream(streamId): InboundStream | null

Defined in: packages/plugin-sdk/src/kernel/session.ts:389

Parameters​

streamId​

string

Returns​

InboundStream | null


handle()​

handle(method, handler): () => void

Defined in: packages/plugin-sdk/src/kernel/session.ts:201

Register an RPC method handler. Returns an unregister function.

Parameters​

method​

string

handler​

RpcHandler

Returns​

() => void


notifyCapabilityRevoked()​

notifyCapabilityRevoked(name, revision): void

Defined in: packages/plugin-sdk/src/kernel/session.ts:218

Notify the peer that a capability grant was revoked (rev4 §B2).

Parameters​

name​

string

revision​

number

Returns​

void


onCapabilityRevoked()​

onCapabilityRevoked(listener): () => void

Defined in: packages/plugin-sdk/src/kernel/session.ts:212

Subscribe to capability.revoked envelopes (rev4 §B2).

Parameters​

listener​

(name, revision) => void

Returns​

() => void


onEvent()​

onEvent(listener): () => void

Defined in: packages/plugin-sdk/src/kernel/session.ts:238

Subscribe to peer-emitted evt.emit envelopes (rev4 §E1). The plugin side uses this to receive app events the host relays; the host side can use it for plugin→host event channels. Returns an unsubscribe function.

Parameters​

listener​

EventEmitListener

Returns​

() => void


onInboundStream()​

onInboundStream(listener): () => void

Defined in: packages/plugin-sdk/src/kernel/session.ts:384

Subscribe to streams the peer opens toward us.

Parameters​

listener​

(streamId, meta) => void

Returns​

() => void


onPeerClose()​

onPeerClose(listener): () => void

Defined in: packages/plugin-sdk/src/kernel/session.ts:228

rev4 §M3: subscribe to the peer side of the port closing (sandbox process death, navigation away, or the peer's own dispose). The host uses this as the fast crash signal for restart-budget handling. Returns an unsubscribe function.

Parameters​

listener​

() => void

Returns​

() => void


openOutboundStream()​

openOutboundStream(meta): object

Defined in: packages/plugin-sdk/src/kernel/session.ts:320

Open a stream toward the peer; returns a writer.

Parameters​

meta​

Record<string, unknown>

Returns​

object

streamId​

streamId: string

end()​

end(): void

Returns​

void

fail()​

fail(error?): void

Parameters​
error?​

unknown

Returns​

void

write()​

write(chunk): Promise<void>

Parameters​
chunk​

Uint8Array

Returns​

Promise<void>


replenishCredit()​

replenishCredit(streamId): void

Defined in: packages/plugin-sdk/src/kernel/session.ts:394

Internal: top up credit for a stream the consumer just read from.

Parameters​

streamId​

string

Returns​

void