@rkat/mobkit-sdk 0.6.15 → 0.6.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/dist/agent-builder.d.ts.map +1 -1
  2. package/dist/agent-builder.js +20 -3
  3. package/dist/agent-builder.js.map +1 -1
  4. package/dist/builder.d.ts +12 -0
  5. package/dist/builder.d.ts.map +1 -1
  6. package/dist/builder.js +46 -2
  7. package/dist/builder.js.map +1 -1
  8. package/dist/cjs/agent-builder.cjs +19 -2
  9. package/dist/cjs/builder.cjs +46 -2
  10. package/dist/cjs/config/auth.cjs +10 -2
  11. package/dist/cjs/config/memory.cjs +5 -7
  12. package/dist/cjs/config/session-store.cjs +10 -2
  13. package/dist/cjs/errors.cjs +16 -5
  14. package/dist/cjs/index.cjs +13 -3
  15. package/dist/cjs/runtime.cjs +223 -2
  16. package/dist/cjs/types.cjs +187 -9
  17. package/dist/config/auth.d.ts +2 -0
  18. package/dist/config/auth.d.ts.map +1 -1
  19. package/dist/config/auth.js +10 -2
  20. package/dist/config/auth.js.map +1 -1
  21. package/dist/config/memory.d.ts +1 -0
  22. package/dist/config/memory.d.ts.map +1 -1
  23. package/dist/config/memory.js +5 -7
  24. package/dist/config/memory.js.map +1 -1
  25. package/dist/config/session-store.d.ts +2 -0
  26. package/dist/config/session-store.d.ts.map +1 -1
  27. package/dist/config/session-store.js +10 -2
  28. package/dist/config/session-store.js.map +1 -1
  29. package/dist/errors.d.ts +7 -2
  30. package/dist/errors.d.ts.map +1 -1
  31. package/dist/errors.js +14 -4
  32. package/dist/errors.js.map +1 -1
  33. package/dist/index.d.ts +3 -3
  34. package/dist/index.d.ts.map +1 -1
  35. package/dist/index.js +3 -3
  36. package/dist/index.js.map +1 -1
  37. package/dist/runtime.d.ts +37 -1
  38. package/dist/runtime.d.ts.map +1 -1
  39. package/dist/runtime.js +225 -4
  40. package/dist/runtime.js.map +1 -1
  41. package/dist/types.d.ts +69 -0
  42. package/dist/types.d.ts.map +1 -1
  43. package/dist/types.js +176 -9
  44. package/dist/types.js.map +1 -1
  45. package/package.json +1 -1
package/dist/runtime.js CHANGED
@@ -16,12 +16,12 @@ import { request as httpRequest } from "node:http";
16
16
  import { request as httpsRequest } from "node:https";
17
17
  import { readFileSync } from "node:fs";
18
18
  import { CallbackDispatcher } from "./agent-builder.js";
19
- import { MOB_EVENTS_STALE_CURSOR_CODE, MobEventsStaleError, NotConnectedError, RpcError, TransportError, isRpcError, } from "./errors.js";
19
+ import { MOB_EVENTS_STALE_CURSOR_CODE, CAPABILITY_UNAVAILABLE_CODE, MEMORY_BACKEND_UNAVAILABLE_CODE, CapabilityUnavailableError, MemoryBackendUnavailableError, MobEventsStaleError, NotConnectedError, RpcError, TransportError, isRpcError, } from "./errors.js";
20
20
  import { PersistentTransport, buildJsonRpcRequest } from "./transport.js";
21
21
  import { parseSseStream } from "./sse.js";
22
22
  import { parseAgentEventFromSse, parseMobEventFromSse, } from "./events.js";
23
23
  import { discoverySpecToDict } from "./models.js";
