@harperfast/harper 5.2.13 → 5.3.0-beta.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 (655) hide show
  1. package/agent/mcpTools.ts +1 -1
  2. package/agent/session.ts +25 -14
  3. package/bin/cliOperations.ts +58 -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 +120 -4
  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 +3436 -242
  14. package/components/ApplicationScope.ts +8 -0
  15. package/components/EntryHandler.ts +59 -39
  16. package/components/OptionsWatcher.ts +440 -98
  17. package/components/RuntimeModuleTracker.ts +38 -7
  18. package/components/Scope.ts +56 -15
  19. package/components/awaitRestart.ts +84 -0
  20. package/components/componentLoader.ts +381 -32
  21. package/components/componentPreparationLock.ts +16 -5
  22. package/components/deploymentOperations.ts +4 -1
  23. package/components/deploymentRecorder.ts +9 -2
  24. package/components/mcp/adapters/harperHttp.ts +4 -0
  25. package/components/mcp/listChanged.ts +4 -0
  26. package/components/mcp/toolRegistry.ts +2 -0
  27. package/components/mcp/tools/operations.ts +9 -0
  28. package/components/mcp/tools/schemas/operationDescriptions.ts +2 -2
  29. package/components/operations.js +537 -113
  30. package/components/operationsValidation.js +98 -3
  31. package/components/packageComponent.ts +25 -1
  32. package/components/requestRestart.ts +11 -0
  33. package/components/status/ComponentStatusRegistry.ts +59 -0
  34. package/config/RootConfigWatcher.ts +240 -40
  35. package/config/configReadRetry.ts +62 -0
  36. package/config/configUtils.ts +357 -48
  37. package/config/harperConfigEnvVars.ts +170 -27
  38. package/config/parseConfigFile.ts +34 -0
  39. package/config/readConfigFileSync.ts +44 -0
  40. package/config/watcherArming.ts +59 -0
  41. package/config-root.schema.json +33 -0
  42. package/dataLayer/blobBackup.ts +160 -50
  43. package/dataLayer/delete.ts +6 -1
  44. package/dataLayer/harperBridge/ResourceBridge.ts +80 -10
  45. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/DeleteAuditLogsBeforeResults.js +3 -1
  46. package/dataLayer/hdbInfoController.ts +34 -1
  47. package/dataLayer/insert.ts +44 -1
  48. package/dataLayer/rocksdbBackup.ts +53 -10
  49. package/dataLayer/schema.ts +11 -1
  50. package/dataLayer/schemaDescribe.ts +8 -1
  51. package/dist/agent/mcpTools.js +1 -1
  52. package/dist/agent/mcpTools.js.map +1 -1
  53. package/dist/agent/session.d.ts +22 -0
  54. package/dist/agent/session.js +26 -15
  55. package/dist/agent/session.js.map +1 -1
  56. package/dist/bin/cliOperations.js +61 -9
  57. package/dist/bin/cliOperations.js.map +1 -1
  58. package/dist/bin/copyDb.d.ts +12 -1
  59. package/dist/bin/copyDb.js +248 -60
  60. package/dist/bin/copyDb.js.map +1 -1
  61. package/dist/bin/deploySetup.d.ts +2 -0
  62. package/dist/bin/deploySetup.js +11 -3
  63. package/dist/bin/deploySetup.js.map +1 -1
  64. package/dist/bin/harper.js +1 -1
  65. package/dist/bin/harper.js.map +1 -1
  66. package/dist/bin/help.js +4 -1
  67. package/dist/bin/help.js.map +1 -1
  68. package/dist/bin/lite.js +4 -1
  69. package/dist/bin/lite.js.map +1 -1
  70. package/dist/bin/restart.js +91 -6
  71. package/dist/bin/restart.js.map +1 -1
  72. package/dist/bin/run.js +4 -10
  73. package/dist/bin/run.js.map +1 -1
  74. package/dist/bin/upgrade.js +4 -3
  75. package/dist/bin/upgrade.js.map +1 -1
  76. package/dist/bin/workloadIdentity.d.ts +18 -0
  77. package/dist/bin/workloadIdentity.js +100 -0
  78. package/dist/bin/workloadIdentity.js.map +1 -0
  79. package/dist/components/Application.d.ts +235 -17
  80. package/dist/components/Application.js +3038 -238
  81. package/dist/components/Application.js.map +1 -1
  82. package/dist/components/ApplicationScope.d.ts +8 -0
  83. package/dist/components/ApplicationScope.js +7 -0
  84. package/dist/components/ApplicationScope.js.map +1 -1
  85. package/dist/components/EntryHandler.js +26 -10
  86. package/dist/components/EntryHandler.js.map +1 -1
  87. package/dist/components/OptionsWatcher.d.ts +4 -0
  88. package/dist/components/OptionsWatcher.js +440 -99
  89. package/dist/components/OptionsWatcher.js.map +1 -1
  90. package/dist/components/RuntimeModuleTracker.js +40 -6
  91. package/dist/components/RuntimeModuleTracker.js.map +1 -1
  92. package/dist/components/Scope.js +52 -13
  93. package/dist/components/Scope.js.map +1 -1
  94. package/dist/components/awaitRestart.d.ts +33 -0
  95. package/dist/components/awaitRestart.js +61 -0
  96. package/dist/components/awaitRestart.js.map +1 -0
  97. package/dist/components/componentLoader.d.ts +38 -1
  98. package/dist/components/componentLoader.js +313 -24
  99. package/dist/components/componentLoader.js.map +1 -1
  100. package/dist/components/componentPreparationLock.d.ts +5 -0
  101. package/dist/components/componentPreparationLock.js +14 -6
  102. package/dist/components/componentPreparationLock.js.map +1 -1
  103. package/dist/components/deploymentOperations.js +4 -1
  104. package/dist/components/deploymentOperations.js.map +1 -1
  105. package/dist/components/deploymentRecorder.d.ts +4 -2
  106. package/dist/components/deploymentRecorder.js +1 -0
  107. package/dist/components/deploymentRecorder.js.map +1 -1
  108. package/dist/components/mcp/adapters/harperHttp.js +4 -0
  109. package/dist/components/mcp/adapters/harperHttp.js.map +1 -1
  110. package/dist/components/mcp/listChanged.js +5 -0
  111. package/dist/components/mcp/listChanged.js.map +1 -1
  112. package/dist/components/mcp/toolRegistry.d.ts +1 -0
  113. package/dist/components/mcp/toolRegistry.js.map +1 -1
  114. package/dist/components/mcp/tools/operations.d.ts +5 -0
  115. package/dist/components/mcp/tools/operations.js +9 -0
  116. package/dist/components/mcp/tools/operations.js.map +1 -1
  117. package/dist/components/mcp/tools/schemas/operationDescriptions.js +2 -2
  118. package/dist/components/mcp/tools/schemas/operationDescriptions.js.map +1 -1
  119. package/dist/components/operations.d.ts +28 -0
  120. package/dist/components/operations.js +476 -113
  121. package/dist/components/operations.js.map +1 -1
  122. package/dist/components/operationsValidation.js +97 -3
  123. package/dist/components/operationsValidation.js.map +1 -1
  124. package/dist/components/packageComponent.js +24 -0
  125. package/dist/components/packageComponent.js.map +1 -1
  126. package/dist/components/requestRestart.d.ts +1 -0
  127. package/dist/components/requestRestart.js +7 -0
  128. package/dist/components/requestRestart.js.map +1 -1
  129. package/dist/components/status/ComponentStatusRegistry.d.ts +0 -4
  130. package/dist/components/status/ComponentStatusRegistry.js +63 -0
  131. package/dist/components/status/ComponentStatusRegistry.js.map +1 -1
  132. package/dist/config/RootConfigWatcher.d.ts +9 -1
  133. package/dist/config/RootConfigWatcher.js +228 -37
  134. package/dist/config/RootConfigWatcher.js.map +1 -1
  135. package/dist/config/configReadRetry.d.ts +8 -0
  136. package/dist/config/configReadRetry.js +62 -0
  137. package/dist/config/configReadRetry.js.map +1 -0
  138. package/dist/config/configUtils.d.ts +11 -2
  139. package/dist/config/configUtils.js +304 -47
  140. package/dist/config/configUtils.js.map +1 -1
  141. package/dist/config/harperConfigEnvVars.d.ts +16 -0
  142. package/dist/config/harperConfigEnvVars.js +162 -25
  143. package/dist/config/harperConfigEnvVars.js.map +1 -1
  144. package/dist/config/parseConfigFile.d.ts +4 -0
  145. package/dist/config/parseConfigFile.js +35 -0
  146. package/dist/config/parseConfigFile.js.map +1 -0
  147. package/dist/config/readConfigFileSync.d.ts +1 -0
  148. package/dist/config/readConfigFileSync.js +47 -0
  149. package/dist/config/readConfigFileSync.js.map +1 -0
  150. package/dist/config/watcherArming.d.ts +15 -0
  151. package/dist/config/watcherArming.js +59 -0
  152. package/dist/config/watcherArming.js.map +1 -0
  153. package/dist/dataLayer/blobBackup.d.ts +49 -20
  154. package/dist/dataLayer/blobBackup.js +139 -50
  155. package/dist/dataLayer/blobBackup.js.map +1 -1
  156. package/dist/dataLayer/delete.js +1 -1
  157. package/dist/dataLayer/delete.js.map +1 -1
  158. package/dist/dataLayer/harperBridge/ResourceBridge.d.ts +14 -1
  159. package/dist/dataLayer/harperBridge/ResourceBridge.js +72 -12
  160. package/dist/dataLayer/harperBridge/ResourceBridge.js.map +1 -1
  161. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/DeleteAuditLogsBeforeResults.d.ts +3 -1
  162. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/DeleteAuditLogsBeforeResults.js +3 -1
  163. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/DeleteAuditLogsBeforeResults.js.map +1 -1
  164. package/dist/dataLayer/hdbInfoController.d.ts +10 -0
  165. package/dist/dataLayer/hdbInfoController.js +30 -1
  166. package/dist/dataLayer/hdbInfoController.js.map +1 -1
  167. package/dist/dataLayer/insert.d.ts +9 -1
  168. package/dist/dataLayer/insert.js +30 -0
  169. package/dist/dataLayer/insert.js.map +1 -1
  170. package/dist/dataLayer/rocksdbBackup.d.ts +2 -2
  171. package/dist/dataLayer/rocksdbBackup.js +45 -8
  172. package/dist/dataLayer/rocksdbBackup.js.map +1 -1
  173. package/dist/dataLayer/schema.js +8 -0
  174. package/dist/dataLayer/schema.js.map +1 -1
  175. package/dist/dataLayer/schemaDescribe.js +8 -1
  176. package/dist/dataLayer/schemaDescribe.js.map +1 -1
  177. package/dist/index.d.ts +2 -1
  178. package/dist/index.js +4 -1
  179. package/dist/index.js.map +1 -1
  180. package/dist/json/systemSchema.json +55 -0
  181. package/dist/resources/DatabaseTransaction.d.ts +77 -0
  182. package/dist/resources/DatabaseTransaction.js +586 -54
  183. package/dist/resources/DatabaseTransaction.js.map +1 -1
  184. package/dist/resources/LMDBTransaction.d.ts +2 -1
  185. package/dist/resources/LMDBTransaction.js +43 -6
  186. package/dist/resources/LMDBTransaction.js.map +1 -1
  187. package/dist/resources/PrimaryRocksDatabase.d.ts +1 -0
  188. package/dist/resources/PrimaryRocksDatabase.js +49 -5
  189. package/dist/resources/PrimaryRocksDatabase.js.map +1 -1
  190. package/dist/resources/RecordEncoder.d.ts +20 -0
  191. package/dist/resources/RecordEncoder.js +110 -9
  192. package/dist/resources/RecordEncoder.js.map +1 -1
  193. package/dist/resources/RequestTarget.d.ts +2 -0
  194. package/dist/resources/RequestTarget.js.map +1 -1
  195. package/dist/resources/Resource.js +117 -24
  196. package/dist/resources/Resource.js.map +1 -1
  197. package/dist/resources/ResourceInterface.d.ts +28 -1
  198. package/dist/resources/ResourceInterface.js.map +1 -1
  199. package/dist/resources/RocksIndexStore.d.ts +6 -1
  200. package/dist/resources/RocksIndexStore.js +24 -9
  201. package/dist/resources/RocksIndexStore.js.map +1 -1
  202. package/dist/resources/RocksTransactionLogStore.d.ts +24 -1
  203. package/dist/resources/RocksTransactionLogStore.js +160 -49
  204. package/dist/resources/RocksTransactionLogStore.js.map +1 -1
  205. package/dist/resources/Table.d.ts +165 -10
  206. package/dist/resources/Table.js +1805 -303
  207. package/dist/resources/Table.js.map +1 -1
  208. package/dist/resources/analytics/write.js +10 -3
  209. package/dist/resources/analytics/write.js.map +1 -1
  210. package/dist/resources/auditStore.d.ts +181 -2
  211. package/dist/resources/auditStore.js +640 -29
  212. package/dist/resources/auditStore.js.map +1 -1
  213. package/dist/resources/blob.d.ts +129 -9
  214. package/dist/resources/blob.js +992 -114
  215. package/dist/resources/blob.js.map +1 -1
  216. package/dist/resources/branchDatabase.d.ts +48 -0
  217. package/dist/resources/branchDatabase.js +892 -0
  218. package/dist/resources/branchDatabase.js.map +1 -0
  219. package/dist/resources/crdt.js +50 -12
  220. package/dist/resources/crdt.js.map +1 -1
  221. package/dist/resources/dataLoader.js +3 -4
  222. package/dist/resources/dataLoader.js.map +1 -1
  223. package/dist/resources/databases.d.ts +157 -14
  224. package/dist/resources/databases.js +1462 -325
  225. package/dist/resources/databases.js.map +1 -1
  226. package/dist/resources/defineTable.d.ts +10 -2
  227. package/dist/resources/defineTable.js +9 -1
  228. package/dist/resources/defineTable.js.map +1 -1
  229. package/dist/resources/derivedIndexRegistry.d.ts +5 -0
  230. package/dist/resources/derivedIndexRegistry.js +68 -0
  231. package/dist/resources/derivedIndexRegistry.js.map +1 -0
  232. package/dist/resources/derivedIndexRuntime.d.ts +215 -0
  233. package/dist/resources/derivedIndexRuntime.js +2027 -0
  234. package/dist/resources/derivedIndexRuntime.js.map +1 -0
  235. package/dist/resources/graphql.d.ts +1 -1
  236. package/dist/resources/graphql.js +52 -16
  237. package/dist/resources/graphql.js.map +1 -1
  238. package/dist/resources/indexes/HierarchicalNavigableSmallWorld.d.ts +103 -9
  239. package/dist/resources/indexes/HierarchicalNavigableSmallWorld.js +854 -41
  240. package/dist/resources/indexes/HierarchicalNavigableSmallWorld.js.map +1 -1
  241. package/dist/resources/indexes/hnswDerivedIndex.d.ts +67 -0
  242. package/dist/resources/indexes/hnswDerivedIndex.js +464 -0
  243. package/dist/resources/indexes/hnswDerivedIndex.js.map +1 -0
  244. package/dist/resources/indexes/hnswPlaneBinding.d.ts +65 -0
  245. package/dist/resources/indexes/hnswPlaneBinding.js +91 -0
  246. package/dist/resources/indexes/hnswPlaneBinding.js.map +1 -0
  247. package/dist/resources/longLivedTransactions.d.ts +71 -0
  248. package/dist/resources/longLivedTransactions.js +358 -0
  249. package/dist/resources/longLivedTransactions.js.map +1 -0
  250. package/dist/resources/models/backendRegistry.d.ts +26 -0
  251. package/dist/resources/models/backendRegistry.js +60 -2
  252. package/dist/resources/models/backendRegistry.js.map +1 -1
  253. package/dist/resources/models/bootstrap.d.ts +33 -1
  254. package/dist/resources/models/bootstrap.js +416 -31
  255. package/dist/resources/models/bootstrap.js.map +1 -1
  256. package/dist/resources/nodeIdMapping.d.ts +5 -0
  257. package/dist/resources/nodeIdMapping.js +49 -0
  258. package/dist/resources/nodeIdMapping.js.map +1 -1
  259. package/dist/resources/recordLock.d.ts +123 -0
  260. package/dist/resources/recordLock.js +315 -0
  261. package/dist/resources/recordLock.js.map +1 -0
  262. package/dist/resources/recordLockCoordinator.d.ts +557 -0
  263. package/dist/resources/recordLockCoordinator.js +2565 -0
  264. package/dist/resources/recordLockCoordinator.js.map +1 -0
  265. package/dist/resources/replayLogs.d.ts +14 -1
  266. package/dist/resources/replayLogs.js +157 -24
  267. package/dist/resources/replayLogs.js.map +1 -1
  268. package/dist/resources/replayLogsGuards.d.ts +94 -7
  269. package/dist/resources/replayLogsGuards.js +111 -7
  270. package/dist/resources/replayLogsGuards.js.map +1 -1
  271. package/dist/resources/replicatedApplyFailure.d.ts +16 -0
  272. package/dist/resources/replicatedApplyFailure.js +63 -0
  273. package/dist/resources/replicatedApplyFailure.js.map +1 -0
  274. package/dist/resources/scheduler/scheduler.js +3 -3
  275. package/dist/resources/scheduler/scheduler.js.map +1 -1
  276. package/dist/resources/search.d.ts +10 -4
  277. package/dist/resources/search.js +283 -37
  278. package/dist/resources/search.js.map +1 -1
  279. package/dist/resources/tracked.d.ts +5 -1
  280. package/dist/resources/tracked.js +74 -23
  281. package/dist/resources/tracked.js.map +1 -1
  282. package/dist/resources/transactionBroadcast.d.ts +1 -1
  283. package/dist/resources/transactionBroadcast.js +2 -2
  284. package/dist/resources/transactionBroadcast.js.map +1 -1
  285. package/dist/security/auth.js +61 -30
  286. package/dist/security/auth.js.map +1 -1
  287. package/dist/security/authn/oidc/claims.d.ts +22 -0
  288. package/dist/security/authn/oidc/claims.js +71 -0
  289. package/dist/security/authn/oidc/claims.js.map +1 -0
  290. package/dist/security/authn/oidc/identityToken.d.ts +27 -0
  291. package/dist/security/authn/oidc/identityToken.js +111 -0
  292. package/dist/security/authn/oidc/identityToken.js.map +1 -0
  293. package/dist/security/authn/oidc/jwks.d.ts +25 -0
  294. package/dist/security/authn/oidc/jwks.js +261 -0
  295. package/dist/security/authn/oidc/jwks.js.map +1 -0
  296. package/dist/security/authn/oidc/providers/generic.d.ts +13 -0
  297. package/dist/security/authn/oidc/providers/generic.js +34 -0
  298. package/dist/security/authn/oidc/providers/generic.js.map +1 -0
  299. package/dist/security/authn/oidc/providers/githubActions.d.ts +11 -0
  300. package/dist/security/authn/oidc/providers/githubActions.js +129 -0
  301. package/dist/security/authn/oidc/providers/githubActions.js.map +1 -0
  302. package/dist/security/authn/oidc/providers/index.d.ts +37 -0
  303. package/dist/security/authn/oidc/providers/index.js +24 -0
  304. package/dist/security/authn/oidc/providers/index.js.map +1 -0
  305. package/dist/security/authn/oidc/tokenExchange.d.ts +12 -0
  306. package/dist/security/authn/oidc/tokenExchange.js +306 -0
  307. package/dist/security/authn/oidc/tokenExchange.js.map +1 -0
  308. package/dist/security/authn/oidc/trustPolicyOperations.d.ts +49 -0
  309. package/dist/security/authn/oidc/trustPolicyOperations.js +358 -0
  310. package/dist/security/authn/oidc/trustPolicyOperations.js.map +1 -0
  311. package/dist/security/authn/oidc/types.d.ts +38 -0
  312. package/dist/security/authn/oidc/types.js +6 -0
  313. package/dist/security/authn/oidc/types.js.map +1 -0
  314. package/dist/security/certificateVerification/index.js +40 -11
  315. package/dist/security/certificateVerification/index.js.map +1 -1
  316. package/dist/security/certificateVerification/trustedIssuers.d.ts +24 -0
  317. package/dist/security/certificateVerification/trustedIssuers.js +79 -0
  318. package/dist/security/certificateVerification/trustedIssuers.js.map +1 -0
  319. package/dist/security/certificateVerification/types.d.ts +1 -0
  320. package/dist/security/credentialProvenance.d.ts +35 -0
  321. package/dist/security/credentialProvenance.js +51 -0
  322. package/dist/security/credentialProvenance.js.map +1 -0
  323. package/dist/security/credentialRejection.d.ts +4 -0
  324. package/dist/security/credentialRejection.js +24 -0
  325. package/dist/security/credentialRejection.js.map +1 -0
  326. package/dist/security/deferredAuthentication.d.ts +36 -0
  327. package/dist/security/deferredAuthentication.js +70 -0
  328. package/dist/security/deferredAuthentication.js.map +1 -0
  329. package/dist/security/impersonation.d.ts +21 -0
  330. package/dist/security/impersonation.js +108 -9
  331. package/dist/security/impersonation.js.map +1 -1
  332. package/dist/security/jsLoader.d.ts +6 -0
  333. package/dist/security/jsLoader.js +77 -15
  334. package/dist/security/jsLoader.js.map +1 -1
  335. package/dist/security/keys.js +301 -71
  336. package/dist/security/keys.js.map +1 -1
  337. package/dist/security/operationScope.d.ts +21 -0
  338. package/dist/security/operationScope.js +36 -0
  339. package/dist/security/operationScope.js.map +1 -0
  340. package/dist/security/permissionsTranslator.js +21 -0
  341. package/dist/security/permissionsTranslator.js.map +1 -1
  342. package/dist/security/tokenAuthentication.d.ts +19 -1
  343. package/dist/security/tokenAuthentication.js +191 -10
  344. package/dist/security/tokenAuthentication.js.map +1 -1
  345. package/dist/security/user.js +4 -3
  346. package/dist/security/user.js.map +1 -1
  347. package/dist/server/DurableSubscriptionsSession.d.ts +2 -2
  348. package/dist/server/DurableSubscriptionsSession.js +67 -10
  349. package/dist/server/DurableSubscriptionsSession.js.map +1 -1
  350. package/dist/server/REST.js +106 -2
  351. package/dist/server/REST.js.map +1 -1
  352. package/dist/server/graphqlQuerying.js +4 -0
  353. package/dist/server/graphqlQuerying.js.map +1 -1
  354. package/dist/server/http.d.ts +16 -1
  355. package/dist/server/http.js +122 -17
  356. package/dist/server/http.js.map +1 -1
  357. package/dist/server/itc/serverHandlers.js +8 -1
  358. package/dist/server/itc/serverHandlers.js.map +1 -1
  359. package/dist/server/jobs/jobProcess.js +6 -2
  360. package/dist/server/jobs/jobProcess.js.map +1 -1
  361. package/dist/server/jobs/jobs.js +4 -1
  362. package/dist/server/jobs/jobs.js.map +1 -1
  363. package/dist/server/liveSubscriptionAuth.d.ts +26 -4
  364. package/dist/server/liveSubscriptionAuth.js +105 -39
  365. package/dist/server/liveSubscriptionAuth.js.map +1 -1
  366. package/dist/server/loadRootComponents.js +49 -10
  367. package/dist/server/loadRootComponents.js.map +1 -1
  368. package/dist/server/mqtt.d.ts +2 -0
  369. package/dist/server/mqtt.js +165 -30
  370. package/dist/server/mqtt.js.map +1 -1
  371. package/dist/server/nodeName.d.ts +2 -0
  372. package/dist/server/nodeName.js +107 -23
  373. package/dist/server/nodeName.js.map +1 -1
  374. package/dist/server/serverHelpers/Headers.d.ts +27 -0
  375. package/dist/server/serverHelpers/Headers.js +145 -1
  376. package/dist/server/serverHelpers/Headers.js.map +1 -1
  377. package/dist/server/serverHelpers/NodeAdapterResponse.d.ts +48 -0
  378. package/dist/server/serverHelpers/NodeAdapterResponse.js +220 -0
  379. package/dist/server/serverHelpers/NodeAdapterResponse.js.map +1 -0
  380. package/dist/server/serverHelpers/Request.d.ts +5 -10
  381. package/dist/server/serverHelpers/Request.js +38 -136
  382. package/dist/server/serverHelpers/Request.js.map +1 -1
  383. package/dist/server/serverHelpers/contentTypes.d.ts +11 -0
  384. package/dist/server/serverHelpers/contentTypes.js +221 -40
  385. package/dist/server/serverHelpers/contentTypes.js.map +1 -1
  386. package/dist/server/serverHelpers/deployValidationState.d.ts +3 -0
  387. package/dist/server/serverHelpers/deployValidationState.js +9 -19
  388. package/dist/server/serverHelpers/deployValidationState.js.map +1 -1
  389. package/dist/server/serverHelpers/operationAuthorizationState.d.ts +12 -0
  390. package/dist/server/serverHelpers/operationAuthorizationState.js +24 -2
  391. package/dist/server/serverHelpers/operationAuthorizationState.js.map +1 -1
  392. package/dist/server/serverHelpers/registeredOperations.d.ts +5 -4
  393. package/dist/server/serverHelpers/registeredOperations.js +74 -21
  394. package/dist/server/serverHelpers/registeredOperations.js.map +1 -1
  395. package/dist/server/serverHelpers/requestSanitization.d.ts +11 -0
  396. package/dist/server/serverHelpers/requestSanitization.js +20 -0
  397. package/dist/server/serverHelpers/requestSanitization.js.map +1 -0
  398. package/dist/server/serverHelpers/serverHandlers.js +6 -3
  399. package/dist/server/serverHelpers/serverHandlers.js.map +1 -1
  400. package/dist/server/serverHelpers/serverUtilities.d.ts +18 -0
  401. package/dist/server/serverHelpers/serverUtilities.js +178 -29
  402. package/dist/server/serverHelpers/serverUtilities.js.map +1 -1
  403. package/dist/server/serverHelpers/sharedMessageEncoding.d.ts +67 -0
  404. package/dist/server/serverHelpers/sharedMessageEncoding.js +280 -0
  405. package/dist/server/serverHelpers/sharedMessageEncoding.js.map +1 -0
  406. package/dist/server/serverHelpers/uwsServer.js +19 -1
  407. package/dist/server/serverHelpers/uwsServer.js.map +1 -1
  408. package/dist/server/static.js +24 -28
  409. package/dist/server/static.js.map +1 -1
  410. package/dist/server/storageReclamation.d.ts +5 -0
  411. package/dist/server/storageReclamation.js +17 -1
  412. package/dist/server/storageReclamation.js.map +1 -1
  413. package/dist/server/threads/isolatedApplications.d.ts +47 -0
  414. package/dist/server/threads/isolatedApplications.js +171 -0
  415. package/dist/server/threads/isolatedApplications.js.map +1 -0
  416. package/dist/server/threads/itc.d.ts +7 -2
  417. package/dist/server/threads/itc.js +5 -1
  418. package/dist/server/threads/itc.js.map +1 -1
  419. package/dist/server/threads/logRotationTransport.d.ts +1 -0
  420. package/dist/server/threads/logRotationTransport.js +33 -0
  421. package/dist/server/threads/logRotationTransport.js.map +1 -0
  422. package/dist/server/threads/manageThreads.d.ts +83 -3
  423. package/dist/server/threads/manageThreads.js +769 -75
  424. package/dist/server/threads/manageThreads.js.map +1 -1
  425. package/dist/server/threads/socketRouter.d.ts +1 -0
  426. package/dist/server/threads/socketRouter.js +277 -31
  427. package/dist/server/threads/socketRouter.js.map +1 -1
  428. package/dist/server/threads/threadHeapMemory.d.ts +2 -0
  429. package/dist/server/threads/threadHeapMemory.js +31 -0
  430. package/dist/server/threads/threadHeapMemory.js.map +1 -0
  431. package/dist/server/threads/threadServer.js +76 -22
  432. package/dist/server/threads/threadServer.js.map +1 -1
  433. package/dist/sqlEngine/config.d.ts +1 -3
  434. package/dist/sqlEngine/config.js +19 -16
  435. package/dist/sqlEngine/config.js.map +1 -1
  436. package/dist/sqlTranslator/index.d.ts +1 -1
  437. package/dist/sqlTranslator/index.js +30 -7
  438. package/dist/sqlTranslator/index.js.map +1 -1
  439. package/dist/upgrade/directives/5-3-0.d.ts +7 -0
  440. package/dist/upgrade/directives/5-3-0.js +148 -0
  441. package/dist/upgrade/directives/5-3-0.js.map +1 -0
  442. package/dist/upgrade/directives/directivesController.js +2 -1
  443. package/dist/upgrade/directives/directivesController.js.map +1 -1
  444. package/dist/utility/OperationFunctionCaller.js +2 -1
  445. package/dist/utility/OperationFunctionCaller.js.map +1 -1
  446. package/dist/utility/common_utils.d.ts +16 -0
  447. package/dist/utility/common_utils.js +32 -6
  448. package/dist/utility/common_utils.js.map +1 -1
  449. package/dist/utility/componentNames.d.ts +8 -0
  450. package/dist/utility/componentNames.js +12 -1
  451. package/dist/utility/componentNames.js.map +1 -1
  452. package/dist/utility/environment/environmentManager.js +3 -6
  453. package/dist/utility/environment/environmentManager.js.map +1 -1
  454. package/dist/utility/environment/systemInformation.d.ts +1 -0
  455. package/dist/utility/environment/systemInformation.js +1 -0
  456. package/dist/utility/environment/systemInformation.js.map +1 -1
  457. package/dist/utility/errors/commonErrors.d.ts +2 -0
  458. package/dist/utility/errors/commonErrors.js +2 -0
  459. package/dist/utility/errors/commonErrors.js.map +1 -1
  460. package/dist/utility/errors/hdbError.d.ts +33 -0
  461. package/dist/utility/errors/hdbError.js +58 -1
  462. package/dist/utility/errors/hdbError.js.map +1 -1
  463. package/dist/utility/globalSchema.d.ts +18 -0
  464. package/dist/utility/hdbTerms.d.ts +18 -0
  465. package/dist/utility/hdbTerms.js +20 -2
  466. package/dist/utility/hdbTerms.js.map +1 -1
  467. package/dist/utility/logging/harper_logger.d.ts +2 -0
  468. package/dist/utility/logging/harper_logger.js +286 -30
  469. package/dist/utility/logging/harper_logger.js.map +1 -1
  470. package/dist/utility/logging/logGenerationCoordinator.d.ts +35 -0
  471. package/dist/utility/logging/logGenerationCoordinator.js +184 -0
  472. package/dist/utility/logging/logGenerationCoordinator.js.map +1 -0
  473. package/dist/utility/logging/logRotation.d.ts +46 -0
  474. package/dist/utility/logging/logRotation.js +365 -0
  475. package/dist/utility/logging/logRotation.js.map +1 -0
  476. package/dist/utility/logging/logRotator.d.ts +1 -1
  477. package/dist/utility/logging/logRotator.js +192 -85
  478. package/dist/utility/logging/logRotator.js.map +1 -1
  479. package/dist/utility/nodeIdentity.d.ts +9 -0
  480. package/dist/utility/nodeIdentity.js +58 -0
  481. package/dist/utility/nodeIdentity.js.map +1 -0
  482. package/dist/utility/npmUtilities.js +11 -7
  483. package/dist/utility/npmUtilities.js.map +1 -1
  484. package/dist/utility/operationPermissions.d.ts +3 -1
  485. package/dist/utility/operationPermissions.js +16 -1
  486. package/dist/utility/operationPermissions.js.map +1 -1
  487. package/dist/utility/operation_authorization.d.ts +10 -7
  488. package/dist/utility/operation_authorization.js +212 -41
  489. package/dist/utility/operation_authorization.js.map +1 -1
  490. package/dist/utility/watchPath.d.ts +29 -0
  491. package/dist/utility/watchPath.js +68 -0
  492. package/dist/utility/watchPath.js.map +1 -0
  493. package/dist/utility/watcherFallback.d.ts +41 -0
  494. package/dist/utility/watcherFallback.js +153 -0
  495. package/dist/utility/watcherFallback.js.map +1 -1
  496. package/dist/validation/configValidator.d.ts +12 -0
  497. package/dist/validation/configValidator.js +205 -75
  498. package/dist/validation/configValidator.js.map +1 -1
  499. package/dist/validation/installValidator.js +12 -0
  500. package/dist/validation/installValidator.js.map +1 -1
  501. package/dist/validation/validationWrapper.d.ts +11 -0
  502. package/dist/validation/validationWrapper.js +16 -3
  503. package/dist/validation/validationWrapper.js.map +1 -1
  504. package/index.ts +8 -0
  505. package/json/systemSchema.json +55 -0
  506. package/npm-shrinkwrap.json +286 -194
  507. package/package.json +15 -7
  508. package/resources/DESIGN.md +219 -52
  509. package/resources/DatabaseTransaction.ts +657 -52
  510. package/resources/LMDBTransaction.ts +46 -6
  511. package/resources/PrimaryRocksDatabase.ts +46 -7
  512. package/resources/RecordEncoder.ts +124 -9
  513. package/resources/RequestTarget.ts +2 -0
  514. package/resources/Resource.ts +114 -22
  515. package/resources/ResourceInterface.ts +31 -0
  516. package/resources/RocksIndexStore.ts +30 -9
  517. package/resources/RocksTransactionLogStore.ts +188 -51
  518. package/resources/Table.ts +1960 -301
  519. package/resources/analytics/write.ts +10 -3
  520. package/resources/auditStore.ts +647 -32
  521. package/resources/blob.ts +1029 -110
  522. package/resources/branchDatabase.ts +941 -0
  523. package/resources/crdt.ts +76 -12
  524. package/resources/dataLoader.ts +3 -4
  525. package/resources/databases.ts +1584 -320
  526. package/resources/defineTable.ts +18 -2
  527. package/resources/derivedIndexRegistry.ts +56 -0
  528. package/resources/derivedIndexRuntime.ts +2292 -0
  529. package/resources/graphql.ts +72 -17
  530. package/resources/indexes/HierarchicalNavigableSmallWorld.ts +911 -48
  531. package/resources/indexes/hnswDerivedIndex.ts +531 -0
  532. package/resources/indexes/hnswPlaneBinding.ts +174 -0
  533. package/resources/longLivedTransactions.ts +360 -0
  534. package/resources/models/backendRegistry.ts +84 -2
  535. package/resources/models/bootstrap.ts +473 -28
  536. package/resources/nodeIdMapping.ts +50 -0
  537. package/resources/recordLock.ts +419 -0
  538. package/resources/recordLockCoordinator.ts +3043 -0
  539. package/resources/replayLogs.ts +152 -26
  540. package/resources/replayLogsGuards.ts +171 -8
  541. package/resources/replicatedApplyFailure.ts +77 -0
  542. package/resources/scheduler/scheduler.ts +4 -4
  543. package/resources/search.ts +288 -46
  544. package/resources/tracked.ts +73 -22
  545. package/resources/transactionBroadcast.ts +3 -3
  546. package/security/auth.ts +68 -29
  547. package/security/authn/oidc/claims.ts +72 -0
  548. package/security/authn/oidc/identityToken.ts +129 -0
  549. package/security/authn/oidc/jwks.ts +260 -0
  550. package/security/authn/oidc/providers/generic.ts +40 -0
  551. package/security/authn/oidc/providers/githubActions.ts +137 -0
  552. package/security/authn/oidc/providers/index.ts +52 -0
  553. package/security/authn/oidc/tokenExchange.ts +300 -0
  554. package/security/authn/oidc/trustPolicyOperations.ts +343 -0
  555. package/security/authn/oidc/types.ts +41 -0
  556. package/security/certificateVerification/index.ts +54 -13
  557. package/security/certificateVerification/trustedIssuers.ts +76 -0
  558. package/security/certificateVerification/types.ts +1 -0
  559. package/security/credentialProvenance.ts +47 -0
  560. package/security/credentialRejection.ts +22 -0
  561. package/security/deferredAuthentication.ts +71 -0
  562. package/security/impersonation.ts +117 -12
  563. package/security/jsLoader.ts +83 -18
  564. package/security/keys.ts +298 -72
  565. package/security/operationScope.ts +33 -0
  566. package/security/permissionsTranslator.js +23 -0
  567. package/security/tokenAuthentication.ts +233 -12
  568. package/security/user.ts +4 -3
  569. package/server/DESIGN.md +194 -16
  570. package/server/DurableSubscriptionsSession.ts +71 -11
  571. package/server/REST.ts +115 -4
  572. package/server/graphqlQuerying.ts +4 -0
  573. package/server/http.ts +133 -20
  574. package/server/itc/serverHandlers.js +8 -1
  575. package/server/jobs/jobProcess.ts +8 -2
  576. package/server/jobs/jobs.ts +4 -1
  577. package/server/liveSubscriptionAuth.ts +129 -46
  578. package/server/loadRootComponents.js +50 -8
  579. package/server/mqtt.ts +179 -38
  580. package/server/nodeName.ts +103 -21
  581. package/server/serverHelpers/Headers.ts +135 -0
  582. package/server/serverHelpers/NodeAdapterResponse.ts +221 -0
  583. package/server/serverHelpers/Request.ts +33 -131
  584. package/server/serverHelpers/contentTypes.ts +217 -36
  585. package/server/serverHelpers/deployValidationState.ts +24 -13
  586. package/server/serverHelpers/operationAuthorizationState.ts +34 -3
  587. package/server/serverHelpers/registeredOperations.ts +79 -22
  588. package/server/serverHelpers/requestSanitization.ts +15 -0
  589. package/server/serverHelpers/serverHandlers.js +6 -3
  590. package/server/serverHelpers/serverUtilities.ts +232 -40
  591. package/server/serverHelpers/sharedMessageEncoding.ts +307 -0
  592. package/server/serverHelpers/uwsServer.ts +17 -2
  593. package/server/static.ts +23 -29
  594. package/server/storageReclamation.ts +15 -2
  595. package/server/threads/isolatedApplications.ts +157 -0
  596. package/server/threads/itc.js +11 -1
  597. package/server/threads/logRotationTransport.ts +40 -0
  598. package/server/threads/manageThreads.js +771 -66
  599. package/server/threads/socketRouter.ts +291 -30
  600. package/server/threads/threadHeapMemory.ts +26 -0
  601. package/server/threads/threadServer.js +73 -22
  602. package/sqlTranslator/index.ts +31 -8
  603. package/studio/web/assets/{Chat-4RrB5134.js → Chat-D3j-1yY1.js} +1 -1
  604. package/studio/web/assets/{FloatingChat-omlNMDcJ.js → FloatingChat-BxJGYcfB.js} +3 -3
  605. package/studio/web/assets/{apiToken-Bke3wvfZ.js → apiToken-CT55oWOe.js} +1 -1
  606. package/studio/web/assets/{applications-DvFDYJgK.js → applications-D9Ct9_vm.js} +1 -1
  607. package/studio/web/assets/{cssMode-C1vRa7zh.js → cssMode-DV8H7VwA.js} +1 -1
  608. package/studio/web/assets/{editor-3XRWEDWX.js → editor-uatc0unt.js} +1 -1
  609. package/studio/web/assets/{html-CTY5tdMr.js → html-Bm6D6paN.js} +1 -1
  610. package/studio/web/assets/{htmlMode-CG1vSD9t.js → htmlMode-CEn7tpLG.js} +1 -1
  611. package/studio/web/assets/{index-Dfpeofdu.js → index-BIXW6Pu4.js} +5 -5
  612. package/studio/web/assets/{index.lazy-B1VOIv-t.js → index.lazy-UI7L-Vrk.js} +1 -1
  613. package/studio/web/assets/{javascript-CJeJzGnI.js → javascript-CJ0G3AFZ.js} +1 -1
  614. package/studio/web/assets/{jsonMode-CYPBwM82.js → jsonMode-DQADAYEa.js} +1 -1
  615. package/studio/web/assets/{languageServices-IKH4GUHl.js → languageServices-CAQJXWcI.js} +1 -1
  616. package/studio/web/assets/{lspLanguageFeatures-BC8_gxKG.js → lspLanguageFeatures-CCQ8P5sY.js} +1 -1
  617. package/studio/web/assets/{notifications-BfKBpYcq.js → notifications-BbxTU6Aw.js} +1 -1
  618. package/studio/web/assets/{notifications-DFbArTfC.js → notifications-Cvb3P1lB.js} +1 -1
  619. package/studio/web/assets/{profile-Q4-T6c-S.js → profile-Yyb7gsvL.js} +1 -1
  620. package/studio/web/assets/{regions-CtkV0xje.js → regions-OgjGHlU5.js} +1 -1
  621. package/studio/web/assets/{register-1ZZuMsiA.js → register-6qwNEOY3.js} +2 -2
  622. package/studio/web/assets/{setComponentFile-ZWLcWv5X.js → setComponentFile-BilDMtgB.js} +1 -1
  623. package/studio/web/assets/{setup-DWprJyJy.js → setup-J6qJ7OIU.js} +2 -2
  624. package/studio/web/assets/{status--aNm8isn.js → status-0RWGcfyD.js} +1 -1
  625. package/studio/web/assets/{toggleHighContrast-Cq_lt3XD.js → toggleHighContrast-BIn-vErT.js} +1 -1
  626. package/studio/web/assets/{tsMode-pjgytARx.js → tsMode-DgUXku4d.js} +1 -1
  627. package/studio/web/assets/{typescript-Cdg0mqUh.js → typescript-C9orXcsM.js} +1 -1
  628. package/studio/web/assets/{useEntityRestURL-RZhaY8Rn.js → useEntityRestURL-BEoXXbUB.js} +1 -1
  629. package/studio/web/assets/{workers-BgoXIqQe.js → workers-JVzSDmgx.js} +1 -1
  630. package/studio/web/assets/{xml-BwSeDMiP.js → xml-Cq-S8S4X.js} +1 -1
  631. package/studio/web/assets/{yaml-DotCUG5l.js → yaml-sfoRdh1M.js} +1 -1
  632. package/studio/web/index.html +1 -1
  633. package/upgrade/directives/5-3-0.ts +132 -0
  634. package/upgrade/directives/directivesController.ts +2 -1
  635. package/utility/OperationFunctionCaller.ts +2 -1
  636. package/utility/common_utils.ts +30 -5
  637. package/utility/componentNames.ts +12 -0
  638. package/utility/environment/environmentManager.ts +3 -7
  639. package/utility/environment/systemInformation.ts +7 -0
  640. package/utility/errors/commonErrors.ts +4 -0
  641. package/utility/errors/hdbError.ts +57 -0
  642. package/utility/hdbTerms.ts +19 -0
  643. package/utility/logging/harper_logger.ts +278 -26
  644. package/utility/logging/logGenerationCoordinator.ts +196 -0
  645. package/utility/logging/logRotation.ts +367 -0
  646. package/utility/logging/logRotator.ts +213 -81
  647. package/utility/nodeIdentity.ts +45 -0
  648. package/utility/npmUtilities.ts +12 -8
  649. package/utility/operationPermissions.ts +18 -1
  650. package/utility/operation_authorization.ts +231 -42
  651. package/utility/watchPath.ts +63 -0
  652. package/utility/watcherFallback.ts +148 -0
  653. package/validation/configValidator.ts +215 -75
  654. package/validation/installValidator.ts +15 -0
  655. package/validation/validationWrapper.ts +18 -4
