@harperfast/harper 5.2.9 → 5.3.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (668) hide show
  1. package/agent/mcpTools.ts +1 -1
  2. package/agent/session.ts +25 -14
  3. package/bin/cliOperations.ts +46 -9
  4. package/bin/copyDb.ts +282 -59
  5. package/bin/deploySetup.ts +16 -5
  6. package/bin/harper.ts +1 -1
  7. package/bin/help.ts +4 -1
  8. package/bin/lite.ts +4 -1
  9. package/bin/restart.ts +59 -3
  10. package/bin/run.ts +6 -11
  11. package/bin/upgrade.js +7 -3
  12. package/bin/workloadIdentity.ts +119 -0
  13. package/components/Application.ts +2414 -242
  14. package/components/ApplicationScope.ts +8 -0
  15. package/components/EntryHandler.ts +59 -39
  16. package/components/OptionsWatcher.ts +150 -74
  17. package/components/RuntimeModuleTracker.ts +38 -7
  18. package/components/Scope.ts +37 -15
  19. package/components/awaitRestart.ts +84 -0
  20. package/components/componentLoader.ts +340 -30
  21. package/components/componentPreparationLock.ts +16 -5
  22. package/components/mcp/adapters/harperHttp.ts +4 -0
  23. package/components/mcp/listChanged.ts +4 -0
  24. package/components/mcp/toolRegistry.ts +2 -0
  25. package/components/mcp/tools/operations.ts +9 -0
  26. package/components/mcp/tools/schemas/operationDescriptions.ts +2 -2
  27. package/components/operations.js +270 -78
  28. package/components/operationsValidation.js +49 -1
  29. package/components/status/ComponentStatusRegistry.ts +59 -0
  30. package/config/RootConfigWatcher.ts +80 -34
  31. package/config/configUtils.ts +291 -34
  32. package/config/harperConfigEnvVars.ts +170 -27
  33. package/config-root.schema.json +29 -0
  34. package/dataLayer/blobBackup.ts +160 -50
  35. package/dataLayer/delete.ts +6 -1
  36. package/dataLayer/harperBridge/ResourceBridge.ts +52 -8
  37. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/DeleteAuditLogsBeforeResults.js +3 -1
  38. package/dataLayer/hdbInfoController.ts +34 -1
  39. package/dataLayer/insert.ts +44 -1
  40. package/dataLayer/rocksdbBackup.ts +53 -10
  41. package/dataLayer/schema.ts +11 -1
  42. package/dataLayer/schemaDescribe.ts +8 -1
  43. package/dist/agent/mcpTools.js +1 -1
  44. package/dist/agent/mcpTools.js.map +1 -1
  45. package/dist/agent/session.d.ts +22 -0
  46. package/dist/agent/session.js +26 -15
  47. package/dist/agent/session.js.map +1 -1
  48. package/dist/bin/cliOperations.js +48 -9
  49. package/dist/bin/cliOperations.js.map +1 -1
  50. package/dist/bin/copyDb.d.ts +12 -1
  51. package/dist/bin/copyDb.js +248 -60
  52. package/dist/bin/copyDb.js.map +1 -1
  53. package/dist/bin/deploySetup.d.ts +2 -0
  54. package/dist/bin/deploySetup.js +11 -3
  55. package/dist/bin/deploySetup.js.map +1 -1
  56. package/dist/bin/harper.js +1 -1
  57. package/dist/bin/harper.js.map +1 -1
  58. package/dist/bin/help.js +4 -1
  59. package/dist/bin/help.js.map +1 -1
  60. package/dist/bin/lite.js +4 -1
  61. package/dist/bin/lite.js.map +1 -1
  62. package/dist/bin/restart.js +54 -5
  63. package/dist/bin/restart.js.map +1 -1
  64. package/dist/bin/run.js +4 -10
  65. package/dist/bin/run.js.map +1 -1
  66. package/dist/bin/upgrade.js +4 -3
  67. package/dist/bin/upgrade.js.map +1 -1
  68. package/dist/bin/workloadIdentity.d.ts +18 -0
  69. package/dist/bin/workloadIdentity.js +100 -0
  70. package/dist/bin/workloadIdentity.js.map +1 -0
  71. package/dist/components/Application.d.ts +139 -16
  72. package/dist/components/Application.js +2215 -267
  73. package/dist/components/Application.js.map +1 -1
  74. package/dist/components/ApplicationScope.d.ts +8 -0
  75. package/dist/components/ApplicationScope.js +7 -0
  76. package/dist/components/ApplicationScope.js.map +1 -1
  77. package/dist/components/EntryHandler.js +26 -10
  78. package/dist/components/EntryHandler.js.map +1 -1
  79. package/dist/components/OptionsWatcher.d.ts +1 -0
  80. package/dist/components/OptionsWatcher.js +141 -74
  81. package/dist/components/OptionsWatcher.js.map +1 -1
  82. package/dist/components/RuntimeModuleTracker.js +40 -6
  83. package/dist/components/RuntimeModuleTracker.js.map +1 -1
  84. package/dist/components/Scope.js +38 -13
  85. package/dist/components/Scope.js.map +1 -1
  86. package/dist/components/awaitRestart.d.ts +33 -0
  87. package/dist/components/awaitRestart.js +61 -0
  88. package/dist/components/awaitRestart.js.map +1 -0
  89. package/dist/components/componentLoader.d.ts +38 -1
  90. package/dist/components/componentLoader.js +279 -22
  91. package/dist/components/componentLoader.js.map +1 -1
  92. package/dist/components/componentPreparationLock.d.ts +5 -0
  93. package/dist/components/componentPreparationLock.js +14 -6
  94. package/dist/components/componentPreparationLock.js.map +1 -1
  95. package/dist/components/mcp/adapters/harperHttp.js +4 -0
  96. package/dist/components/mcp/adapters/harperHttp.js.map +1 -1
  97. package/dist/components/mcp/listChanged.js +5 -0
  98. package/dist/components/mcp/listChanged.js.map +1 -1
  99. package/dist/components/mcp/toolRegistry.d.ts +1 -0
  100. package/dist/components/mcp/toolRegistry.js.map +1 -1
  101. package/dist/components/mcp/tools/operations.d.ts +5 -0
  102. package/dist/components/mcp/tools/operations.js +9 -0
  103. package/dist/components/mcp/tools/operations.js.map +1 -1
  104. package/dist/components/mcp/tools/schemas/operationDescriptions.js +2 -2
  105. package/dist/components/mcp/tools/schemas/operationDescriptions.js.map +1 -1
  106. package/dist/components/operations.js +231 -77
  107. package/dist/components/operations.js.map +1 -1
  108. package/dist/components/operationsValidation.js +49 -1
  109. package/dist/components/operationsValidation.js.map +1 -1
  110. package/dist/components/status/ComponentStatusRegistry.d.ts +0 -4
  111. package/dist/components/status/ComponentStatusRegistry.js +63 -0
  112. package/dist/components/status/ComponentStatusRegistry.js.map +1 -1
  113. package/dist/config/RootConfigWatcher.d.ts +7 -1
  114. package/dist/config/RootConfigWatcher.js +64 -27
  115. package/dist/config/RootConfigWatcher.js.map +1 -1
  116. package/dist/config/configUtils.d.ts +9 -1
  117. package/dist/config/configUtils.js +254 -33
  118. package/dist/config/configUtils.js.map +1 -1
  119. package/dist/config/harperConfigEnvVars.d.ts +16 -0
  120. package/dist/config/harperConfigEnvVars.js +162 -25
  121. package/dist/config/harperConfigEnvVars.js.map +1 -1
  122. package/dist/dataLayer/blobBackup.d.ts +49 -20
  123. package/dist/dataLayer/blobBackup.js +139 -50
  124. package/dist/dataLayer/blobBackup.js.map +1 -1
  125. package/dist/dataLayer/delete.js +1 -1
  126. package/dist/dataLayer/delete.js.map +1 -1
  127. package/dist/dataLayer/harperBridge/ResourceBridge.d.ts +14 -1
  128. package/dist/dataLayer/harperBridge/ResourceBridge.js +51 -10
  129. package/dist/dataLayer/harperBridge/ResourceBridge.js.map +1 -1
  130. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/DeleteAuditLogsBeforeResults.d.ts +3 -1
  131. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/DeleteAuditLogsBeforeResults.js +3 -1
  132. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/DeleteAuditLogsBeforeResults.js.map +1 -1
  133. package/dist/dataLayer/hdbInfoController.d.ts +10 -0
  134. package/dist/dataLayer/hdbInfoController.js +30 -1
  135. package/dist/dataLayer/hdbInfoController.js.map +1 -1
  136. package/dist/dataLayer/insert.d.ts +9 -1
  137. package/dist/dataLayer/insert.js +30 -0
  138. package/dist/dataLayer/insert.js.map +1 -1
  139. package/dist/dataLayer/rocksdbBackup.d.ts +2 -2
  140. package/dist/dataLayer/rocksdbBackup.js +45 -8
  141. package/dist/dataLayer/rocksdbBackup.js.map +1 -1
  142. package/dist/dataLayer/schema.js +8 -0
  143. package/dist/dataLayer/schema.js.map +1 -1
  144. package/dist/dataLayer/schemaDescribe.js +8 -1
  145. package/dist/dataLayer/schemaDescribe.js.map +1 -1
  146. package/dist/index.d.ts +1 -1
  147. package/dist/index.js.map +1 -1
  148. package/dist/json/systemSchema.json +52 -0
  149. package/dist/resources/DatabaseTransaction.d.ts +55 -0
  150. package/dist/resources/DatabaseTransaction.js +459 -45
  151. package/dist/resources/DatabaseTransaction.js.map +1 -1
  152. package/dist/resources/LMDBTransaction.js +22 -4
  153. package/dist/resources/LMDBTransaction.js.map +1 -1
  154. package/dist/resources/PrimaryRocksDatabase.d.ts +1 -0
  155. package/dist/resources/PrimaryRocksDatabase.js +29 -0
  156. package/dist/resources/PrimaryRocksDatabase.js.map +1 -1
  157. package/dist/resources/RecordEncoder.d.ts +20 -0
  158. package/dist/resources/RecordEncoder.js +94 -9
  159. package/dist/resources/RecordEncoder.js.map +1 -1
  160. package/dist/resources/RequestTarget.d.ts +2 -0
  161. package/dist/resources/RequestTarget.js.map +1 -1
  162. package/dist/resources/Resource.js +20 -11
  163. package/dist/resources/Resource.js.map +1 -1
  164. package/dist/resources/ResourceInterface.d.ts +20 -1
  165. package/dist/resources/ResourceInterface.js.map +1 -1
  166. package/dist/resources/RocksIndexStore.d.ts +6 -1
  167. package/dist/resources/RocksIndexStore.js +24 -9
  168. package/dist/resources/RocksIndexStore.js.map +1 -1
  169. package/dist/resources/RocksTransactionLogStore.d.ts +14 -1
  170. package/dist/resources/RocksTransactionLogStore.js +57 -17
  171. package/dist/resources/RocksTransactionLogStore.js.map +1 -1
  172. package/dist/resources/Table.d.ts +112 -8
  173. package/dist/resources/Table.js +1073 -191
  174. package/dist/resources/Table.js.map +1 -1
  175. package/dist/resources/auditStore.d.ts +11 -2
  176. package/dist/resources/auditStore.js +325 -71
  177. package/dist/resources/auditStore.js.map +1 -1
  178. package/dist/resources/blob.d.ts +129 -9
  179. package/dist/resources/blob.js +992 -114
  180. package/dist/resources/blob.js.map +1 -1
  181. package/dist/resources/branchDatabase.d.ts +48 -0
  182. package/dist/resources/branchDatabase.js +892 -0
  183. package/dist/resources/branchDatabase.js.map +1 -0
  184. package/dist/resources/crdt.js +50 -12
  185. package/dist/resources/crdt.js.map +1 -1
  186. package/dist/resources/databases.d.ts +150 -0
  187. package/dist/resources/databases.js +1200 -239
  188. package/dist/resources/databases.js.map +1 -1
  189. package/dist/resources/defineTable.d.ts +10 -2
  190. package/dist/resources/defineTable.js +9 -1
  191. package/dist/resources/defineTable.js.map +1 -1
  192. package/dist/resources/graphql.d.ts +1 -1
  193. package/dist/resources/graphql.js +50 -15
  194. package/dist/resources/graphql.js.map +1 -1
  195. package/dist/resources/indexes/HierarchicalNavigableSmallWorld.d.ts +1 -0
  196. package/dist/resources/indexes/HierarchicalNavigableSmallWorld.js +6 -2
  197. package/dist/resources/indexes/HierarchicalNavigableSmallWorld.js.map +1 -1
  198. package/dist/resources/longLivedTransactions.d.ts +71 -0
  199. package/dist/resources/longLivedTransactions.js +358 -0
  200. package/dist/resources/longLivedTransactions.js.map +1 -0
  201. package/dist/resources/models/backendRegistry.d.ts +26 -0
  202. package/dist/resources/models/backendRegistry.js +60 -2
  203. package/dist/resources/models/backendRegistry.js.map +1 -1
  204. package/dist/resources/models/bootstrap.d.ts +33 -1
  205. package/dist/resources/models/bootstrap.js +416 -31
  206. package/dist/resources/models/bootstrap.js.map +1 -1
  207. package/dist/resources/recordLock.d.ts +80 -0
  208. package/dist/resources/recordLock.js +184 -0
  209. package/dist/resources/recordLock.js.map +1 -0
  210. package/dist/resources/replayLogs.d.ts +14 -1
  211. package/dist/resources/replayLogs.js +152 -24
  212. package/dist/resources/replayLogs.js.map +1 -1
  213. package/dist/resources/replayLogsGuards.d.ts +94 -7
  214. package/dist/resources/replayLogsGuards.js +111 -7
  215. package/dist/resources/replayLogsGuards.js.map +1 -1
  216. package/dist/resources/search.js +158 -6
  217. package/dist/resources/search.js.map +1 -1
  218. package/dist/resources/transactionBroadcast.d.ts +1 -1
  219. package/dist/resources/transactionBroadcast.js +2 -2
  220. package/dist/resources/transactionBroadcast.js.map +1 -1
  221. package/dist/security/auth.js +61 -30
  222. package/dist/security/auth.js.map +1 -1
  223. package/dist/security/authn/oidc/claims.d.ts +22 -0
  224. package/dist/security/authn/oidc/claims.js +71 -0
  225. package/dist/security/authn/oidc/claims.js.map +1 -0
  226. package/dist/security/authn/oidc/identityToken.d.ts +27 -0
  227. package/dist/security/authn/oidc/identityToken.js +111 -0
  228. package/dist/security/authn/oidc/identityToken.js.map +1 -0
  229. package/dist/security/authn/oidc/jwks.d.ts +25 -0
  230. package/dist/security/authn/oidc/jwks.js +261 -0
  231. package/dist/security/authn/oidc/jwks.js.map +1 -0
  232. package/dist/security/authn/oidc/providers/generic.d.ts +13 -0
  233. package/dist/security/authn/oidc/providers/generic.js +34 -0
  234. package/dist/security/authn/oidc/providers/generic.js.map +1 -0
  235. package/dist/security/authn/oidc/providers/githubActions.d.ts +11 -0
  236. package/dist/security/authn/oidc/providers/githubActions.js +129 -0
  237. package/dist/security/authn/oidc/providers/githubActions.js.map +1 -0
  238. package/dist/security/authn/oidc/providers/index.d.ts +37 -0
  239. package/dist/security/authn/oidc/providers/index.js +24 -0
  240. package/dist/security/authn/oidc/providers/index.js.map +1 -0
  241. package/dist/security/authn/oidc/tokenExchange.d.ts +12 -0
  242. package/dist/security/authn/oidc/tokenExchange.js +306 -0
  243. package/dist/security/authn/oidc/tokenExchange.js.map +1 -0
  244. package/dist/security/authn/oidc/trustPolicyOperations.d.ts +49 -0
  245. package/dist/security/authn/oidc/trustPolicyOperations.js +358 -0
  246. package/dist/security/authn/oidc/trustPolicyOperations.js.map +1 -0
  247. package/dist/security/authn/oidc/types.d.ts +38 -0
  248. package/dist/security/authn/oidc/types.js +6 -0
  249. package/dist/security/authn/oidc/types.js.map +1 -0
  250. package/dist/security/certificateVerification/index.js +40 -11
  251. package/dist/security/certificateVerification/index.js.map +1 -1
  252. package/dist/security/certificateVerification/trustedIssuers.d.ts +24 -0
  253. package/dist/security/certificateVerification/trustedIssuers.js +79 -0
  254. package/dist/security/certificateVerification/trustedIssuers.js.map +1 -0
  255. package/dist/security/certificateVerification/types.d.ts +1 -0
  256. package/dist/security/credentialProvenance.d.ts +35 -0
  257. package/dist/security/credentialProvenance.js +51 -0
  258. package/dist/security/credentialProvenance.js.map +1 -0
  259. package/dist/security/credentialRejection.d.ts +4 -0
  260. package/dist/security/credentialRejection.js +24 -0
  261. package/dist/security/credentialRejection.js.map +1 -0
  262. package/dist/security/deferredAuthentication.d.ts +36 -0
  263. package/dist/security/deferredAuthentication.js +70 -0
  264. package/dist/security/deferredAuthentication.js.map +1 -0
  265. package/dist/security/impersonation.d.ts +21 -0
  266. package/dist/security/impersonation.js +108 -9
  267. package/dist/security/impersonation.js.map +1 -1
  268. package/dist/security/jsLoader.d.ts +6 -0
  269. package/dist/security/jsLoader.js +75 -15
  270. package/dist/security/jsLoader.js.map +1 -1
  271. package/dist/security/keys.js +301 -71
  272. package/dist/security/keys.js.map +1 -1
  273. package/dist/security/operationScope.d.ts +21 -0
  274. package/dist/security/operationScope.js +36 -0
  275. package/dist/security/operationScope.js.map +1 -0
  276. package/dist/security/permissionsTranslator.js +21 -0
  277. package/dist/security/permissionsTranslator.js.map +1 -1
  278. package/dist/security/tokenAuthentication.d.ts +19 -1
  279. package/dist/security/tokenAuthentication.js +191 -10
  280. package/dist/security/tokenAuthentication.js.map +1 -1
  281. package/dist/security/user.js +4 -3
  282. package/dist/security/user.js.map +1 -1
  283. package/dist/server/DurableSubscriptionsSession.d.ts +2 -2
  284. package/dist/server/DurableSubscriptionsSession.js +67 -10
  285. package/dist/server/DurableSubscriptionsSession.js.map +1 -1
  286. package/dist/server/REST.js +73 -0
  287. package/dist/server/REST.js.map +1 -1
  288. package/dist/server/graphqlQuerying.js +4 -0
  289. package/dist/server/graphqlQuerying.js.map +1 -1
  290. package/dist/server/http.d.ts +11 -0
  291. package/dist/server/http.js +88 -15
  292. package/dist/server/http.js.map +1 -1
  293. package/dist/server/itc/serverHandlers.js +8 -1
  294. package/dist/server/itc/serverHandlers.js.map +1 -1
  295. package/dist/server/jobs/jobProcess.js +6 -2
  296. package/dist/server/jobs/jobProcess.js.map +1 -1
  297. package/dist/server/jobs/jobs.js +4 -1
  298. package/dist/server/jobs/jobs.js.map +1 -1
  299. package/dist/server/liveSubscriptionAuth.d.ts +26 -4
  300. package/dist/server/liveSubscriptionAuth.js +105 -39
  301. package/dist/server/liveSubscriptionAuth.js.map +1 -1
  302. package/dist/server/loadRootComponents.js +49 -10
  303. package/dist/server/loadRootComponents.js.map +1 -1
  304. package/dist/server/mqtt.d.ts +2 -0
  305. package/dist/server/mqtt.js +165 -30
  306. package/dist/server/mqtt.js.map +1 -1
  307. package/dist/server/nodeName.d.ts +2 -0
  308. package/dist/server/nodeName.js +107 -23
  309. package/dist/server/nodeName.js.map +1 -1
  310. package/dist/server/serverHelpers/Headers.d.ts +25 -0
  311. package/dist/server/serverHelpers/Headers.js +139 -1
  312. package/dist/server/serverHelpers/Headers.js.map +1 -1
  313. package/dist/server/serverHelpers/contentTypes.d.ts +9 -0
  314. package/dist/server/serverHelpers/contentTypes.js +32 -25
  315. package/dist/server/serverHelpers/contentTypes.js.map +1 -1
  316. package/dist/server/serverHelpers/deployValidationState.d.ts +3 -0
  317. package/dist/server/serverHelpers/deployValidationState.js +9 -19
  318. package/dist/server/serverHelpers/deployValidationState.js.map +1 -1
  319. package/dist/server/serverHelpers/operationAuthorizationState.d.ts +12 -0
  320. package/dist/server/serverHelpers/operationAuthorizationState.js +24 -2
  321. package/dist/server/serverHelpers/operationAuthorizationState.js.map +1 -1
  322. package/dist/server/serverHelpers/registeredOperations.d.ts +5 -4
  323. package/dist/server/serverHelpers/registeredOperations.js +74 -21
  324. package/dist/server/serverHelpers/registeredOperations.js.map +1 -1
  325. package/dist/server/serverHelpers/requestSanitization.d.ts +11 -0
  326. package/dist/server/serverHelpers/requestSanitization.js +20 -0
  327. package/dist/server/serverHelpers/requestSanitization.js.map +1 -0
  328. package/dist/server/serverHelpers/serverHandlers.js +6 -3
  329. package/dist/server/serverHelpers/serverHandlers.js.map +1 -1
  330. package/dist/server/serverHelpers/serverUtilities.d.ts +18 -0
  331. package/dist/server/serverHelpers/serverUtilities.js +90 -20
  332. package/dist/server/serverHelpers/serverUtilities.js.map +1 -1
  333. package/dist/server/serverHelpers/sharedMessageEncoding.d.ts +67 -0
  334. package/dist/server/serverHelpers/sharedMessageEncoding.js +280 -0
  335. package/dist/server/serverHelpers/sharedMessageEncoding.js.map +1 -0
  336. package/dist/server/serverHelpers/uwsServer.js +19 -1
  337. package/dist/server/serverHelpers/uwsServer.js.map +1 -1
  338. package/dist/server/static.js +24 -28
  339. package/dist/server/static.js.map +1 -1
  340. package/dist/server/storageReclamation.d.ts +12 -0
  341. package/dist/server/storageReclamation.js +26 -0
  342. package/dist/server/storageReclamation.js.map +1 -1
  343. package/dist/server/threads/itc.d.ts +7 -2
  344. package/dist/server/threads/itc.js +5 -1
  345. package/dist/server/threads/itc.js.map +1 -1
  346. package/dist/server/threads/manageThreads.d.ts +26 -3
  347. package/dist/server/threads/manageThreads.js +517 -65
  348. package/dist/server/threads/manageThreads.js.map +1 -1
  349. package/dist/server/threads/socketRouter.js +89 -26
  350. package/dist/server/threads/socketRouter.js.map +1 -1
  351. package/dist/server/threads/threadHeapMemory.d.ts +2 -0
  352. package/dist/server/threads/threadHeapMemory.js +31 -0
  353. package/dist/server/threads/threadHeapMemory.js.map +1 -0
  354. package/dist/server/threads/threadServer.js +46 -15
  355. package/dist/server/threads/threadServer.js.map +1 -1
  356. package/dist/sqlEngine/config.d.ts +1 -3
  357. package/dist/sqlEngine/config.js +19 -16
  358. package/dist/sqlEngine/config.js.map +1 -1
  359. package/dist/sqlTranslator/index.d.ts +1 -1
  360. package/dist/sqlTranslator/index.js +30 -7
  361. package/dist/sqlTranslator/index.js.map +1 -1
  362. package/dist/upgrade/directives/5-3-0.d.ts +7 -0
  363. package/dist/upgrade/directives/5-3-0.js +148 -0
  364. package/dist/upgrade/directives/5-3-0.js.map +1 -0
  365. package/dist/upgrade/directives/directivesController.js +2 -1
  366. package/dist/upgrade/directives/directivesController.js.map +1 -1
  367. package/dist/utility/OperationFunctionCaller.js +2 -1
  368. package/dist/utility/OperationFunctionCaller.js.map +1 -1
  369. package/dist/utility/common_utils.d.ts +16 -0
  370. package/dist/utility/common_utils.js +32 -6
  371. package/dist/utility/common_utils.js.map +1 -1
  372. package/dist/utility/componentNames.d.ts +8 -0
  373. package/dist/utility/componentNames.js +12 -1
  374. package/dist/utility/componentNames.js.map +1 -1
  375. package/dist/utility/environment/environmentManager.js +3 -6
  376. package/dist/utility/environment/environmentManager.js.map +1 -1
  377. package/dist/utility/environment/systemInformation.d.ts +1 -0
  378. package/dist/utility/environment/systemInformation.js +1 -0
  379. package/dist/utility/environment/systemInformation.js.map +1 -1
  380. package/dist/utility/errors/commonErrors.d.ts +2 -0
  381. package/dist/utility/errors/commonErrors.js +2 -0
  382. package/dist/utility/errors/commonErrors.js.map +1 -1
  383. package/dist/utility/errors/hdbError.d.ts +17 -0
  384. package/dist/utility/errors/hdbError.js +30 -1
  385. package/dist/utility/errors/hdbError.js.map +1 -1
  386. package/dist/utility/globalSchema.d.ts +18 -0
  387. package/dist/utility/hdbTerms.d.ts +16 -0
  388. package/dist/utility/hdbTerms.js +18 -2
  389. package/dist/utility/hdbTerms.js.map +1 -1
  390. package/dist/utility/logging/harper_logger.d.ts +2 -0
  391. package/dist/utility/logging/harper_logger.js +91 -14
  392. package/dist/utility/logging/harper_logger.js.map +1 -1
  393. package/dist/utility/logging/logRotator.js +76 -49
  394. package/dist/utility/logging/logRotator.js.map +1 -1
  395. package/dist/utility/nodeIdentity.d.ts +9 -0
  396. package/dist/utility/nodeIdentity.js +58 -0
  397. package/dist/utility/nodeIdentity.js.map +1 -0
  398. package/dist/utility/npmUtilities.js +9 -7
  399. package/dist/utility/npmUtilities.js.map +1 -1
  400. package/dist/utility/operationPermissions.d.ts +3 -1
  401. package/dist/utility/operationPermissions.js +16 -1
  402. package/dist/utility/operationPermissions.js.map +1 -1
  403. package/dist/utility/operation_authorization.d.ts +10 -7
  404. package/dist/utility/operation_authorization.js +212 -41
  405. package/dist/utility/operation_authorization.js.map +1 -1
  406. package/dist/utility/watchPath.d.ts +29 -0
  407. package/dist/utility/watchPath.js +68 -0
  408. package/dist/utility/watchPath.js.map +1 -0
  409. package/dist/utility/watcherFallback.d.ts +86 -0
  410. package/dist/utility/watcherFallback.js +278 -1
  411. package/dist/utility/watcherFallback.js.map +1 -1
  412. package/dist/validation/configValidator.d.ts +12 -0
  413. package/dist/validation/configValidator.js +199 -72
  414. package/dist/validation/configValidator.js.map +1 -1
  415. package/dist/validation/installValidator.js +12 -0
  416. package/dist/validation/installValidator.js.map +1 -1
  417. package/dist/validation/validationWrapper.d.ts +11 -0
  418. package/dist/validation/validationWrapper.js +16 -3
  419. package/dist/validation/validationWrapper.js.map +1 -1
  420. package/index.ts +2 -0
  421. package/json/systemSchema.json +52 -0
  422. package/npm-shrinkwrap.json +196 -194
  423. package/package.json +7 -6
  424. package/resources/DESIGN.md +114 -52
  425. package/resources/DatabaseTransaction.ts +521 -43
  426. package/resources/LMDBTransaction.ts +26 -4
  427. package/resources/PrimaryRocksDatabase.ts +28 -1
  428. package/resources/RecordEncoder.ts +103 -8
  429. package/resources/RequestTarget.ts +2 -0
  430. package/resources/Resource.ts +17 -9
  431. package/resources/ResourceInterface.ts +23 -0
  432. package/resources/RocksIndexStore.ts +30 -9
  433. package/resources/RocksTransactionLogStore.ts +78 -21
  434. package/resources/Table.ts +1110 -159
  435. package/resources/auditStore.ts +331 -73
  436. package/resources/blob.ts +1029 -110
  437. package/resources/branchDatabase.ts +941 -0
  438. package/resources/crdt.ts +76 -12
  439. package/resources/databases.ts +1310 -252
  440. package/resources/defineTable.ts +18 -2
  441. package/resources/graphql.ts +70 -16
  442. package/resources/indexes/HierarchicalNavigableSmallWorld.ts +6 -2
  443. package/resources/longLivedTransactions.ts +360 -0
  444. package/resources/models/backendRegistry.ts +84 -2
  445. package/resources/models/bootstrap.ts +473 -28
  446. package/resources/recordLock.ts +253 -0
  447. package/resources/replayLogs.ts +147 -26
  448. package/resources/replayLogsGuards.ts +171 -8
  449. package/resources/search.ts +154 -7
  450. package/resources/transactionBroadcast.ts +3 -3
  451. package/security/auth.ts +68 -29
  452. package/security/authn/oidc/claims.ts +72 -0
  453. package/security/authn/oidc/identityToken.ts +129 -0
  454. package/security/authn/oidc/jwks.ts +260 -0
  455. package/security/authn/oidc/providers/generic.ts +40 -0
  456. package/security/authn/oidc/providers/githubActions.ts +137 -0
  457. package/security/authn/oidc/providers/index.ts +52 -0
  458. package/security/authn/oidc/tokenExchange.ts +300 -0
  459. package/security/authn/oidc/trustPolicyOperations.ts +343 -0
  460. package/security/authn/oidc/types.ts +41 -0
  461. package/security/certificateVerification/index.ts +54 -13
  462. package/security/certificateVerification/trustedIssuers.ts +76 -0
  463. package/security/certificateVerification/types.ts +1 -0
  464. package/security/credentialProvenance.ts +47 -0
  465. package/security/credentialRejection.ts +22 -0
  466. package/security/deferredAuthentication.ts +71 -0
  467. package/security/impersonation.ts +117 -12
  468. package/security/jsLoader.ts +81 -18
  469. package/security/keys.ts +298 -72
  470. package/security/operationScope.ts +33 -0
  471. package/security/permissionsTranslator.js +23 -0
  472. package/security/tokenAuthentication.ts +233 -12
  473. package/security/user.ts +4 -3
  474. package/server/DESIGN.md +183 -16
  475. package/server/DurableSubscriptionsSession.ts +71 -11
  476. package/server/REST.ts +79 -1
  477. package/server/graphqlQuerying.ts +4 -0
  478. package/server/http.ts +99 -18
  479. package/server/itc/serverHandlers.js +8 -1
  480. package/server/jobs/jobProcess.ts +8 -2
  481. package/server/jobs/jobs.ts +4 -1
  482. package/server/liveSubscriptionAuth.ts +129 -46
  483. package/server/loadRootComponents.js +50 -8
  484. package/server/mqtt.ts +179 -38
  485. package/server/nodeName.ts +103 -21
  486. package/server/serverHelpers/Headers.ts +131 -0
  487. package/server/serverHelpers/contentTypes.ts +29 -21
  488. package/server/serverHelpers/deployValidationState.ts +24 -13
  489. package/server/serverHelpers/operationAuthorizationState.ts +34 -3
  490. package/server/serverHelpers/registeredOperations.ts +79 -22
  491. package/server/serverHelpers/requestSanitization.ts +15 -0
  492. package/server/serverHelpers/serverHandlers.js +6 -3
  493. package/server/serverHelpers/serverUtilities.ts +104 -31
  494. package/server/serverHelpers/sharedMessageEncoding.ts +307 -0
  495. package/server/serverHelpers/uwsServer.ts +17 -2
  496. package/server/static.ts +23 -29
  497. package/server/storageReclamation.ts +23 -0
  498. package/server/threads/itc.js +11 -1
  499. package/server/threads/manageThreads.js +526 -56
  500. package/server/threads/socketRouter.ts +81 -26
  501. package/server/threads/threadHeapMemory.ts +26 -0
  502. package/server/threads/threadServer.js +43 -15
  503. package/sqlTranslator/index.ts +31 -8
  504. package/studio/web/assets/Chat-BnCBegQz.js +2267 -0
  505. package/studio/web/assets/FloatingChat-CoDW1ySS.js +23 -0
  506. package/studio/web/assets/{abnfDiagram-VCTEODGH-C0_BAZyO.js → abnfDiagram-VCTEODGH-B0BebmD2.js} +1 -1
  507. package/studio/web/assets/{alertDialog-DIHt7Z0r.js → alertDialog-CQyAJJhl.js} +1 -1
  508. package/studio/web/assets/{apiToken-c3Rd-w6g.js → apiToken-Bwk5BLXW.js} +1 -1
  509. package/studio/web/assets/applications-DHxGi7JH.js +296 -0
  510. package/studio/web/assets/architecture-7GRP2DOG-LB-MLAAb.js +1 -0
  511. package/studio/web/assets/{architectureDiagram-5GKGNRK7-BWzrASgm.js → architectureDiagram-5GKGNRK7-7SW3GD-K.js} +1 -1
  512. package/studio/web/assets/authStore-C3Nfubqr.js +3 -0
  513. package/studio/web/assets/{blockDiagram-NRAW4CY4-BdJX9Khj.js → blockDiagram-I7D4REHJ-BqguiadH.js} +2 -2
  514. package/studio/web/assets/{button-DhiX-njv.js → button-BIsUKRZq.js} +2 -2
  515. package/studio/web/assets/{c4Diagram-UCG6FXSJ-CI6MzGmQ.js → c4Diagram-7LVT6UL2-LBNf8t_X.js} +1 -1
  516. package/studio/web/assets/channel-yictG-U-.js +1 -0
  517. package/studio/web/assets/{chevron-up-Df2c8uoU.js → chevron-up-DtKGqDn3.js} +1 -1
  518. package/studio/web/assets/{chunk-TEH6E4GO-P87k5mNi.js → chunk-4HAMMTFA-DWtTut21.js} +1 -1
  519. package/studio/web/assets/{chunk-75Z2AOVW-BT8tVmks.js → chunk-75Z2AOVW-QGQD6th2.js} +1 -1
  520. package/studio/web/assets/{chunk-DU6HZSFF-9kAOOmI6.js → chunk-DU6HZSFF-Chq20Ba5.js} +1 -1
  521. package/studio/web/assets/{chunk-F27PBJKO-BW7ao8AY.js → chunk-F27PBJKO-BVA5EPhV.js} +1 -1
  522. package/studio/web/assets/{chunk-GMAD6QVW-BNyXpoQO.js → chunk-GMAD6QVW-BeS7S07A.js} +1 -1
  523. package/studio/web/assets/{chunk-OBVCFTLP-D4wWOqDQ.js → chunk-GVQU2GXP-sbwVIQ8i.js} +1 -1
  524. package/studio/web/assets/{chunk-G27WJ6UU-COyLMcgK.js → chunk-IMKFNOWR-Bnh3tAVd.js} +1 -1
  525. package/studio/web/assets/{chunk-JQ64N6SF-Cyz1IeLf.js → chunk-L3NEJ4N5-COfUyKII.js} +1 -1
  526. package/studio/web/assets/chunk-OSK3NFVY-ByciRftO.js +10 -0
  527. package/studio/web/assets/{chunk-P2QGCYS3-DmIFY4d7.js → chunk-P2QGCYS3-CP1VhG_c.js} +1 -1
  528. package/studio/web/assets/{chunk-POPQ4Y6H-BPrvMyKz.js → chunk-POPQ4Y6H-ClWhhkwW.js} +1 -1
  529. package/studio/web/assets/{chunk-PWAF6VOD-2zB6IW9i.js → chunk-PWAF6VOD-1z1THyS5.js} +1 -1
  530. package/studio/web/assets/{chunk-RHFEMEQ7-2FgyI8YU.js → chunk-SHT3W25Y-LpQkMsah.js} +2 -2
  531. package/studio/web/assets/{chunk-SVP7TREG-FwtbH2QC.js → chunk-SVP7TREG-jtdAHw0S.js} +1 -1
  532. package/studio/web/assets/{chunk-LCL6LL3I-HOzK_ppE.js → chunk-TICWLB2K-VOwzetX-.js} +1 -1
  533. package/studio/web/assets/classDiagram-ZZMXUADV-VaEwSy_g.js +1 -0
  534. package/studio/web/assets/classDiagram-v2-VYDZK3BY-VaEwSy_g.js +1 -0
  535. package/studio/web/assets/{createLucideIcon-BKGPfjm2.js → createLucideIcon-CzW9508A.js} +1 -1
  536. package/studio/web/assets/{cssMode-CEN2mzSA.js → cssMode-s0cWI-_M.js} +1 -1
  537. package/studio/web/assets/{cynefin-OW5HDTMX-BRkpLFQV.js → cynefin-OW5HDTMX-BbdbCvub.js} +1 -1
  538. package/studio/web/assets/{cynefinDiagram-5FMLGOSQ-CHT1DaX6.js → cynefinDiagram-5FMLGOSQ-TP-aIqbt.js} +1 -1
  539. package/studio/web/assets/{dagre-3AP2YEHR-DpUXBh63.js → dagre-GXQ25YYZ-DShnGpGo.js} +1 -1
  540. package/studio/web/assets/{diagram-S7CK7UJ4-BuymVFZT.js → diagram-S7CK7UJ4-aoCVTtcy.js} +1 -1
  541. package/studio/web/assets/{diagram-UQ7AKVKN-CyP148RM.js → diagram-UQ7AKVKN-DglXtQ6x.js} +1 -1
  542. package/studio/web/assets/{diagram-VSXAHHWV-CoCAg3M9.js → diagram-VSXAHHWV-fhEdmkwM.js} +1 -1
  543. package/studio/web/assets/{diagram-VX7I27RA-BpOqCFca.js → diagram-VX7I27RA-DccVJet6.js} +1 -1
  544. package/studio/web/assets/{diagram-Z3DM3KII-Bfpw7Vbj.js → diagram-Z3DM3KII-D-RyJJb7.js} +1 -1
  545. package/studio/web/assets/{dialog-CBf0Mr1d.js → dialog-Cn2uWgD4.js} +1 -1
  546. package/studio/web/assets/{dist-lkA3O3eM.js → dist-DP8UjMB_.js} +1 -1
  547. package/studio/web/assets/{download-BtTOBem-.js → download-B5T5r7ss.js} +1 -1
  548. package/studio/web/assets/{ebnfDiagram-PWID7BFC-DS_6aWqL.js → ebnfDiagram-PWID7BFC-DJGpIpz_.js} +1 -1
  549. package/studio/web/assets/{editor-D8oDeCTL.js → editor-DNcRHK54.js} +1 -1
  550. package/studio/web/assets/{erDiagram-SSCWMZ5O-DJNk6Fgw.js → erDiagram-RLTQ6QDP-CIfNlgkC.js} +1 -1
  551. package/studio/web/assets/eventmodeling-NTZA5JFV-CLxnp2CR.js +1 -0
  552. package/studio/web/assets/flowDiagram-HODETNUW-BIbhmz9f.js +1 -0
  553. package/studio/web/assets/{ganttDiagram-EL5Y4UJY-2pOExxMY.js → ganttDiagram-EL5Y4UJY-BxToTzzD.js} +1 -1
  554. package/studio/web/assets/{getAnalytics-D4LKGeVy.js → getAnalytics-GHK8ORfM.js} +1 -1
  555. package/studio/web/assets/{gitGraph-4MIJSDKK-CH5ZxwzF.js → gitGraph-4MIJSDKK-D2s2w8lE.js} +1 -1
  556. package/studio/web/assets/{gitGraphDiagram-WWUBYQGX-DVIsIhbO.js → gitGraphDiagram-WWUBYQGX-Dwntd4-x.js} +1 -1
  557. package/studio/web/assets/{html-u3vOg7LJ.js → html-Bdssedlg.js} +1 -1
  558. package/studio/web/assets/{htmlMode-DyO31v-P.js → htmlMode-CoDlJ3fw.js} +1 -1
  559. package/studio/web/assets/{index-Cxj2_wsl.css → index-7RMEgVG1.css} +1 -1
  560. package/studio/web/assets/index-D6sxmFLR.js +824 -0
  561. package/studio/web/assets/index.lazy-tmU5BS8s.js +2 -0
  562. package/studio/web/assets/{info-A6RAGUB7-CPQfTnaG.js → info-A6RAGUB7-DYjkvb0C.js} +1 -1
  563. package/studio/web/assets/{infoDiagram-RXCK75RN-DlwLYlwm.js → infoDiagram-27XIBGKW-Bnp1FJE5.js} +1 -1
  564. package/studio/web/assets/{ishikawaDiagram-5VMMS53U-BRXRp29U.js → ishikawaDiagram-5VMMS53U-D9Xh2r6X.js} +1 -1
  565. package/studio/web/assets/{javascript-CUvxOyTC.js → javascript-B8meVSTH.js} +1 -1
  566. package/studio/web/assets/{journeyDiagram-EYS64GPL-B0ou8k0n.js → journeyDiagram-3NMN7TZE-CokIi6ll.js} +2 -2
  567. package/studio/web/assets/{jsonMode-f_IwbF3D.js → jsonMode-DpIPd35T.js} +1 -1
  568. package/studio/web/assets/{kanban-definition-3QL26DDD-uYg7iYzp.js → kanban-definition-UXKFOSKX-CukSFJfX.js} +1 -1
  569. package/studio/web/assets/{languageServices-DXtZ6rEF.js → languageServices-C_5FMJzQ.js} +1 -1
  570. package/studio/web/assets/{lspLanguageFeatures-B4pCF1zO.js → lspLanguageFeatures-BIzNBzPK.js} +1 -1
  571. package/studio/web/assets/{mermaid-parser.core-Ck-fC8b7.js → mermaid-parser.core-BlEsOWNO.js} +3 -3
  572. package/studio/web/assets/{mermaid.core-CP8aNNYm.js → mermaid.core-BlkGaMIH.js} +5 -5
  573. package/studio/web/assets/{mindmap-definition-FBJOCRG2-CgTZ-rit.js → mindmap-definition-YA3MSWOX-IprMc_0j.js} +1 -1
  574. package/studio/web/assets/{notifications-D3tIQ4sg.js → notifications-CQf18QKb.js} +1 -1
  575. package/studio/web/assets/notifications-CvZivSbh.js +1 -0
  576. package/studio/web/assets/{packet-AYTQ26CC-DEyoPtPb.js → packet-AYTQ26CC-Bi3V04Zi.js} +1 -1
  577. package/studio/web/assets/{pegDiagram-XKGWAZYB-DrD-7sD9.js → pegDiagram-XKGWAZYB-BNuPDLZY.js} +1 -1
  578. package/studio/web/assets/{pie-WAS4IAKB-wjj-EI1d.js → pie-WAS4IAKB-_6DoDbng.js} +1 -1
  579. package/studio/web/assets/{pieDiagram-E7YTZNPT-GntqDCzv.js → pieDiagram-E7YTZNPT-DqNb6Ht2.js} +1 -1
  580. package/studio/web/assets/{profile-DZWU7MgT.js → profile-DdOwtntb.js} +1 -1
  581. package/studio/web/assets/{quadrantDiagram-AXDQQJYC-0UeqXQGd.js → quadrantDiagram-AXDQQJYC-BGH9E2YR.js} +1 -1
  582. package/studio/web/assets/{radar-RG4KPBEZ-DFSA5h7k.js → radar-RG4KPBEZ-DDdVczcL.js} +1 -1
  583. package/studio/web/assets/{railroad-74A4TZTK-CaOUG9wR.js → railroad-74A4TZTK-BJUP4Jds.js} +1 -1
  584. package/studio/web/assets/railroad-abnf-HS5TGJTU-Bm3L1L0h.js +1 -0
  585. package/studio/web/assets/railroad-ebnf-LZEXJU2U-CKzLGlkw.js +1 -0
  586. package/studio/web/assets/railroad-peg-WCYAUIDC-S8xLjslx.js +1 -0
  587. package/studio/web/assets/{railroadDiagram-O6MQD6OU-yHUELZaV.js → railroadDiagram-O6MQD6OU-DGTPh2KZ.js} +1 -1
  588. package/studio/web/assets/{regions-CkyurXzE.js → regions-n69fwagr.js} +1 -1
  589. package/studio/web/assets/{register-BUyhWjBO.js → register-PfWTCXWB.js} +3 -3
  590. package/studio/web/assets/{requirementDiagram-EFPCY7ZU-DNEGFjuW.js → requirementDiagram-BXWQKSXE-BJnO6uLz.js} +1 -1
  591. package/studio/web/assets/{sankeyDiagram-P5KCCOFB-DpyAmSVR.js → sankeyDiagram-P5KCCOFB-0vSOdymH.js} +1 -1
  592. package/studio/web/assets/{sequenceDiagram-WJ2MYXX4-TyaT7xNk.js → sequenceDiagram-WJ2MYXX4-hETizDWE.js} +1 -1
  593. package/studio/web/assets/{setComponentFile-CeyKSZAa.js → setComponentFile-Bg6O7X0S.js} +1 -1
  594. package/studio/web/assets/{setup-D2kn7cAA.js → setup-CUx_aUDl.js} +2 -2
  595. package/studio/web/assets/{stateDiagram-HBIQ2CUA-CeEdTArZ.js → stateDiagram-D77RDMKH-CdYQ_KtC.js} +1 -1
  596. package/studio/web/assets/stateDiagram-v2-MP3YSRHH-CdKuzQMT.js +1 -0
  597. package/studio/web/assets/status-D7BVKqX9.js +61 -0
  598. package/studio/web/assets/{swimlanes-XN3QIQJK-B54FmF46.js → swimlanes-42K2YHIH-B8cHIpU4.js} +1 -1
  599. package/studio/web/assets/swimlanesDiagram-VR7AAH4N-DmOSJwaH.js +8 -0
  600. package/studio/web/assets/{tabs-B_G5zscN.js → tabs-BrHu7gJi.js} +1 -1
  601. package/studio/web/assets/{timeline-definition-24CTP7MA-D-a9ujbo.js → timeline-definition-24CTP7MA-BJWYSXqF.js} +1 -1
  602. package/studio/web/assets/{toggleHighContrast-C0UW6rI2.js → toggleHighContrast-DBSyXzMr.js} +1 -1
  603. package/studio/web/assets/{treeView-Q6P3EWNA-CrW_6JnS.js → treeView-Q6P3EWNA-qxe_v6CQ.js} +1 -1
  604. package/studio/web/assets/{treemap-WGGIJYW6-BxyYLdP_.js → treemap-WGGIJYW6-dDo97XXF.js} +1 -1
  605. package/studio/web/assets/{tsMode-DBC0zmDx.js → tsMode-BByKCjBS.js} +1 -1
  606. package/studio/web/assets/{typescript-DApRQir3.js → typescript-DDLnLpw9.js} +1 -1
  607. package/studio/web/assets/{useEntityRestURL-DB6JStU1.js → useEntityRestURL-31CHGaHk.js} +1 -1
  608. package/studio/web/assets/{useLocalStorage-Dtj1QS8_.js → useLocalStorage-BqMR3D8_.js} +1 -1
  609. package/studio/web/assets/vendor-core-c2JRRJpV.js +58 -0
  610. package/studio/web/assets/vendor-datadog-CLUcJXOo.js +6 -0
  611. package/studio/web/assets/{vendor-react-Dyj4O3HE.js → vendor-react-CJV_K1u4.js} +1 -1
  612. package/studio/web/assets/vendor-tanstack-DxzraizX.js +1 -0
  613. package/studio/web/assets/{vendor-ui-vhu-UHhF.js → vendor-ui-BUjK0h8a.js} +2 -2
  614. package/studio/web/assets/{vennDiagram-4TSXK5OY-Cy7s7Mpy.js → vennDiagram-4TSXK5OY-A3i-lCdl.js} +1 -1
  615. package/studio/web/assets/{wardley-WFR3VGLG-BeBL35g2.js → wardley-WFR3VGLG-B0ik-_6g.js} +1 -1
  616. package/studio/web/assets/{wardleyDiagram-VM6X3IG4-BylmIGSg.js → wardleyDiagram-VM6X3IG4-CjrkKWUR.js} +1 -1
  617. package/studio/web/assets/{workers-C0bFIedw.js → workers-pR3jRY9D.js} +1 -1
  618. package/studio/web/assets/x-DIzaLEdK.js +1 -0
  619. package/studio/web/assets/{xml-HWd01lU-.js → xml-2iRnMhQO.js} +1 -1
  620. package/studio/web/assets/{xychartDiagram-S5SC5T6Z-CoKALMXr.js → xychartDiagram-S5SC5T6Z-Biok4GYV.js} +1 -1
  621. package/studio/web/assets/{yaml-CIH0Nt-h.js → yaml-Bf92gJpd.js} +1 -1
  622. package/studio/web/index.html +14 -14
  623. package/upgrade/directives/5-3-0.ts +132 -0
  624. package/upgrade/directives/directivesController.ts +2 -1
  625. package/utility/OperationFunctionCaller.ts +2 -1
  626. package/utility/common_utils.ts +30 -5
  627. package/utility/componentNames.ts +12 -0
  628. package/utility/environment/environmentManager.ts +3 -7
  629. package/utility/environment/systemInformation.ts +7 -0
  630. package/utility/errors/commonErrors.ts +4 -0
  631. package/utility/errors/hdbError.ts +29 -0
  632. package/utility/hdbTerms.ts +17 -0
  633. package/utility/logging/harper_logger.ts +87 -14
  634. package/utility/logging/logRotator.ts +72 -45
  635. package/utility/nodeIdentity.ts +45 -0
  636. package/utility/npmUtilities.ts +10 -8
  637. package/utility/operationPermissions.ts +18 -1
  638. package/utility/operation_authorization.ts +231 -42
  639. package/utility/watchPath.ts +63 -0
  640. package/utility/watcherFallback.ts +270 -0
  641. package/validation/configValidator.ts +209 -72
  642. package/validation/installValidator.ts +15 -0
  643. package/validation/validationWrapper.ts +18 -4
  644. package/studio/web/assets/Chat-JpO8EtUu.js +0 -2067
  645. package/studio/web/assets/FloatingChat-Bcj3xSZu.js +0 -23
  646. package/studio/web/assets/applications-ByqLRKyZ.js +0 -296
  647. package/studio/web/assets/architecture-7GRP2DOG-DNdx5tEU.js +0 -1
  648. package/studio/web/assets/authStore-qKmCZcaf.js +0 -3
  649. package/studio/web/assets/channel-DtCV8PTL.js +0 -1
  650. package/studio/web/assets/chunk-R7TYR2AO-Irip67yr.js +0 -10
  651. package/studio/web/assets/classDiagram-DTDB5LWJ-DbO_dCNE.js +0 -1
  652. package/studio/web/assets/classDiagram-v2-JRS7N3AN-DbO_dCNE.js +0 -1
  653. package/studio/web/assets/eventmodeling-NTZA5JFV-5jbe4A5P.js +0 -1
  654. package/studio/web/assets/flowDiagram-A5DVABFB-Dp9Ezlow.js +0 -1
  655. package/studio/web/assets/index-aSt5tY-L.js +0 -824
  656. package/studio/web/assets/index.lazy-B9jiPwT8.js +0 -2
  657. package/studio/web/assets/notifications-CUoYgU98.js +0 -1
  658. package/studio/web/assets/railroad-abnf-HS5TGJTU-Bc0Qi0WH.js +0 -1
  659. package/studio/web/assets/railroad-ebnf-LZEXJU2U-G8rVVZ2C.js +0 -1
  660. package/studio/web/assets/railroad-peg-WCYAUIDC-CrehKBhC.js +0 -1
  661. package/studio/web/assets/stateDiagram-v2-4QOOHH4V-D4tuw9Su.js +0 -1
  662. package/studio/web/assets/status-D7Xn5ePA.js +0 -61
  663. package/studio/web/assets/swimlanesDiagram-VK2B7HYN-XOhmNEvq.js +0 -8
  664. package/studio/web/assets/vendor-core-RCcadM3e.js +0 -73
  665. package/studio/web/assets/vendor-datadog-BRv-mOv1.js +0 -6
  666. package/studio/web/assets/vendor-tanstack-BiFWSB3W.js +0 -1
  667. package/studio/web/assets/x-B9o9hsep.js +0 -1
  668. /package/studio/web/assets/{sizeCapture-X5ZJPWSS-B0uUizjq.js → sizeCapture-INFHLROL-B0uUizjq.js} +0 -0
