@enbox/dwn-sdk-js 0.4.16 → 0.4.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 (152) hide show
  1. package/dist/browser.mjs +1 -1
  2. package/dist/browser.mjs.map +4 -4
  3. package/dist/esm/generated/precompiled-validators.js +734 -747
  4. package/dist/esm/generated/precompiled-validators.js.map +1 -1
  5. package/dist/esm/json-schemas/definitions.json +5 -0
  6. package/dist/esm/src/core/dwn-constant.js +2 -2
  7. package/dist/esm/src/core/dwn-error.js +0 -1
  8. package/dist/esm/src/core/dwn-error.js.map +1 -1
  9. package/dist/esm/src/core/protocol-authorization-validation.js +1 -24
  10. package/dist/esm/src/core/protocol-authorization-validation.js.map +1 -1
  11. package/dist/esm/src/core/protocol-authorization.js +1 -5
  12. package/dist/esm/src/core/protocol-authorization.js.map +1 -1
  13. package/dist/esm/src/core/validation-state-reader.js +2 -3
  14. package/dist/esm/src/core/validation-state-reader.js.map +1 -1
  15. package/dist/esm/src/handlers/records-count.js +18 -10
  16. package/dist/esm/src/handlers/records-count.js.map +1 -1
  17. package/dist/esm/src/handlers/records-query.js +10 -7
  18. package/dist/esm/src/handlers/records-query.js.map +1 -1
  19. package/dist/esm/src/handlers/records-subscribe.js +10 -7
  20. package/dist/esm/src/handlers/records-subscribe.js.map +1 -1
  21. package/dist/esm/src/handlers/records-write.js +8 -26
  22. package/dist/esm/src/handlers/records-write.js.map +1 -1
  23. package/dist/esm/src/index.js +1 -1
  24. package/dist/esm/src/index.js.map +1 -1
  25. package/dist/esm/src/interfaces/protocols-configure.js +4 -9
  26. package/dist/esm/src/interfaces/protocols-configure.js.map +1 -1
  27. package/dist/esm/src/store/index-level.js +143 -6
  28. package/dist/esm/src/store/index-level.js.map +1 -1
  29. package/dist/esm/src/store/message-store-level.js +158 -21
  30. package/dist/esm/src/store/message-store-level.js.map +1 -1
  31. package/dist/esm/src/store/storage-controller.js +1 -3
  32. package/dist/esm/src/store/storage-controller.js.map +1 -1
  33. package/dist/esm/src/types/protocols-types.js +0 -10
  34. package/dist/esm/src/types/protocols-types.js.map +1 -1
  35. package/dist/esm/src/utils/filter.js +35 -1
  36. package/dist/esm/src/utils/filter.js.map +1 -1
  37. package/dist/esm/src/utils/grant-key-coverage.js +4 -6
  38. package/dist/esm/src/utils/grant-key-coverage.js.map +1 -1
  39. package/dist/esm/src/utils/messages.js +4 -14
  40. package/dist/esm/src/utils/messages.js.map +1 -1
  41. package/dist/esm/src/utils/permission-scope.js +3 -9
  42. package/dist/esm/src/utils/permission-scope.js.map +1 -1
  43. package/dist/esm/src/utils/record-limit-occupancy.js +70 -202
  44. package/dist/esm/src/utils/record-limit-occupancy.js.map +1 -1
  45. package/dist/esm/src/utils/records.js +9 -9
  46. package/dist/esm/src/utils/records.js.map +1 -1
  47. package/dist/esm/tests/core/records-grant-authorization.spec.js +13 -0
  48. package/dist/esm/tests/core/records-grant-authorization.spec.js.map +1 -1
  49. package/dist/esm/tests/core/replication-replay-property.spec.js +2 -2
  50. package/dist/esm/tests/core/replication-replay-property.spec.js.map +1 -1
  51. package/dist/esm/tests/core/validation-read-closure.spec.js +1 -1
  52. package/dist/esm/tests/core/validation-read-closure.spec.js.map +1 -1
  53. package/dist/esm/tests/dwn.spec.js +2 -2
  54. package/dist/esm/tests/dwn.spec.js.map +1 -1
  55. package/dist/esm/tests/features/records-delivery.spec.js +2 -5
  56. package/dist/esm/tests/features/records-delivery.spec.js.map +1 -1
  57. package/dist/esm/tests/features/records-nested-query-scope.spec.js +138 -73
  58. package/dist/esm/tests/features/records-nested-query-scope.spec.js.map +1 -1
  59. package/dist/esm/tests/features/records-record-limit.spec.js +264 -95
  60. package/dist/esm/tests/features/records-record-limit.spec.js.map +1 -1
  61. package/dist/esm/tests/fuzz/filter.fuzz.spec.js +19 -4
  62. package/dist/esm/tests/fuzz/filter.fuzz.spec.js.map +1 -1
  63. package/dist/esm/tests/handlers/records-write.spec.js +57 -3
  64. package/dist/esm/tests/handlers/records-write.spec.js.map +1 -1
  65. package/dist/esm/tests/store/index-level.spec.js +114 -1
  66. package/dist/esm/tests/store/index-level.spec.js.map +1 -1
  67. package/dist/esm/tests/store/message-store-cross-context.spec.js +46 -0
  68. package/dist/esm/tests/store/message-store-cross-context.spec.js.map +1 -0
  69. package/dist/esm/tests/store/message-store-level.spec.js +6 -0
  70. package/dist/esm/tests/store/message-store-level.spec.js.map +1 -1
  71. package/dist/esm/tests/store/message-store.spec.js +81 -0
  72. package/dist/esm/tests/store/message-store.spec.js.map +1 -1
  73. package/dist/esm/tests/utils/filters.spec.js +25 -4
  74. package/dist/esm/tests/utils/filters.spec.js.map +1 -1
  75. package/dist/esm/tests/utils/permission-scope.spec.js +4 -0
  76. package/dist/esm/tests/utils/permission-scope.spec.js.map +1 -1
  77. package/dist/esm/tests/utils/records.spec.js +12 -0
  78. package/dist/esm/tests/utils/records.spec.js.map +1 -1
  79. package/dist/esm/tests/validation/json-schemas/records/records-write.spec.js +3 -1
  80. package/dist/esm/tests/validation/json-schemas/records/records-write.spec.js.map +1 -1
  81. package/dist/types/generated/precompiled-validators.d.ts.map +1 -1
  82. package/dist/types/src/core/dwn-constant.d.ts +2 -2
  83. package/dist/types/src/core/dwn-error.d.ts +0 -1
  84. package/dist/types/src/core/dwn-error.d.ts.map +1 -1
  85. package/dist/types/src/core/protocol-authorization-validation.d.ts +0 -10
  86. package/dist/types/src/core/protocol-authorization-validation.d.ts.map +1 -1
  87. package/dist/types/src/core/protocol-authorization.d.ts.map +1 -1
  88. package/dist/types/src/core/validation-state-reader.d.ts.map +1 -1
  89. package/dist/types/src/handlers/records-count.d.ts +1 -0
  90. package/dist/types/src/handlers/records-count.d.ts.map +1 -1
  91. package/dist/types/src/handlers/records-query.d.ts.map +1 -1
  92. package/dist/types/src/handlers/records-subscribe.d.ts.map +1 -1
  93. package/dist/types/src/handlers/records-write.d.ts +3 -0
  94. package/dist/types/src/handlers/records-write.d.ts.map +1 -1
  95. package/dist/types/src/index.d.ts +3 -3
  96. package/dist/types/src/index.d.ts.map +1 -1
  97. package/dist/types/src/interfaces/protocols-configure.d.ts.map +1 -1
  98. package/dist/types/src/store/index-level.d.ts +37 -0
  99. package/dist/types/src/store/index-level.d.ts.map +1 -1
  100. package/dist/types/src/store/message-store-level.d.ts +23 -6
  101. package/dist/types/src/store/message-store-level.d.ts.map +1 -1
  102. package/dist/types/src/store/storage-controller.d.ts.map +1 -1
  103. package/dist/types/src/types/message-store.d.ts +23 -2
  104. package/dist/types/src/types/message-store.d.ts.map +1 -1
  105. package/dist/types/src/types/protocols-types.d.ts +7 -24
  106. package/dist/types/src/types/protocols-types.d.ts.map +1 -1
  107. package/dist/types/src/types/query-types.d.ts +8 -1
  108. package/dist/types/src/types/query-types.d.ts.map +1 -1
  109. package/dist/types/src/types/records-types.d.ts +2 -1
  110. package/dist/types/src/types/records-types.d.ts.map +1 -1
  111. package/dist/types/src/utils/filter.d.ts +14 -1
  112. package/dist/types/src/utils/filter.d.ts.map +1 -1
  113. package/dist/types/src/utils/grant-key-coverage.d.ts.map +1 -1
  114. package/dist/types/src/utils/messages.d.ts.map +1 -1
  115. package/dist/types/src/utils/permission-scope.d.ts +0 -2
  116. package/dist/types/src/utils/permission-scope.d.ts.map +1 -1
  117. package/dist/types/src/utils/record-limit-occupancy.d.ts +25 -12
  118. package/dist/types/src/utils/record-limit-occupancy.d.ts.map +1 -1
  119. package/dist/types/src/utils/records.d.ts +3 -2
  120. package/dist/types/src/utils/records.d.ts.map +1 -1
  121. package/dist/types/tests/features/records-delivery.spec.d.ts.map +1 -1
  122. package/dist/types/tests/features/records-nested-query-scope.spec.d.ts.map +1 -1
  123. package/dist/types/tests/features/records-record-limit.spec.d.ts.map +1 -1
  124. package/dist/types/tests/handlers/records-write.spec.d.ts.map +1 -1
  125. package/dist/types/tests/store/message-store-cross-context.spec.d.ts +2 -0
  126. package/dist/types/tests/store/message-store-cross-context.spec.d.ts.map +1 -0
  127. package/dist/types/tests/store/message-store.spec.d.ts.map +1 -1
  128. package/package.json +4 -4
  129. package/src/core/dwn-constant.ts +2 -2
  130. package/src/core/dwn-error.ts +0 -2
  131. package/src/core/protocol-authorization-validation.ts +1 -33
  132. package/src/core/protocol-authorization.ts +0 -7
  133. package/src/core/validation-state-reader.ts +2 -3
  134. package/src/handlers/records-count.ts +34 -13
  135. package/src/handlers/records-query.ts +14 -11
  136. package/src/handlers/records-subscribe.ts +18 -11
  137. package/src/handlers/records-write.ts +17 -32
  138. package/src/index.ts +3 -3
  139. package/src/interfaces/protocols-configure.ts +4 -13
  140. package/src/store/index-level.ts +197 -10
  141. package/src/store/message-store-level.ts +216 -25
  142. package/src/store/storage-controller.ts +1 -3
  143. package/src/types/message-store.ts +25 -2
  144. package/src/types/protocols-types.ts +7 -26
  145. package/src/types/query-types.ts +10 -2
  146. package/src/types/records-types.ts +2 -1
  147. package/src/utils/filter.ts +40 -3
  148. package/src/utils/grant-key-coverage.ts +4 -7
  149. package/src/utils/messages.ts +4 -14
  150. package/src/utils/permission-scope.ts +4 -11
  151. package/src/utils/record-limit-occupancy.ts +105 -293
  152. package/src/utils/records.ts +9 -9
