harper 5.1.20 → 5.2.0-alpha.5

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 (395) hide show
  1. package/agent/operations.ts +13 -16
  2. package/components/Application.ts +188 -7
  3. package/components/ApplicationScope.ts +3 -0
  4. package/components/Scope.ts +12 -0
  5. package/components/anthropic/index.ts +9 -2
  6. package/components/bedrock/index.ts +25 -2
  7. package/components/componentLoader.ts +56 -7
  8. package/components/componentSecrets.ts +451 -0
  9. package/components/deploymentRecorder.ts +7 -1
  10. package/components/mcp/adapters/fastify.ts +3 -0
  11. package/components/mcp/adapters/harperHttp.ts +3 -0
  12. package/components/mcp/audit.ts +21 -6
  13. package/components/mcp/customResourceRegistry.ts +17 -38
  14. package/components/mcp/listChanged.ts +37 -20
  15. package/components/mcp/quota.ts +145 -0
  16. package/components/mcp/rateLimit.ts +152 -14
  17. package/components/mcp/resources.ts +2 -4
  18. package/components/mcp/toolRegistry.ts +73 -4
  19. package/components/mcp/tools/application.ts +77 -8
  20. package/components/mcp/tools/operations.ts +106 -36
  21. package/components/mcp/tools/schemas/operationDescriptions.ts +4 -4
  22. package/components/mcp/tools/schemas/operations.ts +5 -0
  23. package/components/mcp/transport.ts +55 -4
  24. package/components/ollama/index.ts +6 -2
  25. package/components/openai/index.ts +9 -2
  26. package/components/operations.js +204 -10
  27. package/components/operationsValidation.js +173 -0
  28. package/components/secretOperations.ts +498 -0
  29. package/config/configUtils.ts +25 -1
  30. package/config-app.schema.json +81 -0
  31. package/config-root.schema.json +8 -1
  32. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializePaths.js +4 -3
  33. package/dataLayer/readAuditLog.ts +14 -0
  34. package/dataLayer/schemaDescribe.ts +1 -0
  35. package/dist/agent/operations.d.ts +7 -4
  36. package/dist/agent/operations.js +13 -15
  37. package/dist/agent/operations.js.map +1 -1
  38. package/dist/components/Application.d.ts +25 -2
  39. package/dist/components/Application.js +166 -7
  40. package/dist/components/Application.js.map +1 -1
  41. package/dist/components/ApplicationScope.d.ts +2 -0
  42. package/dist/components/ApplicationScope.js +3 -0
  43. package/dist/components/ApplicationScope.js.map +1 -1
  44. package/dist/components/Scope.d.ts +8 -0
  45. package/dist/components/Scope.js +11 -0
  46. package/dist/components/Scope.js.map +1 -1
  47. package/dist/components/anthropic/index.d.ts +4 -1
  48. package/dist/components/anthropic/index.js +4 -2
  49. package/dist/components/anthropic/index.js.map +1 -1
  50. package/dist/components/bedrock/index.d.ts +4 -1
  51. package/dist/components/bedrock/index.js +22 -2
  52. package/dist/components/bedrock/index.js.map +1 -1
  53. package/dist/components/componentLoader.d.ts +2 -0
  54. package/dist/components/componentLoader.js +52 -10
  55. package/dist/components/componentLoader.js.map +1 -1
  56. package/dist/components/componentSecrets.d.ts +63 -0
  57. package/dist/components/componentSecrets.js +405 -0
  58. package/dist/components/componentSecrets.js.map +1 -0
  59. package/dist/components/deploymentRecorder.d.ts +3 -0
  60. package/dist/components/deploymentRecorder.js +4 -3
  61. package/dist/components/deploymentRecorder.js.map +1 -1
  62. package/dist/components/mcp/adapters/fastify.d.ts +2 -0
  63. package/dist/components/mcp/adapters/fastify.js +1 -0
  64. package/dist/components/mcp/adapters/fastify.js.map +1 -1
  65. package/dist/components/mcp/adapters/harperHttp.d.ts +2 -0
  66. package/dist/components/mcp/adapters/harperHttp.js +1 -0
  67. package/dist/components/mcp/adapters/harperHttp.js.map +1 -1
  68. package/dist/components/mcp/audit.d.ts +2 -2
  69. package/dist/components/mcp/audit.js +20 -5
  70. package/dist/components/mcp/audit.js.map +1 -1
  71. package/dist/components/mcp/customResourceRegistry.d.ts +5 -12
  72. package/dist/components/mcp/customResourceRegistry.js +15 -30
  73. package/dist/components/mcp/customResourceRegistry.js.map +1 -1
  74. package/dist/components/mcp/listChanged.d.ts +7 -2
  75. package/dist/components/mcp/listChanged.js +28 -0
  76. package/dist/components/mcp/listChanged.js.map +1 -1
  77. package/dist/components/mcp/quota.d.ts +31 -0
  78. package/dist/components/mcp/quota.js +155 -0
  79. package/dist/components/mcp/quota.js.map +1 -0
  80. package/dist/components/mcp/rateLimit.d.ts +19 -3
  81. package/dist/components/mcp/rateLimit.js +129 -13
  82. package/dist/components/mcp/rateLimit.js.map +1 -1
  83. package/dist/components/mcp/resources.js.map +1 -1
  84. package/dist/components/mcp/toolRegistry.d.ts +39 -1
  85. package/dist/components/mcp/toolRegistry.js +60 -5
  86. package/dist/components/mcp/toolRegistry.js.map +1 -1
  87. package/dist/components/mcp/tools/application.d.ts +8 -1
  88. package/dist/components/mcp/tools/application.js +65 -5
  89. package/dist/components/mcp/tools/application.js.map +1 -1
  90. package/dist/components/mcp/tools/operations.d.ts +15 -3
  91. package/dist/components/mcp/tools/operations.js +99 -38
  92. package/dist/components/mcp/tools/operations.js.map +1 -1
  93. package/dist/components/mcp/tools/schemas/operationDescriptions.js +4 -4
  94. package/dist/components/mcp/tools/schemas/operationDescriptions.js.map +1 -1
  95. package/dist/components/mcp/tools/schemas/operations.js +4 -0
  96. package/dist/components/mcp/tools/schemas/operations.js.map +1 -1
  97. package/dist/components/mcp/transport.d.ts +6 -0
  98. package/dist/components/mcp/transport.js +47 -3
  99. package/dist/components/mcp/transport.js.map +1 -1
  100. package/dist/components/ollama/index.d.ts +4 -1
  101. package/dist/components/ollama/index.js +4 -2
  102. package/dist/components/ollama/index.js.map +1 -1
  103. package/dist/components/openai/index.d.ts +4 -1
  104. package/dist/components/openai/index.js +4 -2
  105. package/dist/components/openai/index.js.map +1 -1
  106. package/dist/components/operations.d.ts +39 -0
  107. package/dist/components/operations.js +194 -2
  108. package/dist/components/operations.js.map +1 -1
  109. package/dist/components/operationsValidation.d.ts +38 -0
  110. package/dist/components/operationsValidation.js +155 -0
  111. package/dist/components/operationsValidation.js.map +1 -1
  112. package/dist/components/secretOperations.d.ts +113 -0
  113. package/dist/components/secretOperations.js +475 -0
  114. package/dist/components/secretOperations.js.map +1 -0
  115. package/dist/config/configUtils.d.ts +4 -1
  116. package/dist/config/configUtils.js +18 -1
  117. package/dist/config/configUtils.js.map +1 -1
  118. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializePaths.js +4 -3
  119. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializePaths.js.map +1 -1
  120. package/dist/dataLayer/readAuditLog.js +11 -0
  121. package/dist/dataLayer/readAuditLog.js.map +1 -1
  122. package/dist/dataLayer/schemaDescribe.js +2 -0
  123. package/dist/dataLayer/schemaDescribe.js.map +1 -1
  124. package/dist/globals.d.ts +1 -1
  125. package/dist/globals.js +1 -0
  126. package/dist/globals.js.map +1 -1
  127. package/dist/index.d.ts +3 -0
  128. package/dist/index.js +1 -0
  129. package/dist/index.js.map +1 -1
  130. package/dist/json/systemSchema.json +38 -0
  131. package/dist/resources/DatabaseTransaction.d.ts +31 -3
  132. package/dist/resources/DatabaseTransaction.js +190 -29
  133. package/dist/resources/DatabaseTransaction.js.map +1 -1
  134. package/dist/resources/LMDBTransaction.d.ts +1 -1
  135. package/dist/resources/LMDBTransaction.js +43 -5
  136. package/dist/resources/LMDBTransaction.js.map +1 -1
  137. package/dist/resources/PrimaryRocksDatabase.d.ts +51 -0
  138. package/dist/resources/PrimaryRocksDatabase.js +194 -0
  139. package/dist/resources/PrimaryRocksDatabase.js.map +1 -0
  140. package/dist/resources/RecordEncoder.d.ts +1 -0
  141. package/dist/resources/RecordEncoder.js +81 -75
  142. package/dist/resources/RecordEncoder.js.map +1 -1
  143. package/dist/resources/RequestTarget.d.ts +19 -0
  144. package/dist/resources/RequestTarget.js.map +1 -1
  145. package/dist/resources/Resource.d.ts +0 -1
  146. package/dist/resources/Resource.js +103 -16
  147. package/dist/resources/Resource.js.map +1 -1
  148. package/dist/resources/ResourceInterface.d.ts +6 -2
  149. package/dist/resources/ResourceInterface.js.map +1 -1
  150. package/dist/resources/Resources.js.map +1 -1
  151. package/dist/resources/Table.d.ts +6 -4
  152. package/dist/resources/Table.js +247 -24
  153. package/dist/resources/Table.js.map +1 -1
  154. package/dist/resources/analytics/read.js +25 -28
  155. package/dist/resources/analytics/read.js.map +1 -1
  156. package/dist/resources/blob.js +165 -22
  157. package/dist/resources/blob.js.map +1 -1
  158. package/dist/resources/crdt.d.ts +2 -0
  159. package/dist/resources/crdt.js +45 -36
  160. package/dist/resources/crdt.js.map +1 -1
  161. package/dist/resources/databases.d.ts +1 -0
  162. package/dist/resources/databases.js +134 -7
  163. package/dist/resources/databases.js.map +1 -1
  164. package/dist/resources/graphql.js +8 -0
  165. package/dist/resources/graphql.js.map +1 -1
  166. package/dist/resources/indexes/HierarchicalNavigableSmallWorld.d.ts +35 -5
  167. package/dist/resources/indexes/HierarchicalNavigableSmallWorld.js +239 -14
  168. package/dist/resources/indexes/HierarchicalNavigableSmallWorld.js.map +1 -1
  169. package/dist/resources/jsResource.js +6 -0
  170. package/dist/resources/jsResource.js.map +1 -1
  171. package/dist/resources/loadEnv.js +30 -3
  172. package/dist/resources/loadEnv.js.map +1 -1
  173. package/dist/resources/login.js +2 -2
  174. package/dist/resources/login.js.map +1 -1
  175. package/dist/resources/models/Models.js +14 -3
  176. package/dist/resources/models/Models.js.map +1 -1
  177. package/dist/resources/models/embedHook.js +10 -2
  178. package/dist/resources/models/embedHook.js.map +1 -1
  179. package/dist/resources/models/openaiStream.d.ts +56 -0
  180. package/dist/resources/models/openaiStream.js +94 -0
  181. package/dist/resources/models/openaiStream.js.map +1 -0
  182. package/dist/resources/replayLogs.js +4 -3
  183. package/dist/resources/replayLogs.js.map +1 -1
  184. package/dist/resources/search.d.ts +1 -1
  185. package/dist/resources/search.js +104 -11
  186. package/dist/resources/search.js.map +1 -1
  187. package/dist/resources/secretDecryptor.d.ts +54 -0
  188. package/dist/resources/secretDecryptor.js +131 -0
  189. package/dist/resources/secretDecryptor.js.map +1 -0
  190. package/dist/resources/tracked.js +15 -5
  191. package/dist/resources/tracked.js.map +1 -1
  192. package/dist/security/auth.js +71 -8
  193. package/dist/security/auth.js.map +1 -1
  194. package/dist/security/jsLoader.js +11 -0
  195. package/dist/security/jsLoader.js.map +1 -1
  196. package/dist/security/tokenAuthentication.d.ts +9 -1
  197. package/dist/security/tokenAuthentication.js +31 -1
  198. package/dist/security/tokenAuthentication.js.map +1 -1
  199. package/dist/server/DurableSubscriptionsSession.d.ts +1 -1
  200. package/dist/server/DurableSubscriptionsSession.js +8 -4
  201. package/dist/server/DurableSubscriptionsSession.js.map +1 -1
  202. package/dist/server/REST.js +28 -9
  203. package/dist/server/REST.js.map +1 -1
  204. package/dist/server/fastifyRoutes.js +11 -1
  205. package/dist/server/fastifyRoutes.js.map +1 -1
  206. package/dist/server/graphqlQuerying.js +4 -3
  207. package/dist/server/graphqlQuerying.js.map +1 -1
  208. package/dist/server/http.d.ts +40 -2
  209. package/dist/server/http.js +560 -77
  210. package/dist/server/http.js.map +1 -1
  211. package/dist/server/itc/serverHandlers.js +64 -0
  212. package/dist/server/itc/serverHandlers.js.map +1 -1
  213. package/dist/server/liveSubscriptionAuth.d.ts +12 -0
  214. package/dist/server/liveSubscriptionAuth.js +140 -0
  215. package/dist/server/liveSubscriptionAuth.js.map +1 -0
  216. package/dist/server/loadRootComponents.js +2 -1
  217. package/dist/server/loadRootComponents.js.map +1 -1
  218. package/dist/server/middlewareChain.d.ts +44 -1
  219. package/dist/server/middlewareChain.js +86 -10
  220. package/dist/server/middlewareChain.js.map +1 -1
  221. package/dist/server/mqtt.js +2 -1
  222. package/dist/server/mqtt.js.map +1 -1
  223. package/dist/server/operationsServer.js +1 -1
  224. package/dist/server/operationsServer.js.map +1 -1
  225. package/dist/server/serverHelpers/Headers.d.ts +9 -0
  226. package/dist/server/serverHelpers/Headers.js +22 -0
  227. package/dist/server/serverHelpers/Headers.js.map +1 -1
  228. package/dist/server/serverHelpers/JSONStream.js +3 -3
  229. package/dist/server/serverHelpers/JSONStream.js.map +1 -1
  230. package/dist/server/serverHelpers/Request.d.ts +52 -1
  231. package/dist/server/serverHelpers/Request.js +122 -1
  232. package/dist/server/serverHelpers/Request.js.map +1 -1
  233. package/dist/server/serverHelpers/contentTypes.js +3 -8
  234. package/dist/server/serverHelpers/contentTypes.js.map +1 -1
  235. package/dist/server/serverHelpers/progressEmitter.d.ts +19 -0
  236. package/dist/server/serverHelpers/progressEmitter.js +52 -4
  237. package/dist/server/serverHelpers/progressEmitter.js.map +1 -1
  238. package/dist/server/serverHelpers/registeredOperations.d.ts +40 -0
  239. package/dist/server/serverHelpers/registeredOperations.js +286 -0
  240. package/dist/server/serverHelpers/registeredOperations.js.map +1 -0
  241. package/dist/server/serverHelpers/serverHandlers.js +11 -5
  242. package/dist/server/serverHelpers/serverHandlers.js.map +1 -1
  243. package/dist/server/serverHelpers/serverUtilities.d.ts +1 -0
  244. package/dist/server/serverHelpers/serverUtilities.js +67 -5
  245. package/dist/server/serverHelpers/serverUtilities.js.map +1 -1
  246. package/dist/server/serverHelpers/uwsServer.d.ts +80 -0
  247. package/dist/server/serverHelpers/uwsServer.js +433 -0
  248. package/dist/server/serverHelpers/uwsServer.js.map +1 -0
  249. package/dist/server/static.d.ts +0 -15
  250. package/dist/server/static.js +161 -2
  251. package/dist/server/static.js.map +1 -1
  252. package/dist/server/status/index.d.ts +4 -1
  253. package/dist/server/status/index.js +64 -4
  254. package/dist/server/status/index.js.map +1 -1
  255. package/dist/server/threads/manageThreads.d.ts +10 -0
  256. package/dist/server/threads/manageThreads.js +107 -4
  257. package/dist/server/threads/manageThreads.js.map +1 -1
  258. package/dist/server/threads/socketRouter.js +5 -1
  259. package/dist/server/threads/socketRouter.js.map +1 -1
  260. package/dist/server/threads/threadServer.js +92 -14
  261. package/dist/server/threads/threadServer.js.map +1 -1
  262. package/dist/upgrade/directives/5-2-0.d.ts +7 -0
  263. package/dist/upgrade/directives/5-2-0.js +108 -0
  264. package/dist/upgrade/directives/5-2-0.js.map +1 -0
  265. package/dist/upgrade/directives/directivesController.js +2 -1
  266. package/dist/upgrade/directives/directivesController.js.map +1 -1
  267. package/dist/utility/common_utils.js +5 -0
  268. package/dist/utility/common_utils.js.map +1 -1
  269. package/dist/utility/envFile.d.ts +41 -0
  270. package/dist/utility/envFile.js +221 -0
  271. package/dist/utility/envFile.js.map +1 -0
  272. package/dist/utility/globalSchema.d.ts +9 -0
  273. package/dist/utility/hdbTerms.d.ts +25 -0
  274. package/dist/utility/hdbTerms.js +31 -0
  275. package/dist/utility/hdbTerms.js.map +1 -1
  276. package/dist/utility/logging/harper_logger.d.ts +21 -0
  277. package/dist/utility/logging/harper_logger.js +160 -8
  278. package/dist/utility/logging/harper_logger.js.map +1 -1
  279. package/dist/utility/logging/logRotator.js +29 -17
  280. package/dist/utility/logging/logRotator.js.map +1 -1
  281. package/dist/utility/logging/readLog.d.ts +1 -1
  282. package/dist/utility/logging/readLog.js +305 -2
  283. package/dist/utility/logging/readLog.js.map +1 -1
  284. package/dist/utility/operationPermissions.d.ts +18 -0
  285. package/dist/utility/operationPermissions.js +35 -1
  286. package/dist/utility/operationPermissions.js.map +1 -1
  287. package/dist/utility/operation_authorization.d.ts +17 -0
  288. package/dist/utility/operation_authorization.js +38 -0
  289. package/dist/utility/operation_authorization.js.map +1 -1
  290. package/dist/utility/secretEnvelope.d.ts +30 -0
  291. package/dist/utility/secretEnvelope.js +94 -0
  292. package/dist/utility/secretEnvelope.js.map +1 -0
  293. package/dist/utility/signalling.d.ts +7 -0
  294. package/dist/utility/signalling.js +16 -0
  295. package/dist/utility/signalling.js.map +1 -1
  296. package/dist/validation/configValidator.js +70 -24
  297. package/dist/validation/configValidator.js.map +1 -1
  298. package/index.ts +4 -0
  299. package/json/systemSchema.json +38 -0
  300. package/npm-shrinkwrap.json +15066 -9347
  301. package/package.json +13 -8
  302. package/resources/DESIGN.md +15 -12
  303. package/resources/DatabaseTransaction.ts +206 -37
  304. package/resources/LMDBTransaction.ts +43 -9
  305. package/resources/PrimaryRocksDatabase.ts +201 -0
  306. package/resources/RecordEncoder.ts +81 -69
  307. package/resources/RequestTarget.ts +21 -0
  308. package/resources/Resource.ts +109 -25
  309. package/resources/ResourceInterface.ts +6 -2
  310. package/resources/Resources.ts +1 -3
  311. package/resources/Table.ts +238 -29
  312. package/resources/analytics/read.ts +25 -30
  313. package/resources/blob.ts +159 -23
  314. package/resources/crdt.ts +37 -31
  315. package/resources/databases.ts +143 -6
  316. package/resources/graphql.ts +8 -0
  317. package/resources/indexes/HierarchicalNavigableSmallWorld.ts +251 -17
  318. package/resources/jsResource.ts +6 -0
  319. package/resources/loadEnv.ts +34 -3
  320. package/resources/login.ts +2 -2
  321. package/resources/models/Models.ts +19 -3
  322. package/resources/models/embedHook.ts +13 -2
  323. package/resources/models/openaiStream.ts +133 -0
  324. package/resources/replayLogs.ts +4 -3
  325. package/resources/search.ts +113 -11
  326. package/resources/secretDecryptor.ts +159 -0
  327. package/resources/tracked.ts +24 -17
  328. package/security/auth.ts +70 -10
  329. package/security/jsLoader.ts +12 -0
  330. package/security/tokenAuthentication.ts +42 -1
  331. package/server/DESIGN.md +10 -0
  332. package/server/DurableSubscriptionsSession.ts +8 -4
  333. package/server/REST.ts +26 -9
  334. package/server/fastifyRoutes.ts +10 -1
  335. package/server/graphqlQuerying.ts +4 -3
  336. package/server/http.ts +563 -77
  337. package/server/itc/serverHandlers.js +70 -0
  338. package/server/liveSubscriptionAuth.ts +152 -0
  339. package/server/loadRootComponents.js +2 -1
  340. package/server/middlewareChain.ts +107 -17
  341. package/server/mqtt.ts +2 -1
  342. package/server/operationsServer.ts +2 -2
  343. package/server/serverHelpers/Headers.ts +24 -0
  344. package/server/serverHelpers/JSONStream.ts +3 -3
  345. package/server/serverHelpers/Request.ts +127 -0
  346. package/server/serverHelpers/contentTypes.ts +3 -8
  347. package/server/serverHelpers/progressEmitter.ts +55 -5
  348. package/server/serverHelpers/registeredOperations.ts +259 -0
  349. package/server/serverHelpers/serverHandlers.js +11 -5
  350. package/server/serverHelpers/serverUtilities.ts +88 -5
  351. package/server/serverHelpers/uwsServer.ts +488 -0
  352. package/server/static.ts +180 -2
  353. package/server/status/index.ts +72 -4
  354. package/server/threads/manageThreads.js +102 -4
  355. package/server/threads/socketRouter.ts +5 -1
  356. package/server/threads/threadServer.js +93 -10
  357. package/studio/web/assets/{Chat-SdD1EZca.js → Chat-Cv_2paZE.js} +2 -2
  358. package/studio/web/assets/{Chat-SdD1EZca.js.map → Chat-Cv_2paZE.js.map} +1 -1
  359. package/studio/web/assets/{FloatingChat-GMq6tHK9.js → FloatingChat-CPyPIcVR.js} +4 -4
  360. package/studio/web/assets/{FloatingChat-GMq6tHK9.js.map → FloatingChat-CPyPIcVR.js.map} +1 -1
  361. package/studio/web/assets/{applications-B5hhv7uA.js → applications-C0jT2vdZ.js} +2 -2
  362. package/studio/web/assets/{applications-B5hhv7uA.js.map → applications-C0jT2vdZ.js.map} +1 -1
  363. package/studio/web/assets/{index-VFcpNWgq.js → index-D_GKOkhn.js} +6 -6
  364. package/studio/web/assets/index-D_GKOkhn.js.map +1 -0
  365. package/studio/web/assets/{index.lazy-DgcJojIA.js → index.lazy-CAmCIA65.js} +4 -4
  366. package/studio/web/assets/{index.lazy-DgcJojIA.js.map → index.lazy-CAmCIA65.js.map} +1 -1
  367. package/studio/web/assets/{profile-BqN-8vzm.js → profile-CaF-4aZe.js} +2 -2
  368. package/studio/web/assets/{profile-BqN-8vzm.js.map → profile-CaF-4aZe.js.map} +1 -1
  369. package/studio/web/assets/{setComponentFile-CHFvFq9u.js → setComponentFile-DLW1DHCt.js} +2 -2
  370. package/studio/web/assets/{setComponentFile-CHFvFq9u.js.map → setComponentFile-DLW1DHCt.js.map} +1 -1
  371. package/studio/web/assets/{setup-CQ3vWJSr.js → setup-TGCErIhq.js} +2 -2
  372. package/studio/web/assets/{setup-CQ3vWJSr.js.map → setup-TGCErIhq.js.map} +1 -1
  373. package/studio/web/assets/{status-BsW5fjuh.js → status-DG0Maoao.js} +2 -2
  374. package/studio/web/assets/{status-BsW5fjuh.js.map → status-DG0Maoao.js.map} +1 -1
  375. package/studio/web/assets/{swagger-ui-react-DITdeB9-.js → swagger-ui-react-8T4SgQ1m.js} +2 -2
  376. package/studio/web/assets/{swagger-ui-react-DITdeB9-.js.map → swagger-ui-react-8T4SgQ1m.js.map} +1 -1
  377. package/studio/web/assets/{tsMode-Dyph-OUs.js → tsMode-DJ6Sl24Q.js} +2 -2
  378. package/studio/web/assets/{tsMode-Dyph-OUs.js.map → tsMode-DJ6Sl24Q.js.map} +1 -1
  379. package/studio/web/assets/{useEntityRestURL-D0QTUqex.js → useEntityRestURL-JO2mfWTQ.js} +2 -2
  380. package/studio/web/assets/{useEntityRestURL-D0QTUqex.js.map → useEntityRestURL-JO2mfWTQ.js.map} +1 -1
  381. package/studio/web/index.html +1 -1
  382. package/upgrade/directives/5-2-0.ts +82 -0
  383. package/upgrade/directives/directivesController.ts +2 -1
  384. package/utility/common_utils.ts +5 -0
  385. package/utility/envFile.ts +218 -0
  386. package/utility/hdbTerms.ts +31 -0
  387. package/utility/logging/harper_logger.ts +156 -8
  388. package/utility/logging/logRotator.ts +24 -14
  389. package/utility/logging/readLog.ts +323 -2
  390. package/utility/operationPermissions.ts +35 -1
  391. package/utility/operation_authorization.ts +74 -1
  392. package/utility/secretEnvelope.ts +113 -0
  393. package/utility/signalling.ts +15 -0
  394. package/validation/configValidator.ts +78 -25
  395. package/studio/web/assets/index-VFcpNWgq.js.map +0 -1