@@ -36,7 +36,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
36
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.UDS_PATH_MAX_BYTES = exports.routeConstraints = void 0;
39
+ exports.UDS_PATH_MAX_BYTES = exports.routeConstraints = exports.LEGACY_SQL_APPLICATION_KEYS = void 0;
40
+ exports.isLegacySqlApplicationEntry = isLegacySqlApplicationEntry;
41
+ exports.validateModelsBlock = validateModelsBlock;
40
42
  exports.configValidator = configValidator;
41
43
  exports.getDomainSocketPathLengthWarning = getDomainSocketPathLengthWarning;
42
44
  exports.routesValidator = routesValidator;
@@ -50,6 +52,7 @@ const hdbLogger = __importStar(require("../utility/logging/harper_logger.js"));
50
52
  const hdbUtils = __importStar(require("../utility/common_utils.js"));
51
53
  const hdbTerms = __importStar(require("../utility/hdbTerms.js"));
52
54
  const domainSocket_ts_1 = require("../utility/domainSocket.js");
55
+ const nodeIdentity_ts_1 = require("../utility/nodeIdentity.js");
53
56
  const validator = __importStar(require("./validationWrapper.js"));
54
57
  const DEFAULT_LOG_FOLDER = 'log';
55
58
  const DEFAULT_COMPONENTS_FOLDER = 'components';
