@ewhauser/world-celld 0.6.0 → 0.8.0

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.
package/dist/worker.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { i as QueuePayloadRegistration, r as QueuePayloadOrphan, t as QueueDeliveryResult } from "./queue-delivery-DzNOtCYA.js";
1
+ import { a as RunQueueReservation, i as QueuePayloadRegistration, r as QueuePayloadOrphan, t as QueueDeliveryResult } from "./queue-delivery-BdeNUbRN.js";
2
2
  import { CreateEventParams, CreateEventRequest, Event, Hook, RunCreatedEventRequest, Step, TerminalWorkflowRunStatus, Wait, WorkflowRun, WorkflowRunStatus } from "@workflow/world";
3
3
  //#region src/worker/queue-payload-store.d.ts
4
4
  /**
@@ -224,6 +224,15 @@ interface ApplyEventSuccess {
224
224
  maxEvents?: number;
225
225
  /** Deadline for publishing this authoritative mutation to derivative indexes. */
226
226
  indexPublicationExpiresAt?: number;
227
+ /** Set by the worker router after it published `run` to the run catalog. */
228
+ runIndexPublished?: true;
229
+ /** Set by the worker router after it released `releasedHooks` from the hook indexes. */
230
+ hookIndexesReleased?: true;
231
+ /**
232
+ * The unchanged run returned with a `preloadEvents` hook_received replay
233
+ * log. It is not a run mutation, so it carries no index publication.
234
+ */
235
+ replayRun?: WorkflowRun;
227
236
  }
228
237
  type ApplyEventOutcome = ApplyEventSuccess | ApplyEventFailure;
229
238
  //#endregion
