@harperfast/harper 5.3.0-beta.3 → 5.3.0-beta.4

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 (311) hide show
  1. package/bin/cliOperations.ts +25 -3
  2. package/bin/run.ts +18 -0
  3. package/components/Application.ts +52 -78
  4. package/components/DESIGN.md +76 -3
  5. package/components/Scope.ts +10 -4
  6. package/components/anthropic/index.ts +10 -1
  7. package/components/bedrock/index.ts +10 -1
  8. package/components/componentLoader.ts +23 -14
  9. package/components/mcp/tools/operations.ts +3 -1
  10. package/components/ollama/index.ts +10 -1
  11. package/components/openai/index.ts +265 -18
  12. package/components/operations.js +40 -1
  13. package/config/configUtils.ts +3 -19
  14. package/dataLayer/DESIGN.md +29 -5
  15. package/dataLayer/harperBridge/ResourceBridge.ts +39 -3
  16. package/dataLayer/restoreMarker.ts +250 -14
  17. package/dataLayer/schema.ts +2 -7
  18. package/dataLayer/schemaDescribe.ts +10 -0
  19. package/dist/bin/cliOperations.js +28 -3
  20. package/dist/bin/cliOperations.js.map +1 -1
  21. package/dist/bin/run.js +19 -0
  22. package/dist/bin/run.js.map +1 -1
  23. package/dist/components/Application.d.ts +8 -2
  24. package/dist/components/Application.js +43 -69
  25. package/dist/components/Application.js.map +1 -1
  26. package/dist/components/Scope.d.ts +1 -1
  27. package/dist/components/Scope.js +9 -4
  28. package/dist/components/Scope.js.map +1 -1
  29. package/dist/components/anthropic/index.d.ts +0 -10
  30. package/dist/components/anthropic/index.js +9 -1
  31. package/dist/components/anthropic/index.js.map +1 -1
  32. package/dist/components/bedrock/index.d.ts +0 -12
  33. package/dist/components/bedrock/index.js +9 -1
  34. package/dist/components/bedrock/index.js.map +1 -1
  35. package/dist/components/componentLoader.js +23 -14
  36. package/dist/components/componentLoader.js.map +1 -1
  37. package/dist/components/mcp/tools/operations.js +1 -1
  38. package/dist/components/mcp/tools/operations.js.map +1 -1
  39. package/dist/components/ollama/index.d.ts +0 -13
  40. package/dist/components/ollama/index.js +9 -1
  41. package/dist/components/ollama/index.js.map +1 -1
  42. package/dist/components/openai/index.d.ts +11 -15
  43. package/dist/components/openai/index.js +224 -12
  44. package/dist/components/openai/index.js.map +1 -1
  45. package/dist/components/operations.d.ts +9 -0
  46. package/dist/components/operations.js +32 -2
  47. package/dist/components/operations.js.map +1 -1
  48. package/dist/config/configUtils.d.ts +1 -2
  49. package/dist/config/configUtils.js +7 -22
  50. package/dist/config/configUtils.js.map +1 -1
  51. package/dist/dataLayer/harperBridge/ResourceBridge.js +29 -2
  52. package/dist/dataLayer/harperBridge/ResourceBridge.js.map +1 -1
  53. package/dist/dataLayer/restoreMarker.d.ts +25 -3
  54. package/dist/dataLayer/restoreMarker.js +213 -13
  55. package/dist/dataLayer/restoreMarker.js.map +1 -1
  56. package/dist/dataLayer/schema.js +1 -4
  57. package/dist/dataLayer/schema.js.map +1 -1
  58. package/dist/dataLayer/schemaDescribe.js +10 -0
  59. package/dist/dataLayer/schemaDescribe.js.map +1 -1
  60. package/dist/index.d.ts +1 -1
  61. package/dist/index.js.map +1 -1
  62. package/dist/json/systemSchema.json +28 -0
  63. package/dist/resources/DatabaseTransaction.d.ts +21 -1
  64. package/dist/resources/DatabaseTransaction.js +147 -8
  65. package/dist/resources/DatabaseTransaction.js.map +1 -1
  66. package/dist/resources/PrimaryRocksDatabase.js +1 -1
  67. package/dist/resources/PrimaryRocksDatabase.js.map +1 -1
  68. package/dist/resources/Table.d.ts +31 -3
  69. package/dist/resources/Table.js +397 -79
  70. package/dist/resources/Table.js.map +1 -1
  71. package/dist/resources/auditStore.js +16 -10
  72. package/dist/resources/auditStore.js.map +1 -1
  73. package/dist/resources/blob.d.ts +1 -0
  74. package/dist/resources/blob.js +14 -5
  75. package/dist/resources/blob.js.map +1 -1
  76. package/dist/resources/branchDatabase.js +3 -3
  77. package/dist/resources/branchDatabase.js.map +1 -1
  78. package/dist/resources/databaseDropPreparation.d.ts +20 -0
  79. package/dist/resources/databaseDropPreparation.js +106 -0
  80. package/dist/resources/databaseDropPreparation.js.map +1 -0
  81. package/dist/resources/databases.d.ts +26 -21
  82. package/dist/resources/databases.js +1040 -204
  83. package/dist/resources/databases.js.map +1 -1
  84. package/dist/resources/derivedIndexRegistry.d.ts +23 -0
  85. package/dist/resources/derivedIndexRegistry.js +92 -0
  86. package/dist/resources/derivedIndexRegistry.js.map +1 -1
  87. package/dist/resources/derivedIndexRuntime.d.ts +10 -0
  88. package/dist/resources/derivedIndexRuntime.js +136 -25
  89. package/dist/resources/derivedIndexRuntime.js.map +1 -1
  90. package/dist/resources/derivedIndexes.d.ts +39 -0
  91. package/dist/resources/derivedIndexes.js +733 -0
  92. package/dist/resources/derivedIndexes.js.map +1 -0
  93. package/dist/resources/fullTextSchema.d.ts +8 -0
  94. package/dist/resources/fullTextSchema.js +42 -0
  95. package/dist/resources/fullTextSchema.js.map +1 -1
  96. package/dist/resources/fullTextSchemaLifecycle.d.ts +0 -5
  97. package/dist/resources/fullTextSchemaLifecycle.js +0 -9
  98. package/dist/resources/fullTextSchemaLifecycle.js.map +1 -1
  99. package/dist/resources/graphql.js +101 -9
  100. package/dist/resources/graphql.js.map +1 -1
  101. package/dist/resources/indexes/hnswDerivedIndex.d.ts +0 -10
  102. package/dist/resources/indexes/hnswDerivedIndex.js +0 -230
  103. package/dist/resources/indexes/hnswDerivedIndex.js.map +1 -1
  104. package/dist/resources/indexes/nativeFullTextDerivedIndexLifecycle.d.ts +3 -0
  105. package/dist/resources/indexes/nativeFullTextDerivedIndexLifecycle.js +57 -8
  106. package/dist/resources/indexes/nativeFullTextDerivedIndexLifecycle.js.map +1 -1
  107. package/dist/resources/models/Models.d.ts +26 -3
  108. package/dist/resources/models/Models.js +256 -13
  109. package/dist/resources/models/Models.js.map +1 -1
  110. package/dist/resources/models/TestBackend.d.ts +3 -1
  111. package/dist/resources/models/TestBackend.js +35 -1
  112. package/dist/resources/models/TestBackend.js.map +1 -1
  113. package/dist/resources/models/analyticsTable.d.ts +2 -2
  114. package/dist/resources/models/analyticsTable.js +4 -2
  115. package/dist/resources/models/analyticsTable.js.map +1 -1
  116. package/dist/resources/models/backendHelpers.d.ts +24 -0
  117. package/dist/resources/models/backendHelpers.js +18 -1
  118. package/dist/resources/models/backendHelpers.js.map +1 -1
  119. package/dist/resources/models/backendRegistry.d.ts +10 -21
  120. package/dist/resources/models/backendRegistry.js +74 -18
  121. package/dist/resources/models/backendRegistry.js.map +1 -1
  122. package/dist/resources/models/bootstrap.d.ts +7 -0
  123. package/dist/resources/models/bootstrap.js +36 -4
  124. package/dist/resources/models/bootstrap.js.map +1 -1
  125. package/dist/resources/models/decideHook.d.ts +33 -0
  126. package/dist/resources/models/decideHook.js +105 -0
  127. package/dist/resources/models/decideHook.js.map +1 -0
  128. package/dist/resources/models/decision.d.ts +64 -0
  129. package/dist/resources/models/decision.js +507 -0
  130. package/dist/resources/models/decision.js.map +1 -0
  131. package/dist/resources/models/decisionStore.d.ts +134 -0
  132. package/dist/resources/models/decisionStore.js +350 -0
  133. package/dist/resources/models/decisionStore.js.map +1 -0
  134. package/dist/resources/models/embedHook.d.ts +66 -8
  135. package/dist/resources/models/embedHook.js +228 -61
  136. package/dist/resources/models/embedHook.js.map +1 -1
  137. package/dist/resources/models/generativeDecision.d.ts +58 -0
  138. package/dist/resources/models/generativeDecision.js +315 -0
  139. package/dist/resources/models/generativeDecision.js.map +1 -0
  140. package/dist/resources/models/types.d.ts +232 -4
  141. package/dist/security/authn/oidc/tokenExchange.js +3 -33
  142. package/dist/security/authn/oidc/tokenExchange.js.map +1 -1
  143. package/dist/security/authn/oidc/tokenUseTable.d.ts +9 -0
  144. package/dist/security/authn/oidc/tokenUseTable.js +28 -0
  145. package/dist/security/authn/oidc/tokenUseTable.js.map +1 -0
  146. package/dist/security/certificateVerification/certificateVerificationSource.d.ts +0 -1
  147. package/dist/security/certificateVerification/certificateVerificationSource.js +3 -3
  148. package/dist/security/certificateVerification/certificateVerificationSource.js.map +1 -1
  149. package/dist/security/certificateVerification/crlVerification.js +77 -165
  150. package/dist/security/certificateVerification/crlVerification.js.map +1 -1
  151. package/dist/security/certificateVerification/types.d.ts +0 -3
  152. package/dist/security/certificateVerification/verificationTables.d.ts +19 -0
  153. package/dist/security/certificateVerification/verificationTables.js +125 -0
  154. package/dist/security/certificateVerification/verificationTables.js.map +1 -0
  155. package/dist/security/certificateVerification/verificationUtils.d.ts +1 -1
  156. package/dist/security/certificateVerification/verificationUtils.js +6 -31
  157. package/dist/security/certificateVerification/verificationUtils.js.map +1 -1
  158. package/dist/security/jsLoader.d.ts +5 -0
  159. package/dist/security/jsLoader.js +8 -0
  160. package/dist/security/jsLoader.js.map +1 -1
  161. package/dist/server/Server.d.ts +1 -0
  162. package/dist/server/Server.js.map +1 -1
  163. package/dist/server/http.js +2 -2
  164. package/dist/server/http.js.map +1 -1
  165. package/dist/server/itc/serverHandlers.js +21 -2
  166. package/dist/server/itc/serverHandlers.js.map +1 -1
  167. package/dist/server/jobs/jobOwnership.d.ts +25 -0
  168. package/dist/server/jobs/jobOwnership.js +127 -0
  169. package/dist/server/jobs/jobOwnership.js.map +1 -0
  170. package/dist/server/jobs/jobProcess.js +9 -2
  171. package/dist/server/jobs/jobProcess.js.map +1 -1
  172. package/dist/server/jobs/jobs.js +18 -5
  173. package/dist/server/jobs/jobs.js.map +1 -1
  174. package/dist/server/loadRootComponents.js +10 -0
  175. package/dist/server/loadRootComponents.js.map +1 -1
  176. package/dist/server/serverHelpers/contentTypes.js +11 -1
  177. package/dist/server/serverHelpers/contentTypes.js.map +1 -1
  178. package/dist/server/serverHelpers/serverHandlers.js +12 -2
  179. package/dist/server/serverHelpers/serverHandlers.js.map +1 -1
  180. package/dist/server/threads/itc.d.ts +4 -1
  181. package/dist/server/threads/itc.js +29 -6
  182. package/dist/server/threads/itc.js.map +1 -1
  183. package/dist/server/threads/manageThreads.d.ts +12 -4
  184. package/dist/server/threads/manageThreads.js +241 -119
  185. package/dist/server/threads/manageThreads.js.map +1 -1
  186. package/dist/server/threads/threadServer.d.ts +1 -0
  187. package/dist/server/threads/threadServer.js +15 -1
  188. package/dist/server/threads/threadServer.js.map +1 -1
  189. package/dist/server/threads/windowsProcessTree.d.ts +91 -0
  190. package/dist/server/threads/windowsProcessTree.js +361 -0
  191. package/dist/server/threads/windowsProcessTree.js.map +1 -0
  192. package/dist/server/throttle.d.ts +1 -1
  193. package/dist/server/throttle.js +8 -1
  194. package/dist/server/throttle.js.map +1 -1
  195. package/dist/upgrade/directives/5-3-0.js +53 -46
  196. package/dist/upgrade/directives/5-3-0.js.map +1 -1
  197. package/dist/utility/errors/hdbError.d.ts +10 -1
  198. package/dist/utility/errors/hdbError.js +55 -11
  199. package/dist/utility/errors/hdbError.js.map +1 -1
  200. package/dist/utility/fsync.d.ts +2 -0
  201. package/dist/utility/fsync.js +20 -0
  202. package/dist/utility/fsync.js.map +1 -0
  203. package/dist/utility/globalSchema.d.ts +18 -0
  204. package/dist/utility/hdbTerms.d.ts +3 -0
  205. package/dist/utility/hdbTerms.js +3 -0
  206. package/dist/utility/hdbTerms.js.map +1 -1
  207. package/dist/utility/signalling.d.ts +7 -1
  208. package/dist/utility/signalling.js +27 -3
  209. package/dist/utility/signalling.js.map +1 -1
  210. package/dist/utility/when.d.ts +1 -0
  211. package/dist/utility/when.js +21 -0
  212. package/dist/utility/when.js.map +1 -1
  213. package/dist/validation/configValidator.js +30 -3
  214. package/dist/validation/configValidator.js.map +1 -1
  215. package/index.ts +13 -0
  216. package/json/systemSchema.json +28 -0
  217. package/npm-shrinkwrap.json +151 -55
  218. package/package.json +14 -13
  219. package/resources/DESIGN.md +80 -100
  220. package/resources/DatabaseTransaction.ts +157 -10
  221. package/resources/PrimaryRocksDatabase.ts +2 -2
  222. package/resources/Table.ts +494 -101
  223. package/resources/auditStore.ts +18 -10
  224. package/resources/blob.ts +13 -6
  225. package/resources/branchDatabase.ts +3 -3
  226. package/resources/databaseDropPreparation.ts +120 -0
  227. package/resources/databases.ts +1155 -205
  228. package/resources/derivedIndexRegistry.ts +122 -0
  229. package/resources/derivedIndexRuntime.ts +157 -30
  230. package/resources/derivedIndexes.ts +856 -0
  231. package/resources/fullTextSchema.ts +55 -0
  232. package/resources/fullTextSchemaLifecycle.ts +0 -15
  233. package/resources/graphql.ts +107 -12
  234. package/resources/indexes/DESIGN.md +7 -0
  235. package/resources/indexes/hnswDerivedIndex.ts +0 -260
  236. package/resources/indexes/nativeFullTextDerivedIndexLifecycle.ts +72 -9
  237. package/resources/models/DESIGN.md +39 -0
  238. package/resources/models/Models.ts +361 -18
  239. package/resources/models/TestBackend.ts +56 -1
  240. package/resources/models/analyticsTable.ts +6 -4
  241. package/resources/models/backendHelpers.ts +17 -0
  242. package/resources/models/backendRegistry.ts +76 -21
  243. package/resources/models/bootstrap.ts +57 -7
  244. package/resources/models/decideHook.ts +135 -0
  245. package/resources/models/decision.ts +505 -0
  246. package/resources/models/decisionStore.ts +419 -0
  247. package/resources/models/embedHook.ts +272 -55
  248. package/resources/models/generativeDecision.ts +459 -0
  249. package/resources/models/types.ts +231 -4
  250. package/security/DESIGN.md +22 -2
  251. package/security/authn/oidc/tokenExchange.ts +6 -34
  252. package/security/authn/oidc/tokenUseTable.ts +27 -0
  253. package/security/certificateVerification/certificateVerificationSource.ts +2 -3
  254. package/security/certificateVerification/crlVerification.ts +96 -174
  255. package/security/certificateVerification/types.ts +0 -3
  256. package/security/certificateVerification/verificationTables.ts +124 -0
  257. package/security/certificateVerification/verificationUtils.ts +8 -32
  258. package/security/jsLoader.ts +9 -1
  259. package/server/DESIGN.md +27 -1
  260. package/server/Server.ts +2 -1
  261. package/server/http.ts +4 -2
  262. package/server/itc/serverHandlers.js +29 -1
  263. package/server/jobs/jobOwnership.ts +89 -0
  264. package/server/jobs/jobProcess.ts +8 -2
  265. package/server/jobs/jobs.ts +15 -4
  266. package/server/loadRootComponents.js +11 -0
  267. package/server/serverHelpers/contentTypes.ts +13 -1
  268. package/server/serverHelpers/serverHandlers.js +11 -2
  269. package/server/threads/itc.js +32 -6
  270. package/server/threads/manageThreads.js +268 -122
  271. package/server/threads/threadServer.js +13 -1
  272. package/server/threads/windowsProcessTree.ts +409 -0
  273. package/server/throttle.ts +11 -1
  274. package/studio/web/assets/{Chat-CveGbxe6.js → Chat-Bq60AO-g.js} +1 -1
  275. package/studio/web/assets/{FloatingChat-IpCFgYWL.js → FloatingChat-D4560T0p.js} +3 -3
  276. package/studio/web/assets/{apiToken-CS8fFTgL.js → apiToken-BEvbFPMc.js} +1 -1
  277. package/studio/web/assets/{applications-D7F4Jopl.js → applications-CSUVTH4E.js} +1 -1
  278. package/studio/web/assets/{cssMode-Daw_oLPq.js → cssMode-DJyc9mHj.js} +1 -1
  279. package/studio/web/assets/{editor-B3Bs1zWX.js → editor-DDIsQfj6.js} +1 -1
  280. package/studio/web/assets/{html-CDaQwWiE.js → html-g1BJHxLy.js} +1 -1
  281. package/studio/web/assets/{htmlMode-Cb6emO4U.js → htmlMode-Vh5IglCQ.js} +1 -1
  282. package/studio/web/assets/{index-B4g2Fu_2.js → index-DGRAzvO4.js} +5 -5
  283. package/studio/web/assets/{index.lazy-NwhvF1q1.js → index.lazy-vgSic7et.js} +1 -1
  284. package/studio/web/assets/{javascript-2_86gB9Q.js → javascript-5VIolqf7.js} +1 -1
  285. package/studio/web/assets/{jsonMode-DX-i86uQ.js → jsonMode-DG4zQraI.js} +1 -1
  286. package/studio/web/assets/{languageServices-B85WN-Ej.js → languageServices-t5FBpX-i.js} +1 -1
  287. package/studio/web/assets/{lspLanguageFeatures-JCWHIsKg.js → lspLanguageFeatures-DgVnNPh-.js} +1 -1
  288. package/studio/web/assets/{notifications-D9ejzt52.js → notifications-BeWcX04m.js} +1 -1
  289. package/studio/web/assets/{notifications-B7hjKhai.js → notifications-DUGWrWoO.js} +1 -1
  290. package/studio/web/assets/{profile-D8B6No3F.js → profile-BvUEDBzW.js} +1 -1
  291. package/studio/web/assets/{regions-DFazIfTK.js → regions-CB-_2m7M.js} +1 -1
  292. package/studio/web/assets/{register-CwFLviLF.js → register-1w1Zr3b2.js} +2 -2
  293. package/studio/web/assets/{setComponentFile-VnJ80SSJ.js → setComponentFile-z4-qJCbA.js} +1 -1
  294. package/studio/web/assets/{setup-BYQxFy-C.js → setup-CS50uJ4x.js} +2 -2
  295. package/studio/web/assets/{status-Cn5XjmsL.js → status-CI0wOdOE.js} +1 -1
  296. package/studio/web/assets/{toggleHighContrast-g9xIh6TX.js → toggleHighContrast-BsAE4jPe.js} +1 -1
  297. package/studio/web/assets/{tsMode-EC-n0Wqc.js → tsMode-D83Gg3cq.js} +1 -1
  298. package/studio/web/assets/{typescript-DHmM9JCO.js → typescript-Dfp-GrNq.js} +1 -1
  299. package/studio/web/assets/{useEntityRestURL-BUdnVSVv.js → useEntityRestURL-BKetlINf.js} +1 -1
  300. package/studio/web/assets/{workers-BVl9bBB-.js → workers-CCvmDLH3.js} +1 -1
  301. package/studio/web/assets/{xml-C4_sqOkX.js → xml-06pZp00U.js} +1 -1
  302. package/studio/web/assets/{yaml-CVkbDqtW.js → yaml-iSnWMVlV.js} +1 -1
  303. package/studio/web/index.html +1 -1
  304. package/upgrade/directives/5-3-0.ts +61 -54
  305. package/utility/DESIGN.md +5 -1
  306. package/utility/errors/hdbError.ts +56 -8
  307. package/utility/fsync.ts +16 -0
  308. package/utility/hdbTerms.ts +3 -0
  309. package/utility/signalling.ts +33 -4
  310. package/utility/when.ts +22 -0
  311. package/validation/configValidator.ts +36 -7