@@ -62,6 +65,30 @@ const INVALID_RETENTION_VALUE_MSG = "Invalid logging.rotation.retention value. V
62
65
  // Units accepted for rotation durations, matching convertToMS: note capital M (months) vs lowercase m (minutes).
63
66
  const VALID_ROTATION_DURATION_UNITS = ['D', 'd', 'H', 'h', 'M', 'm'];
64
67
  const UNDEFINED_OPS_API = 'rootPath config parameter is undefined';
68
+ /**
69
+ * What `deploy_component` writes into a root-config entry, plus the deployment-level keys
70
+ * componentLoader reads off it — the shape of a `sql` application deployed before the name was
71
+ * reserved. Closed to new keys: nothing new may take this shape.
72
+ */
73
+ exports.LEGACY_SQL_APPLICATION_KEYS = [
74
+ 'package',
75
+ 'files',
76
+ 'path',
77
+ 'install',
78
+ 'credentials',
79
+ 'loadComponent',
80
+ 'urlPath',
81
+ 'host',
82
+ 'branchedDatabases',
83
+ 'network',
84
+ 'port',
85
+ 'securePort',
86
+ ];
87
+ function isLegacySqlApplicationEntry(value) {
88
+ if (typeof value !== 'object' || value === null)
89
+ return false;
90
+ return exports.LEGACY_SQL_APPLICATION_KEYS.some((key) => Object.hasOwn(value, key));
91
+ }
65
92
  // Directory-path validation. The previous `([...]+)+$` nested quantifier