@@ -74,10 +74,19 @@ export function deployComponent(req: any): Promise<string>;
74
74
  */
75
75
  export function getComponents(): Promise<any>;
76
76
  export function getComponentFile(req: any): Promise<{
77
+ protected: boolean;
78
+ keys: string[];
79
+ message: string;
80
+ size: number;
81
+ birthtime: Date;
82
+ mtime: Date;
83
+ } | {
77
84
  message: NonSharedBuffer;
78
85
  size: number;
79
86
  birthtime: Date;
80
87
  mtime: Date;
88
+ protected?: undefined;
89
+ keys?: undefined;
81
90
  }>;
82
91
  /**
83
92
  * Used to update or create a component file
@@ -87,6 +96,36 @@ export function getComponentFile(req: any): Promise<{
87
96
  export function setComponentFile(req: any): Promise<{
88
97
  message: string;
89
98
  }>;
99
+ /**
100
+ * List the key names of a project's .env file. Never returns the secret values.
101
+ * @param req
102
+ * @returns {Promise<{file:string, keys:string[], size:number, mtime:Date}>}
103
+ */
104
+ export function getEnvKeys(req: any): Promise<{
105
+ file: string;
106
+ keys: string[];
107
+ size: number;
108
+ mtime: Date;
109
+ }>;
110
+ /**
111
+ * Set one (`key` + `value`) or many (`values`) entries in a project's .env file, preserving all
112
+ * other keys, comments and formatting. Creates the file if it does not exist. Never echoes values.
113
+ * @param req
114
+ * @returns {Promise<{message:string, keys:string[]}>}
115
+ */
116
+ export function setEnvValue(req: any): Promise<{
117
+ message: string;
118
+ keys: string[];
119
+ }>;
120
+ /**
121
+ * Remove one (`key`) or many (`keys`) entries from a project's .env file, leaving the rest intact.
122
+ * @param req
123
+ * @returns {Promise<{message:string, keys:string[]}>}
124
+ */
125
+ export function deleteEnvValue(req: any): Promise<{
126
+ message: string;
127
+ keys: string[];
128
+ }>;
90
129
  /**
91
130
  * Deletes a component dir/file
92
131
  * @param req
@@ -10,6 +10,7 @@ const hdbTerms = require("../utility/hdbTerms.js");
10
10
  const env = require("../utility/environment/environmentManager.js");
11
11
  const configUtils = require("../config/configUtils.js");
12
12
  const hdbUtils = require("../utility/common_utils.js");
13
+ const { isEnvFile, isProtectedEnvFile, parseEnvKeys, renderMaskedEnv, upsertEnvValues, removeEnvKeys, } = require("../utility/envFile.js");
13
14
  const { handleHDBError, ServerError, hdbErrors } = require("../utility/errors/hdbError.js");
14
15
  const { HDB_ERROR_MSGS, HTTP_STATUS_CODES } = hdbErrors;
15
16
  const manageThreads = require('../server/threads/manageThreads.js');
@@ -17,7 +18,7 @@ const { packageDirectory } = require("../components/packageComponent.js");
17
18
  const { Resources } = require("../resources/Resources.js");
18
19
  const { Application, prepareApplication, ASIDE_STAGING_DIR } = require("./Application.js");
19
20
  const { server } = require("../server/Server.js");
20
- const { DeploymentRecorder, awaitDeploymentRow } = require("./deploymentRecorder.js");
21
+ const { DeploymentRecorder, awaitDeploymentRow, DEFAULT_AWAIT_ROW_TIMEOUT_MS } = require("./deploymentRecorder.js");
21
22
  const { ProgressEmitter } = require("../server/serverHelpers/progressEmitter.js");
22
23
  /**
23
24
  * Read the settings.js file and return the
@@ -290,6 +291,15 @@ async function deployComponent(req) {
290
291
  if (validation) {
291
292
  throw handleHDBError(validation, validation.message, HTTP_STATUS_CODES.BAD_REQUEST);
292
293
  }
294
+ // Ingest any provided registry token into the secrets store so the credential lives as
295
+ // replicated ciphertext (reference, not embed); already-reference entries pass through, and with
296
+ // no custody a literal token stays as a transient, this-node-only fallback (#1158). Peers
297
+ // re-running a replicated deploy already carry references and never re-ingest.
298
+ const { ingestRegistryAuth, resolveRegistryAuth } = require("./secretOperations.js");
299
+ req.registryAuth = await ingestRegistryAuth(req, req.registryAuth, req.project);
300
+ // References are safe to persist (config + deployment row) and replicate; a no-custody literal
301
+ // token is not — it is used only for this node's install below, then stripped before replication.
302
+ const registryAuthReferences = (req.registryAuth ?? []).filter((entry) => entry && entry.secret !== undefined);
293
303
  // Write to root config if the request contains a package identifier
294
304
  if (req.package) {
295
305
  // Check if trying to overwrite a core component (requires force)
@@ -309,6 +319,10 @@ async function deployComponent(req) {
309
319
  }
310
320
  if (req.urlPath !== undefined)
311
321
  applicationConfig.urlPath = req.urlPath;
322
+ // Persist registry-auth references (never tokens) so every cold install of this component —
323
+ // reboot, new peer, rollback — re-resolves the credential from the store.
324
+ if (registryAuthReferences.length)
325
+ applicationConfig.registryAuth = registryAuthReferences;
312
326
  await configUtils.addConfig(req.project, applicationConfig);
313
327
  }
314
328
  // Create a hdb_deployment row up front so the deploy is observable and auditable
@@ -333,6 +347,8 @@ async function deployComponent(req) {
333
347
  package_identifier: req.package ?? null,
334
348
  user: req.hdb_user?.username,
335
349
  restart_mode: req.restart === 'rolling' ? 'rolling' : req.restart ? 'immediate' : null,
350
+ // Reference form only — the rollback source for re-resolving registry auth.
351
+ registry_auth: registryAuthReferences.length ? registryAuthReferences : null,
336
352
  emitter,
337
353
  });
338
354
  if (recorder)
@@ -368,6 +384,18 @@ async function deployComponent(req) {
368
384
  const row = await awaitDeploymentRow(req._deploymentId, { timeoutMs: req.deployment_timeout });
369
385
  extractionPayload = row.payload_blob.stream();
370
386
  }
387
+ // Resolve registryAuth references into concrete tokens for this node's npm pack/install
388
+ // (a no-custody literal-token fallback passes through unchanged). On a peer running a
389
+ // replicated deploy, the referenced hdb_secret row may arrive just behind the deploy op, so
390
+ // allow a bounded grace period (same budget as the payload-row wait) for it to replicate in.
391
+ let registryAuthWaitMs = 0;
392
+ if (isReplicatedExecution) {
393
+ const requested = Number(req.deployment_timeout);
394
+ registryAuthWaitMs = Number.isFinite(requested) && requested >= 0 ? requested : DEFAULT_AWAIT_ROW_TIMEOUT_MS;
395
+ }
396
+ const resolvedRegistryAuth = await resolveRegistryAuth(req.registryAuth, req.project, {
397
+ waitMs: registryAuthWaitMs,
398
+ });
371
399
  const application = new Application({
372
400
  name: req.project,
373
401
  payload: extractionPayload,
@@ -385,7 +413,18 @@ async function deployComponent(req) {
385
413
  if (emitter)
386
414
  emit('install', { manager, stream, line });
387
415
  },
416
+ // Private-registry auth (already resolved above), used here for this node's npm pack/install.
417
+ registryAuth: resolvedRegistryAuth,
388
418
  });
419
+ // Reduce req.registryAuth to references only (never a token) before it can reach an error/log
420
+ // path or replication: references are what peers resolve from their own replicated hdb_secret
421
+ // copy; a no-custody literal token is dropped entirely (peers fall back to their fabric-injected
422
+ // NPM_CONFIG_USERCONFIG, as before). This also fixes the prior success-only strip that leaked a
423
+ // literal token on a prepare/load failure.
424
+ if (registryAuthReferences.length)
425
+ req.registryAuth = registryAuthReferences;
426
+ else
427
+ delete req.registryAuth;
389
428
  emit('phase', { phase: 'prepare', status: 'start' });
390
429
  await prepareApplication(application);
391
430
  emit('phase', { phase: 'prepare', status: 'done' });
@@ -395,10 +434,34 @@ async function deployComponent(req) {
395
434
  const pseudoResources = new Resources();
396
435
  pseudoResources.isWorker = true;
397
436
  const componentLoader = require("./componentLoader.js").default || require("./componentLoader.js");
437
+ const { trackScopeClose } = require("./scopeShutdown.js");
398
438
  let lastError;
399
439
  componentLoader.setErrorReporter((error) => (lastError = error));
400
440
  emit('phase', { phase: 'load', status: 'start' });
401
- await componentLoader.loadComponent(application.dirPath, pseudoResources, undefined, false, undefined, false, req.project);
441
+ // This load exists only to surface load-time errors early; the Scopes it creates are
442
+ // throwaway. They are collected (instead of registered for worker-shutdown auto-close) so we
443
+ // can close them here once validation completes — otherwise each deploy leaks the Scope's
444
+ // deploy-lifecycle listeners on this worker, eventually tripping MaxListenersExceededWarning
445
+ // (#1462).
446
+ const validationScopes = new Set();
447
+ const validation = (async () => {
448
+ try {
449
+ await componentLoader.loadComponent(application.dirPath, pseudoResources, undefined, {
450
+ collectScopes: validationScopes,
451
+ });
452
+ }
453
+ finally {
454
+ const closeResults = await Promise.allSettled(Array.from(validationScopes, (scope) => scope.close()));
455
+ for (const result of closeResults) {
456
+ if (result.status === 'rejected')
457
+ log.warn('Failed to close a deploy-validation Scope', result.reason);
458
+ }
459
+ }
460
+ })();
461
+ // Track the load+close so a concurrent worker shutdown waits for these scopes to finish
462
+ // disposing — a plugin may start a native runtime in handleApplication — before realExit.
463
+ trackScopeClose(validation);
464
+ await validation;
402
465
  emit('phase', { phase: 'load', status: 'done' });
403
466
  if (lastError)
404
467
  throw lastError;
@@ -409,6 +472,9 @@ async function deployComponent(req) {
409
472
  // ProgressEmitter holds function listeners that can't survive the replication
410
473
  // channel's serialization; strip it unconditionally.
411
474
  delete req.progress;
475
+ // req.registryAuth was already deleted immediately after the Application ctor (above) so the
476
+ // token never reaches the replication channel or a peer's operation log; peers authenticate
477
+ // against the private registry via their own fabric-injected NPM_CONFIG_USERCONFIG on reinstall.
412
478
  if (systemReplicated && recorder) {
413
479
  // The hdb_deployment row + payload_blob will reach peers via table replication,
414
480
  // so peers can look up the payload by deployment_id. Drop req.payload to keep
@@ -660,6 +726,11 @@ async function getComponents() {
660
726
  mtime: stats.mtime,
661
727
  size: stats.size,
662
728
  };
729
+ // Flag protected .env files so editors know their contents are masked by
730
+ // get_component_file and only editable via set_env_value. Template files
731
+ // (.env.example / .sample / .template) are not secret, so they are left alone.
732
+ if (isProtectedEnvFile(itemName))
733
+ res.protected = true;
663
734
  result.entries.push(res);
664
735
  }
665
736
  }
@@ -674,7 +745,13 @@ async function getComponents() {
674
745
  name: configUtils.getConfigPath(hdbTerms.CONFIG_PARAMS.COMPONENTSROOT).split(path.sep).slice(-1).pop(),
675
746
  entries: [],
676
747
  });
748
+ const { getUnsatisfiedEnv } = require("./componentSecrets.js");
677
749
  for (let entry of results.entries) {
750
+ // Declared-but-unsatisfied `env:` expectations (#1550) — metadata only (name, description,
751
+ // required, reason, tier), never values — so Studio/deploy output can render configure-me.
752
+ const unsatisfiedEnv = getUnsatisfiedEnv(entry.name);
753
+ if (unsatisfiedEnv.length > 0)
754
+ entry.unsatisfiedEnv = unsatisfiedEnv;
678
755
  const componentConfig = rootConfig?.[entry.name];
679
756
  if (!componentConfig || typeof componentConfig !== 'object')
680
757
  continue;
@@ -748,6 +825,19 @@ async function getComponentFile(req) {
748
825
  if (stats.size > maxSize) {
749
826
  throw handleHDBError(new Error(HDB_ERROR_MSGS.COMPONENT_FILE_TOO_LARGE(stats.size, maxSize)), HDB_ERROR_MSGS.COMPONENT_FILE_TOO_LARGE(stats.size, maxSize), HTTP_STATUS_CODES.CONTENT_TOO_LARGE);
750
827
  }
828
+ // Protected .env files expose the key names (and a value-free masked rendering) but never
829
+ // the secret values. Template files (.env.example etc.) fall through and are read verbatim.
830
+ if (isProtectedEnvFile(req.file)) {
831
+ const keys = parseEnvKeys(await fs.readFile(filePath, 'utf8'));
832
+ return {
833
+ protected: true,
834
+ keys,
835
+ message: renderMaskedEnv(keys),
836
+ size: stats.size,
837
+ birthtime: stats.birthtime,
838
+ mtime: stats.mtime,
839
+ };
840
+ }
751
841
  return {
752
842
  message: await fs.readFile(filePath, options),
753
843
  size: stats.size,
@@ -785,6 +875,105 @@ async function setComponentFile(req) {
785
875
  response.message = `Successfully set component: ` + req.file;
786
876
  return response;
787
877
  }
878
+ /**
879
+ * Resolve the absolute path of a project's env file (defaulting to `.env`) and confirm it is one.
880
+ * @param req
881
+ * @returns {{file:string, filePath:string}}
882
+ */
883
+ function resolveEnvFilePath(req) {
884
+ const file = req.file || '.env';
885
+ if (!isEnvFile(file)) {
886
+ const msg = `'${file}' is not a .env file`;
887
+ throw handleHDBError(new Error(msg), msg, HTTP_STATUS_CODES.BAD_REQUEST);
888
+ }
889
+ const compRoot = configUtils.getConfigPath(hdbTerms.CONFIG_PARAMS.COMPONENTSROOT);
890
+ return { file, filePath: path.join(compRoot, req.project, file) };
891
+ }
892
+ /**
893
+ * List the key names of a project's .env file. Never returns the secret values.
894
+ * @param req
895
+ * @returns {Promise<{file:string, keys:string[], size:number, mtime:Date}>}
896
+ */
897
+ async function getEnvKeys(req) {
898
+ const validation = validator.getEnvKeysValidator(req);
899
+ if (validation) {
900
+ throw handleHDBError(validation, validation.message, HTTP_STATUS_CODES.BAD_REQUEST);
901
+ }
902
+ const { file, filePath } = resolveEnvFilePath(req);
903
+ try {
904
+ const [contents, stats] = await Promise.all([fs.readFile(filePath, 'utf8'), fs.stat(filePath)]);
905
+ return { file, keys: parseEnvKeys(contents), size: stats.size, mtime: stats.mtime };
906
+ }
907
+ catch (err) {
908
+ if (err.code === hdbTerms.NODE_ERROR_CODES.ENOENT) {
909
+ throw new Error(`Component file not found '${path.join(req.project, file)}'`);
910
+ }
911
+ throw err;
912
+ }
913
+ }
914
+ /**
915
+ * Set one (`key` + `value`) or many (`values`) entries in a project's .env file, preserving all
916
+ * other keys, comments and formatting. Creates the file if it does not exist. Never echoes values.
917
+ * @param req
918
+ * @returns {Promise<{message:string, keys:string[]}>}
919
+ */
920
+ async function setEnvValue(req) {
921
+ const validation = validator.setEnvValueValidator(req);
922
+ if (validation) {
923
+ throw handleHDBError(validation, validation.message, HTTP_STATUS_CODES.BAD_REQUEST);
924
+ }
925
+ const { file, filePath } = resolveEnvFilePath(req);
926
+ const updates = req.values ?? { [req.key]: req.value };
927
+ let existing = '';
928
+ try {
929
+ existing = await fs.readFile(filePath, 'utf8');
930
+ }
931
+ catch (err) {
932
+ if (err.code !== hdbTerms.NODE_ERROR_CODES.ENOENT)
933
+ throw err;
934
+ }
935
+ let updated;
936
+ try {
937
+ updated = upsertEnvValues(existing, updates);
938
+ }
939
+ catch (err) {
940
+ throw handleHDBError(err, err.message, HTTP_STATUS_CODES.BAD_REQUEST);
941
+ }
942
+ await fs.outputFile(filePath, updated, 'utf8');
943
+ const response = await server.replication.replicateOperation(req);
944
+ response.message = `Successfully set env value(s) in ${file}`;
945
+ response.keys = parseEnvKeys(updated);
946
+ return response;
947
+ }
948
+ /**
949
+ * Remove one (`key`) or many (`keys`) entries from a project's .env file, leaving the rest intact.
950
+ * @param req
951
+ * @returns {Promise<{message:string, keys:string[]}>}
952
+ */
953
+ async function deleteEnvValue(req) {
954
+ const validation = validator.deleteEnvValueValidator(req);
955
+ if (validation) {
956
+ throw handleHDBError(validation, validation.message, HTTP_STATUS_CODES.BAD_REQUEST);
957
+ }
958
+ const { file, filePath } = resolveEnvFilePath(req);
959
+ const keysToRemove = req.keys ?? [req.key];
960
+ let existing;
961
+ try {
962
+ existing = await fs.readFile(filePath, 'utf8');
963
+ }
964
+ catch (err) {
965
+ if (err.code === hdbTerms.NODE_ERROR_CODES.ENOENT) {
966
+ throw new Error(`Component file not found '${path.join(req.project, file)}'`);
967
+ }
968
+ throw err;
969
+ }
970
+ const updated = removeEnvKeys(existing, keysToRemove);
971
+ await fs.outputFile(filePath, updated, 'utf8');
972
+ const response = await server.replication.replicateOperation(req);
973
+ response.message = `Successfully deleted env value(s) from ${file}`;
974
+ response.keys = parseEnvKeys(updated);
975
+ return response;
976
+ }
788
977
  /**
789
978
  * Deletes a component dir/file
790
979
  * @param req
@@ -836,5 +1025,8 @@ exports.deployComponent = deployComponent;
836
1025
  exports.getComponents = getComponents;
837
1026
  exports.getComponentFile = getComponentFile;
838
1027
  exports.setComponentFile = setComponentFile;
1028
+ exports.getEnvKeys = getEnvKeys;
1029
+ exports.setEnvValue = setEnvValue;
1030
+ exports.deleteEnvValue = deleteEnvValue;
839
1031
  exports.dropComponent = dropComponent;
840
1032
  //# sourceMappingURL=operations.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"operations.js","sourceRoot":"","sources":["../../components/operations.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"operations.js","sourceRoot":"","sources":["../../components/operations.js"],"names":[],"mappings":"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"}
@@ -42,3 +42,41 @@ export function deployComponentValidator(req: any): any;
42
42
  export function setComponentFileValidator(req: any): any;
43
43
  export function getComponentFileValidator(req: any): Error;
44
44
  export function dropComponentFileValidator(req: any): Error;
45
+ /**
46
+ * Validate get_env_keys requests. `file` is optional and defaults to `.env` in the handler.
47
+ * @param req
48
+ * @returns {*}
49
+ */
50
+ export function getEnvKeysValidator(req: any): any;
51
+ /**
52
+ * Validate set_env_value requests: exactly one of (`key` + `value`) or `values` (a key→value map).
53
+ * @param req
54
+ * @returns {*}
55
+ */
56
+ export function setEnvValueValidator(req: any): any;
57
+ /**
58
+ * Validate delete_env_value requests: exactly one of `key` or `keys` (an array of key names).
59
+ * @param req
60
+ * @returns {*}
61
+ */
62
+ export function deleteEnvValueValidator(req: any): any;
63
+ /**
64
+ * Validate set_secret requests: `name` plus exactly one of `value` (plaintext) or `envelope`
65
+ * (`enc:v1:` ciphertext), with optional `metadata`, and a tier of either `processEnv` or `grants`
66
+ * (the handler rejects the two together — a processEnv secret is global, so scoping it is meaningless).
67
+ * @param req
68
+ * @returns {*}
69
+ */
70
+ export function setSecretValidator(req: any): any;
71
+ /**
72
+ * Validate grant_secret / revoke_secret requests (same shape: `name` + `component`).
73
+ * @param req
74
+ * @returns {*}
75
+ */
76
+ export function grantSecretValidator(req: any): any;
77
+ /**
78
+ * Validate delete_secret requests.
79
+ * @param req
80
+ * @returns {*}
81
+ */
82
+ export function deleteSecretValidator(req: any): any;