@optimystic/db-core 0.21.0 → 0.24.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.
Files changed (185) hide show
  1. package/README.md +336 -336
  2. package/dist/src/btree/btree.d.ts +2 -1
  3. package/dist/src/btree/btree.d.ts.map +1 -1
  4. package/dist/src/btree/btree.js +1 -1
  5. package/dist/src/btree/btree.js.map +1 -1
  6. package/dist/src/chain/chain.d.ts +1 -1
  7. package/dist/src/chain/chain.d.ts.map +1 -1
  8. package/dist/src/chain/chain.js +1 -1
  9. package/dist/src/chain/chain.js.map +1 -1
  10. package/dist/src/cluster/structs.d.ts +39 -1
  11. package/dist/src/cluster/structs.d.ts.map +1 -1
  12. package/dist/src/cluster/structs.js +24 -0
  13. package/dist/src/cluster/structs.js.map +1 -1
  14. package/dist/src/collection/collection.d.ts +20 -1
  15. package/dist/src/collection/collection.d.ts.map +1 -1
  16. package/dist/src/collection/collection.js +31 -4
  17. package/dist/src/collection/collection.js.map +1 -1
  18. package/dist/src/collections/diary/diary.d.ts.map +1 -1
  19. package/dist/src/collections/diary/diary.js +2 -1
  20. package/dist/src/collections/diary/diary.js.map +1 -1
  21. package/dist/src/collections/diary/struct.js +1 -1
  22. package/dist/src/collections/diary/struct.js.map +1 -1
  23. package/dist/src/collections/tree/collection-trunk.js +1 -1
  24. package/dist/src/collections/tree/collection-trunk.js.map +1 -1
  25. package/dist/src/collections/tree/struct.d.ts +1 -1
  26. package/dist/src/collections/tree/struct.d.ts.map +1 -1
  27. package/dist/src/collections/tree/struct.js +2 -1
  28. package/dist/src/collections/tree/struct.js.map +1 -1
  29. package/dist/src/collections/tree/tree.d.ts +5 -0
  30. package/dist/src/collections/tree/tree.d.ts.map +1 -1
  31. package/dist/src/collections/tree/tree.js +7 -0
  32. package/dist/src/collections/tree/tree.js.map +1 -1
  33. package/dist/src/log/log.d.ts +1 -1
  34. package/dist/src/log/log.d.ts.map +1 -1
  35. package/dist/src/log/log.js +2 -2
  36. package/dist/src/log/log.js.map +1 -1
  37. package/dist/src/network/i-peer-network.d.ts +16 -0
  38. package/dist/src/network/i-peer-network.d.ts.map +1 -1
  39. package/dist/src/network/struct.d.ts +39 -2
  40. package/dist/src/network/struct.d.ts.map +1 -1
  41. package/dist/src/network/struct.js +18 -0
  42. package/dist/src/network/struct.js.map +1 -1
  43. package/dist/src/testing/test-transactor.d.ts +95 -8
  44. package/dist/src/testing/test-transactor.d.ts.map +1 -1
  45. package/dist/src/testing/test-transactor.js +133 -12
  46. package/dist/src/testing/test-transactor.js.map +1 -1
  47. package/dist/src/transaction/coordinator.d.ts.map +1 -1
  48. package/dist/src/transaction/coordinator.js +2 -1
  49. package/dist/src/transaction/coordinator.js.map +1 -1
  50. package/dist/src/transaction/transaction.d.ts +1 -1
  51. package/dist/src/transaction/transaction.js +1 -1
  52. package/dist/src/transactor/network-transactor.d.ts.map +1 -1
  53. package/dist/src/transactor/network-transactor.js +57 -18
  54. package/dist/src/transactor/network-transactor.js.map +1 -1
  55. package/dist/src/transactor/transactor-source.d.ts.map +1 -1
  56. package/dist/src/transactor/transactor-source.js +25 -2
  57. package/dist/src/transactor/transactor-source.js.map +1 -1
  58. package/dist/src/transform/cache-source.js +1 -1
  59. package/dist/src/transform/cache-source.js.map +1 -1
  60. package/dist/src/transform/helpers.d.ts +6 -1
  61. package/dist/src/transform/helpers.d.ts.map +1 -1
  62. package/dist/src/transform/helpers.js +7 -6
  63. package/dist/src/transform/helpers.js.map +1 -1
  64. package/dist/src/transform/tracker.d.ts.map +1 -1
  65. package/dist/src/transform/tracker.js +2 -1
  66. package/dist/src/transform/tracker.js.map +1 -1
  67. package/package.json +1 -1
  68. package/src/btree/btree.ts +2 -1
  69. package/src/chain/chain.ts +2 -1
  70. package/src/cluster/membership.ts +85 -85
  71. package/src/cluster/structs.ts +43 -4
  72. package/src/cohort-topic/addressing.ts +120 -120
  73. package/src/cohort-topic/antidos/bootstrap-evidence-envelope.ts +253 -253
  74. package/src/cohort-topic/antidos/bootstrap-evidence.ts +106 -106
  75. package/src/cohort-topic/antidos/index.ts +5 -5
  76. package/src/cohort-topic/antidos/rate-limiter.ts +210 -210
  77. package/src/cohort-topic/antidos/replay-guard.ts +146 -146
  78. package/src/cohort-topic/antidos/topic-budget.ts +160 -160
  79. package/src/cohort-topic/antiflood/index.ts +2 -2
  80. package/src/cohort-topic/antiflood/invariants.ts +108 -108
  81. package/src/cohort-topic/antiflood/jitter.ts +117 -117
  82. package/src/cohort-topic/coldstart.ts +237 -237
  83. package/src/cohort-topic/dmax.ts +88 -88
  84. package/src/cohort-topic/gossip/bus.ts +254 -254
  85. package/src/cohort-topic/gossip/index.ts +3 -3
  86. package/src/cohort-topic/gossip/records.ts +45 -45
  87. package/src/cohort-topic/gossip/view.ts +91 -91
  88. package/src/cohort-topic/index.ts +20 -20
  89. package/src/cohort-topic/load/barometer.ts +134 -134
  90. package/src/cohort-topic/load/index.ts +1 -1
  91. package/src/cohort-topic/member-engine.ts +430 -430
  92. package/src/cohort-topic/membership/index.ts +3 -3
  93. package/src/cohort-topic/membership/publisher.ts +163 -163
  94. package/src/cohort-topic/membership/source.ts +41 -41
  95. package/src/cohort-topic/membership/verifier.ts +461 -461
  96. package/src/cohort-topic/ports.ts +157 -157
  97. package/src/cohort-topic/promotion.ts +405 -405
  98. package/src/cohort-topic/registration/bytes.ts +37 -37
  99. package/src/cohort-topic/registration/handoff.ts +154 -154
  100. package/src/cohort-topic/registration/index.ts +6 -6
  101. package/src/cohort-topic/registration/renewal.ts +495 -495
  102. package/src/cohort-topic/registration/sharding.ts +61 -61
  103. package/src/cohort-topic/registration/store.ts +81 -81
  104. package/src/cohort-topic/registration/types.ts +91 -91
  105. package/src/cohort-topic/ring-hash.ts +50 -50
  106. package/src/cohort-topic/service.ts +416 -416
  107. package/src/cohort-topic/sig/index.ts +2 -2
  108. package/src/cohort-topic/sig/payloads.ts +59 -59
  109. package/src/cohort-topic/sig/threshold.ts +64 -64
  110. package/src/cohort-topic/tiers.ts +74 -74
  111. package/src/cohort-topic/traffic.ts +233 -233
  112. package/src/cohort-topic/walk.ts +326 -326
  113. package/src/cohort-topic/willingness.ts +237 -237
  114. package/src/cohort-topic/wire/codec.ts +216 -216
  115. package/src/cohort-topic/wire/index.ts +18 -18
  116. package/src/cohort-topic/wire/payloads.ts +126 -126
  117. package/src/cohort-topic/wire/primitives.ts +188 -188
  118. package/src/cohort-topic/wire/types.ts +475 -475
  119. package/src/cohort-topic/wire/validate.ts +512 -512
  120. package/src/collection/collection-type-registry.ts +37 -37
  121. package/src/collection/collection.ts +32 -4
  122. package/src/collections/diary/diary.ts +68 -67
  123. package/src/collections/diary/struct.ts +1 -1
  124. package/src/collections/tree/collection-trunk.ts +1 -1
  125. package/src/collections/tree/readme.md +4 -0
  126. package/src/collections/tree/struct.ts +3 -1
  127. package/src/collections/tree/tree.ts +320 -312
  128. package/src/log/log.ts +2 -2
  129. package/src/matchmaking/capability-filter.ts +45 -45
  130. package/src/matchmaking/config.ts +98 -98
  131. package/src/matchmaking/index.ts +21 -21
  132. package/src/matchmaking/multi-cohort-seeker.ts +234 -234
  133. package/src/matchmaking/provider.ts +123 -123
  134. package/src/matchmaking/query-eval.ts +105 -105
  135. package/src/matchmaking/seeker-walk.ts +127 -127
  136. package/src/matchmaking/seeker.ts +86 -86
  137. package/src/matchmaking/topic-anchor.ts +90 -90
  138. package/src/matchmaking/voting-quorum.ts +394 -394
  139. package/src/matchmaking/wire.ts +603 -603
  140. package/src/network/i-peer-network.ts +17 -0
  141. package/src/network/stale-failure.ts +43 -43
  142. package/src/network/struct.ts +41 -2
  143. package/src/network/types.ts +37 -37
  144. package/src/reactivity/backfill.ts +220 -220
  145. package/src/reactivity/backpressure.ts +191 -191
  146. package/src/reactivity/checkpoint.ts +308 -308
  147. package/src/reactivity/config.ts +172 -172
  148. package/src/reactivity/dedupe.ts +132 -132
  149. package/src/reactivity/forwarder.ts +87 -87
  150. package/src/reactivity/index.ts +34 -34
  151. package/src/reactivity/notification.ts +123 -123
  152. package/src/reactivity/policy.ts +79 -79
  153. package/src/reactivity/push-state.ts +310 -310
  154. package/src/reactivity/recover.ts +153 -153
  155. package/src/reactivity/replay-buffer.ts +141 -141
  156. package/src/reactivity/resume.ts +549 -549
  157. package/src/reactivity/rotation.ts +415 -415
  158. package/src/reactivity/subscriber.ts +132 -132
  159. package/src/reactivity/subscription.ts +66 -66
  160. package/src/reactivity/topic-anchor.ts +71 -71
  161. package/src/reactivity/verify.ts +73 -73
  162. package/src/reactivity/wire-validate.ts +13 -13
  163. package/src/reactivity/wire.ts +224 -224
  164. package/src/testing/async-wait.ts +65 -65
  165. package/src/testing/index.ts +2 -2
  166. package/src/testing/test-transactor.ts +638 -489
  167. package/src/transaction/coordinator.ts +2 -1
  168. package/src/transaction/errors.ts +91 -91
  169. package/src/transaction/operations-hash.ts +196 -196
  170. package/src/transaction/read-dependency-collector.ts +78 -78
  171. package/src/transaction/transaction.ts +1 -1
  172. package/src/transactor/change-notifier.ts +80 -80
  173. package/src/transactor/index.ts +5 -5
  174. package/src/transactor/network-transactor.ts +58 -19
  175. package/src/transactor/transactor-source.ts +25 -2
  176. package/src/transform/atomic-proxy.ts +92 -92
  177. package/src/transform/cache-source.ts +1 -1
  178. package/src/transform/helpers.ts +159 -158
  179. package/src/transform/tracker.ts +2 -1
  180. package/src/utility/backoff.ts +95 -95
  181. package/src/utility/batch-coordinator.ts +191 -191
  182. package/dist/src/transaction/context.d.ts +0 -60
  183. package/dist/src/transaction/context.d.ts.map +0 -1
  184. package/dist/src/transaction/context.js +0 -91
  185. package/dist/src/transaction/context.js.map +0 -1