66
93
  // backtracked catastrophically (ReDoS), hanging the CLI at 100% CPU on any
67
94
  // value with a character outside its allow-list after a run of valid ones — a
@@ -84,6 +111,10 @@ const DIRECTORY_PATH_PATTERN = /^(?!\s*$)[^\x00-\x1f\x7f\x80-\x9f\u2028\u2029]+$
84
111
  const portConstraints = joi_1.default.alternatives([number.min(0), string])
85
112
  .optional()
86
113
  .empty(null);
114
+ // node.hostname / replication.hostname must be a bare host, not a URL (utility/nodeIdentity.ts).
115
+ // `Joi.any` (not `string`) so validateBareHost reports a non-string with its own reason.
116
+ const bareHostConstraints = joi_1.default.any().custom(validateBareHost).optional().empty(null);
117
+ const nodeUrlConstraints = string.custom(validateNodeUrl).optional().empty(null);
87
118
  // Controlled-flow ("directional") replication fields. A route's `replicates` is either a boolean
88
119
  // (full replication on/off) or an object describing per-direction flow; `sends`/`receives` and
89
120
  // `sendsTo`/`receivesFrom` are also accepted as top-level route keys (iterateRoutes normalizes both
@@ -129,6 +160,86 @@ exports.routeConstraints = joi_1.default.alternatives([
129
160
  .empty(null),
130
161
  array.items(string),
131
162
  ]);