@@ -383,6 +392,8 @@ declare class StreamDO extends DurableObject {
383
392
  private mutationTail;
384
393
  private changeVersion;
385
394
  private readonly waiters;
395
+ /** Multi-key read split into calls within the per-call key limit. */
396
+ private getMany;
386
397
  private getMeta;
387
398
  private assertOwner;
388
399
  private assertWritable;
@@ -390,6 +401,13 @@ declare class StreamDO extends DurableObject {
390
401
  private wakeReaders;
391
402
  private waitForChange;
392
403
  private readSnapshot;
404
+ private readChunkRows;
405
+ /**
406
+ * Plan from the small segment size rows, then load only the segments that
407
+ * cover the requested range. A read that starts on a segment boundary (the
408
+ * common sequential case) needs one list and one multi-get.
409
+ */
410
+ private readSegmentRows;
393
411
  /** Append one bounded binary batch with contiguous indexes. */
394
412
  writeChunks(runId: string, chunks: Uint8Array[]): Promise<StreamWriteResult>;
395
413
  /**
@@ -410,6 +428,14 @@ declare class StreamDO extends DurableObject {
410
428
  }): Promise<ExpireRunStreamsResult>;
411
429
  /** Remove completed registry entries in a bounded, retry-safe batch. */
412
430
  finalizeRegistry(runId: string, streams: string[]): Promise<FinalizeRunStreamsResult>;
431
+ /** Delete one page of per-chunk rows, listing size rows to avoid loading payloads. */
432
+ private expireChunkPage;
433
+ /**
434
+ * Delete one page of segment rows, listing segment size rows to avoid
435
+ * loading payloads. One segment always makes progress, even when it holds
436
+ * more chunks or bytes than the page allows.
437
+ */
438
+ private expireSegmentPage;
413
439
  /**
414
440
  * Fence the stream and delete one bounded page. Listing size keys avoids
415
441
  * loading payloads, and the transaction makes a crash retry resume safely.
@@ -503,6 +529,14 @@ declare class WorkflowRunDO extends DurableObject {
503
529
  private executeScheduledCleanupPage;
504
530
  private executeCleanup;
505
531
  private executeTerminalCleanup;
532
+ /**
533
+ * Most runs end with a handful of hooks and waits. When every terminal
534
+ * phase fits in one page, release the hook indexes once and delete hooks,
535
+ * markers, and waits in a single transaction instead of one alarm and one
536
+ * transaction per phase. Returns false, having changed nothing locally, when
537
+ * any phase needs paging; the paged phases then run as before.
538
+ */
539
+ private completeSmallTerminalCleanup;
506
540
  private deleteTerminalHookPage;
507
541
  private deleteTerminalHookMarkerPage;
508
542
  private deleteTerminalWaitPage;
@@ -512,6 +546,56 @@ declare class WorkflowRunDO extends DurableObject {
512
546
  private deletePayloadBatch;
513
547
  private recordCleanupFailure;
514
548
  private recordTerminalCleanupFailure;
549
+ /**
550
+ * Read-only admission for a run-bearing Queue message whose body travels
551
+ * inline in the broker envelope. It answers what payload registration does
552
+ * for offloaded bodies, without writing anything.
553
+ */
554
+ getQueueAdmission(): Promise<{
555
+ ok: true;
556
+ } | {
557
+ ok: false;
558
+ message: string;
559
+ }>;
560
+ /**
561
+ * Enqueue-side admission and idempotency reservation in one transaction,
562
+ * for a run-scoped claim. Replaces a separate claim cell's reservation plus
563
+ * the run expiry check.
564
+ */
565
+ reserveRunQueueMessage(params: {
566
+ claimName: string;
567
+ messageId: string;
568
+ expiresAt: number;
569
+ }): Promise<RunQueueReservation>;
570
+ /** Delivery-side run expiry check and in-flight claim in one transaction. */
571
+ claimRunQueueMessage(params: {
572
+ claimName: string;
573
+ messageId: string;
574
+ staleMs: number;
575
+ }): Promise<{
576
+ expired: true;
577
+ } | {
578
+ expired: false;
579
+ claimed: boolean;
580
+ retryAt?: number;
581
+ }>;
582
+ holdRunQueueMessage(params: {
583
+ claimName: string;
584
+ messageId: string;
585
+ retryAt: number;
586
+ expiresAt: number;
587
+ reservationExpiresAt?: number;
588
+ }): Promise<{
589
+ held: boolean;
590
+ }>;
591
+ releaseRunQueueMessage(params: {
592
+ claimName: string;
593
+ messageId: string;
594
+ }): Promise<void>;
595
+ completeRunQueueMessage(params: {
596
+ claimName: string;
597
+ messageId: string;
598
+ }): Promise<void>;
515
599
  registerQueuePayload(registration: QueuePayloadRegistration): Promise<{
516
600
  ok: true;
517
601
  } | {
@@ -1 +1 @@
1
- {"version":3,"file":"worker.d.ts","names":[],"sources":["../src/worker/queue-payload-store.ts","../src/worker/router.ts","../src/worker/do-base.ts","../src/retention.ts","../src/apply-event.ts","../src/stream-protocol.ts","../src/indexes.ts","../src/config.ts","../src/worker/durable-objects/hook-index-shared.ts","../src/worker/durable-objects/HookIdDO.ts","../src/worker/durable-objects/HookTokenDO.ts","../src/worker/durable-objects/RunCatalogDO.ts","../src/worker/durable-objects/StreamDO.ts","../src/worker/durable-objects/WorkflowRunDO.ts","../src/worker/worker.ts"],"mappings":"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"}
1
+ {"version":3,"file":"worker.d.ts","names":[],"sources":["../src/worker/queue-payload-store.ts","../src/worker/router.ts","../src/worker/do-base.ts","../src/retention.ts","../src/apply-event.ts","../src/stream-protocol.ts","../src/indexes.ts","../src/config.ts","../src/worker/durable-objects/hook-index-shared.ts","../src/worker/durable-objects/HookIdDO.ts","../src/worker/durable-objects/HookTokenDO.ts","../src/worker/durable-objects/RunCatalogDO.ts","../src/worker/durable-objects/StreamDO.ts","../src/worker/durable-objects/WorkflowRunDO.ts","../src/worker/worker.ts"],"mappings":"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"}