mindoodb 0.0.66 → 0.0.69

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 (86) hide show
  1. package/README-server.md +77 -16
  2. package/README.md +41 -58
  3. package/dist/appendonlystores/network/HttpTransport.d.ts +2 -0
  4. package/dist/appendonlystores/network/HttpTransport.d.ts.map +1 -1
  5. package/dist/appendonlystores/network/HttpTransport.js +31 -6
  6. package/dist/appendonlystores/network/HttpTransport.js.map +1 -1
  7. package/dist/appendonlystores/network/ServerNetworkContentAddressedStore.d.ts +18 -8
  8. package/dist/appendonlystores/network/ServerNetworkContentAddressedStore.d.ts.map +1 -1
  9. package/dist/appendonlystores/network/ServerNetworkContentAddressedStore.js +30 -16
  10. package/dist/appendonlystores/network/ServerNetworkContentAddressedStore.js.map +1 -1
  11. package/dist/browser/index.mjs +29 -0
  12. package/dist/core/BaseMindooDB.d.ts +168 -8
  13. package/dist/core/BaseMindooDB.d.ts.map +1 -1
  14. package/dist/core/BaseMindooDB.js +763 -74
  15. package/dist/core/BaseMindooDB.js.map +1 -1
  16. package/dist/core/appendonlystores/network/IrohNetworkTransport.d.ts.map +1 -1
  17. package/dist/core/appendonlystores/network/IrohNetworkTransport.js +5 -1
  18. package/dist/core/appendonlystores/network/IrohNetworkTransport.js.map +1 -1
  19. package/dist/core/appendonlystores/network/IrohStreamIO.d.ts +10 -0
  20. package/dist/core/appendonlystores/network/IrohStreamIO.d.ts.map +1 -1
  21. package/dist/core/appendonlystores/network/IrohStreamIO.js.map +1 -1
  22. package/dist/core/appendonlystores/network/types.d.ts +20 -0
  23. package/dist/core/appendonlystores/network/types.d.ts.map +1 -1
  24. package/dist/core/appendonlystores/network/types.js +33 -0
  25. package/dist/core/appendonlystores/network/types.js.map +1 -1
  26. package/dist/core/appendonlystores/syncStores.d.ts +80 -2
  27. package/dist/core/appendonlystores/syncStores.d.ts.map +1 -1
  28. package/dist/core/appendonlystores/syncStores.js +82 -9
  29. package/dist/core/appendonlystores/syncStores.js.map +1 -1
  30. package/dist/core/appendonlystores/types.d.ts +88 -6
  31. package/dist/core/appendonlystores/types.d.ts.map +1 -1
  32. package/dist/core/appendonlystores/types.js +61 -1
  33. package/dist/core/appendonlystores/types.js.map +1 -1
  34. package/dist/core/builtinDbInvariants.d.ts +8 -5
  35. package/dist/core/builtinDbInvariants.d.ts.map +1 -1
  36. package/dist/core/builtinDbInvariants.js +8 -5
  37. package/dist/core/builtinDbInvariants.js.map +1 -1
  38. package/dist/core/expressions/evaluateExpression.d.ts.map +1 -1
  39. package/dist/core/expressions/evaluateExpression.js +7 -1
  40. package/dist/core/expressions/evaluateExpression.js.map +1 -1
  41. package/dist/core/index.d.ts +8 -0
  42. package/dist/core/index.d.ts.map +1 -1
  43. package/dist/core/index.js +45 -11
  44. package/dist/core/index.js.map +1 -1
  45. package/dist/core/indexing/summary/DocumentSummaryStore.d.ts +26 -3
  46. package/dist/core/indexing/summary/DocumentSummaryStore.d.ts.map +1 -1
  47. package/dist/core/indexing/summary/DocumentSummaryStore.js +100 -15
  48. package/dist/core/indexing/summary/DocumentSummaryStore.js.map +1 -1
  49. package/dist/core/indexing/summary/extractSummaryFields.d.ts +10 -1
  50. package/dist/core/indexing/summary/extractSummaryFields.d.ts.map +1 -1
  51. package/dist/core/indexing/summary/extractSummaryFields.js +34 -7
  52. package/dist/core/indexing/summary/extractSummaryFields.js.map +1 -1
  53. package/dist/core/indexing/summary/types.d.ts +6 -0
  54. package/dist/core/indexing/summary/types.d.ts.map +1 -1
  55. package/dist/core/indexing/summary/types.js +8 -1
  56. package/dist/core/indexing/summary/types.js.map +1 -1
  57. package/dist/core/quarantine/QuarantineDocument.d.ts +211 -0
  58. package/dist/core/quarantine/QuarantineDocument.d.ts.map +1 -0
  59. package/dist/core/quarantine/QuarantineDocument.js +314 -0
  60. package/dist/core/quarantine/QuarantineDocument.js.map +1 -0
  61. package/dist/core/quarantine/QuarantineView.d.ts +90 -0
  62. package/dist/core/quarantine/QuarantineView.d.ts.map +1 -0
  63. package/dist/core/quarantine/QuarantineView.js +106 -0
  64. package/dist/core/quarantine/QuarantineView.js.map +1 -0
  65. package/dist/core/quarantine/recordPushRejections.d.ts +73 -0
  66. package/dist/core/quarantine/recordPushRejections.d.ts.map +1 -0
  67. package/dist/core/quarantine/recordPushRejections.js +112 -0
  68. package/dist/core/quarantine/recordPushRejections.js.map +1 -0
  69. package/dist/core/quarantine/resubmitQuarantined.d.ts +81 -0
  70. package/dist/core/quarantine/resubmitQuarantined.d.ts.map +1 -0
  71. package/dist/core/quarantine/resubmitQuarantined.js +120 -0
  72. package/dist/core/quarantine/resubmitQuarantined.js.map +1 -0
  73. package/dist/core/types.d.ts +132 -4
  74. package/dist/core/types.d.ts.map +1 -1
  75. package/dist/core/types.js.map +1 -1
  76. package/dist/core/values.d.ts +72 -0
  77. package/dist/core/values.d.ts.map +1 -0
  78. package/dist/core/values.js +107 -0
  79. package/dist/core/values.js.map +1 -0
  80. package/dist/node/server/MindooDBServer.d.ts.map +1 -1
  81. package/dist/node/server/MindooDBServer.js +6 -1
  82. package/dist/node/server/MindooDBServer.js.map +1 -1
  83. package/dist/node/server/peer/PeerReplicator.d.ts.map +1 -1
  84. package/dist/node/server/peer/PeerReplicator.js +35 -15
  85. package/dist/node/server/peer/PeerReplicator.js.map +1 -1
  86. package/package.json +1 -1