163
+ // Models — `models:` block opts a deployment into the per-backend registry.
164
+ // Per-backend shape is validated by a discriminated alternative on the
165
+ // `backend` field. Phase 2 (#629) lands ollama; Phase 3 (#630) lands openai.
166
+ //
167
+ // `.unknown(false)` on each known backend's schema turns field-name typos
168
+ // (`bakend: ollama`, `hsot: ...`) into boot-blocking validation errors.
169
+ // Without it, Joi's top-level `allowUnknown: true` propagates and typos
170
+ // silently survive into bootstrap. Unknown backend types (anything not in
171
+ // the `switch` list) fall through to a permissive schema so future Harper
172
+ // versions or third-party components can register their own backends
173
+ // without core schema edits — `bootstrapModels` logs+skips at runtime.
174
+ //
175
+ // `requestTimeoutMs: min(1)` (not `min(0)`) so the meaning is unambiguous:
176
+ // omit the field for "no timeout". `0` would validate but `composeSignal`
177
+ // treats it as "no timeout" via `if (!timeoutMs)`, surprising a test that
178
+ // sets 0 to mean "fail immediately".
179
+ const commonEntryFields = {
180
+ model: string.optional(),
181
+ requestTimeoutMs: number.min(1).optional(),
182
+ // Ordered fallback group — other logical names tried, in order, after this one (#1326).
183
+ fallback: joi_1.default.array().items(string).optional(),
184
+ };
185
+ const ollamaEntrySchema = joi_1.default.object({
186
+ backend: string.valid('ollama').required(),
187
+ host: string.optional(),
188
+ ...commonEntryFields,
189
+ }).unknown(false);
190
+ const openaiEntrySchema = joi_1.default.object({
191
+ backend: string.valid('openai').required(),
192
+ // `apiKey` may be a literal secret or a `${ENV_VAR}` placeholder; both
193
+ // are syntactically strings. `bootstrap.ts` runs `expandEnvVarsDeep`
194
+ // before construction; the backend rejects unresolved placeholders
195
+ // with an explicit error pointing at the env-var name.
196
+ apiKey: string.required(),
197
+ baseUrl: string.optional(),
198
+ organization: string.optional(),
199
+ ...commonEntryFields,
200
+ }).unknown(false);
201
+ const anthropicEntrySchema = joi_1.default.object({
202
+ backend: string.valid('anthropic').required(),
203
+ // Same secret-handling posture as openai's `apiKey`.
204
+ apiKey: string.required(),
205
+ baseUrl: string.optional(),
206
+ ...commonEntryFields,
207
+ }).unknown(false);
208
+ const bedrockEntrySchema = joi_1.default.object({
209
+ backend: string.valid('bedrock').required(),
210
+ // AWS credentials resolve via the SDK chain (env / shared file / IAM
211
+ // roles for service accounts) — no apiKey field. `region` is
212
+ // effectively required (Bedrock is regional) but the backend can
213
+ // fall back to AWS_REGION env, so we leave it optional here.
214
+ region: string.optional(),
215
+ ...commonEntryFields,
216
+ }).unknown(false);
217
+ const unknownBackendEntrySchema = joi_1.default.object({
218
+ backend: string.required(),
219
+ }).unknown(true);
220
+ const modelEntrySchema = joi_1.default.alternatives().conditional('.backend', {
221
+ switch: [
222
+ { is: 'ollama', then: ollamaEntrySchema },
223
+ { is: 'openai', then: openaiEntrySchema },
224
+ { is: 'anthropic', then: anthropicEntrySchema },
225
+ { is: 'bedrock', then: bedrockEntrySchema },
226
+ ],
227
+ otherwise: unknownBackendEntrySchema,
228
+ });
229
+ const modelsSchema = joi_1.default.object({
230
+ embedding: joi_1.default.object().pattern(joi_1.default.string(), modelEntrySchema).optional(),
231
+ generative: joi_1.default.object().pattern(joi_1.default.string(), modelEntrySchema).optional(),
232
+ });
233
+ /**
234
+ * Validate a `models:` block on its own — the hot-reload path applies a watched file's block
235
+ * without the full boot validation, and must enforce the same schema boot does.
236
+ */
237
+ function validateModelsBlock(models) {
238
+ // `allowUnknown: true` mirrors the boot path, whose top-level option propagates into this
239
+ // subtree: a sibling of embedding/generative that boots must not block a reload. Entry-level
240
+ // strictness is preserved by each backend schema's `.unknown(false)`.
241
+ return modelsSchema.validate(models, { abortEarly: false, allowUnknown: true, errors: { wrap: { label: "'" } } });
242
+ }
132
243
  let hdbRoot;