@@ -1 +1 @@
1
- {"version":3,"file":"branchDatabase.js","sourceRoot":"","sources":["../../resources/branchDatabase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"branchDatabase.js","sourceRoot":"","sources":["../../resources/branchDatabase.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ type DatabaseDropPreparation = {
2
+ id: string;
3
+ ownerThreadId: number;
4
+ databaseName: string;
5
+ ownerExited?: boolean;
6
+ preparationTask?: Promise<void>;
7
+ };
8
+ export declare function claimDatabaseDropPreparation(rootPath: string, preparationId: string, ownerThreadId?: number, databaseName?: string): boolean;
9
+ export declare function releaseDatabaseDropPreparation(rootPath: string, preparationId: string): void;
10
+ export declare function claimDatabaseDropPreparations(rootPaths: Iterable<string>, preparationId: string, ownerThreadId?: number, databaseName?: string): void;
11
+ export declare function releaseDatabaseDropPreparations(rootPaths: Iterable<string>, preparationId: string): void;
12
+ export declare function trackDatabaseDropPreparationTask(rootPath: string, preparationId: string, preparationTask: Promise<void>): void;
13
+ export declare function handleDatabaseDropPreparationOwnerExit(ownerThreadId: number): void;
14
+ export declare function databaseDropPrepared(rootPath: string): boolean;
15
+ export declare function databaseDropPreparedWithin(directoryPath: string): boolean;
16
+ export declare function databaseDropPreparationSnapshot(): [
17
+ string,
18
+ Pick<DatabaseDropPreparation, 'id' | 'ownerThreadId' | 'databaseName'>
19
+ ][];
20
+ export {};
@@ -0,0 +1,106 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.claimDatabaseDropPreparation = claimDatabaseDropPreparation;
4
+ exports.releaseDatabaseDropPreparation = releaseDatabaseDropPreparation;
5
+ exports.claimDatabaseDropPreparations = claimDatabaseDropPreparations;
6
+ exports.releaseDatabaseDropPreparations = releaseDatabaseDropPreparations;
7
+ exports.trackDatabaseDropPreparationTask = trackDatabaseDropPreparationTask;
8
+ exports.handleDatabaseDropPreparationOwnerExit = handleDatabaseDropPreparationOwnerExit;
9
+ exports.databaseDropPrepared = databaseDropPrepared;
10
+ exports.databaseDropPreparedWithin = databaseDropPreparedWithin;
11
+ exports.databaseDropPreparationSnapshot = databaseDropPreparationSnapshot;
12
+ const node_worker_threads_1 = require("node:worker_threads");
13
+ const node_path_1 = require("node:path");
14
+ const inheritedDatabaseDropPreparations = (node_worker_threads_1.workerData?.databaseDropPreparations ?? []).filter(
15
+ // Main reaches a child through parentPort rather than addThreadIds; worker owners must be in the initial peer topology.
16
+ ([, preparation]) => preparation.ownerThreadId === 0 || node_worker_threads_1.workerData?.addThreadIds?.includes(preparation.ownerThreadId));
17
+ const databaseDropPreparations = new Map(inheritedDatabaseDropPreparations);
18
+ class DatabaseDroppingError extends Error {
19
+ statusCode = 409;
20
+ code = 'DATABASE_DROP_IN_PROGRESS';
21
+ retryable = true;
22
+ constructor(databaseName) {
23
+ super(`Database '${databaseName}' is already being dropped`);
24
+ this.name = 'DatabaseDroppingError';
25
+ }
26
+ }
27
+ function claimDatabaseDropPreparation(rootPath, preparationId, ownerThreadId = node_worker_threads_1.threadId, databaseName = rootPath) {
28
+ const current = databaseDropPreparations.get(rootPath);
29
+ if (current?.id === preparationId)
30
+ return false;
31
+ if (current) {
32
+ throw new DatabaseDroppingError(current.databaseName);
33
+ }
34
+ databaseDropPreparations.set(rootPath, { id: preparationId, ownerThreadId, databaseName });
35
+ return true;
36
+ }
37
+ function releaseDatabaseDropPreparation(rootPath, preparationId) {
38
+ if (databaseDropPreparations.get(rootPath)?.id === preparationId)
39
+ databaseDropPreparations.delete(rootPath);
40
+ }
41
+ function claimDatabaseDropPreparations(rootPaths, preparationId, ownerThreadId = node_worker_threads_1.threadId, databaseName) {
42
+ const claimed = [];
43
+ try {
44
+ for (const rootPath of new Set(rootPaths)) {
45
+ if (claimDatabaseDropPreparation(rootPath, preparationId, ownerThreadId, databaseName))
46
+ claimed.push(rootPath);
47
+ }
48
+ }
49
+ catch (error) {
50
+ for (const rootPath of claimed)
51
+ releaseDatabaseDropPreparation(rootPath, preparationId);
52
+ throw error;
53
+ }
54
+ }
55
+ function releaseDatabaseDropPreparations(rootPaths, preparationId) {
56
+ for (const rootPath of new Set(rootPaths))
57
+ releaseDatabaseDropPreparation(rootPath, preparationId);
58
+ }
59
+ function trackDatabaseDropPreparationTask(rootPath, preparationId, preparationTask) {
60
+ const preparation = databaseDropPreparations.get(rootPath);
61
+ if (preparation?.id !== preparationId)
62
+ return;
63
+ preparation.preparationTask = preparationTask;
64
+ if (preparation.ownerExited) {
65
+ const release = () => releaseDatabaseDropPreparation(rootPath, preparationId);
66
+ preparationTask.then(release, release);
67
+ }
68
+ }
69
+ function handleDatabaseDropPreparationOwnerExit(ownerThreadId) {
70
+ for (const [rootPath, preparation] of databaseDropPreparations) {
71
+ if (preparation.ownerThreadId !== ownerThreadId)
72
+ continue;
73
+ preparation.ownerExited = true;
74
+ if (preparation.preparationTask) {
75
+ const release = () => releaseDatabaseDropPreparation(rootPath, preparation.id);
76
+ preparation.preparationTask.then(release, release);
77
+ }
78
+ else
79
+ databaseDropPreparations.delete(rootPath);
80
+ }
81
+ }
82
+ function databaseDropPrepared(rootPath) {
83
+ return databaseDropPreparations.size > 0 && databaseDropPreparations.has(rootPath);
84
+ }
85
+ function databaseDropPreparedWithin(directoryPath) {
86
+ if (databaseDropPreparations.size === 0)
87
+ return false;
88
+ const normalizedDirectoryPath = (0, node_path_1.resolve)(directoryPath);
89
+ for (const rootPath of databaseDropPreparations.keys()) {
90
+ if ((0, node_path_1.resolve)((0, node_path_1.dirname)(rootPath)) === normalizedDirectoryPath)
91
+ return true;
92
+ }
93
+ return false;
94
+ }
95
+ function databaseDropPreparationSnapshot() {
96
+ const snapshot = [];
97
+ for (const [rootPath, preparation] of databaseDropPreparations) {
98
+ if (!preparation.ownerExited)
99
+ snapshot.push([
100
+ rootPath,
101
+ { id: preparation.id, ownerThreadId: preparation.ownerThreadId, databaseName: preparation.databaseName },
102
+ ]);
103
+ }
104
+ return snapshot;
105
+ }
106
+ //# sourceMappingURL=databaseDropPreparation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"databaseDropPreparation.js","sourceRoot":"","sources":["../../resources/databaseDropPreparation.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { type Database, type RootDatabase } from 'lmdb';
3
3
  import { makeTable } from './Table.ts';
4
4
  import { RocksDatabase, type RocksDatabaseOptions } from '@harperfast/rocksdb-js';
5
5
  import { type FullTextDefinition } from './fullTextSchema.ts';
6
+ export declare function __setReadOnlyModeForTest(value: boolean | undefined): void;
6
7
  export declare function isReadOnlyMode(): boolean;
7
8
  declare const DEFINED_TABLES: unique symbol;
8
9
  type RelationshipHydration = {
@@ -188,7 +189,7 @@ export interface BranchDatabase {
188
189
  * a relationship whose target the application also branched against that branch.
189
190
  */
190
191
  relatedBranches?: Map<string, BranchDatabase>;
191
- close(): void;
192
+ close(): Promise<void>;
192
193
  }
193
194
  /**
194
195
  * Suffix of the sibling a branch is renamed to while being removed. A backtick, not a dot:
@@ -260,7 +261,8 @@ export declare function isBranchIdentity(name: string): boolean;
260
261
  */
261
262
  export declare function openBranchDatabase(path: string, databaseName: string, storeName: string, blobRoots?: string[]): BranchDatabase;
262
263
  /** Branches are process-local, so this is shutdown, not a data operation. */
263
- export declare function closeBranchDatabases(): void;
264
+ export declare function branchDatabasesHaveWork(): boolean;
265
+ export declare function closeBranchDatabases(requireClosed?: boolean): Promise<void>;
264
266
  export declare function resetDatabases(): Databases;
265
267
  interface TableDefinition {
266
268
  table: string;
@@ -311,35 +313,38 @@ export declare function database({ database: databaseName, table: tableName }: {
311
313
  * Delete the database
312
314
  * @param databaseName
313
315
  */
314
- export declare function dropDatabase(databaseName: any): Promise<void>;
316
+ export declare function dropDatabase(databaseName: any, requestedRootPaths?: Iterable<string>): Promise<void>;
317
+ export declare function databaseDropRecoveryPending(databaseName: string): boolean;
318
+ export declare function databaseDropPreparationTargets(databaseName: string): {
319
+ rootPaths: string[];
320
+ };
321
+ export declare function prepareDatabaseDrop(databaseName: string, preparationId: string, ownerThreadId: number, requestedRootPaths?: Iterable<string>): Promise<void>;
322
+ export declare function completeDatabaseDropPreparation(databaseName: string, preparationId: string, requestedRootPaths?: Iterable<string>): Promise<void>;
315
323
  /**
316
- * Close a database's store handles on the current thread and unregister it, without
317
- * touching its files. Used by the restore_backup flow: every thread must release its handles so
318
- * `backups.restore()` can purge and rewrite the (fully closed) database directory. A subsequent
319
- * `resetDatabases()`/`getDatabases()` rescan reloads it (or skips it while a restore is in
320
- * progress, per the restore marker checks in the scan).
321
- *
322
- * An LMDB database is closed by closing its environment, which releases every dbi in it, so every
323
- * other database alias sharing that environment is closed with it.
324
+ * Close a database's store handles on this thread and unregister every alias sharing those roots,
325
+ * without touching files. Restore uses this before rewriting the closed directory. With
326
+ * `requireClosed`, any handle failure rejects and leaves the affected wrappers permanently fenced
327
+ * for an explicit retry. Closing an LMDB environment closes every DBI and alias that shares it.
324
328
  */
325
- export declare function closeDatabase(databaseName: string): boolean;
329
+ export declare function closeDatabase(databaseName: string, { requireClosed }?: {
330
+ requireClosed?: boolean;
331
+ }): Promise<boolean>;
326
332
  /**
327
- * Close every RocksDB (user) database this thread has open, releasing its native handles.
333
+ * Close every user database this thread has open, releasing its native handles.
328
334
  *
329
- * rocksdb-js's registry is process-global across worker threads, and a thread that exits WITHOUT
330
- * closing leaks its handles (the process-global refCount never drops), while the only alternative,
331
- * `shutdown()`, tears down rocksdb for the entire process. So a worker thread that opens databases
332
- * and then exits — notably a job worker (jobProcess), which opens the whole database graph via
333
- * `getDatabases()` and exits when the job finishes — must close its handles explicitly, or those
334
- * handles linger process-wide (and, e.g., block an online `restore_backup` from confirming the
335
- * database is closed). The `system` database is intentionally left open: it is non-enumerable here
335
+ * A job worker opens the database graph and must prove every handle is closed before its exit can
336
+ * satisfy destructive-DDL preparation. RocksDB handles otherwise leak in the process-global
337
+ * registry; an open LMDB handle can likewise prevent deletion on Windows. The `system` database is
338
+ * intentionally left open: it is non-enumerable here
336
339
  * (skipped by the loop), is never restored online, and the exiting worker may still touch the job
337
340
  * table during teardown. Best-effort: closing failures are swallowed inside `closeDatabase`.
338
341
  *
339
342
  * Branches are invisible to the loop below but hold handles from the same registry, so this — the
340
343
  * thread's one teardown entry point — closes them too.
341
344
  */
342
- export declare function closeLoadedDatabases(): void;
345
+ export declare function closeLoadedDatabases({ requireClosed }?: {
346
+ requireClosed?: boolean;
347
+ }): Promise<void>;
343
348
  /**
344
349
  * This can be called to ensure that the specified table exists and if it does not exist, it should be created.
345
350
  * @param tableName