24
- import { parseStatusResult, parseCapabilitiesResult, parseReconcileResult, parseSpawnResult, parseSubscribeResult, parseSendMessageResult, parseRoutingResolution, parseDeliveryResult, parseDeliveryHistoryResult, parseMemoryQueryResult, parseMemoryStoreInfo, parseMemoryIndexResult, parseCallToolResult, parseMemberSnapshot, parseRuntimeRouteResult, parseGatingEvaluateResult, parseGatingDecisionResult, parseGatingAuditEntry, parseGatingPendingEntry, parseRediscoverReport, parseReconcileEdgesReport, parsePersistedEvent, parseMobStructuralEvent, parseMobRun, eventQueryToDict, parseIdentityStatus, parseBlobGetResult, parseBlobUploadResult, dispatchInputToDict, contentBlockToDict, } from "./types.js";
24
+ import { parseStatusResult, parseCapabilitiesResult, parseReconcileResult, parseSpawnResult, parseSubscribeResult, parseSendMessageResult, parseRoutingResolution, parseDeliveryResult, parseDeliveryHistoryResult, parseMemoryQueryResult, parseMemoryStoreInfo, parseMemoryIndexResult, parseCallToolResult, parseMemberSnapshot, parseRuntimeRouteResult, parseGatingEvaluateResult, parseGatingDecisionResult, parseGatingAuditEntry, parseGatingPendingEntry, parseRediscoverReport, parseReconcileEdgesReport, parsePersistedEvent, parseMobStructuralEvent, parseMobRun, parseRichMemberSnapshot, parseHelperResult, parseMobRunSnapshot, parseCrossMobContactEntry, parseModelsCatalogResult, eventQueryToDict, parseIdentityStatus, parseBlobGetResult, parseBlobUploadResult, dispatchInputToDict, contentBlockToDict, } from "./types.js";
25
25
  // -- Request ID counter ---------------------------------------------------
26
26
  let requestCounter = 0;