133
244
  let skipFsVal = false;
134
245
  function configValidator(configJson, skipFsValidation = false) {
@@ -179,76 +290,38 @@ function configValidator(configJson, skipFsValidation = false) {
179
290
  application: mcpApplicationSchema.optional(),
180
291
  session: mcpSessionSchema.optional(),
181
292
  });
182
- // Models — `models:` block opts a deployment into the per-backend registry.
183
- // Per-backend shape is validated by a discriminated alternative on the
184
- // `backend` field. Phase 2 (#629) lands ollama; Phase 3 (#630) lands openai.
185
- //
186
- // `.unknown(false)` on each known backend's schema turns field-name typos
187
- // (`bakend: ollama`, `hsot: ...`) into boot-blocking validation errors.
188
- // Without it, Joi's top-level `allowUnknown: true` propagates and typos
189
- // silently survive into bootstrap. Unknown backend types (anything not in
190
- // the `switch` list) fall through to a permissive schema so future Harper
191
- // versions or third-party components can register their own backends
192
- // without core schema edits — `bootstrapModels` logs+skips at runtime.
193
- //
194
- // `requestTimeoutMs: min(1)` (not `min(0)`) so the meaning is unambiguous:
195
- // omit the field for "no timeout". `0` would validate but `composeSignal`
196
- // treats it as "no timeout" via `if (!timeoutMs)`, surprising a test that
197
- // sets 0 to mean "fail immediately".
198
- const commonEntryFields = {
199
- model: string.optional(),
200
- requestTimeoutMs: number.min(1).optional(),
201
- // Ordered fallback group — other logical names tried, in order, after this one (#1326).
202
- fallback: joi_1.default.array().items(string).optional(),
203
- };
204
- const ollamaEntrySchema = joi_1.default.object({
205
- backend: string.valid('ollama').required(),
206
- host: string.optional(),
207
- ...commonEntryFields,
208
- }).unknown(false);
209
- const openaiEntrySchema = joi_1.default.object({
210
- backend: string.valid('openai').required(),
211
- // `apiKey` may be a literal secret or a `${ENV_VAR}` placeholder; both
212
- // are syntactically strings. `bootstrap.ts` runs `expandEnvVarsDeep`
213
- // before construction; the backend rejects unresolved placeholders
214
- // with an explicit error pointing at the env-var name.
215
- apiKey: string.required(),
216
- baseUrl: string.optional(),
217
- organization: string.optional(),
218
- ...commonEntryFields,
219
- }).unknown(false);
220
- const anthropicEntrySchema = joi_1.default.object({
221
- backend: string.valid('anthropic').required(),
222
- // Same secret-handling posture as openai's `apiKey`.
223
- apiKey: string.required(),
224
- baseUrl: string.optional(),
225
- ...commonEntryFields,
226
- }).unknown(false);
227
- const bedrockEntrySchema = joi_1.default.object({
228
- backend: string.valid('bedrock').required(),
229
- // AWS credentials resolve via the SDK chain (env / shared file / IAM
230
- // roles for service accounts) — no apiKey field. `region` is
231
- // effectively required (Bedrock is regional) but the backend can
232
- // fall back to AWS_REGION env, so we leave it optional here.
233
- region: string.optional(),
234
- ...commonEntryFields,
235
- }).unknown(false);
236
- const unknownBackendEntrySchema = joi_1.default.object({
237
- backend: string.required(),
238
- }).unknown(true);
239
- const modelEntrySchema = joi_1.default.alternatives().conditional('.backend', {
240
- switch: [
241
- { is: 'ollama', then: ollamaEntrySchema },
242
- { is: 'openai', then: openaiEntrySchema },
243
- { is: 'anthropic', then: anthropicEntrySchema },
244
- { is: 'bedrock', then: bedrockEntrySchema },
245
- ],
246
- otherwise: unknownBackendEntrySchema,
247
- });
248
- const modelsSchema = joi_1.default.object({
249
- embedding: joi_1.default.object().pattern(joi_1.default.string(), modelEntrySchema).optional(),
250
- generative: joi_1.default.object().pattern(joi_1.default.string(), modelEntrySchema).optional(),
293
+ // `convert: false` — validateConfig() only writes the coerced value back into configDoc for
294
+ // threads/componentsRoot/logging/storage/operationsApi, not sql, so leaving Joi's default
295
+ // convert:true on here would accept a quoted `allowFullScan: "true"` and then silently drop
296
+ // it (getSqlEngineConfig()'s typeof guard rejects the still-unconverted string).
297
+ const sqlSettingsSchema = joi_1.default.object({
298
+ engine: string.valid('legacy', 'new', 'auto').optional(),
299
+ allowFullScan: boolean.optional(),
300
+ maxSortRows: number.integer().min(1).optional(),
301
+ maxHashRows: number.integer().min(1).optional(),
302
+ })
303
+ .unknown(false)
304
+ .prefs({ convert: false });
305
+ // An application deployed under the name before it was reserved still boots; validateConfig()
306
+ // warns to rename it. Selected positively so a typo'd setting is still held to the settings
307
+ // schema instead of passing as an application.
308
+ const legacySqlApplicationSchema = joi_1.default.object({
309
+ engine: joi_1.default.any().forbidden(),
310
+ allowFullScan: joi_1.default.any().forbidden(),
311
+ maxSortRows: joi_1.default.any().forbidden(),
312
+ maxHashRows: joi_1.default.any().forbidden(),
313
+ })
314
+ .unknown(true)
315
+ .messages({
316
+ 'any.unknown': `{#label} cannot be set while 'sql' names a deployed application; redeploy that application under a different name`,
251
317
  });
318
+ const sqlSchema = joi_1.default.alternatives()
319
+ .conditional(joi_1.default.object()
320
+ .or(...exports.LEGACY_SQL_APPLICATION_KEYS)
321
+ .unknown(true), { then: legacySqlApplicationSchema, otherwise: sqlSettingsSchema })
322
+ // `false`/null is how componentLoader spells a disabled entry, so an operator who had already
323
+ // turned a pre-reservation `sql` application off keeps booting.
324
+ .allow(false, null);
252
325
  const configSchema = joi_1.default.object({
253
326
  authentication: joi_1.default.alternatives(joi_1.default.object({
254
327
  authorizeLocal: boolean,
@@ -265,8 +338,8 @@ function configValidator(configJson, skipFsValidation = false) {
265
338
  replicate: boolean.optional(),
266
339
  }),
267
340
  replication: joi_1.default.object({
268
- hostname: joi_1.default.alternatives(string, number).optional().empty(null),
269
- url: string.optional().empty(null),
341
+ hostname: bareHostConstraints,
342
+ url: nodeUrlConstraints,
270
343
  port: portConstraints,
271
344
  securePort: portConstraints,
272
345
  routes: array.optional().empty(null),
@@ -283,6 +356,10 @@ function configValidator(configJson, skipFsValidation = false) {
283
356
  copyCursorFlushIntervalMs: number.min(1).optional().empty(null),
284
357
  replayTimeout: number.min(1).optional().empty(null),
285
358
  }).optional(),
359
+ node: joi_1.default.object({
360
+ hostname: bareHostConstraints,
361
+ url: string.optional().empty(null),
362
+ }).optional(),
286
363
  componentsRoot: rootConstraints.optional(),
287
364
  localStudio: joi_1.default.object({
288
365
  enabled: enabledConstraints,
@@ -376,6 +453,26 @@ function configValidator(configJson, skipFsValidation = false) {
376
453
  writeAsync: boolean.required(),
377
454
  overlappingSync: boolean.optional(),
378
455
  caching: boolean.optional(),
456
+ blobs: joi_1.default.object({
457
+ compression: joi_1.default.object()
458
+ .pattern(
459
+ // exact content type, 'type/*' wildcard, or the 'default' entry
460
+ /^([\w.+-]+\/(\*|[\w.+-]+)|default)$/, joi_1.default.alternatives([
461
+ joi_1.default.valid(false),
462
+ // .unknown(false) so a typo'd nested field (e.g. `treshold`) is rejected instead of
463
+ // silently inheriting the top-level validate() allowUnknown:true and falling back to
464
+ // the default threshold — matching config-root.schema.json.
465
+ joi_1.default.object({ codec: joi_1.default.valid('deflate').optional(), threshold: number.min(0).optional() }).unknown(false),
466
+ ]))
467
+ // fail on keys that are not a content type, a 'type/*' wildcard, or 'default' —
468
+ // a typo'd key would otherwise silently never match anything
469
+ .unknown(false)
470
+ .optional(),
471
+ })
472
+ // reject a misspelled property directly under storage.blobs (e.g. `compresion:`), which the
473
+ // top-level validate()'s allowUnknown:true would otherwise accept and silently leave off
474
+ .unknown(false)
475
+ .optional(),
379
476
  compression: joi_1.default.alternatives([
380
477
  boolean.optional(),
381
478
  joi_1.default.object({ dictionary: string.optional(), threshold: number.optional() }),
@@ -390,6 +487,7 @@ function configValidator(configJson, skipFsValidation = false) {
390
487
  }).required(),
391
488
  mcp: mcpSchema.optional(),
392
489
  models: modelsSchema.optional(),
490
+ sql: sqlSchema.optional(),
393
491
  ignoreScripts: boolean.optional(),
394
492
  tls: joi_1.default.alternatives([joi_1.default.array().items(tlsConstraints), tlsConstraints]),
395
493
  });
@@ -411,6 +509,35 @@ function doesPathExist(pathToCheck) {
411
509
  }
412
510
  return `Specified path ${pathToCheck} does not exist.`;
413
511
  }
512
+ function validateBareHost(value, helpers) {
513
+ const violation = (0, nodeIdentity_ts_1.bareHostViolation)(value);
514
+ if (violation) {
515
+ return helpers.message(`{{#label}} ${violation}; it must be a bare hostname or IP literal (no scheme, port, or path) because it is this node's identity`);
516
+ }
517
+ return value;
518
+ }
519
+ // A node URL supplies this node's identity via its host (server/nodeName.ts urlToNodeName), so it
520
+ // must have an authority. A hostless scheme ("mailto:", "data:", "file:") parses but has no host.
521
+ // A node URL supplies this node's identity via its host (server/nodeName.ts urlToNodeName). Only
522
+ // reject the unambiguous mistake: a value written as a real URL (with a "//" authority) that still
523
+ // parses to no host. Everything else is deliberately tolerated, because urlToNodeName skips a value
524
+ // it cannot take a host from and identity falls through to another source — a scheme-less
525
+ // "node1.example.com:9933" even parses as a *scheme*, so it is indistinguishable from "mailto:" here,
526
+ // and rejecting that shape would turn a previously harmless config into a boot failure.
527
+ function validateNodeUrl(value, helpers) {
528
+ if (!value.includes('//'))
529
+ return value;
530
+ let host;
531
+ try {
532
+ host = new URL(value).hostname;
533
+ }
534
+ catch {
535
+ return value; // unparseable — skipped at runtime, not worth failing the boot over
536
+ }
537
+ if (!host)
538
+ return helpers.message('{{#label}} must be a URL with a host (e.g. "wss://node1.example.com:9933")');
539
+ return value;
540
+ }
414
541
  function validatePath(value, helpers) {
415
542
  joi_1.default.assert(value, string.pattern(DIRECTORY_PATH_PATTERN, 'directory path'));
416
543
  let resolvedValue;
@@ -1 +1 @@
1
- {"version":3,"file":"configValidator.js","sourceRoot":"","sources":["../../validation/configValidator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configValidator.js","sourceRoot":"","sources":["../../validation/configValidator.ts"],"names":[],"mappings":"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"}
@@ -41,6 +41,7 @@ const { string, number } = joi_1.default.types();
41
41
  const fs = __importStar(require("fs-extra"));
42
42
  const hdbTerms = __importStar(require("../utility/hdbTerms.js"));
43
43
  const path = __importStar(require("path"));
44
+ const nodeIdentity_ts_1 = require("../utility/nodeIdentity.js");
44
45
  const validator = __importStar(require("./validationWrapper.js"));
45
46
  exports.default = installValidator;
46
47
  /**
@@ -53,9 +54,20 @@ function installValidator(param) {
53
54
  [hdbTerms.INSTALL_PROMPTS.ROOTPATH]: joi_1.default.custom(validateRootAvailable),
54
55
  [hdbTerms.INSTALL_PROMPTS.OPERATIONSAPI_NETWORK_PORT]: joi_1.default.alternatives([number.min(0), string]).allow('null', null),
55
56
  [hdbTerms.INSTALL_PROMPTS.TC_AGREEMENT]: string.valid('yes', 'YES', 'Yes'),
57
+ // Catch a bad node identity here rather than at first boot. This runs after the v5 migration
58
+ // copies REPLICATION_HOSTNAME into NODE_HOSTNAME, so an upgrade carrying a URL-ish value is
59
+ // reported during install with the same reason the config boundary would give (harper#2218).
60
+ [hdbTerms.INSTALL_PROMPTS.NODE_HOSTNAME]: joi_1.default.custom(validateNodeHostname).allow('null', null),
56
61
  });
57
62
  return validator.validateBySchema(param, installSchema);
58
63
  }
64
+ function validateNodeHostname(value, helpers) {
65
+ const violation = (0, nodeIdentity_ts_1.bareHostViolation)(value);
66
+ if (violation) {
67
+ return helpers.message(`{{#label}} ${violation}; it must be a bare hostname or IP literal (no scheme, port, or path) because it is this node's identity`);
68
+ }
69
+ return value;
70
+ }
59
71
  function validateRootAvailable(value, helpers) {
60
72
  if (fs.existsSync(path.join(value, 'system/hdb_user/data.mdb')) ||
61
73
  fs.existsSync(path.join(value, 'system/hdb_user.mdb'))) {
@@ -1 +1 @@
1
- {"version":3,"file":"installValidator.js","sourceRoot":"","sources":["../../validation/installValidator.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEb,8CAAsB;AACtB,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,aAAG,CAAC,KAAK,EAAE,CAAC;AACvC,6CAA+B;AAC/B,iEAAmD;AACnD,2CAA6B;AAC7B,kEAAoD;AAEpD,kBAAe,gBAAgB,CAAC;AAEhC;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,KAAK;IAC9B,MAAM,aAAa,GAAG,aAAG,CAAC,MAAM,CAAC;QAChC,CAAC,QAAQ,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,aAAG,CAAC,MAAM,CAAC,qBAAqB,CAAC;QACtE,CAAE,QAAQ,CAAC,eAAuB,CAAC,0BAA0B,CAAC,EAAE,aAAG,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAC9G,MAAM,EACN,IAAI,CACJ;QACD,CAAE,QAAQ,CAAC,eAAuB,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;KACnF,CAAC,CAAC;IAEH,OAAO,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAK,EAAE,OAAO;IAC5C,IACC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,0BAA0B,CAAC,CAAC;QAC3D,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,qBAAqB,CAAC,CAAC,EACrD,CAAC;QACF,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,KAAK,qDAAqD,CAAC,CAAC;IACxF,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"installValidator.js","sourceRoot":"","sources":["../../validation/installValidator.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEb,8CAAsB;AACtB,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,aAAG,CAAC,KAAK,EAAE,CAAC;AACvC,6CAA+B;AAC/B,iEAAmD;AACnD,2CAA6B;AAC7B,gEAA+D;AAC/D,kEAAoD;AAEpD,kBAAe,gBAAgB,CAAC;AAEhC;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,KAAK;IAC9B,MAAM,aAAa,GAAG,aAAG,CAAC,MAAM,CAAC;QAChC,CAAC,QAAQ,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,aAAG,CAAC,MAAM,CAAC,qBAAqB,CAAC;QACtE,CAAE,QAAQ,CAAC,eAAuB,CAAC,0BAA0B,CAAC,EAAE,aAAG,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAC9G,MAAM,EACN,IAAI,CACJ;QACD,CAAE,QAAQ,CAAC,eAAuB,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;QACnF,6FAA6F;QAC7F,4FAA4F;QAC5F,6FAA6F;QAC7F,CAAC,QAAQ,CAAC,eAAe,CAAC,aAAa,CAAC,EAAE,aAAG,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC;KAC9F,CAAC,CAAC;IAEH,OAAO,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAK,EAAE,OAAO;IAC3C,MAAM,SAAS,GAAG,IAAA,mCAAiB,EAAC,KAAK,CAAC,CAAC;IAC3C,IAAI,SAAS,EAAE,CAAC;QACf,OAAO,OAAO,CAAC,OAAO,CACrB,cAAc,SAAS,0GAA0G,CACjI,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAK,EAAE,OAAO;IAC5C,IACC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,0BAA0B,CAAC,CAAC;QAC3D,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,qBAAqB,CAAC,CAAC,EACrD,CAAC;QACF,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,KAAK,qDAAqD,CAAC,CAAC;IACxF,CAAC;AACF,CAAC"}
@@ -13,3 +13,14 @@ export declare function validateObjectAsync(object: any, fileConstraints: any):
13
13
  * @returns {*}
14
14
  */
15
15
  export declare function validateBySchema(object: any, schema: any): Error;
16
+ /**
17
+ * Validates like `validateBySchema` and additionally hands back Joi's converted value (coerced
18
+ * types and schema defaults). `value` is Joi's best-effort conversion, so it is only meaningful
19
+ * when `error` is undefined.
20
+ * @param {{}} object
21
+ * @param {Joi.ObjectSchema} schema
22
+ */
23
+ export declare function validateAndConvertBySchema(object: any, schema: any): {
24
+ error: Error | undefined;
25
+ value: any;
26
+ };
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.validateObject = validateObject;
4
4
  exports.validateObjectAsync = validateObjectAsync;
5
5
  exports.validateBySchema = validateBySchema;
6
+ exports.validateAndConvertBySchema = validateAndConvertBySchema;
6
7
  /**
7
8
  * validationWrapper.js
8
9
  *
@@ -79,6 +80,7 @@ async function validateObjectAsync(object, fileConstraints) {
79
80
  // If no error, just return null so this will behave as the non async version.
80
81
  return null;
81
82
  }
83
+ const SCHEMA_VALIDATION_OPTIONS = { allowUnknown: true, abortEarly: false, errors: { wrap: { label: "'" } } };
82
84
  /**
83
85
  *
84
86
  * @param {{}} object
@@ -86,9 +88,20 @@ async function validateObjectAsync(object, fileConstraints) {
86
88
  * @returns {*}
87
89
  */
88
90
  function validateBySchema(object, schema) {
89
- let result = schema.validate(object, { allowUnknown: true, abortEarly: false, errors: { wrap: { label: "'" } } });
90
- if (result.error) {
91
- return new Error(result.error.message);
91
+ const { error } = schema.validate(object, SCHEMA_VALIDATION_OPTIONS);
92
+ if (error) {
93
+ return new Error(error.message);
92
94
  }
93
95
  }
96
+ /**
97
+ * Validates like `validateBySchema` and additionally hands back Joi's converted value (coerced
98
+ * types and schema defaults). `value` is Joi's best-effort conversion, so it is only meaningful
99
+ * when `error` is undefined.
100
+ * @param {{}} object
101
+ * @param {Joi.ObjectSchema} schema
102
+ */
103
+ function validateAndConvertBySchema(object, schema) {
104
+ const { error, value } = schema.validate(object, SCHEMA_VALIDATION_OPTIONS);
105
+ return { error: error ? new Error(error.message) : undefined, value };
106
+ }
94
107
  //# sourceMappingURL=validationWrapper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validationWrapper.js","sourceRoot":"","sources":["../../validation/validationWrapper.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAsDb,wCAQC;AAQD,kDAcC;AAQD,4CAMC;AAhGD;;;;;;;;;GASG;AAEH,MAAM,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AAExC,0HAA0H;AAC1H,wHAAwH;AACxH,qGAAqG;AACrG,iGAAiG;AACjG,QAAQ,CAAC,UAAU,CAAC,IAAI,GAAG,UAAU,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW;IACrE,0EAA0E;IAC1E,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE,CAAC;QACpD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,OAAO,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,GAAG,IAAI,OAAO,SAAS,CAAC;AACtG,CAAC,CAAC;AAEF,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,GAAG;IACjC,MAAM,EAAE,UAAU,KAAK;QACtB,OAAO,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC7D,CAAC;IACD,KAAK,EAAE,QAAQ,CAAC,OAAO;IACvB,OAAO,EAAE,QAAQ,CAAC,SAAS;IAC3B,MAAM,EAAE,QAAQ,CAAC,QAAQ;IACzB,MAAM,EAAE,QAAQ,CAAC,QAAQ;IACzB,IAAI,EAAE,QAAQ,CAAC,MAAM;IACrB,OAAO,EAAE,UAAU,KAAK;QACvB,OAAO,OAAO,KAAK,KAAK,SAAS,CAAC;IACnC,CAAC;CACD,CAAC;AAEF,QAAQ,CAAC,UAAU,CAAC,eAAe,GAAG,UAAU,KAAK,EAAE,OAAO;IAC7D,2FAA2F;IAC3F,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC;IACb,CAAC;IACD,IAAI,KAAK,KAAK,EAAE;QAAE,OAAO,gBAAgB,CAAC;IAE1C,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC;QAC7D,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,8DAA8D,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;AAC1F,CAAC,CAAC;AAEF,SAAgB,cAAc,CAAC,MAAM,EAAE,eAAe;IACrD,IAAI,CAAC,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QACjC,OAAO,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,cAAc,GAAG,QAAQ,CAAC,MAAM,EAAE,eAAe,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAC3E,IAAI,CAAC,cAAc;QAAE,OAAO,IAAI,CAAC;IACjC,OAAO,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;AAClC,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,mBAAmB,CAAC,MAAM,EAAE,eAAe;IAChE,IAAI,CAAC,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QACjC,OAAO,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,CAAC;QACJ,MAAM,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,eAAe,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACnE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,kDAAkD;QAClD,IAAI,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxB,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IACD,8EAA8E;IAC9E,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;;;;GAKG;AACH,SAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM;IAC9C,IAAI,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;IAElH,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"validationWrapper.js","sourceRoot":"","sources":["../../validation/validationWrapper.ts"],"names":[],"mappings":"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"}
package/index.ts CHANGED
@@ -28,8 +28,10 @@ export type {
28
28
  Session,
29
29
  SourceContext,
30
30
  SubscriptionRequest,
31
+ RecordLockOptions,
31
32
  RequestTargetOrId,
32
33
  ResourceInterface,
34
+ WritableRecord,
33
35
  } from './resources/ResourceInterface.ts';
34
36
  export type { User } from './security/user.ts';
35
37
  export type { RecordObject } from './resources/RecordEncoder.ts';
@@ -472,5 +472,57 @@
472
472
  "attribute": "__updatedtime__"
473
473
  }
474
474
  ]
475
+ },
476
+ "hdb_oidc_trust": {
477
+ "hash_attribute": "id",
478
+ "name": "hdb_oidc_trust",
479
+ "schema": "system",
480
+ "audit": true,
481
+ "attributes": [
482
+ {
483
+ "attribute": "id"
484
+ },
485
+ {
486
+ "attribute": "issuer"
487
+ },
488
+ {
489
+ "attribute": "audience"
490
+ },
491
+ {
492
+ "attribute": "claims"
493
+ },
494
+ {
495
+ "attribute": "user"
496
+ },
497
+ {
498
+ "attribute": "operations"
499
+ },
500
+ {
501
+ "attribute": "enabled"
502
+ },
503
+ {
504
+ "attribute": "description"
505
+ },
506
+ {
507
+ "attribute": "updated_by"
508
+ },
509
+ {
510
+ "attribute": "__createdtime__"
511
+ },
512
+ {
513
+ "attribute": "__updatedtime__"
514
+ }
515
+ ]
516
+ },
517
+ "hdb_oidc_token_use": {
518
+ "hash_attribute": "id",
519
+ "name": "hdb_oidc_token_use",
520
+ "schema": "system",
521
+ "audit": true,
522
+ "attributes": [
523
+ {
524
+ "attribute": "id"
525
+ }
526
+ ]
475
527
  }
476
528
  }