@@ -15,14 +15,15 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
16
16
  };
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.SYNC_SETUP_POLICY_MODES = exports.SYNC_SETUP_POLICY_TYPE = exports.validateSyncSetupPolicy = exports.isSyncSetupPolicyDocId = exports.aclSyncSetupPolicyDocId = exports.ACL_APP_DISTRIBUTION_PREFIX = exports.APP_DISTRIBUTION_TYPE = exports.validateAppDistribution = exports.isAppDistributionDocId = exports.aclAppDistributionDocId = exports.PROTECTED_DISTRIBUTION_KEY_IDS = exports.ACL_KEY_DISTRIBUTION_PREFIX = exports.KEY_DISTRIBUTION_TYPE = exports.validateKeyDistribution = exports.isKeyDistributionDocId = exports.aclKeyDistributionDocId = exports.decodeAclIdComponent = exports.encodeAclIdComponent = exports.aclTrustedWitnessDocId = exports.aclRuleDocId = exports.aclDbPolicyDocId = exports.effectivePolicy = exports.RULE_TYPE_TO_DENY_FIELD = exports.RULE_TYPES = exports.DEFAULT_POLICY_DEFAULTS = exports.ACL_DEFAULT_POLICY_DOC_ID = exports.ACCESS_CONTROL_FORM = exports.ensureTenantSetupAdministrator = exports.writeTenantSetupAdministrator = exports.readTenantSetupAdministrators = exports.writeTenantSetupLabel = exports.readTenantSetupLabel = exports.verifyPeerDeviceRecord = exports.removePeerDeviceRecord = exports.publishPeerDeviceRecord = exports.peerDeviceDocumentId = exports.listPeerDeviceRecords = exports.isPeerDeviceDocId = exports.PEER_DEVICE_TYPE = exports.PEER_DEVICE_SCHEMA_VERSION = exports.PEER_DEVICE_FORM = exports.PEER_DEVICE_DOC_ID_PREFIX = exports.buildTier1Evaluator = exports.usernameHashFromCreateChangeBytes = exports.entryTypeToBuiltinOp = exports.shouldSkipLoadedEntry = exports.PERSONAL_DOC_ID_PREFIXES = exports.isPersonalUserdirectoryDocId = exports.hasBuiltinWriteInvariant = exports.evaluateBuiltinWrite = void 0;
19
- exports.InvalidSigningDomainError = exports.isAllowedSigningDomain = exports.buildDomainStatementBytes = exports.assertAllowedSigningDomain = exports.isProvisional = exports.entryTrustedTime = exports.WITNESS_RECEIPT_LAYOUT_VERSION = exports.witnessFieldsFromEntry = exports.verifyWitnessReceipt = exports.buildWitnessSigningBytes = exports.ENTRY_SIGNATURE_LAYOUT_VERSION = exports.bytesToBase64 = exports.base64ToBytes = exports.verifyEntrySignatureWithImportedKey = exports.verifyEntrySignatureCrypto = exports.importEd25519PublicKeyFromPem = exports.entrySignatureFieldsFromEntry = exports.buildEntrySigningBytes = exports.getEncryptedFieldKeyId = exports.decryptEncryptedField = exports.MindooDocSigner = exports.RSAEncryption = exports.MindooDBServerAdmin = exports.BaseMindooTenantFactory = exports.BaseMindooTenant = exports.BaseMindooDB = exports.usernamesEqual = exports.sanitizeCanonicalNamePart = exports.parseCanonicalName = exports.normalizeCanonicalNameForComparison = exports.isCanonicalName = exports.getCanonicalNameVariants = exports.formatCanonicalUsernameLabel = exports.formatCanonicalDisplayName = exports.expandAbbreviatedName = exports.canonicalizeUsername = exports.buildCanonicalName = exports.abbreviateCanonicalName = exports.AccessDeniedError = exports.signingKeysEqual = exports.grantForSigningKey = exports.isSamePerson = exports.nodeCovering = exports.createGenesisNode = exports.ACL_DOC_HISTORY_PURGE_PREFIX = exports.DOC_HISTORY_PURGE_TYPE = exports.validateDocHistoryPurge = exports.isDocHistoryPurgeDocId = exports.aclDocHistoryPurgeDocId = exports.ACL_SYNC_SETUP_POLICY_PREFIX = void 0;
20
- exports.isDocEntryId = exports.parseAttachmentChunkId = exports.parseDocEntryId = exports.generateChunkUuid7 = exports.generateFileUuid7 = exports.generateUniqueAttachmentChunkId = exports.generateAttachmentChunkId = exports.generateDepsFingerprint = exports.generateDocEntryId = exports.matchesDocIdPrefix = exports.generateTenantId = exports.generateDocId = exports.OBJECT_ID_LENGTH = exports.generateObjectId = exports.CacheManager = exports.EncryptedLocalCacheStore = exports.InMemoryLocalCacheStore = exports.isDocumentMissingError = exports.DocumentDeletedError = exports.DocumentNotFoundError = exports.SymmetricKeyNotFoundError = exports.normalizeRequestedDocKeyIds = exports.normalizeJoinRequestPayload = exports.decodeJoinRequestUri = exports.encodeJoinRequestUri = exports.decodeDocHistoryPurgeRequest = exports.encodeDocHistoryPurgeRequest = exports.decodeSyncSetupPolicyRequest = exports.encodeSyncSetupPolicyRequest = exports.decodeAppDistributionRequest = exports.encodeAppDistributionRequest = exports.decodeKeyDistributionRequest = exports.encodeKeyDistributionRequest = exports.isMindooURI = exports.decodeMindooURI = exports.encodeMindooURI = exports.KeyBag = exports.buildDocHistoryPurgeRequest = exports.verifyEntryProvenance = exports.requestTimestampWithFallback = exports.requestTimestampViaProxy = exports.requestTimestampDirect = exports.TimestampRequestError = exports.TIMESTAMP_REPLY_CONTENT_TYPE = exports.TIMESTAMP_QUERY_CONTENT_TYPE = exports.MAX_TIMESTAMP_RESPONSE_BYTES = exports.DEFAULT_TIMESTAMP_TIMEOUT_MS = exports.BROWSER_REACHABLE_TSA = exports.SIGNING_DOMAINS = exports.MAX_DOMAIN_STATEMENT_BYTES = void 0;
21
- exports.DEFAULT_SUMMARY_MAX_VALUE_BYTES = exports.isFieldPathCovered = exports.getSummaryFieldValue = exports.extractSummaryFields = exports.sanitizeSummaryConfig = exports.computeSummaryConfigFingerprint = exports.resolveSummaryConfig = exports.SummaryVirtualViewDataProvider = exports.DocumentSummaryStore = exports.MAX_INCLUDE_DEPTH = exports.DEFAULT_INCLUDE_LIMIT = exports.queryViewAcross = exports.createEphemeralSummaryView = exports.EphemeralSummaryView = exports.MindooQueryError = exports.executeQueryLive = exports.executeQuery = exports.filterExpressionToDocumentFilter = exports.collectSummaryFallbackReasons = exports.createViewDataProvider = exports.SelectedOnly = exports.WithDocuments = exports.WithCategories = exports.CategorizationStyle = exports.TotalMode = exports.ColumnSorting = exports.MindooDBVirtualViewDataProvider = exports.VirtualViewDataChange = exports.VirtualViewEntryData = exports.VirtualViewNavigator = exports.VirtualViewColumn = exports.VirtualViewNavigatorBuilder = exports.VirtualViewBuilder = exports.VirtualViewFactory = exports.VirtualView = exports.HttpTransport = exports.ServerNetworkContentAddressedStore = exports.ClientNetworkContentAddressedStore = exports.NetworkError = exports.NetworkErrorType = exports.AuthenticationService = exports.InMemoryContentAddressedStoreFactory = exports.InMemoryContentAddressedStore = exports.StoreKind = exports.createQuantizedTimeSource = exports.setSemanticTimeSourceForTesting = exports.semanticNow = exports.computeContentHash = exports.extractDocIdFromEntryId = exports.isAttachmentChunkId = void 0;
22
- exports.sanitizeExtractionConfig = exports.EXTRACTION_SETUP_FIELD = exports.DEFAULT_FULLTEXT_MAX_FIELD_BYTES = exports.FULLTEXT_INDEX_FORMAT_VERSION = exports.FULLTEXT_ATTACHMENT_FIELD = exports.FULLTEXT_SETUP_FIELD = exports.extractFulltextFields = exports.collectPlainText = exports.computeFulltextConfigFingerprint = exports.sanitizeFulltextConfig = exports.resolveFulltextConfig = exports.createTokenizer = exports.MiniSearchAdapter = exports.DocumentFullTextIndex = exports.ATTACHMENTS_FIELD = exports.SUMMARY_SETUP_FIELD = exports.DB_SETUP_DOC_ID = void 0;
18
+ exports.aclRuleDocId = exports.aclDbPolicyDocId = exports.effectivePolicy = exports.RULE_TYPE_TO_DENY_FIELD = exports.RULE_TYPES = exports.DEFAULT_POLICY_DEFAULTS = exports.ACL_DEFAULT_POLICY_DOC_ID = exports.ACCESS_CONTROL_FORM = exports.ensureTenantSetupAdministrator = exports.writeTenantSetupAdministrator = exports.readTenantSetupAdministrators = exports.writeTenantSetupLabel = exports.readTenantSetupLabel = exports.outboundQuarantineView = exports.mergeQuarantineViews = exports.inboundQuarantineView = exports.recordPushRejections = exports.UNKNOWN_QUARANTINED_DOC_ID = exports.resubmitQuarantinedEntries = exports.DEFAULT_MAX_RESUBMIT_RECORDS = exports.verifyQuarantineRecord = exports.recordPushQuarantine = exports.quarantineDocumentId = exports.listQuarantineRecords = exports.isQuarantineDocId = exports.clearQuarantineRecord = exports.QuarantineRecursionError = exports.QUARANTINE_TYPE = exports.QUARANTINE_SCHEMA_VERSION = exports.QUARANTINE_FORM = exports.QUARANTINE_DOC_ID_PREFIX = exports.MAX_QUARANTINED_ENTRY_IDS = exports.verifyPeerDeviceRecord = exports.removePeerDeviceRecord = exports.publishPeerDeviceRecord = exports.peerDeviceDocumentId = exports.listPeerDeviceRecords = exports.isPeerDeviceDocId = exports.PEER_DEVICE_TYPE = exports.PEER_DEVICE_SCHEMA_VERSION = exports.PEER_DEVICE_FORM = exports.PEER_DEVICE_DOC_ID_PREFIX = exports.buildTier1Evaluator = exports.usernameHashFromCreateChangeBytes = exports.entryTypeToBuiltinOp = exports.shouldSkipLoadedEntry = exports.PERSONAL_DOC_ID_PREFIXES = exports.isPersonalUserdirectoryDocId = exports.hasBuiltinWriteInvariant = exports.evaluateBuiltinWrite = void 0;
19
+ exports.RSAEncryption = exports.MindooDBServerAdmin = exports.BaseMindooTenantFactory = exports.BaseMindooTenant = exports.BaseMindooDB = exports.usernamesEqual = exports.sanitizeCanonicalNamePart = exports.parseCanonicalName = exports.normalizeCanonicalNameForComparison = exports.isCanonicalName = exports.getCanonicalNameVariants = exports.formatCanonicalUsernameLabel = exports.formatCanonicalDisplayName = exports.expandAbbreviatedName = exports.canonicalizeUsername = exports.buildCanonicalName = exports.abbreviateCanonicalName = exports.normalizePublicKeyPem = exports.fingerprintPublicKeyPem = exports.AccessDeniedError = exports.signingKeysEqual = exports.grantForSigningKey = exports.isSamePerson = exports.nodeCovering = exports.createGenesisNode = exports.ACL_DOC_HISTORY_PURGE_PREFIX = exports.DOC_HISTORY_PURGE_TYPE = exports.validateDocHistoryPurge = exports.isDocHistoryPurgeDocId = exports.aclDocHistoryPurgeDocId = exports.ACL_SYNC_SETUP_POLICY_PREFIX = exports.SYNC_SETUP_POLICY_MODES = exports.SYNC_SETUP_POLICY_TYPE = exports.validateSyncSetupPolicy = exports.isSyncSetupPolicyDocId = exports.aclSyncSetupPolicyDocId = exports.ACL_APP_DISTRIBUTION_PREFIX = exports.APP_DISTRIBUTION_TYPE = exports.validateAppDistribution = exports.isAppDistributionDocId = exports.aclAppDistributionDocId = exports.PROTECTED_DISTRIBUTION_KEY_IDS = exports.ACL_KEY_DISTRIBUTION_PREFIX = exports.KEY_DISTRIBUTION_TYPE = exports.validateKeyDistribution = exports.isKeyDistributionDocId = exports.aclKeyDistributionDocId = exports.decodeAclIdComponent = exports.encodeAclIdComponent = exports.aclTrustedWitnessDocId = void 0;
20
+ exports.normalizeRequestedDocKeyIds = exports.normalizeJoinRequestPayload = exports.decodeJoinRequestUri = exports.encodeJoinRequestUri = exports.decodeDocHistoryPurgeRequest = exports.encodeDocHistoryPurgeRequest = exports.decodeSyncSetupPolicyRequest = exports.encodeSyncSetupPolicyRequest = exports.decodeAppDistributionRequest = exports.encodeAppDistributionRequest = exports.decodeKeyDistributionRequest = exports.encodeKeyDistributionRequest = exports.isMindooURI = exports.decodeMindooURI = exports.encodeMindooURI = exports.KeyBag = exports.buildDocHistoryPurgeRequest = exports.verifyEntryProvenance = exports.requestTimestampWithFallback = exports.requestTimestampViaProxy = exports.requestTimestampDirect = exports.TimestampRequestError = exports.TIMESTAMP_REPLY_CONTENT_TYPE = exports.TIMESTAMP_QUERY_CONTENT_TYPE = exports.MAX_TIMESTAMP_RESPONSE_BYTES = exports.DEFAULT_TIMESTAMP_TIMEOUT_MS = exports.BROWSER_REACHABLE_TSA = exports.SIGNING_DOMAINS = exports.MAX_DOMAIN_STATEMENT_BYTES = exports.InvalidSigningDomainError = exports.isAllowedSigningDomain = exports.buildDomainStatementBytes = exports.assertAllowedSigningDomain = exports.isProvisional = exports.entryTrustedTime = exports.WITNESS_RECEIPT_LAYOUT_VERSION = exports.witnessFieldsFromEntry = exports.verifyWitnessReceipt = exports.buildWitnessSigningBytes = exports.ENTRY_SIGNATURE_LAYOUT_VERSION = exports.bytesToBase64 = exports.base64ToBytes = exports.verifyEntrySignatureWithImportedKey = exports.verifyEntrySignatureCrypto = exports.importEd25519PublicKeyFromPem = exports.entrySignatureFieldsFromEntry = exports.buildEntrySigningBytes = exports.getEncryptedFieldKeyId = exports.decryptEncryptedField = exports.MindooDocSigner = void 0;
21
+ exports.ColumnSorting = exports.MindooDBVirtualViewDataProvider = exports.VirtualViewDataChange = exports.VirtualViewEntryData = exports.VirtualViewNavigator = exports.VirtualViewColumn = exports.VirtualViewNavigatorBuilder = exports.VirtualViewBuilder = exports.VirtualViewFactory = exports.VirtualView = exports.HttpTransport = exports.ServerNetworkContentAddressedStore = exports.ClientNetworkContentAddressedStore = exports.NetworkError = exports.NetworkErrorType = exports.AuthenticationService = exports.InMemoryContentAddressedStoreFactory = exports.InMemoryContentAddressedStore = exports.rejectionClassOf = exports.isSelfResolvingRejection = exports.isResubmittableRejection = exports.PUT_REJECTION_CLASSES = exports.StoreKind = exports.createQuantizedTimeSource = exports.setSemanticTimeSourceForTesting = exports.semanticNow = exports.computeContentHash = exports.extractDocIdFromEntryId = exports.isAttachmentChunkId = exports.isDocEntryId = exports.parseAttachmentChunkId = exports.parseDocEntryId = exports.generateChunkUuid7 = exports.generateFileUuid7 = exports.generateUniqueAttachmentChunkId = exports.generateAttachmentChunkId = exports.generateDepsFingerprint = exports.generateDocEntryId = exports.matchesDocIdPrefix = exports.generateTenantId = exports.generateDocId = exports.OBJECT_ID_LENGTH = exports.generateObjectId = exports.CacheManager = exports.EncryptedLocalCacheStore = exports.InMemoryLocalCacheStore = exports.isDocumentMissingError = exports.DocumentDeletedError = exports.DocumentNotFoundError = exports.SymmetricKeyNotFoundError = void 0;
22
+ exports.sanitizeExtractionConfig = exports.EXTRACTION_SETUP_FIELD = exports.DEFAULT_FULLTEXT_MAX_FIELD_BYTES = exports.FULLTEXT_INDEX_FORMAT_VERSION = exports.FULLTEXT_ATTACHMENT_FIELD = exports.FULLTEXT_SETUP_FIELD = exports.extractFulltextFields = exports.collectPlainText = exports.computeFulltextConfigFingerprint = exports.sanitizeFulltextConfig = exports.resolveFulltextConfig = exports.createTokenizer = exports.MiniSearchAdapter = exports.DocumentFullTextIndex = exports.ATTACHMENTS_FIELD = exports.SUMMARY_SETUP_FIELD = exports.DB_SETUP_DOC_ID = exports.DEFAULT_SUMMARY_MAX_VALUE_BYTES = exports.isFieldPathCovered = exports.getSummaryFieldValue = exports.extractSummaryFields = exports.sanitizeSummaryConfig = exports.computeSummaryConfigFingerprint = exports.resolveSummaryConfig = exports.SummaryVirtualViewDataProvider = exports.DocumentSummaryStore = exports.MAX_INCLUDE_DEPTH = exports.DEFAULT_INCLUDE_LIMIT = exports.queryViewAcross = exports.createEphemeralSummaryView = exports.EphemeralSummaryView = exports.MindooQueryError = exports.executeQueryLive = exports.executeQuery = exports.filterExpressionToDocumentFilter = exports.collectSummaryFallbackReasons = exports.createViewDataProvider = exports.SelectedOnly = exports.WithDocuments = exports.WithCategories = exports.CategorizationStyle = exports.TotalMode = void 0;
23
23
  // Types