27
27
  function nextRequestId(method) {
@@ -203,6 +203,16 @@ export class MobKitRuntime {
203
203
  if (this._config.eventLog) {
204
204
  runtimeOptions.event_log = serializeConfig(this._config.eventLog);
205
205
  }
206
+ if (this._config.consoleConfigPath) {
207
+ runtimeOptions.console_config_path = this._config.consoleConfigPath;
208
+ }
209
+ if (this._config.consoleRequireAppAuth !== null) {
210
+ runtimeOptions.console_require_app_auth =
211
+ this._config.consoleRequireAppAuth;
212
+ }
213
+ if (this._config.demoLlm) {
214
+ runtimeOptions.demo_llm = true;
215
+ }
206
216
  if (this._config.implicitDelegateIdleRetireSecs !== undefined) {
207
217
  runtimeOptions.implicit_delegate_idle_retire_secs =
208
218
  this._config.implicitDelegateIdleRetireSecs;
@@ -214,6 +224,15 @@ export class MobKitRuntime {
214
224
  if (this._config.rosterProvider !== null) {
215
225
  params.has_roster_provider = true;
216
226
  }
227
+ if (this._config.continuityStore !== null) {
228
+ params.has_continuity_store = true;
229
+ }
230
+ if (this._config.leaseProvider !== null) {
231
+ params.has_lease_provider = true;
232
+ }
233
+ if (this._config.scratchDir !== null) {
234
+ params.scratch_dir = this._config.scratchDir;
235
+ }
217
236
  if (this._config.topologyProvider !== null) {
218
237
  params.has_topology_provider = true;
219
238
  }
@@ -232,7 +251,19 @@ export class MobKitRuntime {
232
251
  const response = (await this._transport.sendAsync(request));
233
252
  if ("error" in response) {
234
253
  const err = response.error;
235
- throw new RpcError(Number(err.code ?? -1), String(err.message ?? String(err)), rid, method, err.data);
254
+ const code = Number(err.code ?? -1);
255
+ const message = String(err.message ?? String(err));
256
+ if (code === CAPABILITY_UNAVAILABLE_CODE) {
257
+ throw new CapabilityUnavailableError(message, rid, method, err.data);
258
+ }
259
+ if (code === MEMORY_BACKEND_UNAVAILABLE_CODE) {
260
+ throw new MemoryBackendUnavailableError(message, rid, method, err.data);
261
+ }
262
+ const rpcError = new RpcError(code, message, rid, method, err.data);
263
+ if (code === MOB_EVENTS_STALE_CURSOR_CODE) {
264
+ throw MobEventsStaleError.fromRpcError(rpcError);
265
+ }
266
+ throw rpcError;
236
267
  }
237
268
  return response.result;
238
269
  }
@@ -312,6 +343,14 @@ export class MobKitRuntime {
312
343
  async deleteIdentity(identity) {
313
344
  return this._rpc("mobkit/delete_identity", { identity });
314
345
  }
346
+ /** Inspect identity continuity/runtime state. */
347
+ async inspectIdentity(identity) {
348
+ return this._rpc("mobkit/inspect_identity", { identity });
349
+ }
350
+ /** Re-run identity-first reconciliation. */
351
+ async reconcileIdentity() {
352
+ return this._rpc("mobkit/reconcile_identity", {});
353
+ }
315
354
  }
316
355
  // -- MobHandle ------------------------------------------------------------
317
356
  /**
@@ -337,6 +376,9 @@ export class MobHandle {
337
376
  async capabilities() {
338
377
  return parseCapabilitiesResult(await this._runtime._rpc("mobkit/capabilities"));
339
378
  }
379
+ async modelsCatalog() {
380
+ return parseModelsCatalogResult(await this._runtime._rpc("mobkit/models/catalog"));
381
+ }
340
382
  // -- Spawn & reconcile --------------------------------------------------
341
383
  async spawn(spec) {
342
384
  return parseSpawnResult(await this._runtime._rpc("mobkit/spawn_member", discoverySpecToDict(spec)));
@@ -528,7 +570,19 @@ export class MobHandle {
528
570
  }
529
571
  if ("error" in body) {
530
572
  const err = body.error;
531
- throw new RpcError(Number(err.code ?? -1), String(err.message ?? String(err)), id, method, err.data);
573
+ const code = Number(err.code ?? -1);
574
+ const message = String(err.message ?? String(err));
575
+ if (code === CAPABILITY_UNAVAILABLE_CODE) {
576
+ throw new CapabilityUnavailableError(message, id, method, err.data);
577
+ }
578
+ if (code === MEMORY_BACKEND_UNAVAILABLE_CODE) {
579
+ throw new MemoryBackendUnavailableError(message, id, method, err.data);
580
+ }
581
+ const rpcError = new RpcError(code, message, id, method, err.data);
582
+ if (code === MOB_EVENTS_STALE_CURSOR_CODE) {
583
+ throw MobEventsStaleError.fromRpcError(rpcError);
584
+ }
585
+ throw rpcError;
532
586
  }
533
587
  if (!response.ok) {
534
588
  throw new TransportError(`multipart RPC failed (status=${response.status}): ${responseText}`);
@@ -583,6 +637,14 @@ export class MobHandle {
583
637
  member_id: memberId,
584
638
  });
585
639
  }
640
+ async memberStatus(memberId) {
641
+ return parseRichMemberSnapshot(await this._runtime._rpc("mobkit/member_status", { member_id: memberId }));
642
+ }
643
+ async forceCancelMember(memberId) {
644
+ await this._runtime._rpc("mobkit/force_cancel_member", {
645
+ member_id: memberId,
646
+ });
647
+ }
586
648
  /**
587
649
  * Wait until all current mob members are startup-ready for orchestration.
588
650
  *
@@ -607,6 +669,18 @@ export class MobHandle {
607
669
  };
608
670
  }
609
671
  // -- Flows --------------------------------------------------------------
672
+ async cancelFlow(runId) {
673
+ await this._runtime._rpc("mobkit/cancel_flow", { run_id: runId });
674
+ }
675
+ async flowStatus(runId) {
676
+ const raw = await this._runtime._rpc("mobkit/flow_status", { run_id: runId });
677
+ if (raw === null)
678
+ return null;
679
+ if (typeof raw === "object" && raw !== null && raw.status === "not_found") {
680
+ return null;
681
+ }
682
+ return parseMobRunSnapshot(raw);
683
+ }
610
684
  /**
611
685
  * List all configured flow IDs in this mob definition. Relays meerkat
612
686
  * 0.6's `MobHandle::list_flows`. Order is unspecified.
@@ -672,6 +746,38 @@ export class MobHandle {
672
746
  }
673
747
  throw new Error(`unexpected run_flow response: ${JSON.stringify(raw)}`);
674
748
  }
749
+ async collectCompleted() {
750
+ const raw = await this._runtime._rpc("mobkit/collect_completed");
751
+ const entries = typeof raw === "object" && raw !== null
752
+ ? (Array.isArray(raw.completed)
753
+ ? raw.completed
754
+ : [])
755
+ : Array.isArray(raw)
756
+ ? raw
757
+ : [];
758
+ const result = [];
759
+ for (const entry of entries) {
760
+ const record = typeof entry === "object" && entry !== null
761
+ ? entry
762
+ : {};
763
+ const memberId = String(record.member_id ?? "");
764
+ result.push([memberId, parseRichMemberSnapshot(record.snapshot ?? record)]);
765
+ }
766
+ return result;
767
+ }
768
+ // -- Scheduling ---------------------------------------------------------
769
+ async schedulingEvaluate(schedules, tickMs) {
770
+ return this._runtime._rpc("mobkit/scheduling/evaluate", {
771
+ schedules: [...schedules],
772
+ tick_ms: tickMs,
773
+ });
774
+ }
775
+ async schedulingDispatch(schedules, tickMs) {
776
+ return this._runtime._rpc("mobkit/scheduling/dispatch", {
777
+ schedules: [...schedules],
778
+ tick_ms: tickMs,
779
+ });
780
+ }
675
781
  // -- Routing ------------------------------------------------------------
676
782
  async resolveRouting(recipient, options) {
677
783
  return parseRoutingResolution(await this._runtime._rpc("mobkit/routing/resolve", {
@@ -754,6 +860,9 @@ export class MobHandle {
754
860
  toolCaller(moduleId) {
755
861
  return new ToolCaller(this, moduleId);
756
862
  }
863
+ async sessionStoreBigQuery(options) {
864
+ return this._runtime._rpc("mobkit/session_store/bigquery", options);
865
+ }
757
866
  // -- Gating -------------------------------------------------------------
758
867
  async gatingEvaluate(action, actorId, options) {
759
868
  return parseGatingEvaluateResult(await this._runtime._rpc("mobkit/gating/evaluate", {
@@ -797,6 +906,118 @@ export class MobHandle {
797
906
  async reconcileEdges() {
798
907
  return parseReconcileEdgesReport(await this._runtime._rpc("mobkit/reconcile_edges"));
799
908
  }
909
+ // -- Cross-mob ----------------------------------------------------------
910
+ async listExternalMobs() {
911
+ const raw = await this._runtime._rpc("mobkit/cross_mob/directory");
912
+ const mobs = typeof raw === "object" && raw !== null
913
+ ? (Array.isArray(raw.mobs)
914
+ ? raw.mobs
915
+ : [])
916
+ : [];
917
+ return mobs.map(parseCrossMobContactEntry);
918
+ }
919
+ async peerInfo(memberId) {
920
+ const raw = await this._runtime._rpc("mobkit/cross_mob/peer_info", {
921
+ member_id: memberId,
922
+ });
923
+ const out = {};
924
+ if (typeof raw === "object" && raw !== null) {
925
+ for (const [k, v] of Object.entries(raw)) {
926
+ out[k] = String(v);
927
+ }
928
+ }
929
+ return out;
930
+ }
931
+ async peerPubkey() {
932
+ const raw = await this._runtime._rpc("mobkit/peer_pubkey");
933
+ return typeof raw === "object" && raw !== null
934
+ ? String(raw.pubkey_b64 ?? "")
935
+ : "";
936
+ }
937
+ async wireLocal(localMemberId, remoteCommsName, remotePeerId, remoteAddress, options) {
938
+ const params = {
939
+ local_member_id: localMemberId,
940
+ remote_comms_name: remoteCommsName,
941
+ remote_peer_id: remotePeerId,
942
+ remote_address: remoteAddress,
943
+ };
944
+ if (options?.remotePubkeyB64) {
945
+ params.remote_pubkey_b64 = options.remotePubkeyB64;
946
+ }
947
+ await this._runtime._rpc("mobkit/cross_mob/wire_local", params);
948
+ }
949
+ async unwireLocal(localMemberId, remoteCommsName, remotePeerId, remoteAddress, options) {
950
+ const params = {
951
+ local_member_id: localMemberId,
952
+ remote_comms_name: remoteCommsName,
953
+ remote_peer_id: remotePeerId,
954
+ remote_address: remoteAddress,
955
+ };
956
+ if (options?.remotePubkeyB64) {
957
+ params.remote_pubkey_b64 = options.remotePubkeyB64;
958
+ }
959
+ await this._runtime._rpc("mobkit/cross_mob/unwire_local", params);
960
+ }
961
+ async wireCrossMob(localMemberId, remoteMemberId, remoteHandle) {
962
+ const localInfo = await this.peerInfo(localMemberId);
963
+ const remoteInfo = await remoteHandle.peerInfo(remoteMemberId);
964
+ await this.wireLocal(localMemberId, remoteInfo.comms_name, remoteInfo.peer_id, remoteInfo.address);
965
+ try {
966
+ await remoteHandle.wireLocal(remoteMemberId, localInfo.comms_name, localInfo.peer_id, localInfo.address);
967
+ }
968
+ catch (err) {
969
+ try {
970
+ await this.unwireLocal(localMemberId, remoteInfo.comms_name, remoteInfo.peer_id, remoteInfo.address);
971
+ }
972
+ catch {
973
+ // Best-effort rollback; preserve the original remote error.
974
+ }
975
+ throw err;
976
+ }
977
+ }
978
+ async sendCrossMob(remoteMemberId, remoteHandle, message) {
979
+ return remoteHandle.send(remoteMemberId, message);
980
+ }
981
+ // -- Helper members -----------------------------------------------------
982
+ async spawnHelper(agentIdentity, task, options) {
983
+ const helperOptions = {};
984
+ if (options?.role)
985
+ helperOptions.role = options.role;
986
+ if (options?.runtimeMode)
987
+ helperOptions.runtime_mode = options.runtimeMode;
988
+ if (options?.backend)
989
+ helperOptions.backend = options.backend;
990
+ const params = { agent_identity: agentIdentity, task };
991
+ if (Object.keys(helperOptions).length > 0)
992
+ params.options = helperOptions;
993
+ return parseHelperResult(await this._runtime._rpc("mobkit/spawn_helper", params));
994
+ }
995
+ async forkHelper(sourceMemberId, agentIdentity, task, options) {
996
+ const helperOptions = {};
997
+ if (options?.role)
998
+ helperOptions.role = options.role;
999
+ if (options?.runtimeMode)
1000
+ helperOptions.runtime_mode = options.runtimeMode;
1001
+ if (options?.backend)
1002
+ helperOptions.backend = options.backend;
1003
+ const params = {
1004
+ source_member_id: sourceMemberId,
1005
+ agent_identity: agentIdentity,
1006
+ task,
1007
+ };
1008
+ if (options?.forkContext)
1009
+ params.fork_context = options.forkContext;
1010
+ if (Object.keys(helperOptions).length > 0)
1011
+ params.options = helperOptions;
1012
+ return parseHelperResult(await this._runtime._rpc("mobkit/fork_helper", params));
1013
+ }
1014
+ async attachSession(role, agentIdentity, sessionId) {
1015
+ return parseRichMemberSnapshot(await this._runtime._rpc("mobkit/attach_existing_session", {
1016
+ role,
1017
+ agent_identity: agentIdentity,
1018
+ session_id: sessionId,
1019
+ }));
1020
+ }
800
1021
  // -- Mob/run labels — mobkit-side sidecar metadata ----------------------
801
1022
  /**
802
1023
  * Replace the label set associated with this mob.
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -313,6 +313,70 @@ export interface MobRun {
313
313
  readonly loopIterationOutputs: Readonly<Record<string, unknown>>;
314
314
  }
315
315
  export declare function parseMobRun(raw: unknown): MobRun;
316
+ export type MobMemberStatus = "active" | "retiring" | "broken" | "completed" | "unknown";
317
+ export interface MobUnreachablePeer {
318
+ readonly peer: string;
319
+ readonly reason: string | null;
320
+ }
321
+ export declare function parseMobUnreachablePeer(raw: unknown): MobUnreachablePeer;
322
+ export interface PeerConnectivitySnapshot {
323
+ readonly reachablePeerCount: number;
324
+ readonly unknownPeerCount: number;
325
+ readonly unreachablePeers: readonly MobUnreachablePeer[];
326
+ }
327
+ export declare function parsePeerConnectivitySnapshot(raw: unknown): PeerConnectivitySnapshot;
328
+ export interface RichMemberSnapshot {
329
+ readonly status: string;
330
+ readonly outputPreview: string | null;
331
+ readonly error: string | null;
332
+ readonly tokensUsed: number;
333
+ readonly isFinal: boolean;
334
+ readonly currentSessionId: string | null;
335
+ readonly peerConnectivity: PeerConnectivitySnapshot | null;
336
+ }
337
+ export declare function parseRichMemberSnapshot(raw: unknown): RichMemberSnapshot;
338
+ export interface HelperResult {
339
+ readonly output: string | null;
340
+ readonly tokensUsed: number;
341
+ readonly sessionId: string | null;
342
+ }
343
+ export declare function parseHelperResult(raw: unknown): HelperResult;
344
+ export interface MobRunSnapshot {
345
+ readonly runId: string;
346
+ readonly mobId: string;
347
+ readonly flowId: string;
348
+ readonly status: string;
349
+ readonly stepLedger: readonly Record<string, unknown>[];
350
+ readonly failureLedger: readonly Record<string, unknown>[];
351
+ }
352
+ export declare function parseMobRunSnapshot(raw: unknown): MobRunSnapshot;
353
+ export interface CrossMobContactEntry {
354
+ readonly mobId: string;
355
+ readonly transport: string;
356
+ }
357
+ export declare function parseCrossMobContactEntry(raw: unknown): CrossMobContactEntry;
358
+ export interface CatalogEntry {
359
+ readonly id: string;
360
+ readonly displayName: string;
361
+ readonly provider: string;
362
+ readonly tier: string;
363
+ readonly contextWindow: number | null;
364
+ readonly maxOutputTokens: number | null;
365
+ readonly vision: boolean;
366
+ readonly imageToolResults: boolean;
367
+ }
368
+ export declare function parseCatalogEntry(raw: unknown): CatalogEntry;
369
+ export interface ProviderDefaults {
370
+ readonly provider: string;
371
+ readonly defaultModelId: string;
372
+ readonly models: readonly CatalogEntry[];
373
+ }
374
+ export declare function parseProviderDefaults(raw: unknown): ProviderDefaults;
375
+ export interface ModelsCatalogResult {
376
+ readonly models: readonly CatalogEntry[];
377
+ readonly providerDefaults: readonly ProviderDefaults[];
378
+ }
379
+ export declare function parseModelsCatalogResult(raw: unknown): ModelsCatalogResult;
316
380
  export declare const ErrorCategory: {
317
381
  readonly SPAWN_FAILURE: "spawn_failure";
318
382
  readonly RECONCILE_INCOMPLETE: "reconcile_incomplete";
@@ -473,20 +537,25 @@ export declare function parseLeaseGrant(raw: unknown): LeaseGrant;
473
537
  export declare function leaseGrantToDict(grant: LeaseGrant): Record<string, unknown>;
474
538
  export interface LeaseAcquireResult {
475
539
  readonly status: "acquired" | "alreadyHeld";
540
+ readonly identity?: string;
476
541
  readonly grant?: LeaseGrant;
477
542
  readonly holder?: string;
478
543
  }
479
544
  export declare function parseLeaseAcquireResult(raw: unknown): LeaseAcquireResult;
545
+ export declare function leaseAcquireResultToDict(result: LeaseAcquireResult): Record<string, unknown>;
480
546
  export interface LeaseRenewResult {
481
547
  readonly status: "renewed" | "lost";
548
+ readonly identity?: string;
482
549
  readonly grant?: LeaseGrant;
483
550
  }
484
551
  export declare function parseLeaseRenewResult(raw: unknown): LeaseRenewResult;
552
+ export declare function leaseRenewResultToDict(result: LeaseRenewResult): Record<string, unknown>;
485
553
  export interface ContinuityStore {
486
554
  resolveMany(identities: string[]): Promise<Record<string, ContinuityResolveState>>;
487
555
  loadSessionSnapshot(sessionId: string): Promise<SessionSnapshot | null>;
488
556
  saveSessionSnapshot(identity: string, sessionId: string, generation: number, version: number, fencingToken: number, snapshot: SessionSnapshot): Promise<void>;
489
557
  upsertContinuityRecord(record: ContinuityRecord, fencingToken: number): Promise<void>;
558
+ deleteContinuityRecord(identity: string, fencingToken: number): Promise<void>;
490
559
  }
491
560
  export interface LeaseProvider {
492
561
  acquireLeases(identities: string[], runtimeInstance: string): Promise<Record<string, LeaseAcquireResult>>;