@@ -1 +1 @@
1
- {"version":3,"file":"records-record-limit.spec.js","sourceRoot":"","sources":["../../../../tests/features/records-record-limit.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"records-record-limit.spec.js","sourceRoot":"","sources":["../../../../tests/features/records-record-limit.spec.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
1
  import { describe, expect, it } from 'bun:test';
2
2
  import fc from 'fast-check';
3
3
  import { equalFilter, filter, keyValues, oneOfFilter, rangeFilter } from './arbitraries/filter.arbitrary.js';
4
- import { FilterSelector, FilterUtility } from '../../src/utils/filter.js';
4
+ import { FilterSelector, FilterUtility, isSubtreeFilter } from '../../src/utils/filter.js';
5
5
  const numRuns = Number(process.env.FAST_CHECK_NUM_RUNS) || 200;
6
6
  describe('FilterUtility — fuzz', () => {
7
+ const pathSegment = fc.array(fc.constantFrom(...'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'), { minLength: 1, maxLength: 20 }).map((characters) => characters.join(''));
7
8
  describe('matchFilter — empty filter matches everything', () => {
8
9
  it('should return true for any keyValues when filter is empty', () => {
9
10
  fc.assert(fc.property(keyValues(), (kv) => {
@@ -80,14 +81,28 @@ describe('FilterUtility — fuzz', () => {
80
81
  }), { numRuns });
81
82
  });
82
83
  });
83
- describe('isEqualFilter / isRangeFilter / isOneOfFilter — mutual exclusivity', () => {
84
+ describe('matchesSubtree segment boundary property', () => {
85
+ it('should match exact paths and descendants without matching prefix siblings', () => {
86
+ fc.assert(fc.property(pathSegment, pathSegment, pathSegment, (root, branch, suffix) => {
87
+ const subtree = `${root}/${branch}`;
88
+ expect(FilterUtility.matchesSubtree(subtree, subtree)).toBe(true);
89
+ expect(FilterUtility.matchesSubtree(subtree, `${subtree}/${suffix}`)).toBe(true);
90
+ expect(FilterUtility.matchesSubtree(subtree, `${subtree}/${suffix}/grandchild`)).toBe(true);
91
+ expect(FilterUtility.matchesSubtree(subtree, `${subtree}-${suffix}`)).toBe(false);
92
+ expect(FilterUtility.matchesSubtree(subtree, `${subtree}.${suffix}`)).toBe(false);
93
+ expect(FilterUtility.matchesSubtree(subtree, `${subtree}${suffix}`)).toBe(false);
94
+ }), { numRuns });
95
+ });
96
+ });
97
+ describe('filter value classification — mutual exclusivity', () => {
84
98
  it('should classify each filter value into exactly one category', () => {
85
- fc.assert(fc.property(fc.oneof(equalFilter(), rangeFilter(), oneOfFilter()), (filterValue) => {
99
+ fc.assert(fc.property(fc.oneof(equalFilter(), rangeFilter(), oneOfFilter(), pathSegment.map((subtree) => ({ subtree }))), (filterValue) => {
86
100
  const isEqual = FilterUtility.isEqualFilter(filterValue);
87
101
  const isRange = FilterUtility.isRangeFilter(filterValue);
88
102
  const isOneOf = FilterUtility.isOneOfFilter(filterValue);
103
+ const isSubtree = isSubtreeFilter(filterValue);
89
104
  // Exactly one should be true
90
- const trueCount = [isEqual, isRange, isOneOf].filter(Boolean).length;
105
+ const trueCount = [isEqual, isRange, isOneOf, isSubtree].filter(Boolean).length;
91
106
  expect(trueCount).toBe(1);
92
107
  }), { numRuns });
93
108
  });
@@ -1 +1 @@
1
- {"version":3,"file":"filter.fuzz.spec.js","sourceRoot":"","sources":["../../../../tests/fuzz/filter.fuzz.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filter.fuzz.spec.js","sourceRoot":"","sources":["../../../../tests/fuzz/filter.fuzz.spec.ts"],"names":[],"mappings":"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"}
@@ -1725,6 +1725,60 @@ export function testRecordsWriteHandler() {
1725
1725
  });
1726
1726
  });
1727
1727
  describe('protocol based writes', () => {
1728
+ it('should enforce the validated squash policy without a second protocol lookup', async () => {
1729
+ const alice = await TestDataGenerator.generateDidKeyPersona();
1730
+ const protocol = 'http://single-squash-policy-lookup.xyz';
1731
+ const olderTimestamp = Time.createOffsetTimestamp({ seconds: 5 });
1732
+ const squashTimestamp = Time.createOffsetTimestamp({ seconds: 10 });
1733
+ const olderRecord = await TestDataGenerator.generateRecordsWrite({
1734
+ author: alice,
1735
+ protocol,
1736
+ protocolPath: 'entry',
1737
+ messageTimestamp: olderTimestamp,
1738
+ dateCreated: olderTimestamp,
1739
+ });
1740
+ const squashRecord = await TestDataGenerator.generateRecordsWrite({
1741
+ author: alice,
1742
+ protocol,
1743
+ protocolPath: 'entry',
1744
+ messageTimestamp: squashTimestamp,
1745
+ dateCreated: squashTimestamp,
1746
+ squash: true,
1747
+ });
1748
+ const messageStoreStub = sinon.createStubInstance(MessageStoreLevel);
1749
+ messageStoreStub.query.resolves({ messages: [] });
1750
+ const dataStoreStub = sinon.createStubInstance(DataStoreLevel);
1751
+ const validationStateReader = createTestValidationStateReader({
1752
+ messageStore: messageStoreStub,
1753
+ dataStore: dataStoreStub,
1754
+ });
1755
+ const protocolLookup = sinon.stub(validationStateReader, 'fetchProtocolDefinition').rejects(new Error('a redundant policy lookup would fail'));
1756
+ const squashLookup = sinon.stub(validationStateReader, 'fetchLatestSquashRecordAtScope').resolves(squashRecord.message);
1757
+ const validateReferentialIntegrity = sinon.stub(ProtocolAuthorization, 'validateReferentialIntegrity').resolves({ $squash: true });
1758
+ const recordsWriteHandler = new RecordsWriteHandler({
1759
+ didResolver: TestStubGenerator.createDidResolverStub(alice),
1760
+ messageStore: messageStoreStub,
1761
+ dataStore: dataStoreStub,
1762
+ coreProtocols: new CoreProtocolRegistry(),
1763
+ eventLog,
1764
+ validationStateReader,
1765
+ });
1766
+ const reply = await recordsWriteHandler.handle({
1767
+ tenant: alice.did,
1768
+ message: olderRecord.message,
1769
+ dataStream: olderRecord.dataStream,
1770
+ });
1771
+ expect(reply.status.code).toBe(409);
1772
+ expect(reply.status.errorCode).toBe(DwnErrorCode.ProtocolAuthorizationSquashBackstop);
1773
+ sinon.assert.calledOnce(validateReferentialIntegrity);
1774
+ sinon.assert.notCalled(protocolLookup);
1775
+ sinon.assert.calledOnceWithExactly(squashLookup, {
1776
+ tenant: alice.did,
1777
+ protocol,
1778
+ protocolPath: 'entry',
1779
+ contextIdPrefix: undefined,
1780
+ });
1781
+ });
1728
1782
  it('should allow write with allow-anyone rule', async () => {
1729
1783
  // scenario: Bob writes into Alice's DWN given Alice's "email" protocol allow-anyone rule
1730
1784
  // write a protocol definition with an allow-anyone rule
@@ -5226,7 +5280,7 @@ export function testRecordsWriteHandler() {
5226
5280
  messageStoreStub.query.resolves({ messages: [] });
5227
5281
  const dataStoreStub = sinon.createStubInstance(DataStoreLevel);
5228
5282
  // stub protocol validation so the handler reaches authentication/authorization
5229
- sinon.stub(ProtocolAuthorization, 'validateReferentialIntegrity').resolves();
5283
+ sinon.stub(ProtocolAuthorization, 'validateReferentialIntegrity').resolves({});
5230
5284
  const recordsWriteHandler = new RecordsWriteHandler({
5231
5285
  didResolver,
5232
5286
  messageStore: messageStoreStub,
@@ -5247,7 +5301,7 @@ export function testRecordsWriteHandler() {
5247
5301
  messageStoreStub.query.resolves({ messages: [] });
5248
5302
  const dataStoreStub = sinon.createStubInstance(DataStoreLevel);
5249
5303
  // stub protocol validation so the handler reaches authentication/authorization
5250
- sinon.stub(ProtocolAuthorization, 'validateReferentialIntegrity').resolves();
5304
+ sinon.stub(ProtocolAuthorization, 'validateReferentialIntegrity').resolves({});
5251
5305
  const recordsWriteHandler = new RecordsWriteHandler({
5252
5306
  didResolver,
5253
5307
  messageStore: messageStoreStub,
@@ -5349,7 +5403,7 @@ export function testRecordsWriteHandler() {
5349
5403
  messageStoreStub.query.resolves({ messages: [initialWriteMessage] });
5350
5404
  const dataStoreStub = sinon.createStubInstance(DataStoreLevel);
5351
5405
  // stub protocol validation so the handler reaches the process methods
5352
- sinon.stub(ProtocolAuthorization, 'validateReferentialIntegrity').resolves();
5406
+ sinon.stub(ProtocolAuthorization, 'validateReferentialIntegrity').resolves({});
5353
5407
  const recordsWriteHandler = new RecordsWriteHandler({
5354
5408
  didResolver: didResolverStub, messageStore: messageStoreStub,
5355
5409
  dataStore: dataStoreStub, coreProtocols: new CoreProtocolRegistry(), eventLog,