@@ -1,5 +1,7 @@
1
- import { ensuredMap, Latches } from "../index.js";
1
+ import { ensuredMap } from "../utility/ensured.js";
2
+ import { Latches } from "../utility/latches.js";
2
3
  import { applyTransform, blockIdsForTransforms, transformForBlockId, emptyTransforms, concatTransform, transformsFromTransform } from "../transform/index.js";
4
+ import { Tree } from "../collections/tree/tree.js";
3
5
  // Simple in-memory transactor for testing that maintains materialized blocks for every revision
4
6
  export class TestTransactor {
5
7
  blocks = new Map();
@@ -387,14 +389,38 @@ export class TestTransactor {
387
389
  /** Optional method for querying cluster nominees (used in GATHER phase for multi-collection transactions) */
388
390
  queryClusterNominees;
389
391
  }
392
+ /**
393
+ * Base for the intercepting wrappers below: forwards every {@link ITransactor} member to `inner`,
394
+ * so a wrapper overrides only the one call it intercepts and cannot silently drop the rest.
395
+ *
396
+ * `queryClusterNominees` is forwarded through a GETTER rather than a method, because the coordinator
397
+ * treats its ABSENCE as "no supercluster" (see `gatherPhase`). A wrapper that always defined it
398
+ * would push every wrapped multi-collection test onto the GATHER path even when the inner
399
+ * transactor never opted in; a wrapper that omits it (as these did before) does the opposite —
400
+ * a test that sets `inner.queryClusterNominees` and then wraps would skip GATHER and pass
401
+ * vacuously. The getter reproduces the inner transactor's own answer either way.
402
+ */
403
+ export class DelegatingTransactor {
404
+ inner;
405
+ constructor(inner) {
406
+ this.inner = inner;
407
+ }
408
+ get(b) { return this.inner.get(b); }
409
+ getStatus(a) { return this.inner.getStatus(a); }
410
+ pend(r) { return this.inner.pend(r); }
411
+ cancel(a) { return this.inner.cancel(a); }
412
+ commit(r) { return this.inner.commit(r); }
413
+ get queryClusterNominees() {
414
+ return this.inner.queryClusterNominees?.bind(this.inner);
415
+ }
416
+ }
390
417
  /**
391
418
  * Wraps a {@link TestTransactor} and forces its commit phase to fail a bounded (or unbounded)
392
419
  * number of times before delegating, so tests can exercise the sync retry / backoff / give-up
393
- * path deterministically. pend/get/getStatus/cancel delegate unchanged, so the pend→commit→cancel
420
+ * path deterministically. Everything else delegates unchanged, so the pend→commit→cancel
394
421
  * round-trip runs exactly as in production.
395
422
  */
396
- export class FlakyCommitTransactor {
397
- inner;
423
+ export class FlakyCommitTransactor extends DelegatingTransactor {
398
424
  failFirstN;
399
425
  reason;
400
426
  /** Number of commit() calls observed so far (across success and forced failure). */
@@ -405,14 +431,10 @@ export class FlakyCommitTransactor {
405
431
  * @param reason the StaleFailure.reason returned on a forced failure
406
432
  */
407
433
  constructor(inner, failFirstN, reason = 'forced stale') {
408
- this.inner = inner;
434
+ super(inner);
409
435
  this.failFirstN = failFirstN;
410
436
  this.reason = reason;
411
437
  }
412
- get(b) { return this.inner.get(b); }
413
- getStatus(a) { return this.inner.getStatus(a); }
414
- pend(r) { return this.inner.pend(r); }
415
- cancel(a) { return this.inner.cancel(a); }
416
438
  async commit(request) {
417
439
  this.commitAttempts++;
418
440
  if (this.commitAttempts <= this.failFirstN) {
@@ -421,6 +443,98 @@ export class FlakyCommitTransactor {
421
443
  return this.inner.commit(request);
422
444
  }
423
445
  }
446
+ /**
447
+ * Wraps a {@link TestTransactor} and, exactly once, runs a real competing writer to completion
448
+ * BEFORE delegating the intercepted pend. The rival durably commits (real log entry, real
449
+ * revision bump), so the delegated pend then fails as a GENUINE optimistic-concurrency loss —
450
+ * nothing is forced or faked, unlike {@link FlakyCommitTransactor}, which returns a stale failure
451
+ * without ever advancing a block's revision.
452
+ *
453
+ * That distinction is the whole point: only a rival that actually landed can prove the loser
454
+ * OBSERVED a newer revision, re-applied its work on top of it, and did not lose an update.
455
+ *
456
+ * Two deliberate design constraints:
457
+ *
458
+ * 1. **The trigger is on PEND, and there is no commit trigger.** The rival is a real
459
+ * Collection/Tree, so its write pends with policy `'r'` (see `TransactorSource.transact`), and
460
+ * {@link TestTransactor.pend} rejects a pend whose blocks already carry a *pending* action.
461
+ * Firing before the loser's pend delegates means the loser has pended nothing yet, so the
462
+ * rival pends and commits cleanly and the loser's delegated pend then fails with `missing` — a
463
+ * real conflict. Firing at COMMIT time instead would leave the loser already pending on the
464
+ * shared log-tail block, so the rival's own pend would collide with it and spin through its
465
+ * sync retry budget (~10 attempts, ~21s) while the loser sits awaiting the rival inside its
466
+ * own commit: a livelock dressed up as a slow test. Do not add a commit trigger.
467
+ *
468
+ * 2. **The rival runs before delegation, never inside {@link TestTransactor}'s critical section.**
469
+ * `TestTransactor.get`/`commit` hold per-block latches (`TestTransactor.commit:${blockId}`), and
470
+ * those latch keys are process-global — a rival invoked from inside one of them would
471
+ * self-deadlock on its own reads. Intercepting here in the wrapper, before
472
+ * `await this.inner.pend(...)`, is outside every such section.
473
+ */
474
+ export class CompetingWriterTransactor extends DelegatingTransactor {
475
+ rival;
476
+ options;
477
+ /** Pend calls observed (including the intercepted one). */
478
+ pendCalls = 0;
479
+ /** Commit calls observed. */
480
+ commitCalls = 0;
481
+ /** The 1-based pend call index the rival fired on; undefined if it never fired. */
482
+ firedAtCall;
483
+ /** How many times the rival ran. Latched to at most 1 — a second firing would collide with the
484
+ * loser's now-pending blocks and the transaction under test could never win. */
485
+ rivalRuns = 0;
486
+ constructor(inner, rival, options) {
487
+ super(inner);
488
+ this.rival = rival;
489
+ this.options = options;
490
+ }
491
+ async pend(request) {
492
+ // Increment synchronously, before any await, so call indexes reflect the caller's fan-out
493
+ // order rather than scheduling order.
494
+ const callIndex = ++this.pendCalls;
495
+ const matches = this.options?.when
496
+ ? this.options.when(request, callIndex)
497
+ : callIndex === 1;
498
+ if (this.rivalRuns === 0 && matches) {
499
+ this.rivalRuns++;
500
+ this.firedAtCall = callIndex;
501
+ // A throwing rival escapes as a rejected pend, which pendPhase flattens to a bare message
502
+ // string ("hard failure") with the stack discarded — so name the source in the message, or
503
+ // a broken rival reads as an unexplained coordinator pend failure.
504
+ try {
505
+ await this.rival(this.inner);
506
+ }
507
+ catch (e) {
508
+ throw new Error(`competing writer failed: ${e instanceof Error ? e.message : String(e)}`, { cause: e });
509
+ }
510
+ }
511
+ return this.inner.pend(request);
512
+ }
513
+ async commit(request) {
514
+ this.commitCalls++;
515
+ return this.inner.commit(request);
516
+ }
517
+ }
518
+ /**
519
+ * Durably commit a conflicting change to a tree collection: opens a SECOND {@link Tree} over the
520
+ * same transactor + collection id and replaces `entries` through it, producing a real log entry
521
+ * and a real revision bump — the durable competitor a {@link CompetingWriterTransactor} needs.
522
+ *
523
+ * `Tree.replace` is act + `updateAndSync`, i.e. a full commit through the single-collection sync
524
+ * path, so the rival's write is indistinguishable from any other client's.
525
+ *
526
+ * Pass the UNWRAPPED transactor (that is what {@link RivalWrite} receives).
527
+ *
528
+ * NOTE: opens the rival tree at the DEFAULT node capacity (64), because fan-out is not persisted
529
+ * in the collection header (see Tree.createOrOpen's `nodeCapacity` note). Fine while every rival
530
+ * race is between default-fan-out trees; if a test ever needs to race a small-capacity tree, add a
531
+ * capacity parameter here and pass the same value both sides, or the two writers will split nodes
532
+ * at different fan-outs.
533
+ */
534
+ export async function commitRivalTreeWrite(inner, collectionId, keyFromEntry, entries) {
535
+ const tree = await Tree.createOrOpen(inner, collectionId, keyFromEntry);
536
+ await tree.replace(entries);
537
+ }
424
538
  function newBlockState() {
425
539
  return {
426
540
  materializedBlocks: new Map(),
@@ -440,9 +554,16 @@ function latestMaterializedAt(blockState, maxRev) {
440
554
  }
441
555
  return undefined;
442
556
  }
557
+ /**
558
+ * `applyTransform` over cloned inputs, so a returned block never aliases stored state.
559
+ *
560
+ * An absent base is NOT a short circuit: an insert needs no base — `applyTransform` adopts it as
561
+ * the block. Bailing out on `!block` made this double silently drop a pending-only insert read
562
+ * through the pending overlay, the one shape `StorageRepo.get` serves with content but no
563
+ * `materializedRev` (see docs/internals.md § the `unavailable`/`materializedRev` bullets). A
564
+ * pending UPDATE over an absent base still resolves to undefined, matching the real repo.
565
+ */
443
566
  function applyTransformSafe(block, transform) {
444
- if (!block)
445
- return undefined;
446
- return applyTransform(structuredClone(block), transform);
567
+ return applyTransform(block ? structuredClone(block) : undefined, transform.insert ? { ...transform, insert: structuredClone(transform.insert) } : transform);
447
568
  }
448
569
  //# sourceMappingURL=test-transactor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"test-transactor.js","sourceRoot":"","sources":["../../../src/testing/test-transactor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test-transactor.js","sourceRoot":"","sources":["../../../src/testing/test-transactor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"coordinator.d.ts","sourceRoot":"","sources":["../../../src/transaction/coordinator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAW,YAAY,EAAE,UAAU,EAAwC,MAAM,aAAa,CAAC;AACxH,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAG5H,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAyC1D;;;;;;;;;GASG;AACH,qBAAa,sBAAsB;IAUjC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAV7B,yFAAyF;IACzF,OAAO,CAAC,SAAS,CAIZ;IACL,OAAO,CAAC,cAAc,CAAK;gBAGT,UAAU,EAAE,WAAW,EACvB,WAAW,EAAE,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC;IAGjE;;;;;;;;;OASG;IACG,YAAY,CACjB,OAAO,EAAE,iBAAiB,EAAE,EAC5B,OAAO,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC;IAkBhB;;OAEG;YACW,eAAe;IAiB7B;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,MAAM,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IA8D5E;;;;;;;;;;;;;;;;OAgBG;YACW,UAAU;IA0KxB;;;;;;;;OAQG;IACG,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA6C9C;;;;;;OAMG;IACH,aAAa,IAAI,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC;IAe9C;;;;;OAKG;IACH,eAAe,IAAI,IAAI;IAMvB;;OAEG;IACH,mBAAmB,IAAI,cAAc,EAAE;IAQvC;;OAEG;IACH,qBAAqB,IAAI,IAAI;IAM7B;;;;;;;;OAQG;IACG,OAAO,CAAC,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,eAAe,CAAC;IA8I7F;;;;OAIG;YACW,wBAAwB;IA+DtC;;;;;;;OAOG;YACW,qBAAqB;IAwEnC;;;;;;;OAOG;YACW,WAAW;IAmCzB;;;;;;;OAOG;YACW,SAAS;IA2DvB;;;;OAIG;YACW,cAAc;IAuC5B;;;;;;OAMG;YACW,WAAW;IA2DzB;;;;OAIG;YACW,gBAAgB;IA4D9B;;;;;OAKG;YACW,WAAW;CAkBzB"}
1
+ {"version":3,"file":"coordinator.d.ts","sourceRoot":"","sources":["../../../src/transaction/coordinator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAW,YAAY,EAAE,UAAU,EAAwC,MAAM,aAAa,CAAC;AACxH,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAG5H,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AA0C1D;;;;;;;;;GASG;AACH,qBAAa,sBAAsB;IAUjC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAV7B,yFAAyF;IACzF,OAAO,CAAC,SAAS,CAIZ;IACL,OAAO,CAAC,cAAc,CAAK;gBAGT,UAAU,EAAE,WAAW,EACvB,WAAW,EAAE,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC;IAGjE;;;;;;;;;OASG;IACG,YAAY,CACjB,OAAO,EAAE,iBAAiB,EAAE,EAC5B,OAAO,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC;IAkBhB;;OAEG;YACW,eAAe;IAiB7B;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,MAAM,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IA8D5E;;;;;;;;;;;;;;;;OAgBG;YACW,UAAU;IA0KxB;;;;;;;;OAQG;IACG,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA6C9C;;;;;;OAMG;IACH,aAAa,IAAI,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC;IAe9C;;;;;OAKG;IACH,eAAe,IAAI,IAAI;IAMvB;;OAEG;IACH,mBAAmB,IAAI,cAAc,EAAE;IAQvC;;OAEG;IACH,qBAAqB,IAAI,IAAI;IAM7B;;;;;;;;OAQG;IACG,OAAO,CAAC,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,eAAe,CAAC;IA8I7F;;;;OAIG;YACW,wBAAwB;IA+DtC;;;;;;;OAOG;YACW,qBAAqB;IAwEnC;;;;;;;OAOG;YACW,WAAW;IAmCzB;;;;;;;OAOG;YACW,SAAS;IA2DvB;;;;OAIG;YACW,cAAc;IAuC5B;;;;;;OAMG;YACW,WAAW;IA2DzB;;;;OAIG;YACW,gBAAgB;IA4D9B;;;;;OAKG;YACW,WAAW;CAkBzB"}
@@ -1,6 +1,7 @@
1
1
  import { isConflictFailure } from "../network/stale-failure.js";
2
2
  import { isTransactionExpired, clampPriority } from "./transaction.js";
3
- import { Log, blockIdsForTransforms } from "../index.js";
3
+ import { Log } from "../log/log.js";
4
+ import { blockIdsForTransforms } from "../transform/helpers.js";
4
5
  import { collectOperations, hashOperations } from "./operations-hash.js";
5
6
  import { CoordinatorPartialCommitError, CoordinatorStaleLossError } from "./errors.js";
6
7
  import { jitteredBackoffMs, abortableDelay, makeAbortError } from "../utility/backoff.js";
@@ -1 +1 @@
1
- {"version":3,"file":"coordinator.js","sourceRoot":"","sources":["../../../src/transaction/coordinator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coordinator.js","sourceRoot":"","sources":["../../../src/transaction/coordinator.ts"],"names":[],"mappings":"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"}
@@ -108,7 +108,7 @@ export declare const DEFAULT_TRANSACTION_TTL_MS = 30000;
108
108
  * Upper bound on a transaction's aged {@link Transaction.priority}. Capping is essential: it
109
109
  * bounds the fairness effect (an aged transaction cannot accrue unlimited advantage) and bounds
110
110
  * the throughput cost (it can impose at most `MaxPriority` extra race-losses on rivals before it
111
- * commits). Two transactions capped out at `MaxPriority` fall back to the existing promise-count /
111
+ * commits). Two transactions capped out at `MaxPriority` fall back to the existing approval-count /
112
112
  * message-hash tiebreak, so behavior degrades gracefully to the pre-priority status quo.
113
113
  */
114
114
  export declare const MaxPriority = 8;
@@ -7,7 +7,7 @@ export const DEFAULT_TRANSACTION_TTL_MS = 30_000;
7
7
  * Upper bound on a transaction's aged {@link Transaction.priority}. Capping is essential: it
8
8
  * bounds the fairness effect (an aged transaction cannot accrue unlimited advantage) and bounds
9
9
  * the throughput cost (it can impose at most `MaxPriority` extra race-losses on rivals before it
10
- * commits). Two transactions capped out at `MaxPriority` fall back to the existing promise-count /
10
+ * commits). Two transactions capped out at `MaxPriority` fall back to the existing approval-count /
11
11
  * message-hash tiebreak, so behavior degrades gracefully to the pre-priority status quo.
12
12
  */
13
13
  export const MaxPriority = 8;
@@ -1 +1 @@
1
- {"version":3,"file":"network-transactor.d.ts","sourceRoot":"","sources":["../../../src/transactor/network-transactor.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAGlD,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAA6B,WAAW,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAc,aAAa,EAA+B,qBAAqB,EAAE,YAAY,EAA6B,MAAM,aAAa,CAAC;AACrV,OAAO,KAAK,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAS3F,KAAK,qBAAqB,GAAG;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,UAAU,EAAE,WAAW,CAAC;IACxB,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,KAAK,CAAC;IACnC;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;OAMG;IACH,mBAAmB,CAAC,EAAE,oBAAoB,CAAC;CAC3C,CAAA;AAWD,qBAAa,iBAAkB,YAAW,WAAW,EAAE,oBAAoB;IAC1E,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAc;IACzC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAS;IAChD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAqB;IACnD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA4B;IACpD,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAmC;IAEvE;;;;;;;;;;;;;;;;OAgBG;IACH,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAgF;IACpH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iCAAiC,CAAQ;gBAGhE,IAAI,EAAE,qBAAqB;IAc5B;;;;;OAKG;IACH,kBAAkB,CAAC,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,wBAAwB,GAAG,MAAM,IAAI;IAQxF,GAAG,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,eAAe,CAAC;IA+JnD,SAAS,CAAC,YAAY,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAqD3E;;;;;;;;;;;OAWG;YACW,yBAAyB;IA6BvC,yGAAyG;YAC3F,sBAAsB;YAuBtB,uBAAuB;IA+F/B,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IA0InD,MAAM,CAAC,SAAS,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB9C,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAOtE,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC;YAyC7C,WAAW;IA4BzB,0EAA0E;YAC5D,YAAY;IAsC1B,8FAA8F;YAChF,iBAAiB;IAmB/B;;;;;;;OAOG;YACW,kBAAkB;IAehC;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IA2B1B,oHAAoH;YACtG,WAAW;IAqBzB,OAAO,CAAC,mBAAmB;CAY3B;AAiDD;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,YAAY,EAAE,gBAAgB,EAAE,GAAG,gBAAgB,EAAE,CAIlG"}
1
+ {"version":3,"file":"network-transactor.d.ts","sourceRoot":"","sources":["../../../src/transactor/network-transactor.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAGlD,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAA6B,WAAW,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAc,aAAa,EAA+B,qBAAqB,EAAE,YAAY,EAAqD,MAAM,aAAa,CAAC;AAC7W,OAAO,KAAK,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAc3F,KAAK,qBAAqB,GAAG;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,UAAU,EAAE,WAAW,CAAC;IACxB,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,KAAK,CAAC;IACnC;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;OAMG;IACH,mBAAmB,CAAC,EAAE,oBAAoB,CAAC;CAC3C,CAAA;AAWD,qBAAa,iBAAkB,YAAW,WAAW,EAAE,oBAAoB;IAC1E,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAc;IACzC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAS;IAChD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAqB;IACnD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA4B;IACpD,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAmC;IAEvE;;;;;;;;;;;;;;;;OAgBG;IACH,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAgF;IACpH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iCAAiC,CAAQ;gBAGhE,IAAI,EAAE,qBAAqB;IAc5B;;;;;OAKG;IACH,kBAAkB,CAAC,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,wBAAwB,GAAG,MAAM,IAAI;IAQxF,GAAG,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,eAAe,CAAC;IA4LnD,SAAS,CAAC,YAAY,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IA2D3E;;;;;;;;;;;OAWG;YACW,yBAAyB;IA6BvC,yGAAyG;YAC3F,sBAAsB;YAuBtB,uBAAuB;IA+F/B,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IA0InD,MAAM,CAAC,SAAS,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB9C,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAOtE,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC;YAwC7C,WAAW;IA4BzB,0EAA0E;YAC5D,YAAY;IAsC1B,8FAA8F;YAChF,iBAAiB;IAmB/B;;;;;;;OAOG;YACW,kBAAkB;IAehC;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IA2B1B,oHAAoH;YACtG,WAAW;IAqBzB,OAAO,CAAC,mBAAmB;CAY3B;AAiDD;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,YAAY,EAAE,gBAAgB,EAAE,GAAG,gBAAgB,EAAE,CAIlG"}
@@ -1,7 +1,12 @@
1
1
  import { peerIdFromString } from "../network/types.js";
2
2
  import { highestStaleAt, isConflictFailure } from "../network/stale-failure.js";
3
- import { BlockUnavailableError } from "../network/struct.js";
4
- import { transformForBlockId, groupBy, concatTransforms, concatTransform, transformsFromTransform, blockIdsForTransforms, Log, Tracker, CacheSource, TransactorSource } from "../index.js";
3
+ import { BlockUnavailableError, BlockPossiblyStaleError } from "../network/struct.js";
4
+ import { transformForBlockId, concatTransforms, concatTransform, transformsFromTransform, blockIdsForTransforms } from "../transform/helpers.js";
5
+ import { Tracker } from "../transform/tracker.js";
6
+ import { CacheSource } from "../transform/cache-source.js";
7
+ import { TransactorSource } from "./transactor-source.js";
8
+ import { Log } from "../log/log.js";
9
+ import { groupBy } from "../utility/groupby.js";
5
10
  import { blockIdToBytes } from "../utility/block-id-to-bytes.js";
6
11
  import { isRecordEmpty } from "../utility/is-record-empty.js";
7
12
  import { makeBatchesByPeer, incompleteBatches, everyBatch, allBatches, mergeBlocks, processBatches, createBatchesForPayload } from "../utility/batch-coordinator.js";
@@ -102,18 +107,29 @@ export class NetworkTransactor {
102
107
  return b.request?.isResponse === true && b.request.response != null;
103
108
  };
104
109
  // A batch is answered when its response carries an entry for EVERY requested
105
- // block id and none of those entries is flagged `unavailable`. An entry present
110
+ // block id and none of those entries carries a doubt marker. An entry present
106
111
  // with only `state` (no `block`) is an authoritative "absent", which counts as
107
- // answered — not a gap. An `unavailable` entry is the peer saying its own answer
108
- // is a guess, so it does NOT count as answered.
112
+ // answered — not a gap. An `unavailable` entry is the peer saying it could not
113
+ // find out whether the block EXISTS; an `unconfirmedAheadRev` entry is the peer
114
+ // saying it could not confirm the content it served is CURRENT (a cohort claim
115
+ // sits ahead of it, unsettled). Neither counts as answered, so both earn the
116
+ // second-chance retry against a different coordinator.
109
117
  const isAuthoritative = (b) => {
110
118
  if (!hasValidResponse(b))
111
119
  return false;
112
120
  const resp = b.request.response;
113
- return b.payload.every(bid => resp[bid] !== undefined && resp[bid].unavailable === undefined);
121
+ return b.payload.every(bid => resp[bid] !== undefined
122
+ && resp[bid].unavailable === undefined
123
+ && resp[bid].unconfirmedAheadRev === undefined);
114
124
  };
115
125
  // Retry only genuine no-response / partial-response batches. An authoritative
116
126
  // absent answer is not retried.
127
+ // NOTE: a 'cohort-unreachable' entry earns this retry like any other flagged entry,
128
+ // and on a genuinely isolated node the retry re-picks the same node (the
129
+ // findCoordinator:all-excluded path) and repeats the same futile consult. Fine
130
+ // today — one extra bounded consult on an already failing read. If isolated-node
131
+ // read latency ever matters, skip the retry for that reason rather than widening
132
+ // isAuthoritative.
117
133
  const retryable = Array.from(allBatches(batches)).filter(b => !isAuthoritative(b));
118
134
  if (retryable.length > 0 && Date.now() < expiration) {
119
135
  log('get:retry retryable=%d', retryable.length);
@@ -138,24 +154,42 @@ export class NetworkTransactor {
138
154
  }
139
155
  // Cache the completed batches that had actual responses (not just coordinator not found)
140
156
  const completedBatches = Array.from(allBatches(batches, b => b.request?.isResponse && !isRecordEmpty(b.request.response)));
141
- // Three-way ranking per block id: a materialized block beats an authoritative
142
- // absent, which beats an `unavailable` guess one peer that positively knows the
143
- // block is absent outranks another that could not find out. Non-object junk ranks
144
- // below everything so any real entry replaces it.
157
+ // Ranking per block id: a block the answering repo could confirm is current beats
158
+ // one it marked possibly-behind (`unconfirmedAheadRev`), which beats an
159
+ // authoritative absent, which beats an absent marked possibly-behind (a doubted
160
+ // tombstone), which beats an `unavailable` guess. Content still beats absence at
161
+ // every confidence level, and one peer that positively knows outranks another
162
+ // that could not find out. Without the confirmed-over-unconfirmed split, a stale
163
+ // flagged block and the fresh confirmed block fetched by its own retry round tie
164
+ // — and only strictly-greater rank replaces, so first-arrival (the stale one)
165
+ // would win the very merge the retry exists to fix. Non-object junk ranks below
166
+ // everything so any real entry replaces it.
145
167
  // NOTE: `materializedRev` is not part of the ranking, so two peers answering the same
146
168
  // pinned get with block-carrying entries at DIFFERENT materialized revisions resolve
147
169
  // to whichever arrived first. Not a concern today — cohort peers share the block's
148
170
  // revision log, so they agree on the highest committed rev at or below a pin — and the
149
171
  // failure direction is safe (a lower recorded revision spuriously stale-rejects rather
150
172
  // than wrongly accepting). If peers are ever seen to disagree here, break the tie on
151
- // the HIGHEST materializedRev among rank-2 entries.
173
+ // the HIGHEST materializedRev among top-rank entries.
174
+ // `unavailable` answers rank among THEMSELVES by how much they establish, so the merged
175
+ // entry never presents a weaker doubt than some peer actually returned. This matters
176
+ // because the reason travels out verbatim on `BlockUnavailableError` and callers act on
177
+ // it: 'cohort-unreachable' is the one reason a caller may treat permissively (the
178
+ // answering node reached nobody, so its own view is all it has), and a partitioned
179
+ // coordinator answering first must not mask a well-connected one that positively
180
+ // established the block EXISTS ('claimed-elsewhere', or 'unmaterializable' — records
181
+ // held here). 'peers-unreachable' sits between: it establishes that some of the cohort
182
+ // was reachable, without settling existence.
183
+ const unavailableRank = (reason) => reason === 'cohort-unreachable' ? 0 : reason === 'peers-unreachable' ? 1 : 2;
152
184
  const rankOf = (r) => {
153
185
  if (!r || typeof r !== 'object')
154
186
  return -1;
155
187
  const entry = r;
156
188
  if (entry.block != null)
157
- return 2;
158
- return entry.unavailable === undefined ? 1 : 0;
189
+ return entry.unconfirmedAheadRev === undefined ? 6 : 5;
190
+ if (entry.unavailable !== undefined)
191
+ return unavailableRank(entry.unavailable);
192
+ return entry.unconfirmedAheadRev === undefined ? 4 : 3;
159
193
  };
160
194
  // Create a lookup map from successful responses only
161
195
  const resultEntries = new Map();
@@ -196,12 +230,18 @@ export class NetworkTransactor {
196
230
  // A block whose repo could not determine whether it exists carries no status either:
197
231
  // its empty `state` would read below as `aborted`, turning "I could not find out" into
198
232
  // a definite verdict on someone's action. Fail loudly instead, like every other read of
199
- // an unavailable block (see BlockUnavailableError).
233
+ // an unavailable block (see BlockUnavailableError). The same goes for a state the repo
234
+ // could not confirm is CURRENT (`unconfirmedAheadRev`, surviving the retry round above):
235
+ // an action committed at the claimed-ahead revision would read out of the stale state as
236
+ // a definite `aborted` — this read is unpinned, so the doubt always applies.
200
237
  for (const blockId of allBlockIds) {
201
238
  const entry = blockStates[blockId];
202
239
  if (entry?.unavailable !== undefined && entry.block == null) {
203
240
  throw new BlockUnavailableError(blockId, entry.unavailable);
204
241
  }
242
+ if (entry?.unconfirmedAheadRev !== undefined) {
243
+ throw new BlockPossiblyStaleError(blockId, entry.unconfirmedAheadRev);
244
+ }
205
245
  }
206
246
  // Determine status for each action ref
207
247
  const results = blockActions.map(ref => ({
@@ -507,20 +547,19 @@ export class NetworkTransactor {
507
547
  async commit(request) {
508
548
  const t0 = Date.now();
509
549
  log('commit actionId=%s rev=%d blockIds=%d', request.actionId, request.rev, request.blockIds.length);
510
- const allBlockIds = [...new Set([...request.blockIds, request.tailId])];
511
550
  // Commit the header block if provided and not already in blockIds.
512
551
  // `request.tailId` is threaded into every per-block commit so the coordinator carries it into the
513
552
  // consensus commit op → each committing node's StorageRepo.commit stamps it onto the emitted
514
553
  // CollectionChangeEvent (the reactivity topic anchor). Without this the per-block RepoCommitRequest
515
554
  // drops the collection tail and reactivity origination is gated off (undefined tail → non-member).
516
555
  if (request.headerId && !request.blockIds.includes(request.headerId)) {
517
- const headerResult = await this.commitBlock(request.headerId, allBlockIds, request.actionId, request.rev, request.tailId);
556
+ const headerResult = await this.commitBlock(request.headerId, request.actionId, request.rev, request.tailId);
518
557
  if (!headerResult.success) {
519
558
  return headerResult;
520
559
  }
521
560
  }
522
561
  // Commit the tail block
523
- const tailResult = await this.commitBlock(request.tailId, allBlockIds, request.actionId, request.rev, request.tailId);
562
+ const tailResult = await this.commitBlock(request.tailId, request.actionId, request.rev, request.tailId);
524
563
  if (!tailResult.success) {
525
564
  return tailResult;
526
565
  }
@@ -541,7 +580,7 @@ export class NetworkTransactor {
541
580
  log('commit:done actionId=%s ms=%d', request.actionId, Date.now() - t0);
542
581
  return { success: true };
543
582
  }
544
- async commitBlock(blockId, blockIds, actionId, rev, tailId) {
583
+ async commitBlock(blockId, actionId, rev, tailId) {
545
584
  const { batches: tailBatches, error: tailError } = await this.commitBlocks({ blockIds: [blockId], actionId, rev, tailId });
546
585
  if (tailError) {
547
586
  // commit is a pure attempt: stale → { success:false }, transient → throw. Cancellation