@did-btcr2/method 0.64.0 → 0.65.1

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/cjs/index.js CHANGED
@@ -1358,7 +1358,7 @@ var Identifier = class _Identifier {
1358
1358
  throw new import_common8.IdentifierError('Expected "network" to be a known network name', import_common8.INVALID_DID, { network });
1359
1359
  }
1360
1360
  const networkValue = import_common8.BitcoinNetworkNames[network];
1361
- if (networkValue === void 0) {
1361
+ if (typeof networkValue !== "number") {
1362
1362
  throw new import_common8.IdentifierError('Invalid "network" name', import_common8.INVALID_DID, { network });
1363
1363
  }
1364
1364
  if (idType === "KEY") {
@@ -2113,13 +2113,19 @@ var Resolver = class _Resolver {
2113
2113
  #currentDocument;
2114
2114
  #providedGenesisDocument = null;
2115
2115
  #beaconServicesSignals = /* @__PURE__ */ new Map();
2116
- #processedServices = /* @__PURE__ */ new Set();
2116
+ /**
2117
+ * The beacon addresses whose signals became update tuples. Keyed by address, not by
2118
+ * service id: a rotation keeps the id and changes the address, and the specification
2119
+ * has no per-service state (ADR 118).
2120
+ */
2121
+ #processedAddresses = /* @__PURE__ */ new Set();
2117
2122
  /** The beacon addresses the resolver requested signals for: `scanned_beacons` of the specification. */
2118
2123
  #requestCache = /* @__PURE__ */ new Set();
2119
2124
  /**
2120
- * The tuples of the specification's `updates` list: a signed update and the metadata of
2121
- * the block that announced it. BeaconProcess appends; ProcessUpdate sorts the list and
2122
- * removes one tuple per step. A tuple that one pass does not reach waits for the next.
2125
+ * The tuples of the specification's `updates` list: a signed update, the metadata of
2126
+ * the block that announced it, and the beacon address of the signal. BeaconProcess
2127
+ * appends; ProcessUpdate sorts the list and removes one tuple per step. A tuple that
2128
+ * one pass does not reach waits for the next.
2123
2129
  */
2124
2130
  #unsortedUpdates = [];
2125
2131
  #resolvedResponse = null;
@@ -2556,7 +2562,8 @@ var Resolver = class _Resolver {
2556
2562
  case "BeaconProcess" /* BeaconProcess */: {
2557
2563
  const allNeeds = [];
2558
2564
  for (const [service, signals] of this.#beaconServicesSignals) {
2559
- if (this.#processedServices.has(service.id) || !signals.length) continue;
2565
+ const address = BeaconUtils.parseBitcoinAddress(service.serviceEndpoint);
2566
+ if (this.#processedAddresses.has(address) || !signals.length) continue;
2560
2567
  const eligible = this.#eligibleSignals(signals);
2561
2568
  if (!eligible.length) continue;
2562
2569
  const beacon = BeaconFactory.establish(service, this.#currentDocument.id);
@@ -2564,8 +2571,10 @@ var Resolver = class _Resolver {
2564
2571
  if (result.needs.length > 0) {
2565
2572
  allNeeds.push(...result.needs);
2566
2573
  } else {
2567
- this.#unsortedUpdates.push(...result.updates);
2568
- this.#processedServices.add(service.id);
2574
+ this.#unsortedUpdates.push(...result.updates.map(
2575
+ ([update, block]) => [update, block, address]
2576
+ ));
2577
+ this.#processedAddresses.add(address);
2569
2578
  }
2570
2579
  }
2571
2580
  if (allNeeds.length > 0) {
@@ -2578,6 +2587,8 @@ var Resolver = class _Resolver {
2578
2587
  // Spec "Process Next Update": one tuple per step. The phase repeats until
2579
2588
  // the document resolves, or until an applied update adds a beacon address
2580
2589
  // that the resolver did not scan (then the pass returns to BeaconDiscovery).
2590
+ // A tuple whose beacon address the current document no longer carries is
2591
+ // ignored (step 4).
2581
2592
  case "ProcessUpdate" /* ProcessUpdate */: {
2582
2593
  const document = this.#currentDocument;
2583
2594
  if (this.#versionId !== void 0 && this.#currentVersionId === this.#versionId) {
@@ -2598,7 +2609,11 @@ var Resolver = class _Resolver {
2598
2609
  this.#unsortedUpdates.sort(
2599
2610
  ([upd0, blk0], [upd1, blk1]) => upd0.targetVersionId - upd1.targetVersionId || blk0.height - blk1.height
2600
2611
  );
2601
- const [update, block] = this.#unsortedUpdates.shift();
2612
+ const [update, block, address] = this.#unsortedUpdates.shift();
2613
+ const removed = !BeaconUtils.getBeaconServices(document).some(
2614
+ (service) => BeaconUtils.parseBitcoinAddress(service.serviceEndpoint) === address
2615
+ );
2616
+ if (removed) continue;
2602
2617
  if (update.targetVersionId <= this.#currentVersionId) {
2603
2618
  _Resolver.confirmDuplicate(update, this.#updateHashHistory);
2604
2619
  continue;
@@ -53,8 +53,10 @@ export class Identifier {
53
53
  if (typeof network !== 'string') {
54
54
  throw new IdentifierError('Expected "network" to be a known network name', INVALID_DID, { network });
55
55
  }
56
+ // The numeric enum also maps a value string to a name: '5' reads as 'mutinynet', and
57
+ // the low nibble becomes 0 (bitcoin). Only a name maps to a number.
56
58
  const networkValue = BitcoinNetworkNames[network];
57
- if (networkValue === undefined) {
59
+ if (typeof networkValue !== 'number') {
58
60
  throw new IdentifierError('Invalid "network" name', INVALID_DID, { network });
59
61
  }
60
62
  // genesisBytes MUST match the identifier type: a valid compressed secp256k1 public key for KEY,
@@ -1 +1 @@
1
- {"version":3,"file":"identifier.js","sourceRoot":"","sources":["../../../src/core/identifier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"identifier.js","sourceRoot":"","sources":["../../../src/core/identifier.ts"],"names":[],"mappings":"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"}
@@ -160,13 +160,19 @@ export class Resolver {
160
160
  #currentDocument;
161
161
  #providedGenesisDocument = null;
162
162
  #beaconServicesSignals = new Map();
163
- #processedServices = new Set();
163
+ /**
164
+ * The beacon addresses whose signals became update tuples. Keyed by address, not by
165
+ * service id: a rotation keeps the id and changes the address, and the specification
166
+ * has no per-service state (ADR 118).
167
+ */
168
+ #processedAddresses = new Set();
164
169
  /** The beacon addresses the resolver requested signals for: `scanned_beacons` of the specification. */
165
170
  #requestCache = new Set();
166
171
  /**
167
- * The tuples of the specification's `updates` list: a signed update and the metadata of
168
- * the block that announced it. BeaconProcess appends; ProcessUpdate sorts the list and
169
- * removes one tuple per step. A tuple that one pass does not reach waits for the next.
172
+ * The tuples of the specification's `updates` list: a signed update, the metadata of
173
+ * the block that announced it, and the beacon address of the signal. BeaconProcess
174
+ * appends; ProcessUpdate sorts the list and removes one tuple per step. A tuple that
175
+ * one pass does not reach waits for the next.
170
176
  */
171
177
  #unsortedUpdates = [];
172
178
  #resolvedResponse = null;
@@ -592,8 +598,9 @@ export class Resolver {
592
598
  case ResolverPhase.BeaconProcess: {
593
599
  const allNeeds = [];
594
600
  for (const [service, signals] of this.#beaconServicesSignals) {
595
- // Skip already-processed services and services with no signals
596
- if (this.#processedServices.has(service.id) || !signals.length)
601
+ // Skip a processed address and a service with no signals
602
+ const address = BeaconUtils.parseBitcoinAddress(service.serviceEndpoint);
603
+ if (this.#processedAddresses.has(address) || !signals.length)
597
604
  continue;
598
605
  // Keep only the signals at or above the confirmation threshold. A
599
606
  // service whose signals are all below it is treated like a service
@@ -611,9 +618,10 @@ export class Resolver {
611
618
  allNeeds.push(...result.needs);
612
619
  }
613
620
  else {
614
- // All signals for this service resolved, collect updates, mark processed
615
- this.#unsortedUpdates.push(...result.updates);
616
- this.#processedServices.add(service.id);
621
+ // All signals of this address resolved: collect the updates with the
622
+ // beacon address, mark the address processed.
623
+ this.#unsortedUpdates.push(...result.updates.map(([update, block]) => [update, block, address]));
624
+ this.#processedAddresses.add(address);
617
625
  }
618
626
  }
619
627
  if (allNeeds.length > 0) {
@@ -626,6 +634,8 @@ export class Resolver {
626
634
  // Spec "Process Next Update": one tuple per step. The phase repeats until
627
635
  // the document resolves, or until an applied update adds a beacon address
628
636
  // that the resolver did not scan (then the pass returns to BeaconDiscovery).
637
+ // A tuple whose beacon address the current document no longer carries is
638
+ // ignored (step 4).
629
639
  case ResolverPhase.ProcessUpdate: {
630
640
  const document = this.#currentDocument;
631
641
  // Step 1: the requested version is reached. The test runs before Apply,
@@ -650,8 +660,17 @@ export class Resolver {
650
660
  // height, and remove the first one. The sort runs on every step because
651
661
  // a scan between two steps can add a tuple with a lower version.
652
662
  this.#unsortedUpdates.sort(([upd0, blk0], [upd1, blk1]) => upd0.targetVersionId - upd1.targetVersionId || blk0.height - blk1.height);
653
- const [update, block] = this.#unsortedUpdates.shift();
654
- // Check targetVersionId, first arm: update.targetVersionId <= currentVersionId
663
+ const [update, block, address] = this.#unsortedUpdates.shift();
664
+ // Step 4: the current document has no beacon with the address of the signal:
665
+ // an applied update removed the beacon. Ignore the tuple (ADR 114). It stamps
666
+ // nothing, it enters no history, and it does not reach the duplicate check
667
+ // below: a conflicting re-announcement at a removed address is not an
668
+ // equivocation of the DID. The test reads the document before Apply, so an
669
+ // update announced at the address that it removes itself applies.
670
+ const removed = !BeaconUtils.getBeaconServices(document).some(service => BeaconUtils.parseBitcoinAddress(service.serviceEndpoint) === address);
671
+ if (removed)
672
+ continue;
673
+ // Step 7, "Check targetVersionId", first arm: targetVersionId <= currentVersionId
655
674
  // re-announces an applied version. Confirm that it is a true duplicate, then
656
675
  // skip it. A duplicate does not advance the version counter, does not append
657
676
  // to the history (the slot already holds the applied update, ADR 067), and
@@ -663,7 +682,7 @@ export class Resolver {
663
682
  Resolver.confirmDuplicate(update, this.#updateHashHistory);
664
683
  continue;
665
684
  }
666
- // Step 4: the versionTime stop. The block mediantime of the tuple is after
685
+ // Step 5: the versionTime stop. The block mediantime of the tuple is after
667
686
  // versionTime: resolve the current document. The boundary is inclusive, so a
668
687
  // tuple whose mediantime equals versionTime applies. The stopped tuple stamps
669
688
  // nothing: the metadata reports the last applied update.
@@ -671,20 +690,20 @@ export class Resolver {
671
690
  this.#phase = ResolverPhase.Complete;
672
691
  continue;
673
692
  }
674
- // Check targetVersionId, third arm: a version was skipped, so raise LATE_PUBLISHING.
693
+ // Step 7, third arm: a version was skipped, so raise LATE_PUBLISHING.
675
694
  if (update.targetVersionId !== this.#currentVersionId + 1) {
676
695
  throw new ResolveError(`Version Id Mismatch: targetVersionId cannot be > currentVersionId + 1`, LATE_PUBLISHING_ERROR, {
677
696
  targetVersionId: update.targetVersionId,
678
697
  currentVersionId: this.#currentVersionId + 1
679
698
  });
680
699
  }
681
- // Second arm: update.targetVersionId == currentVersionId + 1. Apply the update,
700
+ // Step 7, second arm: targetVersionId == currentVersionId + 1. Apply the update,
682
701
  // append the unsigned update hash to the history, increment the version.
683
702
  this.#currentDocument = Resolver.applyUpdate(document, update, block);
684
703
  const unsignedUpdate = JSONUtils.deleteKeys(update, ['proof']);
685
704
  this.#updateHashHistory.push(canonicalHashBytes(unsignedUpdate));
686
705
  this.#currentVersionId++;
687
- // Step 5: block_confirmations, and the header time as `updated`. On the apply
706
+ // Step 6: block_confirmations, and the header time as `updated`. On the apply
688
707
  // path only: the stop above and the duplicate branch stamp nothing.
689
708
  this.#blockConfirmations = block.confirmations;
690
709
  this.#updated = DateUtils.toISOStringNonFractional(DateUtils.blocktimeToTimestamp(block.time));
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../../src/core/resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../../src/core/resolver.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"identifier.d.ts","sourceRoot":"","sources":["../../../src/core/identifier.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9F,OAAO,EAIL,eAAe,EAGhB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,4BAA4B,EAAkB,MAAM,oBAAoB,CAAC;AAGlF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAKxD;;;;;GAKG;AACH,MAAM,WAAW,aAAc,SAAQ,oBAAoB;IACvD,GAAG,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,oBAAoB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,KAAK,CAAC;CACvB;AAED;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAC3B,QAAQ,GACR,WAAW,GACX,SAAS,GACT,SAAS,GACT,SAAS,GACT,cAAc,GACd,WAAW,GACX,mBAAmB,GACnB,iBAAiB,CAAC;AAEtB;;;;;;GAMG;AACH,MAAM,WAAW,eAAe;IAC5B,IAAI,EAAE,mBAAmB,CAAC;IAC1B,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,yBAAyB;IACtC,YAAY,CAAC,EAAE,KAAK,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,gBAAgB;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;CAClC;AAKD;;;;;;;;;;GAUG;AACH,qBAAa,UAAU;IACrB;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,GAAG,aAAa,EAAE,OAAO,EAAE,gBAAgB,GAAG,MAAM;IAuDxF;;;;;;;OAOG;IACH,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa;IAqGhD;;;;;;;;;;;;;;;;;;OAkBG;IACH,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,yBAA8B,GAAG,gBAAgB;IAqJ9F;;;OAGG;IACH,MAAM,CAAC,QAAQ,IAAI;QAAE,OAAO,EAAE,oBAAoB,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE;IAYjE;;;;;OAKG;IACH,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,4BAA4B;IAW9D;;;;OAIG;IACH,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;CAQ5C"}
1
+ {"version":3,"file":"identifier.d.ts","sourceRoot":"","sources":["../../../src/core/identifier.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9F,OAAO,EAIL,eAAe,EAGhB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,4BAA4B,EAAkB,MAAM,oBAAoB,CAAC;AAGlF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAKxD;;;;;GAKG;AACH,MAAM,WAAW,aAAc,SAAQ,oBAAoB;IACvD,GAAG,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,oBAAoB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,KAAK,CAAC;CACvB;AAED;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAC3B,QAAQ,GACR,WAAW,GACX,SAAS,GACT,SAAS,GACT,SAAS,GACT,cAAc,GACd,WAAW,GACX,mBAAmB,GACnB,iBAAiB,CAAC;AAEtB;;;;;;GAMG;AACH,MAAM,WAAW,eAAe;IAC5B,IAAI,EAAE,mBAAmB,CAAC;IAC1B,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,yBAAyB;IACtC,YAAY,CAAC,EAAE,KAAK,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,gBAAgB;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;CAClC;AAKD;;;;;;;;;;GAUG;AACH,qBAAa,UAAU;IACrB;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,GAAG,aAAa,EAAE,OAAO,EAAE,gBAAgB,GAAG,MAAM;IAyDxF;;;;;;;OAOG;IACH,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa;IAqGhD;;;;;;;;;;;;;;;;;;OAkBG;IACH,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,yBAA8B,GAAG,gBAAgB;IAqJ9F;;;OAGG;IACH,MAAM,CAAC,QAAQ,IAAI;QAAE,OAAO,EAAE,oBAAoB,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE;IAYjE;;;;;OAKG;IACH,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,4BAA4B;IAW9D;;;;OAIG;IACH,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;CAQ5C"}
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../../src/core/resolver.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAEV,iBAAiB,EAElB,MAAM,mBAAmB,CAAC;AAS3B,OAAO,EAAE,WAAW,EAAwB,MAAM,0BAA0B,CAAC;AAG7E,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEzF,OAAO,KAAK,EAAE,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAEpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGxE;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAElC;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,WAAW,CAAC;IACzB,QAAQ,EAAE;QACR;;;WAGG;QACH,aAAa,EAAE,MAAM,CAAC;QACtB,0GAA0G;QAC1G,SAAS,EAAE,MAAM,CAAC;QAClB;;;WAGG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,oDAAoD;QACpD,WAAW,EAAE,OAAO,CAAC;KACtB,CAAA;CACF;AAED,4EAA4E;AAC5E,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAC;IACrC,uEAAuE;IACvE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,4EAA4E;AAC5E,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACnC,yFAAyF;IACzF,QAAQ,CAAC,cAAc,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;CACvD;AAED,2FAA2F;AAC3F,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAC;IACrC,0DAA0D;IAC1D,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,oDAAoD;IACpD,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;CAClC;AAED,sFAAsF;AACtF,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAClC,uDAAuD;IACvD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,oDAAoD;IACpD,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;CAClC;AAED,2EAA2E;AAC3E,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,+DAA+D;IAC/D,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,oDAAoD;IACpD,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;CAClC;AAED,gFAAgF;AAChF,MAAM,MAAM,QAAQ,GAAG,mBAAmB,GAAG,iBAAiB,GAAG,mBAAmB,GAAG,gBAAgB,GAAG,YAAY,CAAC;AAEvH;;;GAGG;AACH,MAAM,MAAM,aAAa,GACrB;IAAE,MAAM,EAAE,iBAAiB,CAAC;IAAC,KAAK,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAA;CAAE,GAC7D;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,MAAM,EAAE,qBAAqB,CAAA;CAAE,CAAC;AAE1D;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,KAAK,CAAC,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC,CAAC;IACnD,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;CACxB;AAyHD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,QAAQ;;IA6DnB;;OAEG;gBAED,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,WAAW,EACxB,eAAe,EAAE,WAAW,GAAG,IAAI,EACnC,OAAO,CAAC,EAAE;QACR,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB;IAmCH;;;;OAIG;IACH,MAAM,CAAC,aAAa,CAAC,aAAa,EAAE,aAAa,GAAG,WAAW;IA8B/D;;;;;;OAMG;IACH,MAAM,CAAC,QAAQ,CACb,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,MAAM,GACtB,WAAW;IA4Bd;;;;OAIG;IACH,MAAM,CAAC,WAAW,CAAC,OAAO,GAAE,OAAuB,GAAG,WAAW;IA0BjE;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;IA+C/B;;;;;;;OAOG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAc/B;;;;;;;;OAQG;IACH,OAAO,CAAC,MAAM,CAAC,YAAY;IAa3B;;;;;;;;;;OAUG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAuB/B;;;;;;;;;;OAUG;IACH,OAAO,CAAC,MAAM,CAAC,WAAW;IA2J1B;;;;;;OAMG;IACH,OAAO,IAAI,aAAa;IAiRxB;;;;;;;;OAQG;IACH,OAAO,CAAC,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IACtD,OAAO,CAAC,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,GAAG,CAAC,aAAa,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC,GAAG,IAAI;IACrF,OAAO,CAAC,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,eAAe,GAAG,IAAI;IAC/D,OAAO,CAAC,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,iBAAiB,GAAG,IAAI;IAC9D,OAAO,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,GAAG,IAAI;CAuFlD"}
1
+ {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../../src/core/resolver.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@did-btcr2/method",
3
- "version": "0.64.0",
3
+ "version": "0.65.1",
4
4
  "type": "module",
5
5
  "description": "Reference implementation for the did:btcr2 DID method written in TypeScript and JavaScript. did:btcr2 is a censorship resistant DID Method using the Bitcoin blockchain as a Verifiable Data Registry to announce changes to the DID document. This is the core method implementation for the did-btcr2-js monorepo.",
6
6
  "main": "./dist/cjs/index.js",
@@ -69,10 +69,10 @@
69
69
  "@scure/base": "^1.2.6",
70
70
  "@scure/btc-signer": "^1.8.1",
71
71
  "@web5/dids": "^1.2.0",
72
- "@did-btcr2/bitcoin": "^0.11.0",
73
72
  "@did-btcr2/common": "^9.6.0",
74
- "@did-btcr2/keypair": "^0.13.1",
73
+ "@did-btcr2/bitcoin": "^0.11.1",
75
74
  "@did-btcr2/smt": "^0.3.0",
75
+ "@did-btcr2/keypair": "^0.13.1",
76
76
  "@did-btcr2/cryptosuite": "^10.0.0"
77
77
  },
78
78
  "devDependencies": {
@@ -84,13 +84,11 @@
84
84
  "@typescript-eslint/parser": "^8.58.0",
85
85
  "c8": "^10.1.3",
86
86
  "chai": "^5.3.3",
87
- "commander": "^13.1.0",
88
87
  "esbuild": "^0.24.2",
89
88
  "eslint": "^9.39.4",
90
89
  "eslint-plugin-mocha": "^10.5.0",
91
90
  "globals": "^15.15.0",
92
91
  "mocha": "^10.8.2",
93
- "multiformats": "^13.4.2",
94
92
  "node-stdlib-browser": "^1.3.1",
95
93
  "rimraf": "^6.1.3",
96
94
  "tsup": "^8.5.1",
@@ -121,20 +119,7 @@
121
119
  "build:test": "pnpm build && pnpm build:tests && pnpm c8 mocha",
122
120
  "build:lint:test": "pnpm build && pnpm build:tests && pnpm lint:fix",
123
121
  "prepublish": "pnpm build",
124
- "generate:vector": "bun lib/generate-vector.ts",
125
- "generate:scenario": "bun lib/generate-scenario.ts",
126
- "scenario:keys": "bun lib/scenario-keys.ts",
127
- "scenario:artifacts": "bun lib/build-artifacts.ts",
128
- "scenario:route": "bun lib/route-delivery.ts",
129
- "scenario:publish": "bun lib/publish-scenarios.ts",
130
- "scenario:funding": "bun lib/aggregate-funding.ts",
131
- "scenario:fund": "bun lib/fund-scenarios.ts",
132
- "scenario:anchor": "bun lib/anchor-scenarios.ts",
133
- "scenario:verify": "bun lib/verify-scenarios.ts",
134
- "scenario:verify:live": "bun lib/verify-live.ts",
135
- "wallet": "bun lib/wallet/cli.ts",
136
122
  "do": "bun",
137
- "do:lib": "${PWD}/lib/run-lib.sh",
138
123
  "pack:local": "pnpm pack && mv *.tgz ./release"
139
124
  }
140
125
  }
@@ -150,8 +150,10 @@ export class Identifier {
150
150
  if (typeof network !== 'string') {
151
151
  throw new IdentifierError('Expected "network" to be a known network name', INVALID_DID, { network });
152
152
  }
153
- const networkValue = BitcoinNetworkNames[network as keyof typeof BitcoinNetworkNames] as number | undefined;
154
- if (networkValue === undefined) {
153
+ // The numeric enum also maps a value string to a name: '5' reads as 'mutinynet', and
154
+ // the low nibble becomes 0 (bitcoin). Only a name maps to a number.
155
+ const networkValue: unknown = BitcoinNetworkNames[network as keyof typeof BitcoinNetworkNames];
156
+ if (typeof networkValue !== 'number') {
155
157
  throw new IdentifierError('Invalid "network" name', INVALID_DID, { network });
156
158
  }
157
159
 
@@ -137,6 +137,13 @@ export interface BeaconProcessResult {
137
137
  needs: Array<DataNeed>;
138
138
  }
139
139
 
140
+ /**
141
+ * One entry of the `updates` list of the specification: the signed update, the block
142
+ * that announced it, and the beacon address of the signal. The address feeds the
143
+ * removed-beacon test of "Process Next Update", step 4.
144
+ */
145
+ type UpdateTuple = [update: SignedBTCR2Update, block: BlockMetadata, address: string];
146
+
140
147
  // ─── provide() payload guards ────────────────────────────────────────────────
141
148
  // Runtime shape checks so a malformed payload fails fast at the provide()
142
149
  // boundary rather than flowing downstream as an unchecked `as` cast.
@@ -294,15 +301,21 @@ export class Resolver {
294
301
  #currentDocument: DidDocument | null;
295
302
  #providedGenesisDocument: object | null = null;
296
303
  #beaconServicesSignals: Map<BeaconService, Array<BeaconSignal>> = new Map();
297
- #processedServices: Set<string> = new Set();
304
+ /**
305
+ * The beacon addresses whose signals became update tuples. Keyed by address, not by
306
+ * service id: a rotation keeps the id and changes the address, and the specification
307
+ * has no per-service state (ADR 118).
308
+ */
309
+ #processedAddresses: Set<string> = new Set();
298
310
  /** The beacon addresses the resolver requested signals for: `scanned_beacons` of the specification. */
299
311
  #requestCache: Set<string> = new Set();
300
312
  /**
301
- * The tuples of the specification's `updates` list: a signed update and the metadata of
302
- * the block that announced it. BeaconProcess appends; ProcessUpdate sorts the list and
303
- * removes one tuple per step. A tuple that one pass does not reach waits for the next.
313
+ * The tuples of the specification's `updates` list: a signed update, the metadata of
314
+ * the block that announced it, and the beacon address of the signal. BeaconProcess
315
+ * appends; ProcessUpdate sorts the list and removes one tuple per step. A tuple that
316
+ * one pass does not reach waits for the next.
304
317
  */
305
- #unsortedUpdates: Array<[SignedBTCR2Update, BlockMetadata]> = [];
318
+ #unsortedUpdates: Array<UpdateTuple> = [];
306
319
  #resolvedResponse: DidResolutionResponse | null = null;
307
320
 
308
321
  /**
@@ -857,8 +870,9 @@ export class Resolver {
857
870
  const allNeeds: Array<DataNeed> = [];
858
871
 
859
872
  for(const [service, signals] of this.#beaconServicesSignals) {
860
- // Skip already-processed services and services with no signals
861
- if(this.#processedServices.has(service.id) || !signals.length) continue;
873
+ // Skip a processed address and a service with no signals
874
+ const address = BeaconUtils.parseBitcoinAddress(service.serviceEndpoint as string);
875
+ if(this.#processedAddresses.has(address) || !signals.length) continue;
862
876
 
863
877
  // Keep only the signals at or above the confirmation threshold. A
864
878
  // service whose signals are all below it is treated like a service
@@ -876,9 +890,12 @@ export class Resolver {
876
890
  // This service has unmet data needs, collect them
877
891
  allNeeds.push(...result.needs);
878
892
  } else {
879
- // All signals for this service resolved, collect updates, mark processed
880
- this.#unsortedUpdates.push(...result.updates);
881
- this.#processedServices.add(service.id);
893
+ // All signals of this address resolved: collect the updates with the
894
+ // beacon address, mark the address processed.
895
+ this.#unsortedUpdates.push(...result.updates.map(
896
+ ([update, block]): UpdateTuple => [update, block, address]
897
+ ));
898
+ this.#processedAddresses.add(address);
882
899
  }
883
900
  }
884
901
 
@@ -894,6 +911,8 @@ export class Resolver {
894
911
  // Spec "Process Next Update": one tuple per step. The phase repeats until
895
912
  // the document resolves, or until an applied update adds a beacon address
896
913
  // that the resolver did not scan (then the pass returns to BeaconDiscovery).
914
+ // A tuple whose beacon address the current document no longer carries is
915
+ // ignored (step 4).
897
916
  case ResolverPhase.ProcessUpdate: {
898
917
  const document = this.#currentDocument!;
899
918
 
@@ -926,9 +945,20 @@ export class Resolver {
926
945
  this.#unsortedUpdates.sort(([upd0, blk0], [upd1, blk1]) =>
927
946
  upd0.targetVersionId - upd1.targetVersionId || blk0.height - blk1.height
928
947
  );
929
- const [update, block] = this.#unsortedUpdates.shift()!;
948
+ const [update, block, address] = this.#unsortedUpdates.shift()!;
949
+
950
+ // Step 4: the current document has no beacon with the address of the signal:
951
+ // an applied update removed the beacon. Ignore the tuple (ADR 114). It stamps
952
+ // nothing, it enters no history, and it does not reach the duplicate check
953
+ // below: a conflicting re-announcement at a removed address is not an
954
+ // equivocation of the DID. The test reads the document before Apply, so an
955
+ // update announced at the address that it removes itself applies.
956
+ const removed = !BeaconUtils.getBeaconServices(document).some(service =>
957
+ BeaconUtils.parseBitcoinAddress(service.serviceEndpoint as string) === address
958
+ );
959
+ if(removed) continue;
930
960
 
931
- // Check targetVersionId, first arm: update.targetVersionId <= currentVersionId
961
+ // Step 7, "Check targetVersionId", first arm: targetVersionId <= currentVersionId
932
962
  // re-announces an applied version. Confirm that it is a true duplicate, then
933
963
  // skip it. A duplicate does not advance the version counter, does not append
934
964
  // to the history (the slot already holds the applied update, ADR 067), and
@@ -941,7 +971,7 @@ export class Resolver {
941
971
  continue;
942
972
  }
943
973
 
944
- // Step 4: the versionTime stop. The block mediantime of the tuple is after
974
+ // Step 5: the versionTime stop. The block mediantime of the tuple is after
945
975
  // versionTime: resolve the current document. The boundary is inclusive, so a
946
976
  // tuple whose mediantime equals versionTime applies. The stopped tuple stamps
947
977
  // nothing: the metadata reports the last applied update.
@@ -950,7 +980,7 @@ export class Resolver {
950
980
  continue;
951
981
  }
952
982
 
953
- // Check targetVersionId, third arm: a version was skipped, so raise LATE_PUBLISHING.
983
+ // Step 7, third arm: a version was skipped, so raise LATE_PUBLISHING.
954
984
  if(update.targetVersionId !== this.#currentVersionId + 1) {
955
985
  throw new ResolveError(
956
986
  `Version Id Mismatch: targetVersionId cannot be > currentVersionId + 1`,
@@ -961,14 +991,14 @@ export class Resolver {
961
991
  );
962
992
  }
963
993
 
964
- // Second arm: update.targetVersionId == currentVersionId + 1. Apply the update,
994
+ // Step 7, second arm: targetVersionId == currentVersionId + 1. Apply the update,
965
995
  // append the unsigned update hash to the history, increment the version.
966
996
  this.#currentDocument = Resolver.applyUpdate(document, update, block);
967
997
  const unsignedUpdate = JSONUtils.deleteKeys(update, ['proof']) as UnsignedBTCR2Update;
968
998
  this.#updateHashHistory.push(canonicalHashBytes(unsignedUpdate));
969
999
  this.#currentVersionId++;
970
1000
 
971
- // Step 5: block_confirmations, and the header time as `updated`. On the apply
1001
+ // Step 6: block_confirmations, and the header time as `updated`. On the apply
972
1002
  // path only: the stop above and the duplicate branch stamp nothing.
973
1003
  this.#blockConfirmations = block.confirmations;
974
1004
  this.#updated = DateUtils.toISOStringNonFractional(DateUtils.blocktimeToTimestamp(block.time));