24
24
  __exportStar(require("./types"), exports);
25
25
  __exportStar(require("./databaseIdValidation"), exports);
26
+ __exportStar(require("./values"), exports);
26
27
  var builtinDbInvariants_1 = require("./builtinDbInvariants");
27
28
  Object.defineProperty(exports, "evaluateBuiltinWrite", { enumerable: true, get: function () { return builtinDbInvariants_1.evaluateBuiltinWrite; } });
28
29
  Object.defineProperty(exports, "hasBuiltinWriteInvariant", { enumerable: true, get: function () { return builtinDbInvariants_1.hasBuiltinWriteInvariant; } });
@@ -45,6 +46,29 @@ Object.defineProperty(exports, "peerDeviceDocumentId", { enumerable: true, get:
45
46
  Object.defineProperty(exports, "publishPeerDeviceRecord", { enumerable: true, get: function () { return PeerDeviceDocument_1.publishPeerDeviceRecord; } });
46
47
  Object.defineProperty(exports, "removePeerDeviceRecord", { enumerable: true, get: function () { return PeerDeviceDocument_1.removePeerDeviceRecord; } });
47
48
  Object.defineProperty(exports, "verifyPeerDeviceRecord", { enumerable: true, get: function () { return PeerDeviceDocument_1.verifyPeerDeviceRecord; } });
49
+ var QuarantineDocument_1 = require("./quarantine/QuarantineDocument");
50
+ Object.defineProperty(exports, "MAX_QUARANTINED_ENTRY_IDS", { enumerable: true, get: function () { return QuarantineDocument_1.MAX_QUARANTINED_ENTRY_IDS; } });
51
+ Object.defineProperty(exports, "QUARANTINE_DOC_ID_PREFIX", { enumerable: true, get: function () { return QuarantineDocument_1.QUARANTINE_DOC_ID_PREFIX; } });
52
+ Object.defineProperty(exports, "QUARANTINE_FORM", { enumerable: true, get: function () { return QuarantineDocument_1.QUARANTINE_FORM; } });
53
+ Object.defineProperty(exports, "QUARANTINE_SCHEMA_VERSION", { enumerable: true, get: function () { return QuarantineDocument_1.QUARANTINE_SCHEMA_VERSION; } });
54
+ Object.defineProperty(exports, "QUARANTINE_TYPE", { enumerable: true, get: function () { return QuarantineDocument_1.QUARANTINE_TYPE; } });
55
+ Object.defineProperty(exports, "QuarantineRecursionError", { enumerable: true, get: function () { return QuarantineDocument_1.QuarantineRecursionError; } });
56
+ Object.defineProperty(exports, "clearQuarantineRecord", { enumerable: true, get: function () { return QuarantineDocument_1.clearQuarantineRecord; } });
57
+ Object.defineProperty(exports, "isQuarantineDocId", { enumerable: true, get: function () { return QuarantineDocument_1.isQuarantineDocId; } });
58
+ Object.defineProperty(exports, "listQuarantineRecords", { enumerable: true, get: function () { return QuarantineDocument_1.listQuarantineRecords; } });
59
+ Object.defineProperty(exports, "quarantineDocumentId", { enumerable: true, get: function () { return QuarantineDocument_1.quarantineDocumentId; } });
60
+ Object.defineProperty(exports, "recordPushQuarantine", { enumerable: true, get: function () { return QuarantineDocument_1.recordPushQuarantine; } });
61
+ Object.defineProperty(exports, "verifyQuarantineRecord", { enumerable: true, get: function () { return QuarantineDocument_1.verifyQuarantineRecord; } });
62
+ var resubmitQuarantined_1 = require("./quarantine/resubmitQuarantined");
63
+ Object.defineProperty(exports, "DEFAULT_MAX_RESUBMIT_RECORDS", { enumerable: true, get: function () { return resubmitQuarantined_1.DEFAULT_MAX_RESUBMIT_RECORDS; } });
64
+ Object.defineProperty(exports, "resubmitQuarantinedEntries", { enumerable: true, get: function () { return resubmitQuarantined_1.resubmitQuarantinedEntries; } });
65
+ var recordPushRejections_1 = require("./quarantine/recordPushRejections");
66
+ Object.defineProperty(exports, "UNKNOWN_QUARANTINED_DOC_ID", { enumerable: true, get: function () { return recordPushRejections_1.UNKNOWN_QUARANTINED_DOC_ID; } });
67
+ Object.defineProperty(exports, "recordPushRejections", { enumerable: true, get: function () { return recordPushRejections_1.recordPushRejections; } });
68
+ var QuarantineView_1 = require("./quarantine/QuarantineView");
69
+ Object.defineProperty(exports, "inboundQuarantineView", { enumerable: true, get: function () { return QuarantineView_1.inboundQuarantineView; } });
70
+ Object.defineProperty(exports, "mergeQuarantineViews", { enumerable: true, get: function () { return QuarantineView_1.mergeQuarantineViews; } });
71
+ Object.defineProperty(exports, "outboundQuarantineView", { enumerable: true, get: function () { return QuarantineView_1.outboundQuarantineView; } });
48
72
  __exportStar(require("./tenantIdValidation"), exports);
49
73
  var tenantSetup_1 = require("./tenantSetup");
50
74
  Object.defineProperty(exports, "readTenantSetupLabel", { enumerable: true, get: function () { return tenantSetup_1.readTenantSetupLabel; } });
@@ -98,6 +122,9 @@ Object.defineProperty(exports, "grantForSigningKey", { enumerable: true, get: fu
98
122
  Object.defineProperty(exports, "signingKeysEqual", { enumerable: true, get: function () { return DirectoryStateNode_1.signingKeysEqual; } });
99
123
  var AccessDeniedError_1 = require("./accesscontrol/AccessDeniedError");
100
124
  Object.defineProperty(exports, "AccessDeniedError", { enumerable: true, get: function () { return AccessDeniedError_1.AccessDeniedError; } });
125
+ var fingerprint_1 = require("./userkeys/fingerprint");
126
+ Object.defineProperty(exports, "fingerprintPublicKeyPem", { enumerable: true, get: function () { return fingerprint_1.fingerprintPublicKeyPem; } });
127
+ Object.defineProperty(exports, "normalizePublicKeyPem", { enumerable: true, get: function () { return fingerprint_1.normalizePublicKeyPem; } });
101
128
  var userid_1 = require("./userid");
102
129
  Object.defineProperty(exports, "abbreviateCanonicalName", { enumerable: true, get: function () { return userid_1.abbreviateCanonicalName; } });
103
130
  Object.defineProperty(exports, "buildCanonicalName", { enumerable: true, get: function () { return userid_1.buildCanonicalName; } });
@@ -235,15 +262,22 @@ Object.defineProperty(exports, "createQuantizedTimeSource", { enumerable: true,
235
262
  // Content-addressed stores
236
263
  var types_2 = require("./appendonlystores/types");
237
264
  Object.defineProperty(exports, "StoreKind", { enumerable: true, get: function () { return types_2.StoreKind; } });
265
+ // Per-entry push rejection (sync-v5). A host that surfaces or re-submits refused
266
+ // entries needs the class and its predicates, not just the reason string.
267
+ var types_3 = require("./appendonlystores/types");
268
+ Object.defineProperty(exports, "PUT_REJECTION_CLASSES", { enumerable: true, get: function () { return types_3.PUT_REJECTION_CLASSES; } });
269
+ Object.defineProperty(exports, "isResubmittableRejection", { enumerable: true, get: function () { return types_3.isResubmittableRejection; } });
270
+ Object.defineProperty(exports, "isSelfResolvingRejection", { enumerable: true, get: function () { return types_3.isSelfResolvingRejection; } });
271
+ Object.defineProperty(exports, "rejectionClassOf", { enumerable: true, get: function () { return types_3.rejectionClassOf; } });
238
272
  var InMemoryContentAddressedStore_1 = require("./appendonlystores/InMemoryContentAddressedStore");
239
273
  Object.defineProperty(exports, "InMemoryContentAddressedStore", { enumerable: true, get: function () { return InMemoryContentAddressedStore_1.InMemoryContentAddressedStore; } });
240
274
  Object.defineProperty(exports, "InMemoryContentAddressedStoreFactory", { enumerable: true, get: function () { return InMemoryContentAddressedStore_1.InMemoryContentAddressedStoreFactory; } });
241
275
  // Network
242
276
  var AuthenticationService_1 = require("./appendonlystores/network/AuthenticationService");
243
277
  Object.defineProperty(exports, "AuthenticationService", { enumerable: true, get: function () { return AuthenticationService_1.AuthenticationService; } });
244
- var types_3 = require("./appendonlystores/network/types");
245
- Object.defineProperty(exports, "NetworkErrorType", { enumerable: true, get: function () { return types_3.NetworkErrorType; } });
246
- Object.defineProperty(exports, "NetworkError", { enumerable: true, get: function () { return types_3.NetworkError; } });
278
+ var types_4 = require("./appendonlystores/network/types");
279
+ Object.defineProperty(exports, "NetworkErrorType", { enumerable: true, get: function () { return types_4.NetworkErrorType; } });
280
+ Object.defineProperty(exports, "NetworkError", { enumerable: true, get: function () { return types_4.NetworkError; } });
247
281
  var ClientNetworkContentAddressedStore_1 = require("../appendonlystores/network/ClientNetworkContentAddressedStore");
248
282
  Object.defineProperty(exports, "ClientNetworkContentAddressedStore", { enumerable: true, get: function () { return ClientNetworkContentAddressedStore_1.ClientNetworkContentAddressedStore; } });
249
283
  var ServerNetworkContentAddressedStore_1 = require("../appendonlystores/network/ServerNetworkContentAddressedStore");
@@ -316,7 +350,7 @@ Object.defineProperty(exports, "FULLTEXT_INDEX_FORMAT_VERSION", { enumerable: tr
316
350
  Object.defineProperty(exports, "DEFAULT_FULLTEXT_MAX_FIELD_BYTES", { enumerable: true, get: function () { return fulltext_1.DEFAULT_FULLTEXT_MAX_FIELD_BYTES; } });
317
351
  // Attachment text extraction setup (host-side services like Haven's OCR;
318
352
  // results are persisted at the attachment entry, see docs/fulltext-search.md)
319
- var types_4 = require("./extraction/types");
320
- Object.defineProperty(exports, "EXTRACTION_SETUP_FIELD", { enumerable: true, get: function () { return types_4.EXTRACTION_SETUP_FIELD; } });
321
- Object.defineProperty(exports, "sanitizeExtractionConfig", { enumerable: true, get: function () { return types_4.sanitizeExtractionConfig; } });
353
+ var types_5 = require("./extraction/types");
354
+ Object.defineProperty(exports, "EXTRACTION_SETUP_FIELD", { enumerable: true, get: function () { return types_5.EXTRACTION_SETUP_FIELD; } });
355
+ Object.defineProperty(exports, "sanitizeExtractionConfig", { enumerable: true, get: function () { return types_5.sanitizeExtractionConfig; } });
322
356
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"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"}
@@ -34,12 +34,23 @@ export declare class DocumentSummaryStore implements ICacheable {
34
34
  private readonly bucketCount;
35
35
  private dirtyBuckets;
36
36
  private metaDirty;
37
+ /** Timestamp of the last completed (non-deferred) flush. */
38
+ private lastFlushAt;
39
+ /**
40
+ * Set by `flushToCache` once it has taken over the dirty state (or
41
+ * deliberately deferred it), so the CacheManager's follow-up `clearDirty`
42
+ * does not wipe state that became dirty while the flush was awaiting I/O.
43
+ */
44
+ private flushHandledDirty;
45
+ private readonly minFlushIntervalDuringUpdateMs;
37
46
  private restorePromise;
38
47
  private restored;
39
48
  private needsBackfill;
40
49
  private backfillCursor;
41
50
  private updatePromise;
42
- constructor(db: MindooDB, config?: SummaryConfig);
51
+ constructor(db: MindooDB, config?: SummaryConfig, options?: {
52
+ minFlushIntervalDuringUpdateMs?: number;
53
+ });
43
54
  getConfig(): ResolvedSummaryConfig;
44
55
  getConfigFingerprint(): string;
45
56
  /**
@@ -97,9 +108,15 @@ export declare class DocumentSummaryStore implements ICacheable {
97
108
  *
98
109
  * Accepts the same batching/progress/cancellation options as VirtualView
99
110
  * updates; an interrupted run resumes from the saved cursors.
100
- * Calls are single-flight: concurrent callers share one run.
111
+ * Calls are single-flight: concurrent callers share one run. A caller that
112
+ * finds a run in flight waits for it and then starts a follow-up run when
113
+ * the changefeed moved on meanwhile (the in-flight run iterates a snapshot
114
+ * taken when it started, e.g. before the latest sync page was ingested), so
115
+ * the promise never resolves on a state older than the call.
101
116
  */
102
117
  update(options?: VirtualViewUpdateOptions): Promise<void>;
118
+ /** Whether the last run consumed the whole changefeed and no backfill is pending. */
119
+ private isCaughtUp;
103
120
  private runUpdate;
104
121
  private applyDocument;
105
122
  /**
@@ -121,9 +138,15 @@ export declare class DocumentSummaryStore implements ICacheable {
121
138
  getCachePrefix(): string;
122
139
  hasDirtyState(): boolean;
123
140
  clearDirty(): void;
141
+ /**
142
+ * Unconditionally drop all dirty markers (unlike {@link clearDirty}, which
143
+ * after a flush only acknowledges that flush). Used when the persisted
144
+ * records are about to be deleted and must not be rewritten.
145
+ */
146
+ discardDirtyState(): void;
124
147
  private bucketIndexFor;
125
148
  private markBucketDirty;
126
- flushToCache(store: LocalCacheStore, _options?: {
149
+ flushToCache(store: LocalCacheStore, options?: {
127
150
  force?: boolean;
128
151
  }): Promise<number>;
129
152
  private ensureRestored;
@@ -1 +1 @@
1
- {"version":3,"file":"DocumentSummaryStore.d.ts","sourceRoot":"","sources":["../../../../src/core/indexing/summary/DocumentSummaryStore.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACzE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AACzF,OAAO,KAAK,EACV,oBAAoB,EACpB,qBAAqB,EAErB,aAAa,EACb,eAAe,EAEhB,MAAM,SAAS,CAAC;AAqBjB;;;;;;;;;;;GAWG;AACH,qBAAa,oBAAqB,YAAW,UAAU;IACrD,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAW;IAC9B,OAAO,CAAC,MAAM,CAAwB;IACtC,OAAO,CAAC,iBAAiB,CAAS;IAClC;;;;OAIG;IACH,OAAO,CAAC,iBAAiB,CAAU;IACnC,4EAA4E;IAC5E,OAAO,CAAC,cAAc,CAAkB;IAExC,OAAO,CAAC,OAAO,CAAgD;IAC/D,OAAO,CAAC,MAAM,CAAqC;IAGnD,OAAO,CAAC,YAAY,CAA6B;IACjD,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAgC;IAC5D,OAAO,CAAC,YAAY,CAA0B;IAC9C,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,cAAc,CAA8B;IACpD,OAAO,CAAC,QAAQ,CAAkB;IAGlC,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,cAAc,CAAqC;IAG3D,OAAO,CAAC,aAAa,CAA8B;gBAEvC,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,aAAa;IAWhD,SAAS,IAAI,qBAAqB;IAIlC,oBAAoB,IAAI,MAAM;IAI9B;;;;;;;;OAQG;IACH,SAAS,CAAC,MAAM,CAAC,EAAE,aAAa,GAAG,IAAI;IAKvC,sEAAsE;IACtE,OAAO,CAAC,WAAW;IAenB,OAAO,CAAC,gBAAgB;IAKxB;;;;;;;;;;OAUG;YACW,sBAAsB;IAiBpC;;;;;;OAMG;IACG,kBAAkB,IAAI,OAAO,CAAC,qBAAqB,CAAC;IAK1D;;;;OAIG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIrC;;;OAGG;IACH,WAAW,IAAI,eAAe;IAQ9B,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,oBAAoB,GAAG,SAAS;IAIzD,aAAa,IAAI,gBAAgB,CAAC,oBAAoB,CAAC;IAIvD,OAAO,IAAI,MAAM;IAIjB,SAAS,IAAI,oBAAoB,GAAG,IAAI;IAQxC;;;;;;;;OAQG;IACG,MAAM,CAAC,OAAO,CAAC,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC;YAUjD,SAAS;IA2EvB,OAAO,CAAC,aAAa;IAuCrB;;;;;OAKG;IACH,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAOnC,kFAAkF;IAClF,KAAK,IAAI,IAAI;IAgBb;;;;;OAKG;IACH,WAAW,CAAC,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;IAMlE,cAAc,IAAI,MAAM;IAIxB,aAAa,IAAI,OAAO;IAIxB,UAAU,IAAI,IAAI;IAKlB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,eAAe;IAKjB,YAAY,CAAC,KAAK,EAAE,eAAe,EAAE,QAAQ,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;YA4C7E,cAAc;IAa5B;;;;OAIG;YACW,gBAAgB;CAwD/B"}
1
+ {"version":3,"file":"DocumentSummaryStore.d.ts","sourceRoot":"","sources":["../../../../src/core/indexing/summary/DocumentSummaryStore.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,14 @@ exports.DocumentSummaryStore = void 0;
4
4
  const types_1 = require("./types");
5
5
  const extractSummaryFields_1 = require("./extractSummaryFields");
6
6
  const DEFAULT_BUCKET_COUNT = 64;
7
+ /**
8
+ * Minimum time between periodic flushes while an update run is in progress.
9
+ * A catch-up (initial replication, chunked sync ingest) dirties nearly every
10
+ * bucket in every batch, so each flush would re-serialize the whole buffer;
11
+ * the default CacheManager interval (5 s) would make that quadratic over a
12
+ * long catch-up. Idle flushes and forced (shutdown) flushes are not deferred.
13
+ */
14
+ const DEFAULT_MIN_FLUSH_INTERVAL_DURING_UPDATE_MS = 30000;
7
15
  /** Simple deterministic string hash (djb2) used for bucket assignment. */
8
16
  function hashDocId(docId) {
9
17
  let hash = 5381;
@@ -25,7 +33,7 @@ function hashDocId(docId) {
25
33
  * document rewrite.
26
34
  */
27
35
  class DocumentSummaryStore {
28
- constructor(db, config) {
36
+ constructor(db, config, options) {
29
37
  /** Whether the setup document was already consulted (once per instance). */
30
38
  this.setupDocSeeded = false;
31
39
  this.entries = new Map();
@@ -36,6 +44,14 @@ class DocumentSummaryStore {
36
44
  this.bucketCount = DEFAULT_BUCKET_COUNT;
37
45
  this.dirtyBuckets = new Set();
38
46
  this.metaDirty = false;
47
+ /** Timestamp of the last completed (non-deferred) flush. */
48
+ this.lastFlushAt = 0;
49
+ /**
50
+ * Set by `flushToCache` once it has taken over the dirty state (or
51
+ * deliberately deferred it), so the CacheManager's follow-up `clearDirty`
52
+ * does not wipe state that became dirty while the flush was awaiting I/O.
53
+ */
54
+ this.flushHandledDirty = false;
39
55
  this.restorePromise = null;
40
56
  this.restored = false;
41
57
  // --- backfill state (config changed while entries already exist) ---
@@ -44,6 +60,7 @@ class DocumentSummaryStore {
44
60
  // --- single-flight update ---
45
61
  this.updatePromise = null;
46
62
  this.db = db;
63
+ this.minFlushIntervalDuringUpdateMs = Math.max(0, options?.minFlushIntervalDuringUpdateMs ?? DEFAULT_MIN_FLUSH_INTERVAL_DURING_UPDATE_MS);
47
64
  this.hasExplicitConfig = config !== undefined;
48
65
  this.config = (0, types_1.resolveSummaryConfig)(config);
49
66
  this.configFingerprint = (0, types_1.computeSummaryConfigFingerprint)(this.config);
@@ -168,17 +185,39 @@ class DocumentSummaryStore {
168
185
  *
169
186
  * Accepts the same batching/progress/cancellation options as VirtualView
170
187
  * updates; an interrupted run resumes from the saved cursors.
171
- * Calls are single-flight: concurrent callers share one run.
188
+ * Calls are single-flight: concurrent callers share one run. A caller that
189
+ * finds a run in flight waits for it and then starts a follow-up run when
190
+ * the changefeed moved on meanwhile (the in-flight run iterates a snapshot
191
+ * taken when it started, e.g. before the latest sync page was ingested), so
192
+ * the promise never resolves on a state older than the call.
172
193
  */
173
194
  async update(options) {
174
195
  if (this.updatePromise) {
175
- return this.updatePromise;
196
+ while (this.updatePromise) {
197
+ try {
198
+ await this.updatePromise;
199
+ }
200
+ catch {
201
+ // The follow-up run below reports its own errors.
202
+ }
203
+ }
204
+ if (this.isCaughtUp()) {
205
+ return;
206
+ }
176
207
  }
177
208
  this.updatePromise = this.runUpdate(options).finally(() => {
178
209
  this.updatePromise = null;
179
210
  });
180
211
  return this.updatePromise;
181
212
  }
213
+ /** Whether the last run consumed the whole changefeed and no backfill is pending. */
214
+ isCaughtUp() {
215
+ if (!this.restored || this.needsBackfill) {
216
+ return false;
217
+ }
218
+ const remaining = this.db.countChangesSince?.(this.cursor);
219
+ return remaining !== undefined && remaining === 0;
220
+ }
182
221
  async runUpdate(options) {
183
222
  await this.seedConfigFromSetupDoc();
184
223
  await this.ensureRestored();
@@ -317,8 +356,23 @@ class DocumentSummaryStore {
317
356
  return this.dirtyBuckets.size > 0 || this.metaDirty;
318
357
  }
319
358
  clearDirty() {
359
+ if (this.flushHandledDirty) {
360
+ // Follow-up of a flush that already took (or deferred) its snapshot:
361
+ // anything dirty now changed during the flush and must stay dirty.
362
+ this.flushHandledDirty = false;
363
+ return;
364
+ }
365
+ this.discardDirtyState();
366
+ }
367
+ /**
368
+ * Unconditionally drop all dirty markers (unlike {@link clearDirty}, which
369
+ * after a flush only acknowledges that flush). Used when the persisted
370
+ * records are about to be deleted and must not be rewritten.
371
+ */
372
+ discardDirtyState() {
320
373
  this.dirtyBuckets.clear();
321
374
  this.metaDirty = false;
375
+ this.flushHandledDirty = false;
322
376
  }
323
377
  bucketIndexFor(docId) {
324
378
  return hashDocId(docId) % this.bucketCount;
@@ -327,15 +381,32 @@ class DocumentSummaryStore {
327
381
  this.dirtyBuckets.add(this.bucketIndexFor(docId));
328
382
  this.metaDirty = true;
329
383
  }
330
- async flushToCache(store, _options) {
384
+ async flushToCache(store, options) {
385
+ if (!options?.force &&
386
+ this.updatePromise !== null &&
387
+ Date.now() - this.lastFlushAt < this.minFlushIntervalDuringUpdateMs) {
388
+ // Mid catch-up: defer, keep the dirty state, and re-arm the cache
389
+ // manager so the state lands on a later cycle (or right after the run,
390
+ // which marks dirty when it finishes).
391
+ this.flushHandledDirty = true;
392
+ this.cacheManager?.markDirty();
393
+ return 0;
394
+ }
395
+ // Snapshot everything synchronously before the first await: bucket
396
+ // payloads and the meta cursor must describe the same state, and entries
397
+ // an update run changes while the writes are in flight must stay dirty
398
+ // for the next flush instead of being cleared with this one.
331
399
  const prefix = this.getCachePrefix();
332
- let written = 0;
333
- if (this.dirtyBuckets.size > 0) {
400
+ const bucketsToWrite = this.dirtyBuckets;
401
+ this.dirtyBuckets = new Set();
402
+ this.metaDirty = false;
403
+ this.flushHandledDirty = true;
404
+ const byBucket = new Map();
405
+ if (bucketsToWrite.size > 0) {
334
406
  // Group entries by bucket once, then rewrite only dirty buckets.
335
- const byBucket = new Map();
336
407
  for (const entry of this.entries.values()) {
337
408
  const bucket = this.bucketIndexFor(entry.docId);
338
- if (!this.dirtyBuckets.has(bucket)) {
409
+ if (!bucketsToWrite.has(bucket)) {
339
410
  continue;
340
411
  }
341
412
  let list = byBucket.get(bucket);
@@ -345,11 +416,6 @@ class DocumentSummaryStore {
345
416
  }
346
417
  list.push(entry);
347
418
  }
348
- for (const bucket of this.dirtyBuckets) {
349
- const payload = { entries: byBucket.get(bucket) ?? [] };
350
- await store.put("summary", `${prefix}/bucket/${bucket}`, new TextEncoder().encode(JSON.stringify(payload)));
351
- written++;
352
- }
353
419
  }
354
420
  const meta = {
355
421
  cursor: this.cursor,
@@ -358,8 +424,27 @@ class DocumentSummaryStore {
358
424
  needsBackfill: this.needsBackfill,
359
425
  backfillCursor: this.backfillCursor,
360
426
  };
361
- await store.put("summary", `${prefix}/meta`, new TextEncoder().encode(JSON.stringify(meta)));
362
- written++;
427
+ let written = 0;
428
+ try {
429
+ for (const bucket of bucketsToWrite) {
430
+ const payload = { entries: byBucket.get(bucket) ?? [] };
431
+ await store.put("summary", `${prefix}/bucket/${bucket}`, new TextEncoder().encode(JSON.stringify(payload)));
432
+ written++;
433
+ }
434
+ await store.put("summary", `${prefix}/meta`, new TextEncoder().encode(JSON.stringify(meta)));
435
+ written++;
436
+ }
437
+ catch (error) {
438
+ // Nothing is lost: re-dirty the snapshot for the next attempt. The
439
+ // CacheManager skips clearDirty on errors, so reset the handoff flag.
440
+ for (const bucket of bucketsToWrite) {
441
+ this.dirtyBuckets.add(bucket);
442
+ }
443
+ this.metaDirty = true;
444
+ this.flushHandledDirty = false;
445
+ throw error;
446
+ }
447
+ this.lastFlushAt = Date.now();
363
448
  return written;
364
449
  }
365
450
  async ensureRestored() {
@@ -1 +1 @@
1
- {"version":3,"file":"DocumentSummaryStore.js","sourceRoot":"","sources":["../../../../src/core/indexing/summary/DocumentSummaryStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DocumentSummaryStore.js","sourceRoot":"","sources":["../../../../src/core/indexing/summary/DocumentSummaryStore.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,14 @@ import type { ResolvedSummaryConfig } from "./types";
5
5
  * semantics of the expression language's `getFieldValue`.
6
6
  */
7
7
  export declare function resolveFieldPath(data: Record<string, unknown>, path: string): unknown;
8
+ /**
9
+ * Timestamps (`Date`, written with `MindooValue.timestamp()`) are stored in
10
+ * the summary as ISO 8601 strings: JSON-safe for persistence, ordered like the
11
+ * dates they encode, and accepted by the expression language's date
12
+ * functions. `getFieldValue()` returns the same representation on the
13
+ * full-document path, so both paths compare alike. Invalid dates become null.
14
+ */
15
+ export declare function toSummaryValue(value: unknown): unknown;
8
16
  /**
9
17
  * Approximate serialized size of a value (JSON string length). Good enough
10
18
  * as a guard against pathologically large summary values; not an exact
@@ -56,7 +64,8 @@ export interface SummaryRecipientInfo {
56
64
  *
57
65
  * 1. auto-include (when enabled): every non-underscore top-level field with
58
66
  * a scalar (or scalar-array) value whose serialized size stays within
59
- * `maxValueBytes`
67
+ * `maxValueBytes`; timestamps count as scalars and are stored as ISO
68
+ * 8601 strings
60
69
  * 2. explicit `include` paths: any value type, no size cap, keyed by the
61
70
  * full dot-path
62
71
  * 3. `exclude` wins over both (and covers nested paths)
@@ -1 +1 @@
1
- {"version":3,"file":"extractSummaryFields.d.ts","sourceRoot":"","sources":["../../../../src/core/indexing/summary/extractSummaryFields.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAErD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAYrF;AAsBD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAaxD;AAsBD,uEAAuE;AACvE,eAAO,MAAM,iBAAiB,iBAAiB,CAAC;AAEhD;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAqB;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sEAAsE;IACtE,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AA4BD;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA+BD;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,EAAE,qBAAqB,GAC5B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAwDzB;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,IAAI,EAAE,MAAM,GACX,OAAO,CAKT;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,YAAY,CAAC,EAAE,MAAM,GACpB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAuCzB;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,qBAAqB,GAAG,OAAO,CA8BvF"}
1
+ {"version":3,"file":"extractSummaryFields.d.ts","sourceRoot":"","sources":["../../../../src/core/indexing/summary/extractSummaryFields.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAErD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAYrF;AAWD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAkBtD;AAaD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAaxD;AAsBD,uEAAuE;AACvE,eAAO,MAAM,iBAAiB,iBAAiB,CAAC;AAEhD;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAqB;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sEAAsE;IACtE,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AA4BD;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA+BD;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,EAAE,qBAAqB,GAC5B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAyDzB;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,IAAI,EAAE,MAAM,GACX,OAAO,CAKT;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,YAAY,CAAC,EAAE,MAAM,GACpB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAuCzB;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,qBAAqB,GAAG,OAAO,CA8BvF"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ATTACHMENTS_FIELD = void 0;
4
4
  exports.resolveFieldPath = resolveFieldPath;
5
+ exports.toSummaryValue = toSummaryValue;
5
6
  exports.estimateValueSize = estimateValueSize;
6
7
  exports.extractSummaryFields = extractSummaryFields;
7
8
  exports.getSummaryFieldValue = getSummaryFieldValue;
@@ -32,13 +33,37 @@ function isScalar(value) {
32
33
  typeof value === "number" ||
33
34
  typeof value === "boolean");
34
35
  }
35
- /** Scalars and flat arrays of scalars qualify for auto-include. */
36
+ /**
37
+ * Timestamps (`Date`, written with `MindooValue.timestamp()`) are stored in
38
+ * the summary as ISO 8601 strings: JSON-safe for persistence, ordered like the
39
+ * dates they encode, and accepted by the expression language's date
40
+ * functions. `getFieldValue()` returns the same representation on the
41
+ * full-document path, so both paths compare alike. Invalid dates become null.
42
+ */
43
+ function toSummaryValue(value) {
44
+ if (value instanceof Date) {
45
+ return Number.isNaN(value.getTime()) ? null : value.toISOString();
46
+ }
47
+ if (Array.isArray(value)) {
48
+ return value.some((item) => item instanceof Date || (item !== null && typeof item === "object"))
49
+ ? value.map((item) => toSummaryValue(item))
50
+ : value;
51
+ }
52
+ if (value !== null && typeof value === "object" && !(value instanceof Uint8Array)) {
53
+ return Object.fromEntries(Object.entries(value).map(([key, entry]) => [
54
+ key,
55
+ toSummaryValue(entry),
56
+ ]));
57
+ }
58
+ return value;
59
+ }
60
+ /** Scalars (timestamps included) and flat arrays of them qualify for auto-include. */
36
61
  function isAutoIncludableValue(value) {
37
- if (isScalar(value)) {
62
+ if (isScalar(value) || value instanceof Date) {
38
63
  return true;
39
64
  }
40
65
  if (Array.isArray(value)) {
41
- return value.every((item) => isScalar(item));
66
+ return value.every((item) => isScalar(item) || item instanceof Date);
42
67
  }
43
68
  return false;
44
69
  }
@@ -144,7 +169,8 @@ function projectRecipients(value) {
144
169
  *
145
170
  * 1. auto-include (when enabled): every non-underscore top-level field with
146
171
  * a scalar (or scalar-array) value whose serialized size stays within
147
- * `maxValueBytes`
172
+ * `maxValueBytes`; timestamps count as scalars and are stored as ISO
173
+ * 8601 strings
148
174
  * 2. explicit `include` paths: any value type, no size cap, keyed by the
149
175
  * full dot-path
150
176
  * 3. `exclude` wins over both (and covers nested paths)
@@ -165,10 +191,11 @@ function extractSummaryFields(data, config) {
165
191
  if (!isAutoIncludableValue(value)) {
166
192
  continue;
167
193
  }
168
- if (estimateValueSize(value) > config.maxValueBytes) {
194
+ const summaryValue = toSummaryValue(value);
195
+ if (estimateValueSize(summaryValue) > config.maxValueBytes) {
169
196
  continue;
170
197
  }
171
- fields[key] = value;
198
+ fields[key] = summaryValue;
172
199
  }
173
200
  }
174
201
  for (const path of config.include) {
@@ -177,7 +204,7 @@ function extractSummaryFields(data, config) {
177
204
  }
178
205
  const value = resolveFieldPath(data, path);
179
206
  if (value !== undefined) {
180
- fields[path] = value;
207
+ fields[path] = toSummaryValue(value);
181
208
  }
182
209
  }
183
210
  // Managed attachment metadata: stored as a slim projection so attachment