@@ -1 +1 @@
1
- {"version":3,"file":"keys.js","sourceRoot":"","sources":["../../security/keys.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"keys.js","sourceRoot":"","sources":["../../security/keys.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * A token operation scope (#2174) narrows a credential to a subset of its user's operations.
3
+ *
4
+ * It lives under two property names depending on the carrier: the claim `operations` on a JWT
5
+ * payload, and `tokenOperations` on an in-memory user principal (validateToken lifts the claim onto
6
+ * the user; verifyPerms reads it there). Every path that PRODUCES a credential or principal must
7
+ * carry the scope forward or the result is unscoped — the five bypasses this feature had to close
8
+ * were each a produce-a-credential path that forgot to. So the guard lives here, called at each such
9
+ * site, rather than re-inlined as `Array.isArray(...)` in six places that could drift apart.
10
+ *
11
+ * A present scope is an array — INCLUDING an empty (deny-all) array, which must be preserved rather
12
+ * than treated as "no scope". Anything else (absent/null) is skipped, so unscoped credentials behave
13
+ * exactly as they did before this existed.
14
+ */
15
+ export type OperationScope = string[];
16
+ /** True for a present scope: an array, including the empty deny-all array. */
17
+ export declare function hasOperationScope(scope: unknown): scope is OperationScope;
18
+ /** Copies a present scope onto a JWT payload (claim name `operations`). Returns the payload. */
19
+ export declare function attachScopeToToken<T extends object>(payload: T, scope: unknown): T;
20
+ /** Copies a present scope onto a user principal (property `tokenOperations`). Returns the user. */
21
+ export declare function attachScopeToUser<T extends object>(user: T, scope: unknown): T;
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ /**
3
+ * A token operation scope (#2174) narrows a credential to a subset of its user's operations.
4
+ *
5
+ * It lives under two property names depending on the carrier: the claim `operations` on a JWT
6
+ * payload, and `tokenOperations` on an in-memory user principal (validateToken lifts the claim onto
7
+ * the user; verifyPerms reads it there). Every path that PRODUCES a credential or principal must
8
+ * carry the scope forward or the result is unscoped — the five bypasses this feature had to close
9
+ * were each a produce-a-credential path that forgot to. So the guard lives here, called at each such
10
+ * site, rather than re-inlined as `Array.isArray(...)` in six places that could drift apart.
11
+ *
12
+ * A present scope is an array — INCLUDING an empty (deny-all) array, which must be preserved rather
13
+ * than treated as "no scope". Anything else (absent/null) is skipped, so unscoped credentials behave
14
+ * exactly as they did before this existed.
15
+ */
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.hasOperationScope = hasOperationScope;
18
+ exports.attachScopeToToken = attachScopeToToken;
19
+ exports.attachScopeToUser = attachScopeToUser;
20
+ /** True for a present scope: an array, including the empty deny-all array. */
21
+ function hasOperationScope(scope) {
22
+ return Array.isArray(scope);
23
+ }
24
+ /** Copies a present scope onto a JWT payload (claim name `operations`). Returns the payload. */
25
+ function attachScopeToToken(payload, scope) {
26
+ if (hasOperationScope(scope))
27
+ payload.operations = scope;
28
+ return payload;
29
+ }
30
+ /** Copies a present scope onto a user principal (property `tokenOperations`). Returns the user. */
31
+ function attachScopeToUser(user, scope) {
32
+ if (hasOperationScope(scope))
33
+ user.tokenOperations = scope;
34
+ return user;
35
+ }
36
+ //# sourceMappingURL=operationScope.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operationScope.js","sourceRoot":"","sources":["../../security/operationScope.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;AAKH,8CAEC;AAGD,gDAGC;AAGD,8CAGC;AAfD,8EAA8E;AAC9E,SAAgB,iBAAiB,CAAC,KAAc;IAC/C,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC7B,CAAC;AAED,gGAAgG;AAChG,SAAgB,kBAAkB,CAAmB,OAAU,EAAE,KAAc;IAC9E,IAAI,iBAAiB,CAAC,KAAK,CAAC;QAAG,OAAe,CAAC,UAAU,GAAG,KAAK,CAAC;IAClE,OAAO,OAAO,CAAC;AAChB,CAAC;AAED,mGAAmG;AACnG,SAAgB,iBAAiB,CAAmB,IAAO,EAAE,KAAc;IAC1E,IAAI,iBAAiB,CAAC,KAAK,CAAC;QAAG,IAAY,CAAC,eAAe,GAAG,KAAK,CAAC;IACpE,OAAO,IAAI,CAAC;AACb,CAAC"}
@@ -9,6 +9,12 @@ module.exports = {
9
9
  };
10
10
  const rolePermsMap = Object.create(null);
11
11
  const permsTemplateObj = (permsKey) => ({ key: permsKey, perms: {} });
12
+ // Synthetic roles (impersonation/scoped tokens, names prefixed '_' by syntheticRoleName) have
13
+ // content-derived names, so their population is unbounded — they get their own LRU-bounded map
14
+ // instead of the permanent rolePermsMap, or minting many distinct permission sets would grow a
15
+ // per-worker memo that is never freed.
16
+ const MAX_SYNTHETIC_ROLE_ENTRIES = 256;
17
+ const syntheticRolePermsMap = new Map();
12
18
  const schemaPermsTemplate = (describePerm = false) => ({
13
19
  describe: describePerm,
14
20
  tables: {},
@@ -63,6 +69,21 @@ function getRolePermissions(role) {
63
69
  // schema - if either have changed since the last time the function was called for the role, we re-run the
64
70
  // translation to get an updated permissions set
65
71
  const permsKey = JSON.stringify([role['__updatedtime__'], nonSysSchema]);
72
+ if (roleName.startsWith('_')) {
73
+ const cached = syntheticRolePermsMap.get(roleName);
74
+ if (cached && cached.key === permsKey) {
75
+ syntheticRolePermsMap.delete(roleName);
76
+ syntheticRolePermsMap.set(roleName, cached);
77
+ return cached.perms;
78
+ }
79
+ const newRolePerms = translateRolePermissions(role, nonSysSchema);
80
+ syntheticRolePermsMap.delete(roleName);
81
+ syntheticRolePermsMap.set(roleName, { key: permsKey, perms: newRolePerms });
82
+ if (syntheticRolePermsMap.size > MAX_SYNTHETIC_ROLE_ENTRIES) {
83
+ syntheticRolePermsMap.delete(syntheticRolePermsMap.keys().next().value);
84
+ }
85
+ return newRolePerms;
86
+ }
66
87
  //If key exists already, we can return the cached value
67
88
  if (rolePermsMap[roleName] && rolePermsMap[roleName].key === permsKey) {
68
89
  return rolePermsMap[roleName].perms;
@@ -1 +1 @@
1
- {"version":3,"file":"permissionsTranslator.js","sourceRoot":"","sources":["../../security/permissionsTranslator.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"permissionsTranslator.js","sourceRoot":"","sources":["../../security/permissionsTranslator.js"],"names":[],"mappings":"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"}
@@ -1,4 +1,7 @@
1
+ import { type SignOptions } from 'jsonwebtoken';
1
2
  import { type User } from './user.ts';
3
+ import type { ImpersonatePayload } from '../server/operationsServer.ts';
4
+ type StringValue = SignOptions['expiresIn'];
2
5
  interface JWTRSAKeys {
3
6
  publicKey: string;
4
7
  privateKey: string;
@@ -7,7 +10,7 @@ interface JWTRSAKeys {
7
10
  interface AuthObject {
8
11
  username?: string;
9
12
  password?: string;
10
- role?: string;
13
+ role?: string | ImpersonatePayload['role'];
11
14
  expires_in?: string | number;
12
15
  hdb_user?: User;
13
16
  purpose?: 'login';
@@ -43,6 +46,21 @@ export declare function createTokens(authObj: AuthObject): Promise<JWTTokens>;
43
46
  * @param tokenObj
44
47
  */
45
48
  export declare function refreshOperationToken(tokenObj: TokenObject): Promise<JWTTokens>;
49
+ /**
50
+ * Signs a standalone operation token. No refresh token, no write to the user record.
51
+ *
52
+ * createTokens cannot serve this: it overwrites hdb_user.refresh_token as a side effect, silently
53
+ * revoking whatever credential that user already held (#2018). The OIDC exchange (#2171) exists so
54
+ * CI holds no durable credential at all, so minting one on its behalf would defeat the point.
55
+ *
56
+ * The caller is responsible for having established that the user exists, is active, and is entitled
57
+ * to this token — nothing here re-checks that.
58
+ */
59
+ export declare function createOperationToken(user: {
60
+ username: string;
61
+ super_user: boolean;
62
+ operations?: string[];
63
+ }, expiresIn: StringValue): Promise<string>;
46
64
  export declare function validateOperationToken(token: string): Promise<any>;
47
65
  export declare function validateRefreshToken(token: string): Promise<any>;
48
66
  /**