@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.
- package/agent/mcpTools.ts +1 -1
- package/agent/session.ts +25 -14
- package/bin/cliOperations.ts +46 -9
- package/bin/copyDb.ts +282 -59
- package/bin/deploySetup.ts +16 -5
- package/bin/harper.ts +1 -1
- package/bin/help.ts +4 -1
- package/bin/lite.ts +4 -1
- package/bin/restart.ts +59 -3
- package/bin/run.ts +6 -11
- package/bin/upgrade.js +7 -3
- package/bin/workloadIdentity.ts +119 -0
- package/components/Application.ts +2414 -242
- package/components/ApplicationScope.ts +8 -0
- package/components/EntryHandler.ts +59 -39
- package/components/OptionsWatcher.ts +150 -74
- package/components/RuntimeModuleTracker.ts +38 -7
- package/components/Scope.ts +37 -15
- package/components/awaitRestart.ts +84 -0
- package/components/componentLoader.ts +340 -30
- package/components/componentPreparationLock.ts +16 -5
- package/components/mcp/adapters/harperHttp.ts +4 -0
- package/components/mcp/listChanged.ts +4 -0
- package/components/mcp/toolRegistry.ts +2 -0
- package/components/mcp/tools/operations.ts +9 -0
- package/components/mcp/tools/schemas/operationDescriptions.ts +2 -2
- package/components/operations.js +270 -78
- package/components/operationsValidation.js +49 -1
- package/components/status/ComponentStatusRegistry.ts +59 -0
- package/config/RootConfigWatcher.ts +80 -34
- package/config/configUtils.ts +291 -34
- package/config/harperConfigEnvVars.ts +170 -27
- package/config-root.schema.json +29 -0
- package/dataLayer/blobBackup.ts +160 -50
- package/dataLayer/delete.ts +6 -1
- package/dataLayer/harperBridge/ResourceBridge.ts +52 -8
- package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/DeleteAuditLogsBeforeResults.js +3 -1
- package/dataLayer/hdbInfoController.ts +34 -1
- package/dataLayer/insert.ts +44 -1
- package/dataLayer/rocksdbBackup.ts +53 -10
- package/dataLayer/schema.ts +11 -1
- package/dataLayer/schemaDescribe.ts +8 -1
- package/dist/agent/mcpTools.js +1 -1
- package/dist/agent/mcpTools.js.map +1 -1
- package/dist/agent/session.d.ts +22 -0
- package/dist/agent/session.js +26 -15
- package/dist/agent/session.js.map +1 -1
- package/dist/bin/cliOperations.js +48 -9
- package/dist/bin/cliOperations.js.map +1 -1
- package/dist/bin/copyDb.d.ts +12 -1
- package/dist/bin/copyDb.js +248 -60
- package/dist/bin/copyDb.js.map +1 -1
- package/dist/bin/deploySetup.d.ts +2 -0
- package/dist/bin/deploySetup.js +11 -3
- package/dist/bin/deploySetup.js.map +1 -1
- package/dist/bin/harper.js +1 -1
- package/dist/bin/harper.js.map +1 -1
- package/dist/bin/help.js +4 -1
- package/dist/bin/help.js.map +1 -1
- package/dist/bin/lite.js +4 -1
- package/dist/bin/lite.js.map +1 -1
- package/dist/bin/restart.js +54 -5
- package/dist/bin/restart.js.map +1 -1
- package/dist/bin/run.js +4 -10
- package/dist/bin/run.js.map +1 -1
- package/dist/bin/upgrade.js +4 -3
- package/dist/bin/upgrade.js.map +1 -1
- package/dist/bin/workloadIdentity.d.ts +18 -0
- package/dist/bin/workloadIdentity.js +100 -0
- package/dist/bin/workloadIdentity.js.map +1 -0
- package/dist/components/Application.d.ts +139 -16
- package/dist/components/Application.js +2215 -267
- package/dist/components/Application.js.map +1 -1
- package/dist/components/ApplicationScope.d.ts +8 -0
- package/dist/components/ApplicationScope.js +7 -0
- package/dist/components/ApplicationScope.js.map +1 -1
- package/dist/components/EntryHandler.js +26 -10
- package/dist/components/EntryHandler.js.map +1 -1
- package/dist/components/OptionsWatcher.d.ts +1 -0
- package/dist/components/OptionsWatcher.js +141 -74
- package/dist/components/OptionsWatcher.js.map +1 -1
- package/dist/components/RuntimeModuleTracker.js +40 -6
- package/dist/components/RuntimeModuleTracker.js.map +1 -1
- package/dist/components/Scope.js +38 -13
- package/dist/components/Scope.js.map +1 -1
- package/dist/components/awaitRestart.d.ts +33 -0
- package/dist/components/awaitRestart.js +61 -0
- package/dist/components/awaitRestart.js.map +1 -0
- package/dist/components/componentLoader.d.ts +38 -1
- package/dist/components/componentLoader.js +279 -22
- package/dist/components/componentLoader.js.map +1 -1
- package/dist/components/componentPreparationLock.d.ts +5 -0
- package/dist/components/componentPreparationLock.js +14 -6
- package/dist/components/componentPreparationLock.js.map +1 -1
- package/dist/components/mcp/adapters/harperHttp.js +4 -0
- package/dist/components/mcp/adapters/harperHttp.js.map +1 -1
- package/dist/components/mcp/listChanged.js +5 -0
- package/dist/components/mcp/listChanged.js.map +1 -1
- package/dist/components/mcp/toolRegistry.d.ts +1 -0
- package/dist/components/mcp/toolRegistry.js.map +1 -1
- package/dist/components/mcp/tools/operations.d.ts +5 -0
- package/dist/components/mcp/tools/operations.js +9 -0
- package/dist/components/mcp/tools/operations.js.map +1 -1
- package/dist/components/mcp/tools/schemas/operationDescriptions.js +2 -2
- package/dist/components/mcp/tools/schemas/operationDescriptions.js.map +1 -1
- package/dist/components/operations.js +231 -77
- package/dist/components/operations.js.map +1 -1
- package/dist/components/operationsValidation.js +49 -1
- package/dist/components/operationsValidation.js.map +1 -1
- package/dist/components/status/ComponentStatusRegistry.d.ts +0 -4
- package/dist/components/status/ComponentStatusRegistry.js +63 -0
- package/dist/components/status/ComponentStatusRegistry.js.map +1 -1
- package/dist/config/RootConfigWatcher.d.ts +7 -1
- package/dist/config/RootConfigWatcher.js +64 -27
- package/dist/config/RootConfigWatcher.js.map +1 -1
- package/dist/config/configUtils.d.ts +9 -1
- package/dist/config/configUtils.js +254 -33
- package/dist/config/configUtils.js.map +1 -1
- package/dist/config/harperConfigEnvVars.d.ts +16 -0
- package/dist/config/harperConfigEnvVars.js +162 -25
- package/dist/config/harperConfigEnvVars.js.map +1 -1
- package/dist/dataLayer/blobBackup.d.ts +49 -20
- package/dist/dataLayer/blobBackup.js +139 -50
- package/dist/dataLayer/blobBackup.js.map +1 -1
- package/dist/dataLayer/delete.js +1 -1
- package/dist/dataLayer/delete.js.map +1 -1
- package/dist/dataLayer/harperBridge/ResourceBridge.d.ts +14 -1
- package/dist/dataLayer/harperBridge/ResourceBridge.js +51 -10
- package/dist/dataLayer/harperBridge/ResourceBridge.js.map +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/DeleteAuditLogsBeforeResults.d.ts +3 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/DeleteAuditLogsBeforeResults.js +3 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/DeleteAuditLogsBeforeResults.js.map +1 -1
- package/dist/dataLayer/hdbInfoController.d.ts +10 -0
- package/dist/dataLayer/hdbInfoController.js +30 -1
- package/dist/dataLayer/hdbInfoController.js.map +1 -1
- package/dist/dataLayer/insert.d.ts +9 -1
- package/dist/dataLayer/insert.js +30 -0
- package/dist/dataLayer/insert.js.map +1 -1
- package/dist/dataLayer/rocksdbBackup.d.ts +2 -2
- package/dist/dataLayer/rocksdbBackup.js +45 -8
- package/dist/dataLayer/rocksdbBackup.js.map +1 -1
- package/dist/dataLayer/schema.js +8 -0
- package/dist/dataLayer/schema.js.map +1 -1
- package/dist/dataLayer/schemaDescribe.js +8 -1
- package/dist/dataLayer/schemaDescribe.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js.map +1 -1
- package/dist/json/systemSchema.json +52 -0
- package/dist/resources/DatabaseTransaction.d.ts +55 -0
- package/dist/resources/DatabaseTransaction.js +459 -45
- package/dist/resources/DatabaseTransaction.js.map +1 -1
- package/dist/resources/LMDBTransaction.js +22 -4
- package/dist/resources/LMDBTransaction.js.map +1 -1
- package/dist/resources/PrimaryRocksDatabase.d.ts +1 -0
- package/dist/resources/PrimaryRocksDatabase.js +29 -0
- package/dist/resources/PrimaryRocksDatabase.js.map +1 -1
- package/dist/resources/RecordEncoder.d.ts +20 -0
- package/dist/resources/RecordEncoder.js +94 -9
- package/dist/resources/RecordEncoder.js.map +1 -1
- package/dist/resources/RequestTarget.d.ts +2 -0
- package/dist/resources/RequestTarget.js.map +1 -1
- package/dist/resources/Resource.js +20 -11
- package/dist/resources/Resource.js.map +1 -1
- package/dist/resources/ResourceInterface.d.ts +20 -1
- package/dist/resources/ResourceInterface.js.map +1 -1
- package/dist/resources/RocksIndexStore.d.ts +6 -1
- package/dist/resources/RocksIndexStore.js +24 -9
- package/dist/resources/RocksIndexStore.js.map +1 -1
- package/dist/resources/RocksTransactionLogStore.d.ts +14 -1
- package/dist/resources/RocksTransactionLogStore.js +57 -17
- package/dist/resources/RocksTransactionLogStore.js.map +1 -1
- package/dist/resources/Table.d.ts +112 -8
- package/dist/resources/Table.js +1073 -191
- package/dist/resources/Table.js.map +1 -1
- package/dist/resources/auditStore.d.ts +11 -2
- package/dist/resources/auditStore.js +325 -71
- package/dist/resources/auditStore.js.map +1 -1
- package/dist/resources/blob.d.ts +129 -9
- package/dist/resources/blob.js +992 -114
- package/dist/resources/blob.js.map +1 -1
- package/dist/resources/branchDatabase.d.ts +48 -0
- package/dist/resources/branchDatabase.js +892 -0
- package/dist/resources/branchDatabase.js.map +1 -0
- package/dist/resources/crdt.js +50 -12
- package/dist/resources/crdt.js.map +1 -1
- package/dist/resources/databases.d.ts +150 -0
- package/dist/resources/databases.js +1200 -239
- package/dist/resources/databases.js.map +1 -1
- package/dist/resources/defineTable.d.ts +10 -2
- package/dist/resources/defineTable.js +9 -1
- package/dist/resources/defineTable.js.map +1 -1
- package/dist/resources/graphql.d.ts +1 -1
- package/dist/resources/graphql.js +50 -15
- package/dist/resources/graphql.js.map +1 -1
- package/dist/resources/indexes/HierarchicalNavigableSmallWorld.d.ts +1 -0
- package/dist/resources/indexes/HierarchicalNavigableSmallWorld.js +6 -2
- package/dist/resources/indexes/HierarchicalNavigableSmallWorld.js.map +1 -1
- package/dist/resources/longLivedTransactions.d.ts +71 -0
- package/dist/resources/longLivedTransactions.js +358 -0
- package/dist/resources/longLivedTransactions.js.map +1 -0
- package/dist/resources/models/backendRegistry.d.ts +26 -0
- package/dist/resources/models/backendRegistry.js +60 -2
- package/dist/resources/models/backendRegistry.js.map +1 -1
- package/dist/resources/models/bootstrap.d.ts +33 -1
- package/dist/resources/models/bootstrap.js +416 -31
- package/dist/resources/models/bootstrap.js.map +1 -1
- package/dist/resources/recordLock.d.ts +80 -0
- package/dist/resources/recordLock.js +184 -0
- package/dist/resources/recordLock.js.map +1 -0
- package/dist/resources/replayLogs.d.ts +14 -1
- package/dist/resources/replayLogs.js +152 -24
- package/dist/resources/replayLogs.js.map +1 -1
- package/dist/resources/replayLogsGuards.d.ts +94 -7
- package/dist/resources/replayLogsGuards.js +111 -7
- package/dist/resources/replayLogsGuards.js.map +1 -1
- package/dist/resources/search.js +158 -6
- package/dist/resources/search.js.map +1 -1
- package/dist/resources/transactionBroadcast.d.ts +1 -1
- package/dist/resources/transactionBroadcast.js +2 -2
- package/dist/resources/transactionBroadcast.js.map +1 -1
- package/dist/security/auth.js +61 -30
- package/dist/security/auth.js.map +1 -1
- package/dist/security/authn/oidc/claims.d.ts +22 -0
- package/dist/security/authn/oidc/claims.js +71 -0
- package/dist/security/authn/oidc/claims.js.map +1 -0
- package/dist/security/authn/oidc/identityToken.d.ts +27 -0
- package/dist/security/authn/oidc/identityToken.js +111 -0
- package/dist/security/authn/oidc/identityToken.js.map +1 -0
- package/dist/security/authn/oidc/jwks.d.ts +25 -0
- package/dist/security/authn/oidc/jwks.js +261 -0
- package/dist/security/authn/oidc/jwks.js.map +1 -0
- package/dist/security/authn/oidc/providers/generic.d.ts +13 -0
- package/dist/security/authn/oidc/providers/generic.js +34 -0
- package/dist/security/authn/oidc/providers/generic.js.map +1 -0
- package/dist/security/authn/oidc/providers/githubActions.d.ts +11 -0
- package/dist/security/authn/oidc/providers/githubActions.js +129 -0
- package/dist/security/authn/oidc/providers/githubActions.js.map +1 -0
- package/dist/security/authn/oidc/providers/index.d.ts +37 -0
- package/dist/security/authn/oidc/providers/index.js +24 -0
- package/dist/security/authn/oidc/providers/index.js.map +1 -0
- package/dist/security/authn/oidc/tokenExchange.d.ts +12 -0
- package/dist/security/authn/oidc/tokenExchange.js +306 -0
- package/dist/security/authn/oidc/tokenExchange.js.map +1 -0
- package/dist/security/authn/oidc/trustPolicyOperations.d.ts +49 -0
- package/dist/security/authn/oidc/trustPolicyOperations.js +358 -0
- package/dist/security/authn/oidc/trustPolicyOperations.js.map +1 -0
- package/dist/security/authn/oidc/types.d.ts +38 -0
- package/dist/security/authn/oidc/types.js +6 -0
- package/dist/security/authn/oidc/types.js.map +1 -0
- package/dist/security/certificateVerification/index.js +40 -11
- package/dist/security/certificateVerification/index.js.map +1 -1
- package/dist/security/certificateVerification/trustedIssuers.d.ts +24 -0
- package/dist/security/certificateVerification/trustedIssuers.js +79 -0
- package/dist/security/certificateVerification/trustedIssuers.js.map +1 -0
- package/dist/security/certificateVerification/types.d.ts +1 -0
- package/dist/security/credentialProvenance.d.ts +35 -0
- package/dist/security/credentialProvenance.js +51 -0
- package/dist/security/credentialProvenance.js.map +1 -0
- package/dist/security/credentialRejection.d.ts +4 -0
- package/dist/security/credentialRejection.js +24 -0
- package/dist/security/credentialRejection.js.map +1 -0
- package/dist/security/deferredAuthentication.d.ts +36 -0
- package/dist/security/deferredAuthentication.js +70 -0
- package/dist/security/deferredAuthentication.js.map +1 -0
- package/dist/security/impersonation.d.ts +21 -0
- package/dist/security/impersonation.js +108 -9
- package/dist/security/impersonation.js.map +1 -1
- package/dist/security/jsLoader.d.ts +6 -0
- package/dist/security/jsLoader.js +75 -15
- package/dist/security/jsLoader.js.map +1 -1
- package/dist/security/keys.js +301 -71
- package/dist/security/keys.js.map +1 -1
- package/dist/security/operationScope.d.ts +21 -0
- package/dist/security/operationScope.js +36 -0
- package/dist/security/operationScope.js.map +1 -0
- package/dist/security/permissionsTranslator.js +21 -0
- package/dist/security/permissionsTranslator.js.map +1 -1
- package/dist/security/tokenAuthentication.d.ts +19 -1
- package/dist/security/tokenAuthentication.js +191 -10
- package/dist/security/tokenAuthentication.js.map +1 -1
- package/dist/security/user.js +4 -3
- package/dist/security/user.js.map +1 -1
- package/dist/server/DurableSubscriptionsSession.d.ts +2 -2
- package/dist/server/DurableSubscriptionsSession.js +67 -10
- package/dist/server/DurableSubscriptionsSession.js.map +1 -1
- package/dist/server/REST.js +73 -0
- package/dist/server/REST.js.map +1 -1
- package/dist/server/graphqlQuerying.js +4 -0
- package/dist/server/graphqlQuerying.js.map +1 -1
- package/dist/server/http.d.ts +11 -0
- package/dist/server/http.js +88 -15
- package/dist/server/http.js.map +1 -1
- package/dist/server/itc/serverHandlers.js +8 -1
- package/dist/server/itc/serverHandlers.js.map +1 -1
- package/dist/server/jobs/jobProcess.js +6 -2
- package/dist/server/jobs/jobProcess.js.map +1 -1
- package/dist/server/jobs/jobs.js +4 -1
- package/dist/server/jobs/jobs.js.map +1 -1
- package/dist/server/liveSubscriptionAuth.d.ts +26 -4
- package/dist/server/liveSubscriptionAuth.js +105 -39
- package/dist/server/liveSubscriptionAuth.js.map +1 -1
- package/dist/server/loadRootComponents.js +49 -10
- package/dist/server/loadRootComponents.js.map +1 -1
- package/dist/server/mqtt.d.ts +2 -0
- package/dist/server/mqtt.js +165 -30
- package/dist/server/mqtt.js.map +1 -1
- package/dist/server/nodeName.d.ts +2 -0
- package/dist/server/nodeName.js +107 -23
- package/dist/server/nodeName.js.map +1 -1
- package/dist/server/serverHelpers/Headers.d.ts +25 -0
- package/dist/server/serverHelpers/Headers.js +139 -1
- package/dist/server/serverHelpers/Headers.js.map +1 -1
- package/dist/server/serverHelpers/contentTypes.d.ts +9 -0
- package/dist/server/serverHelpers/contentTypes.js +32 -25
- package/dist/server/serverHelpers/contentTypes.js.map +1 -1
- package/dist/server/serverHelpers/deployValidationState.d.ts +3 -0
- package/dist/server/serverHelpers/deployValidationState.js +9 -19
- package/dist/server/serverHelpers/deployValidationState.js.map +1 -1
- package/dist/server/serverHelpers/operationAuthorizationState.d.ts +12 -0
- package/dist/server/serverHelpers/operationAuthorizationState.js +24 -2
- package/dist/server/serverHelpers/operationAuthorizationState.js.map +1 -1
- package/dist/server/serverHelpers/registeredOperations.d.ts +5 -4
- package/dist/server/serverHelpers/registeredOperations.js +74 -21
- package/dist/server/serverHelpers/registeredOperations.js.map +1 -1
- package/dist/server/serverHelpers/requestSanitization.d.ts +11 -0
- package/dist/server/serverHelpers/requestSanitization.js +20 -0
- package/dist/server/serverHelpers/requestSanitization.js.map +1 -0
- package/dist/server/serverHelpers/serverHandlers.js +6 -3
- package/dist/server/serverHelpers/serverHandlers.js.map +1 -1
- package/dist/server/serverHelpers/serverUtilities.d.ts +18 -0
- package/dist/server/serverHelpers/serverUtilities.js +90 -20
- package/dist/server/serverHelpers/serverUtilities.js.map +1 -1
- package/dist/server/serverHelpers/sharedMessageEncoding.d.ts +67 -0
- package/dist/server/serverHelpers/sharedMessageEncoding.js +280 -0
- package/dist/server/serverHelpers/sharedMessageEncoding.js.map +1 -0
- package/dist/server/serverHelpers/uwsServer.js +19 -1
- package/dist/server/serverHelpers/uwsServer.js.map +1 -1
- package/dist/server/static.js +24 -28
- package/dist/server/static.js.map +1 -1
- package/dist/server/storageReclamation.d.ts +12 -0
- package/dist/server/storageReclamation.js +26 -0
- package/dist/server/storageReclamation.js.map +1 -1
- package/dist/server/threads/itc.d.ts +7 -2
- package/dist/server/threads/itc.js +5 -1
- package/dist/server/threads/itc.js.map +1 -1
- package/dist/server/threads/manageThreads.d.ts +26 -3
- package/dist/server/threads/manageThreads.js +517 -65
- package/dist/server/threads/manageThreads.js.map +1 -1
- package/dist/server/threads/socketRouter.js +89 -26
- package/dist/server/threads/socketRouter.js.map +1 -1
- package/dist/server/threads/threadHeapMemory.d.ts +2 -0
- package/dist/server/threads/threadHeapMemory.js +31 -0
- package/dist/server/threads/threadHeapMemory.js.map +1 -0
- package/dist/server/threads/threadServer.js +46 -15
- package/dist/server/threads/threadServer.js.map +1 -1
- package/dist/sqlEngine/config.d.ts +1 -3
- package/dist/sqlEngine/config.js +19 -16
- package/dist/sqlEngine/config.js.map +1 -1
- package/dist/sqlTranslator/index.d.ts +1 -1
- package/dist/sqlTranslator/index.js +30 -7
- package/dist/sqlTranslator/index.js.map +1 -1
- package/dist/upgrade/directives/5-3-0.d.ts +7 -0
- package/dist/upgrade/directives/5-3-0.js +148 -0
- package/dist/upgrade/directives/5-3-0.js.map +1 -0
- package/dist/upgrade/directives/directivesController.js +2 -1
- package/dist/upgrade/directives/directivesController.js.map +1 -1
- package/dist/utility/OperationFunctionCaller.js +2 -1
- package/dist/utility/OperationFunctionCaller.js.map +1 -1
- package/dist/utility/common_utils.d.ts +16 -0
- package/dist/utility/common_utils.js +32 -6
- package/dist/utility/common_utils.js.map +1 -1
- package/dist/utility/componentNames.d.ts +8 -0
- package/dist/utility/componentNames.js +12 -1
- package/dist/utility/componentNames.js.map +1 -1
- package/dist/utility/environment/environmentManager.js +3 -6
- package/dist/utility/environment/environmentManager.js.map +1 -1
- package/dist/utility/environment/systemInformation.d.ts +1 -0
- package/dist/utility/environment/systemInformation.js +1 -0
- package/dist/utility/environment/systemInformation.js.map +1 -1
- package/dist/utility/errors/commonErrors.d.ts +2 -0
- package/dist/utility/errors/commonErrors.js +2 -0
- package/dist/utility/errors/commonErrors.js.map +1 -1
- package/dist/utility/errors/hdbError.d.ts +17 -0
- package/dist/utility/errors/hdbError.js +30 -1
- package/dist/utility/errors/hdbError.js.map +1 -1
- package/dist/utility/globalSchema.d.ts +18 -0
- package/dist/utility/hdbTerms.d.ts +16 -0
- package/dist/utility/hdbTerms.js +18 -2
- package/dist/utility/hdbTerms.js.map +1 -1
- package/dist/utility/logging/harper_logger.d.ts +2 -0
- package/dist/utility/logging/harper_logger.js +91 -14
- package/dist/utility/logging/harper_logger.js.map +1 -1
- package/dist/utility/logging/logRotator.js +76 -49
- package/dist/utility/logging/logRotator.js.map +1 -1
- package/dist/utility/nodeIdentity.d.ts +9 -0
- package/dist/utility/nodeIdentity.js +58 -0
- package/dist/utility/nodeIdentity.js.map +1 -0
- package/dist/utility/npmUtilities.js +9 -7
- package/dist/utility/npmUtilities.js.map +1 -1
- package/dist/utility/operationPermissions.d.ts +3 -1
- package/dist/utility/operationPermissions.js +16 -1
- package/dist/utility/operationPermissions.js.map +1 -1
- package/dist/utility/operation_authorization.d.ts +10 -7
- package/dist/utility/operation_authorization.js +212 -41
- package/dist/utility/operation_authorization.js.map +1 -1
- package/dist/utility/watchPath.d.ts +29 -0
- package/dist/utility/watchPath.js +68 -0
- package/dist/utility/watchPath.js.map +1 -0
- package/dist/utility/watcherFallback.d.ts +86 -0
- package/dist/utility/watcherFallback.js +278 -1
- package/dist/utility/watcherFallback.js.map +1 -1
- package/dist/validation/configValidator.d.ts +12 -0
- package/dist/validation/configValidator.js +199 -72
- package/dist/validation/configValidator.js.map +1 -1
- package/dist/validation/installValidator.js +12 -0
- package/dist/validation/installValidator.js.map +1 -1
- package/dist/validation/validationWrapper.d.ts +11 -0
- package/dist/validation/validationWrapper.js +16 -3
- package/dist/validation/validationWrapper.js.map +1 -1
- package/index.ts +2 -0
- package/json/systemSchema.json +52 -0
- package/npm-shrinkwrap.json +196 -194
- package/package.json +7 -6
- package/resources/DESIGN.md +114 -52
- package/resources/DatabaseTransaction.ts +521 -43
- package/resources/LMDBTransaction.ts +26 -4
- package/resources/PrimaryRocksDatabase.ts +28 -1
- package/resources/RecordEncoder.ts +103 -8
- package/resources/RequestTarget.ts +2 -0
- package/resources/Resource.ts +17 -9
- package/resources/ResourceInterface.ts +23 -0
- package/resources/RocksIndexStore.ts +30 -9
- package/resources/RocksTransactionLogStore.ts +78 -21
- package/resources/Table.ts +1110 -159
- package/resources/auditStore.ts +331 -73
- package/resources/blob.ts +1029 -110
- package/resources/branchDatabase.ts +941 -0
- package/resources/crdt.ts +76 -12
- package/resources/databases.ts +1310 -252
- package/resources/defineTable.ts +18 -2
- package/resources/graphql.ts +70 -16
- package/resources/indexes/HierarchicalNavigableSmallWorld.ts +6 -2
- package/resources/longLivedTransactions.ts +360 -0
- package/resources/models/backendRegistry.ts +84 -2
- package/resources/models/bootstrap.ts +473 -28
- package/resources/recordLock.ts +253 -0
- package/resources/replayLogs.ts +147 -26
- package/resources/replayLogsGuards.ts +171 -8
- package/resources/search.ts +154 -7
- package/resources/transactionBroadcast.ts +3 -3
- package/security/auth.ts +68 -29
- package/security/authn/oidc/claims.ts +72 -0
- package/security/authn/oidc/identityToken.ts +129 -0
- package/security/authn/oidc/jwks.ts +260 -0
- package/security/authn/oidc/providers/generic.ts +40 -0
- package/security/authn/oidc/providers/githubActions.ts +137 -0
- package/security/authn/oidc/providers/index.ts +52 -0
- package/security/authn/oidc/tokenExchange.ts +300 -0
- package/security/authn/oidc/trustPolicyOperations.ts +343 -0
- package/security/authn/oidc/types.ts +41 -0
- package/security/certificateVerification/index.ts +54 -13
- package/security/certificateVerification/trustedIssuers.ts +76 -0
- package/security/certificateVerification/types.ts +1 -0
- package/security/credentialProvenance.ts +47 -0
- package/security/credentialRejection.ts +22 -0
- package/security/deferredAuthentication.ts +71 -0
- package/security/impersonation.ts +117 -12
- package/security/jsLoader.ts +81 -18
- package/security/keys.ts +298 -72
- package/security/operationScope.ts +33 -0
- package/security/permissionsTranslator.js +23 -0
- package/security/tokenAuthentication.ts +233 -12
- package/security/user.ts +4 -3
- package/server/DESIGN.md +183 -16
- package/server/DurableSubscriptionsSession.ts +71 -11
- package/server/REST.ts +79 -1
- package/server/graphqlQuerying.ts +4 -0
- package/server/http.ts +99 -18
- package/server/itc/serverHandlers.js +8 -1
- package/server/jobs/jobProcess.ts +8 -2
- package/server/jobs/jobs.ts +4 -1
- package/server/liveSubscriptionAuth.ts +129 -46
- package/server/loadRootComponents.js +50 -8
- package/server/mqtt.ts +179 -38
- package/server/nodeName.ts +103 -21
- package/server/serverHelpers/Headers.ts +131 -0
- package/server/serverHelpers/contentTypes.ts +29 -21
- package/server/serverHelpers/deployValidationState.ts +24 -13
- package/server/serverHelpers/operationAuthorizationState.ts +34 -3
- package/server/serverHelpers/registeredOperations.ts +79 -22
- package/server/serverHelpers/requestSanitization.ts +15 -0
- package/server/serverHelpers/serverHandlers.js +6 -3
- package/server/serverHelpers/serverUtilities.ts +104 -31
- package/server/serverHelpers/sharedMessageEncoding.ts +307 -0
- package/server/serverHelpers/uwsServer.ts +17 -2
- package/server/static.ts +23 -29
- package/server/storageReclamation.ts +23 -0
- package/server/threads/itc.js +11 -1
- package/server/threads/manageThreads.js +526 -56
- package/server/threads/socketRouter.ts +81 -26
- package/server/threads/threadHeapMemory.ts +26 -0
- package/server/threads/threadServer.js +43 -15
- package/sqlTranslator/index.ts +31 -8
- package/studio/web/assets/Chat-BnCBegQz.js +2267 -0
- package/studio/web/assets/FloatingChat-CoDW1ySS.js +23 -0
- package/studio/web/assets/{abnfDiagram-VCTEODGH-C0_BAZyO.js → abnfDiagram-VCTEODGH-B0BebmD2.js} +1 -1
- package/studio/web/assets/{alertDialog-DIHt7Z0r.js → alertDialog-CQyAJJhl.js} +1 -1
- package/studio/web/assets/{apiToken-c3Rd-w6g.js → apiToken-Bwk5BLXW.js} +1 -1
- package/studio/web/assets/applications-DHxGi7JH.js +296 -0
- package/studio/web/assets/architecture-7GRP2DOG-LB-MLAAb.js +1 -0
- package/studio/web/assets/{architectureDiagram-5GKGNRK7-BWzrASgm.js → architectureDiagram-5GKGNRK7-7SW3GD-K.js} +1 -1
- package/studio/web/assets/authStore-C3Nfubqr.js +3 -0
- package/studio/web/assets/{blockDiagram-NRAW4CY4-BdJX9Khj.js → blockDiagram-I7D4REHJ-BqguiadH.js} +2 -2
- package/studio/web/assets/{button-DhiX-njv.js → button-BIsUKRZq.js} +2 -2
- package/studio/web/assets/{c4Diagram-UCG6FXSJ-CI6MzGmQ.js → c4Diagram-7LVT6UL2-LBNf8t_X.js} +1 -1
- package/studio/web/assets/channel-yictG-U-.js +1 -0
- package/studio/web/assets/{chevron-up-Df2c8uoU.js → chevron-up-DtKGqDn3.js} +1 -1
- package/studio/web/assets/{chunk-TEH6E4GO-P87k5mNi.js → chunk-4HAMMTFA-DWtTut21.js} +1 -1
- package/studio/web/assets/{chunk-75Z2AOVW-BT8tVmks.js → chunk-75Z2AOVW-QGQD6th2.js} +1 -1
- package/studio/web/assets/{chunk-DU6HZSFF-9kAOOmI6.js → chunk-DU6HZSFF-Chq20Ba5.js} +1 -1
- package/studio/web/assets/{chunk-F27PBJKO-BW7ao8AY.js → chunk-F27PBJKO-BVA5EPhV.js} +1 -1
- package/studio/web/assets/{chunk-GMAD6QVW-BNyXpoQO.js → chunk-GMAD6QVW-BeS7S07A.js} +1 -1
- package/studio/web/assets/{chunk-OBVCFTLP-D4wWOqDQ.js → chunk-GVQU2GXP-sbwVIQ8i.js} +1 -1
- package/studio/web/assets/{chunk-G27WJ6UU-COyLMcgK.js → chunk-IMKFNOWR-Bnh3tAVd.js} +1 -1
- package/studio/web/assets/{chunk-JQ64N6SF-Cyz1IeLf.js → chunk-L3NEJ4N5-COfUyKII.js} +1 -1
- package/studio/web/assets/chunk-OSK3NFVY-ByciRftO.js +10 -0
- package/studio/web/assets/{chunk-P2QGCYS3-DmIFY4d7.js → chunk-P2QGCYS3-CP1VhG_c.js} +1 -1
- package/studio/web/assets/{chunk-POPQ4Y6H-BPrvMyKz.js → chunk-POPQ4Y6H-ClWhhkwW.js} +1 -1
- package/studio/web/assets/{chunk-PWAF6VOD-2zB6IW9i.js → chunk-PWAF6VOD-1z1THyS5.js} +1 -1
- package/studio/web/assets/{chunk-RHFEMEQ7-2FgyI8YU.js → chunk-SHT3W25Y-LpQkMsah.js} +2 -2
- package/studio/web/assets/{chunk-SVP7TREG-FwtbH2QC.js → chunk-SVP7TREG-jtdAHw0S.js} +1 -1
- package/studio/web/assets/{chunk-LCL6LL3I-HOzK_ppE.js → chunk-TICWLB2K-VOwzetX-.js} +1 -1
- package/studio/web/assets/classDiagram-ZZMXUADV-VaEwSy_g.js +1 -0
- package/studio/web/assets/classDiagram-v2-VYDZK3BY-VaEwSy_g.js +1 -0
- package/studio/web/assets/{createLucideIcon-BKGPfjm2.js → createLucideIcon-CzW9508A.js} +1 -1
- package/studio/web/assets/{cssMode-CEN2mzSA.js → cssMode-s0cWI-_M.js} +1 -1
- package/studio/web/assets/{cynefin-OW5HDTMX-BRkpLFQV.js → cynefin-OW5HDTMX-BbdbCvub.js} +1 -1
- package/studio/web/assets/{cynefinDiagram-5FMLGOSQ-CHT1DaX6.js → cynefinDiagram-5FMLGOSQ-TP-aIqbt.js} +1 -1
- package/studio/web/assets/{dagre-3AP2YEHR-DpUXBh63.js → dagre-GXQ25YYZ-DShnGpGo.js} +1 -1
- package/studio/web/assets/{diagram-S7CK7UJ4-BuymVFZT.js → diagram-S7CK7UJ4-aoCVTtcy.js} +1 -1
- package/studio/web/assets/{diagram-UQ7AKVKN-CyP148RM.js → diagram-UQ7AKVKN-DglXtQ6x.js} +1 -1
- package/studio/web/assets/{diagram-VSXAHHWV-CoCAg3M9.js → diagram-VSXAHHWV-fhEdmkwM.js} +1 -1
- package/studio/web/assets/{diagram-VX7I27RA-BpOqCFca.js → diagram-VX7I27RA-DccVJet6.js} +1 -1
- package/studio/web/assets/{diagram-Z3DM3KII-Bfpw7Vbj.js → diagram-Z3DM3KII-D-RyJJb7.js} +1 -1
- package/studio/web/assets/{dialog-CBf0Mr1d.js → dialog-Cn2uWgD4.js} +1 -1
- package/studio/web/assets/{dist-lkA3O3eM.js → dist-DP8UjMB_.js} +1 -1
- package/studio/web/assets/{download-BtTOBem-.js → download-B5T5r7ss.js} +1 -1
- package/studio/web/assets/{ebnfDiagram-PWID7BFC-DS_6aWqL.js → ebnfDiagram-PWID7BFC-DJGpIpz_.js} +1 -1
- package/studio/web/assets/{editor-D8oDeCTL.js → editor-DNcRHK54.js} +1 -1
- package/studio/web/assets/{erDiagram-SSCWMZ5O-DJNk6Fgw.js → erDiagram-RLTQ6QDP-CIfNlgkC.js} +1 -1
- package/studio/web/assets/eventmodeling-NTZA5JFV-CLxnp2CR.js +1 -0
- package/studio/web/assets/flowDiagram-HODETNUW-BIbhmz9f.js +1 -0
- package/studio/web/assets/{ganttDiagram-EL5Y4UJY-2pOExxMY.js → ganttDiagram-EL5Y4UJY-BxToTzzD.js} +1 -1
- package/studio/web/assets/{getAnalytics-D4LKGeVy.js → getAnalytics-GHK8ORfM.js} +1 -1
- package/studio/web/assets/{gitGraph-4MIJSDKK-CH5ZxwzF.js → gitGraph-4MIJSDKK-D2s2w8lE.js} +1 -1
- package/studio/web/assets/{gitGraphDiagram-WWUBYQGX-DVIsIhbO.js → gitGraphDiagram-WWUBYQGX-Dwntd4-x.js} +1 -1
- package/studio/web/assets/{html-u3vOg7LJ.js → html-Bdssedlg.js} +1 -1
- package/studio/web/assets/{htmlMode-DyO31v-P.js → htmlMode-CoDlJ3fw.js} +1 -1
- package/studio/web/assets/{index-Cxj2_wsl.css → index-7RMEgVG1.css} +1 -1
- package/studio/web/assets/index-D6sxmFLR.js +824 -0
- package/studio/web/assets/index.lazy-tmU5BS8s.js +2 -0
- package/studio/web/assets/{info-A6RAGUB7-CPQfTnaG.js → info-A6RAGUB7-DYjkvb0C.js} +1 -1
- package/studio/web/assets/{infoDiagram-RXCK75RN-DlwLYlwm.js → infoDiagram-27XIBGKW-Bnp1FJE5.js} +1 -1
- package/studio/web/assets/{ishikawaDiagram-5VMMS53U-BRXRp29U.js → ishikawaDiagram-5VMMS53U-D9Xh2r6X.js} +1 -1
- package/studio/web/assets/{javascript-CUvxOyTC.js → javascript-B8meVSTH.js} +1 -1
- package/studio/web/assets/{journeyDiagram-EYS64GPL-B0ou8k0n.js → journeyDiagram-3NMN7TZE-CokIi6ll.js} +2 -2
- package/studio/web/assets/{jsonMode-f_IwbF3D.js → jsonMode-DpIPd35T.js} +1 -1
- package/studio/web/assets/{kanban-definition-3QL26DDD-uYg7iYzp.js → kanban-definition-UXKFOSKX-CukSFJfX.js} +1 -1
- package/studio/web/assets/{languageServices-DXtZ6rEF.js → languageServices-C_5FMJzQ.js} +1 -1
- package/studio/web/assets/{lspLanguageFeatures-B4pCF1zO.js → lspLanguageFeatures-BIzNBzPK.js} +1 -1
- package/studio/web/assets/{mermaid-parser.core-Ck-fC8b7.js → mermaid-parser.core-BlEsOWNO.js} +3 -3
- package/studio/web/assets/{mermaid.core-CP8aNNYm.js → mermaid.core-BlkGaMIH.js} +5 -5
- package/studio/web/assets/{mindmap-definition-FBJOCRG2-CgTZ-rit.js → mindmap-definition-YA3MSWOX-IprMc_0j.js} +1 -1
- package/studio/web/assets/{notifications-D3tIQ4sg.js → notifications-CQf18QKb.js} +1 -1
- package/studio/web/assets/notifications-CvZivSbh.js +1 -0
- package/studio/web/assets/{packet-AYTQ26CC-DEyoPtPb.js → packet-AYTQ26CC-Bi3V04Zi.js} +1 -1
- package/studio/web/assets/{pegDiagram-XKGWAZYB-DrD-7sD9.js → pegDiagram-XKGWAZYB-BNuPDLZY.js} +1 -1
- package/studio/web/assets/{pie-WAS4IAKB-wjj-EI1d.js → pie-WAS4IAKB-_6DoDbng.js} +1 -1
- package/studio/web/assets/{pieDiagram-E7YTZNPT-GntqDCzv.js → pieDiagram-E7YTZNPT-DqNb6Ht2.js} +1 -1
- package/studio/web/assets/{profile-DZWU7MgT.js → profile-DdOwtntb.js} +1 -1
- package/studio/web/assets/{quadrantDiagram-AXDQQJYC-0UeqXQGd.js → quadrantDiagram-AXDQQJYC-BGH9E2YR.js} +1 -1
- package/studio/web/assets/{radar-RG4KPBEZ-DFSA5h7k.js → radar-RG4KPBEZ-DDdVczcL.js} +1 -1
- package/studio/web/assets/{railroad-74A4TZTK-CaOUG9wR.js → railroad-74A4TZTK-BJUP4Jds.js} +1 -1
- package/studio/web/assets/railroad-abnf-HS5TGJTU-Bm3L1L0h.js +1 -0
- package/studio/web/assets/railroad-ebnf-LZEXJU2U-CKzLGlkw.js +1 -0
- package/studio/web/assets/railroad-peg-WCYAUIDC-S8xLjslx.js +1 -0
- package/studio/web/assets/{railroadDiagram-O6MQD6OU-yHUELZaV.js → railroadDiagram-O6MQD6OU-DGTPh2KZ.js} +1 -1
- package/studio/web/assets/{regions-CkyurXzE.js → regions-n69fwagr.js} +1 -1
- package/studio/web/assets/{register-BUyhWjBO.js → register-PfWTCXWB.js} +3 -3
- package/studio/web/assets/{requirementDiagram-EFPCY7ZU-DNEGFjuW.js → requirementDiagram-BXWQKSXE-BJnO6uLz.js} +1 -1
- package/studio/web/assets/{sankeyDiagram-P5KCCOFB-DpyAmSVR.js → sankeyDiagram-P5KCCOFB-0vSOdymH.js} +1 -1
- package/studio/web/assets/{sequenceDiagram-WJ2MYXX4-TyaT7xNk.js → sequenceDiagram-WJ2MYXX4-hETizDWE.js} +1 -1
- package/studio/web/assets/{setComponentFile-CeyKSZAa.js → setComponentFile-Bg6O7X0S.js} +1 -1
- package/studio/web/assets/{setup-D2kn7cAA.js → setup-CUx_aUDl.js} +2 -2
- package/studio/web/assets/{stateDiagram-HBIQ2CUA-CeEdTArZ.js → stateDiagram-D77RDMKH-CdYQ_KtC.js} +1 -1
- package/studio/web/assets/stateDiagram-v2-MP3YSRHH-CdKuzQMT.js +1 -0
- package/studio/web/assets/status-D7BVKqX9.js +61 -0
- package/studio/web/assets/{swimlanes-XN3QIQJK-B54FmF46.js → swimlanes-42K2YHIH-B8cHIpU4.js} +1 -1
- package/studio/web/assets/swimlanesDiagram-VR7AAH4N-DmOSJwaH.js +8 -0
- package/studio/web/assets/{tabs-B_G5zscN.js → tabs-BrHu7gJi.js} +1 -1
- package/studio/web/assets/{timeline-definition-24CTP7MA-D-a9ujbo.js → timeline-definition-24CTP7MA-BJWYSXqF.js} +1 -1
- package/studio/web/assets/{toggleHighContrast-C0UW6rI2.js → toggleHighContrast-DBSyXzMr.js} +1 -1
- package/studio/web/assets/{treeView-Q6P3EWNA-CrW_6JnS.js → treeView-Q6P3EWNA-qxe_v6CQ.js} +1 -1
- package/studio/web/assets/{treemap-WGGIJYW6-BxyYLdP_.js → treemap-WGGIJYW6-dDo97XXF.js} +1 -1
- package/studio/web/assets/{tsMode-DBC0zmDx.js → tsMode-BByKCjBS.js} +1 -1
- package/studio/web/assets/{typescript-DApRQir3.js → typescript-DDLnLpw9.js} +1 -1
- package/studio/web/assets/{useEntityRestURL-DB6JStU1.js → useEntityRestURL-31CHGaHk.js} +1 -1
- package/studio/web/assets/{useLocalStorage-Dtj1QS8_.js → useLocalStorage-BqMR3D8_.js} +1 -1
- package/studio/web/assets/vendor-core-c2JRRJpV.js +58 -0
- package/studio/web/assets/vendor-datadog-CLUcJXOo.js +6 -0
- package/studio/web/assets/{vendor-react-Dyj4O3HE.js → vendor-react-CJV_K1u4.js} +1 -1
- package/studio/web/assets/vendor-tanstack-DxzraizX.js +1 -0
- package/studio/web/assets/{vendor-ui-vhu-UHhF.js → vendor-ui-BUjK0h8a.js} +2 -2
- package/studio/web/assets/{vennDiagram-4TSXK5OY-Cy7s7Mpy.js → vennDiagram-4TSXK5OY-A3i-lCdl.js} +1 -1
- package/studio/web/assets/{wardley-WFR3VGLG-BeBL35g2.js → wardley-WFR3VGLG-B0ik-_6g.js} +1 -1
- package/studio/web/assets/{wardleyDiagram-VM6X3IG4-BylmIGSg.js → wardleyDiagram-VM6X3IG4-CjrkKWUR.js} +1 -1
- package/studio/web/assets/{workers-C0bFIedw.js → workers-pR3jRY9D.js} +1 -1
- package/studio/web/assets/x-DIzaLEdK.js +1 -0
- package/studio/web/assets/{xml-HWd01lU-.js → xml-2iRnMhQO.js} +1 -1
- package/studio/web/assets/{xychartDiagram-S5SC5T6Z-CoKALMXr.js → xychartDiagram-S5SC5T6Z-Biok4GYV.js} +1 -1
- package/studio/web/assets/{yaml-CIH0Nt-h.js → yaml-Bf92gJpd.js} +1 -1
- package/studio/web/index.html +14 -14
- package/upgrade/directives/5-3-0.ts +132 -0
- package/upgrade/directives/directivesController.ts +2 -1
- package/utility/OperationFunctionCaller.ts +2 -1
- package/utility/common_utils.ts +30 -5
- package/utility/componentNames.ts +12 -0
- package/utility/environment/environmentManager.ts +3 -7
- package/utility/environment/systemInformation.ts +7 -0
- package/utility/errors/commonErrors.ts +4 -0
- package/utility/errors/hdbError.ts +29 -0
- package/utility/hdbTerms.ts +17 -0
- package/utility/logging/harper_logger.ts +87 -14
- package/utility/logging/logRotator.ts +72 -45
- package/utility/nodeIdentity.ts +45 -0
- package/utility/npmUtilities.ts +10 -8
- package/utility/operationPermissions.ts +18 -1
- package/utility/operation_authorization.ts +231 -42
- package/utility/watchPath.ts +63 -0
- package/utility/watcherFallback.ts +270 -0
- package/validation/configValidator.ts +209 -72
- package/validation/installValidator.ts +15 -0
- package/validation/validationWrapper.ts +18 -4
- package/studio/web/assets/Chat-JpO8EtUu.js +0 -2067
- package/studio/web/assets/FloatingChat-Bcj3xSZu.js +0 -23
- package/studio/web/assets/applications-ByqLRKyZ.js +0 -296
- package/studio/web/assets/architecture-7GRP2DOG-DNdx5tEU.js +0 -1
- package/studio/web/assets/authStore-qKmCZcaf.js +0 -3
- package/studio/web/assets/channel-DtCV8PTL.js +0 -1
- package/studio/web/assets/chunk-R7TYR2AO-Irip67yr.js +0 -10
- package/studio/web/assets/classDiagram-DTDB5LWJ-DbO_dCNE.js +0 -1
- package/studio/web/assets/classDiagram-v2-JRS7N3AN-DbO_dCNE.js +0 -1
- package/studio/web/assets/eventmodeling-NTZA5JFV-5jbe4A5P.js +0 -1
- package/studio/web/assets/flowDiagram-A5DVABFB-Dp9Ezlow.js +0 -1
- package/studio/web/assets/index-aSt5tY-L.js +0 -824
- package/studio/web/assets/index.lazy-B9jiPwT8.js +0 -2
- package/studio/web/assets/notifications-CUoYgU98.js +0 -1
- package/studio/web/assets/railroad-abnf-HS5TGJTU-Bc0Qi0WH.js +0 -1
- package/studio/web/assets/railroad-ebnf-LZEXJU2U-G8rVVZ2C.js +0 -1
- package/studio/web/assets/railroad-peg-WCYAUIDC-CrehKBhC.js +0 -1
- package/studio/web/assets/stateDiagram-v2-4QOOHH4V-D4tuw9Su.js +0 -1
- package/studio/web/assets/status-D7Xn5ePA.js +0 -61
- package/studio/web/assets/swimlanesDiagram-VK2B7HYN-XOhmNEvq.js +0 -8
- package/studio/web/assets/vendor-core-RCcadM3e.js +0 -73
- package/studio/web/assets/vendor-datadog-BRv-mOv1.js +0 -6
- package/studio/web/assets/vendor-tanstack-BiFWSB3W.js +0 -1
- package/studio/web/assets/x-B9o9hsep.js +0 -1
- /package/studio/web/assets/{sizeCapture-X5ZJPWSS-B0uUizjq.js → sizeCapture-INFHLROL-B0uUizjq.js} +0 -0
|
@@ -41,14 +41,19 @@ var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExte
|
|
|
41
41
|
return path;
|
|
42
42
|
};
|
|
43
43
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
44
|
-
exports.getComponentName = exports.mainThreadInitialized = exports.loadedPaths = exports.TRUSTED_RESOURCE_PLUGINS = void 0;
|
|
44
|
+
exports._symlinkHarperModuleForTests = exports.getComponentName = exports.mainThreadInitialized = exports.loadedPaths = exports.TRUSTED_RESOURCE_PLUGINS = void 0;
|
|
45
|
+
exports.readyComponentModules = readyComponentModules;
|
|
45
46
|
exports.loadComponentDirectories = loadComponentDirectories;
|
|
47
|
+
exports.forgetLoadedPath = forgetLoadedPath;
|
|
48
|
+
exports.forgetLoadedModules = forgetLoadedModules;
|
|
49
|
+
exports.getErrorReporter = getErrorReporter;
|
|
46
50
|
exports.setErrorReporter = setErrorReporter;
|
|
47
51
|
exports.loadComponent = loadComponent;
|
|
48
52
|
const manageThreads_js_1 = require("../server/threads/manageThreads.js");
|
|
49
53
|
const node_fs_1 = require("node:fs");
|
|
50
54
|
const node_path_1 = require("node:path");
|
|
51
55
|
const node_worker_threads_1 = require("node:worker_threads");
|
|
56
|
+
const deployValidationState_ts_1 = require("../server/serverHelpers/deployValidationState.js");
|
|
52
57
|
const yaml_1 = require("yaml");
|
|
53
58
|
const env = __importStar(require("../utility/environment/environmentManager.js"));
|
|
54
59
|
const packageUtils_js_1 = require("../utility/packageUtils.js");
|
|
@@ -68,6 +73,8 @@ const manageThreads_js_2 = require("../server/threads/manageThreads.js");
|
|
|
68
73
|
const requestRestart_ts_1 = require("./requestRestart.js");
|
|
69
74
|
const scopeShutdown_ts_1 = require("./scopeShutdown.js");
|
|
70
75
|
const deployLifecycle_ts_1 = require("./deployLifecycle.js");
|
|
76
|
+
const Application_ts_1 = require("./Application.js");
|
|
77
|
+
const branchDatabase_ts_1 = require("../resources/branchDatabase.js");
|
|
71
78
|
const scopeMount_ts_1 = require("./scopeMount.js");
|
|
72
79
|
const jsLoader_ts_1 = require("../security/jsLoader.js");
|
|
73
80
|
const Server_ts_1 = require("../server/Server.js");
|
|
@@ -87,12 +94,48 @@ const index_ts_1 = require("../server/status/index.js");
|
|
|
87
94
|
const index_ts_2 = require("./status/index.js");
|
|
88
95
|
const DEFAULT_CONFIG_ts_1 = require("./DEFAULT_CONFIG.js");
|
|
89
96
|
const componentSecrets_ts_1 = require("./componentSecrets.js");
|
|
90
|
-
const
|
|
97
|
+
const Application_ts_2 = require("./Application.js");
|
|
98
|
+
const componentPreparationLock_ts_1 = require("./componentPreparationLock.js");
|
|
91
99
|
const node_url_1 = require("node:url");
|
|
92
100
|
const CF_ROUTES_DIR = (0, configUtils_ts_1.getConfigPath)(hdbTerms_ts_1.CONFIG_PARAMS.COMPONENTSROOT);
|
|
93
101
|
let loadedComponents = new Map();
|
|
102
|
+
// Marks a registry entry as belonging to a deploy validation's throwaway load, so cleanup can tell whether
|
|
103
|
+
// an ordinary load has since ADOPTED that module. Checking "was it already loaded?" before the fact is not
|
|
104
|
+
// enough: ownership changes after that check when a real load reuses the entry while the validation is
|
|
105
|
+
// still running, and deleting it then removes a module a live consumer depends on.
|
|
106
|
+
const VALIDATION_OWNED = Symbol('validationOwnedModule');
|
|
94
107
|
let watchesSetup;
|
|
95
108
|
let resources;
|
|
109
|
+
const componentLoadTails = new Map();
|
|
110
|
+
function serializeComponentLoad(appName, load) {
|
|
111
|
+
const previousLoad = componentLoadTails.get(appName);
|
|
112
|
+
const currentLoad = previousLoad ? previousLoad.then(load) : load();
|
|
113
|
+
const loadTail = currentLoad.then(() => undefined, () => undefined);
|
|
114
|
+
componentLoadTails.set(appName, loadTail);
|
|
115
|
+
void loadTail.then(() => {
|
|
116
|
+
if (componentLoadTails.get(appName) === loadTail)
|
|
117
|
+
componentLoadTails.delete(appName);
|
|
118
|
+
});
|
|
119
|
+
return currentLoad;
|
|
120
|
+
}
|
|
121
|
+
async function readyComponentModules(serverModules, readyComponentPromises = new WeakMap()) {
|
|
122
|
+
const readyPromises = [];
|
|
123
|
+
for (const serverModule of serverModules) {
|
|
124
|
+
if ((typeof serverModule !== 'object' && typeof serverModule !== 'function') ||
|
|
125
|
+
serverModule === null ||
|
|
126
|
+
typeof serverModule.ready !== 'function') {
|
|
127
|
+
continue;
|
|
128
|
+
}
|
|
129
|
+
let readyPromise = readyComponentPromises.get(serverModule);
|
|
130
|
+
if (!readyPromise) {
|
|
131
|
+
readyPromise = Promise.resolve().then(() => serverModule.ready());
|
|
132
|
+
readyComponentPromises.set(serverModule, readyPromise);
|
|
133
|
+
void readyPromise.catch(() => readyComponentPromises.delete(serverModule));
|
|
134
|
+
}
|
|
135
|
+
readyPromises.push(readyPromise);
|
|
136
|
+
}
|
|
137
|
+
await Promise.all(readyPromises);
|
|
138
|
+
}
|
|
96
139
|
/**
|
|
97
140
|
* Load all the applications registered in Harper, those in the components directory as well as any directly
|
|
98
141
|
* specified to run
|
|
@@ -120,6 +163,23 @@ function rootConfigMount(appName) {
|
|
|
120
163
|
return undefined;
|
|
121
164
|
return (0, scopeMount_ts_1.toScopeMount)((0, configUtils_ts_1.getConfigObj)()?.[appName]);
|
|
122
165
|
}
|
|
166
|
+
/**
|
|
167
|
+
* The databases an operator declared that `appName` should get a private fork of, from the root
|
|
168
|
+
* config — the same place `host`/`urlPath` are declared, and for the same reason. Which databases an
|
|
169
|
+
* application forks is a deployment decision, not something the application checks in: the operator
|
|
170
|
+
* deploying it onto a cluster is who knows whether it should run against its own copy.
|
|
171
|
+
*
|
|
172
|
+
* ```yaml
|
|
173
|
+
* my-app:
|
|
174
|
+
* host: api.example.com
|
|
175
|
+
* branchedDatabases: [data]
|
|
176
|
+
* ```
|
|
177
|
+
*/
|
|
178
|
+
function rootConfigBranchedDatabases(appName) {
|
|
179
|
+
if (Object.hasOwn(exports.TRUSTED_RESOURCE_PLUGINS, appName))
|
|
180
|
+
return undefined;
|
|
181
|
+
return (0, configUtils_ts_1.getConfigObj)()?.[appName]?.branchedDatabases;
|
|
182
|
+
}
|
|
123
183
|
/**
|
|
124
184
|
* Resolves the mount for `appName`, or reports the failure and returns `undefined` if the
|
|
125
185
|
* configured `host`/`urlPath` is invalid. The caller must skip loading the application in that
|
|
@@ -140,17 +200,100 @@ function tryRootConfigMount(appName) {
|
|
|
140
200
|
return { ok: false };
|
|
141
201
|
}
|
|
142
202
|
}
|
|
143
|
-
async function loadComponentDirectories(loadedPluginModules, loadedResources)
|
|
203
|
+
async function loadComponentDirectories(loadedPluginModules, loadedResources, readyComponentPromises = new WeakMap(),
|
|
204
|
+
// Settled by boot BEFORE installApplications(), because that installs from the root config and would
|
|
205
|
+
// otherwise reinstall the previous release over an already-live candidate. `undefined` on a worker,
|
|
206
|
+
// which never runs that pass — distinct from an empty map, which would claim nothing is unreconciled.
|
|
207
|
+
interruptedActivationFailures) {
|
|
144
208
|
if (loadedResources)
|
|
145
209
|
resources = loadedResources;
|
|
146
210
|
if (loadedPluginModules)
|
|
147
211
|
loadedComponents = loadedPluginModules;
|
|
212
|
+
const cycleResources = resources;
|
|
213
|
+
const failedRecoveries = new Map(interruptedActivationFailures ?? []);
|
|
214
|
+
if (!interruptedActivationFailures) {
|
|
215
|
+
// No verdict from boot means this is a worker, which never runs the recovery pass. It reads the same
|
|
216
|
+
// evidence instead: a component whose activation could not be settled must not load here either,
|
|
217
|
+
// since workers are what actually serve it.
|
|
218
|
+
//
|
|
219
|
+
// Settlement itself runs here too, not just the read-only check. A worker can be auto-restarted at any
|
|
220
|
+
// time — including mid-activation — and the legacy pass below then has an unsettled journal in front
|
|
221
|
+
// of it, which it refuses to restore against: the component stalls instead of loading. Main-thread
|
|
222
|
+
// startup sequencing does not protect a worker that restarts later. Safe to run on any thread: each deployment is settled under
|
|
223
|
+
// the component preparation lock, which is cross-thread and cross-process, and the pass is idempotent.
|
|
224
|
+
try {
|
|
225
|
+
for (const [component, error] of await (0, Application_ts_2.recoverInterruptedActivations)(CF_ROUTES_DIR)) {
|
|
226
|
+
if (!failedRecoveries.has(component))
|
|
227
|
+
failedRecoveries.set(component, error);
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
catch (error) {
|
|
231
|
+
harper_logger_ts_1.default.warn('Could not settle interrupted component activations on this thread:', (0, harper_logger_ts_1.errorForLog)(error instanceof Error ? error : new Error(String(error))));
|
|
232
|
+
}
|
|
233
|
+
// Plus anything a previous pass recorded as unsettleable, which settlement above leaves in place.
|
|
234
|
+
try {
|
|
235
|
+
for (const [component, error] of await (0, Application_ts_2.unsettleableComponentsFromDisk)(CF_ROUTES_DIR)) {
|
|
236
|
+
if (!failedRecoveries.has(component))
|
|
237
|
+
failedRecoveries.set(component, error);
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
catch (error) {
|
|
241
|
+
harper_logger_ts_1.default.warn('Could not check for unsettled component activations:', (0, harper_logger_ts_1.errorForLog)(error instanceof Error ? error : new Error(String(error))));
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
try {
|
|
245
|
+
for (const [component, error] of await (0, Application_ts_2.recoverInterruptedComponentExtractions)(CF_ROUTES_DIR)) {
|
|
246
|
+
if (!failedRecoveries.has(component))
|
|
247
|
+
failedRecoveries.set(component, error);
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
catch (error) {
|
|
251
|
+
const recoveryError = error instanceof Error ? error : new Error(String(error));
|
|
252
|
+
harper_logger_ts_1.default.warn('Loading existing filesystem components without deploy recovery because staging could not be inspected:', (0, harper_logger_ts_1.errorForLog)(recoveryError));
|
|
253
|
+
}
|
|
148
254
|
// Materialize hdb_secret global-tier rows into process.env and snapshot the scoped tier before
|
|
149
255
|
// any application loads (root components — including the Pro custody registration — have
|
|
150
256
|
// already loaded by this point). Re-runs on each reload cycle, which is how changed/late-custody
|
|
151
257
|
// secrets heal. Never throws.
|
|
152
258
|
await (0, componentSecrets_ts_1.materializeGlobalSecrets)();
|
|
153
259
|
const cfsLoaded = [];
|
|
260
|
+
const deferredRecoveries = new Map([...failedRecoveries].filter(([, error]) => error instanceof componentPreparationLock_ts_1.ComponentPreparationLockTimeoutError));
|
|
261
|
+
const unreportedFailedRecoveries = new Map([...failedRecoveries].filter(([, error]) => !(error instanceof componentPreparationLock_ts_1.ComponentPreparationLockTimeoutError)));
|
|
262
|
+
const deferComponentLoad = (appName) => {
|
|
263
|
+
const appFolder = (0, node_path_1.join)(CF_ROUTES_DIR, appName);
|
|
264
|
+
const appWasVisible = (0, node_fs_1.existsSync)(appFolder);
|
|
265
|
+
if (appWasVisible) {
|
|
266
|
+
index_ts_2.lifecycle.loading(appName, `Component '${appName}' is waiting for in-progress preparation to finish`);
|
|
267
|
+
}
|
|
268
|
+
void serializeComponentLoad(appName, () => (0, Application_ts_2.recoverInterruptedComponentExtraction)(CF_ROUTES_DIR, appName)
|
|
269
|
+
.then(async () => {
|
|
270
|
+
if (!(0, node_fs_1.existsSync)(appFolder)) {
|
|
271
|
+
if (appWasVisible) {
|
|
272
|
+
(0, index_ts_2.statusForComponent)(appName).unknown('Component directory no longer exists after preparation settled');
|
|
273
|
+
}
|
|
274
|
+
return;
|
|
275
|
+
}
|
|
276
|
+
const mountResult = tryRootConfigMount(appName);
|
|
277
|
+
if (!mountResult.ok)
|
|
278
|
+
return;
|
|
279
|
+
const loadedModules = new Set();
|
|
280
|
+
await loadComponent(appFolder, cycleResources, hdbTerms_ts_1.HDB_ROOT_DIR_NAME, {
|
|
281
|
+
isRoot: false,
|
|
282
|
+
autoReload: false,
|
|
283
|
+
appName,
|
|
284
|
+
mount: mountResult.mount,
|
|
285
|
+
branchedDatabases: rootConfigBranchedDatabases(appName),
|
|
286
|
+
collectLoadedModules: loadedModules,
|
|
287
|
+
});
|
|
288
|
+
await readyComponentModules(loadedModules, readyComponentPromises);
|
|
289
|
+
})
|
|
290
|
+
.catch((error) => {
|
|
291
|
+
const recoveryError = error instanceof Error ? error : new Error(String(error));
|
|
292
|
+
if (appWasVisible) {
|
|
293
|
+
index_ts_2.lifecycle.failed(appName, recoveryError, `Component '${appName}' failed to load after waiting for in-progress preparation`);
|
|
294
|
+
}
|
|
295
|
+
}));
|
|
296
|
+
};
|
|
154
297
|
if ((0, node_fs_1.existsSync)(CF_ROUTES_DIR)) {
|
|
155
298
|
const cfFolders = (0, node_fs_1.readdirSync)(CF_ROUTES_DIR, { withFileTypes: true });
|
|
156
299
|
for (const appEntry of cfFolders) {
|
|
@@ -161,33 +304,57 @@ async function loadComponentDirectories(loadedPluginModules, loadedResources) {
|
|
|
161
304
|
if (appEntry.name.startsWith('.'))
|
|
162
305
|
continue;
|
|
163
306
|
const appName = appEntry.name;
|
|
307
|
+
const recoveryError = failedRecoveries.get(appName);
|
|
308
|
+
if (recoveryError) {
|
|
309
|
+
if (recoveryError instanceof componentPreparationLock_ts_1.ComponentPreparationLockTimeoutError) {
|
|
310
|
+
deferredRecoveries.delete(appName);
|
|
311
|
+
deferComponentLoad(appName);
|
|
312
|
+
continue;
|
|
313
|
+
}
|
|
314
|
+
unreportedFailedRecoveries.delete(appName);
|
|
315
|
+
index_ts_2.lifecycle.failed(appName, recoveryError, `Component '${appName}' failed to load because its interrupted deployment could not be recovered`);
|
|
316
|
+
continue;
|
|
317
|
+
}
|
|
164
318
|
const appFolder = (0, node_path_1.join)(CF_ROUTES_DIR, appName);
|
|
165
319
|
const mountResult = tryRootConfigMount(appName);
|
|
166
320
|
if (!mountResult.ok)
|
|
167
321
|
continue;
|
|
168
|
-
cfsLoaded.push(loadComponent(appFolder,
|
|
322
|
+
cfsLoaded.push(serializeComponentLoad(appName, () => loadComponent(appFolder, cycleResources, hdbTerms_ts_1.HDB_ROOT_DIR_NAME, {
|
|
169
323
|
isRoot: false,
|
|
170
324
|
autoReload: false,
|
|
171
325
|
appName,
|
|
172
326
|
mount: mountResult.mount,
|
|
327
|
+
branchedDatabases: rootConfigBranchedDatabases(appName),
|
|
328
|
+
})).catch((error) => {
|
|
329
|
+
const loadError = error instanceof Error ? error : new Error(String(error));
|
|
330
|
+
index_ts_2.lifecycle.failed(appName, loadError, `Component '${appName}' failed to load`);
|
|
173
331
|
}));
|
|
174
332
|
}
|
|
175
333
|
}
|
|
334
|
+
for (const [appName, recoveryError] of unreportedFailedRecoveries) {
|
|
335
|
+
index_ts_2.lifecycle.failed(appName, recoveryError, `Component '${appName}' failed to load because its interrupted deployment could not be recovered`);
|
|
336
|
+
}
|
|
337
|
+
for (const appName of deferredRecoveries.keys())
|
|
338
|
+
deferComponentLoad(appName);
|
|
176
339
|
const hdbAppFolder = process.env.RUN_HDB_APP;
|
|
177
340
|
if (hdbAppFolder) {
|
|
178
341
|
if ((0, manageThreads_js_2.getWorkerIndex)() === 0)
|
|
179
342
|
harper_logger_ts_1.default.info?.('Loading application from ' + hdbAppFolder);
|
|
180
343
|
const mountResult = tryRootConfigMount((0, node_path_1.basename)(hdbAppFolder));
|
|
181
344
|
if (mountResult.ok) {
|
|
182
|
-
cfsLoaded.push(loadComponent(hdbAppFolder,
|
|
345
|
+
cfsLoaded.push(serializeComponentLoad(hdbAppFolder, () => loadComponent(hdbAppFolder, cycleResources, hdbAppFolder, {
|
|
183
346
|
isRoot: false,
|
|
184
347
|
autoReload: Boolean(process.env.DEV_MODE),
|
|
185
|
-
|
|
348
|
+
// The directory arg above stays the absolute path -- that's a real filesystem
|
|
349
|
+
// location -- but `appName` here is the branch identity, and a branch path segment
|
|
350
|
+
// cannot contain `/`; use the same basename the config lookup on the next line uses.
|
|
351
|
+
appName: (0, node_path_1.basename)(hdbAppFolder),
|
|
186
352
|
mount: mountResult.mount,
|
|
187
|
-
|
|
353
|
+
branchedDatabases: rootConfigBranchedDatabases((0, node_path_1.basename)(hdbAppFolder)),
|
|
354
|
+
})));
|
|
188
355
|
}
|
|
189
356
|
}
|
|
190
|
-
return Promise.all(cfsLoaded).then(() => {
|
|
357
|
+
return await Promise.all(cfsLoaded).then(() => {
|
|
191
358
|
watchesSetup = true;
|
|
192
359
|
});
|
|
193
360
|
}
|
|
@@ -244,7 +411,7 @@ else {
|
|
|
244
411
|
// workers while still installing the dispatch machinery.
|
|
245
412
|
require('../server/serverHelpers/serverUtilities');
|
|
246
413
|
}
|
|
247
|
-
for (const { name, packageIdentifier } of (0,
|
|
414
|
+
for (const { name, packageIdentifier } of (0, Application_ts_2.getEnvBuiltInComponents)()) {
|
|
248
415
|
exports.TRUSTED_RESOURCE_PLUGINS[name] = packageIdentifier;
|
|
249
416
|
}
|
|
250
417
|
const BUILT_INS = Object.keys(exports.TRUSTED_RESOURCE_PLUGINS);
|
|
@@ -260,6 +427,52 @@ exports.loadedPaths = new Map();
|
|
|
260
427
|
// destructive one-time scans (e.g. the replicator's hdb_nodes subscription scan).
|
|
261
428
|
exports.mainThreadInitialized = new Map();
|
|
262
429
|
let errorReporter;
|
|
430
|
+
/**
|
|
431
|
+
* Forget that a directory was loaded, so a throwaway load does not retain it forever. `loadedPaths` is
|
|
432
|
+
* keyed by realpath and never pruned, and every deploy validates a candidate under a fresh
|
|
433
|
+
* `.deploy-staging/<uuid>/` path — so without this the map grows by one dead entry per deploy for the life
|
|
434
|
+
* of the process.
|
|
435
|
+
*/
|
|
436
|
+
function forgetLoadedPath(componentDirectory) {
|
|
437
|
+
let resolved;
|
|
438
|
+
try {
|
|
439
|
+
resolved = (0, node_fs_1.realpathSync)(componentDirectory);
|
|
440
|
+
}
|
|
441
|
+
catch {
|
|
442
|
+
// Already renamed live or discarded; fall through and prune by prefix anyway.
|
|
443
|
+
}
|
|
444
|
+
if (resolved)
|
|
445
|
+
exports.loadedPaths.delete(resolved);
|
|
446
|
+
// Nested `loadComponent()` calls register plugin and dependency realpaths UNDER the candidate, so
|
|
447
|
+
// deleting only the root leaves those behind — one dead entry per nested load, per deploy, forever.
|
|
448
|
+
const prefixes = [componentDirectory, resolved].filter(Boolean);
|
|
449
|
+
for (const key of exports.loadedPaths.keys()) {
|
|
450
|
+
if (typeof key === 'string' && prefixes.some((prefix) => key === prefix || key.startsWith(prefix + node_path_1.sep))) {
|
|
451
|
+
exports.loadedPaths.delete(key);
|
|
452
|
+
}
|
|
453
|
+
}
|
|
454
|
+
}
|
|
455
|
+
/**
|
|
456
|
+
* Release exactly the modules a throwaway validation load registered, as collected by that load's
|
|
457
|
+
* `collectLoadedModules` set.
|
|
458
|
+
*
|
|
459
|
+
* Exactly those, not a before/after diff of the global registry: validations are serialized with each other
|
|
460
|
+
* but not with ordinary loads, so a deferred real load for another component can register between the two
|
|
461
|
+
* snapshots — and a diff would then delete that live module.
|
|
462
|
+
*/
|
|
463
|
+
function forgetLoadedModules(modules) {
|
|
464
|
+
// Only entries STILL owned by that validation. Validations serialize with each other but not with
|
|
465
|
+
// ordinary loads, so a real load can adopt a module the validation registered while it is still running —
|
|
466
|
+
// re-registering the same entry as live — and deleting it afterwards would take a live module with it.
|
|
467
|
+
for (const module of modules) {
|
|
468
|
+
if (loadedComponents.get(module) === VALIDATION_OWNED)
|
|
469
|
+
loadedComponents.delete(module);
|
|
470
|
+
}
|
|
471
|
+
}
|
|
472
|
+
/** So a caller that installs a reporter can put the previous one back when it is done with it. */
|
|
473
|
+
function getErrorReporter() {
|
|
474
|
+
return errorReporter;
|
|
475
|
+
}
|
|
263
476
|
function setErrorReporter(reporter) {
|
|
264
477
|
errorReporter = reporter;
|
|
265
478
|
}
|
|
@@ -278,20 +491,24 @@ exports.getComponentName = getComponentName;
|
|
|
278
491
|
* every non-root component load and repaired if missing or pointing elsewhere.
|
|
279
492
|
*/
|
|
280
493
|
function symlinkHarperModule(componentDirectory) {
|
|
281
|
-
return new Promise((resolve
|
|
494
|
+
return new Promise((resolve) => {
|
|
282
495
|
const store = index_ts_1.Status.primaryStore;
|
|
283
|
-
|
|
284
|
-
const
|
|
285
|
-
store.unlock(componentDirectory);
|
|
286
|
-
reject(new Error('symlinking harperdb module timed out'));
|
|
287
|
-
}, 10_000);
|
|
288
|
-
const callback = () => {
|
|
496
|
+
let timeout;
|
|
497
|
+
const onUnlocked = () => {
|
|
289
498
|
clearTimeout(timeout);
|
|
290
499
|
resolve();
|
|
291
500
|
};
|
|
292
|
-
const lockAcquired = store.tryLock(componentDirectory,
|
|
501
|
+
const lockAcquired = store.tryLock(componentDirectory, onUnlocked);
|
|
293
502
|
if (!lockAcquired) {
|
|
294
|
-
|
|
503
|
+
// The lock holder performs the fixup; wait for its unlock. The timer bounds the wait if
|
|
504
|
+
// the holder dies without unlocking, and must stay ref'd: the unlock wake arrives via an
|
|
505
|
+
// unref'd threadsafe function (see the invariant comment in threadServer.startServers).
|
|
506
|
+
// Timing out resolves rather than rejects: the fixup is idempotent maintenance, never
|
|
507
|
+
// worth failing the component load over.
|
|
508
|
+
timeout = setTimeout(() => {
|
|
509
|
+
harper_logger_ts_1.default.warn(`Timed out waiting for another thread to verify the harper module link in ${componentDirectory}; continuing with the link in its current state`);
|
|
510
|
+
resolve();
|
|
511
|
+
}, 10_000);
|
|
295
512
|
}
|
|
296
513
|
else {
|
|
297
514
|
try {
|
|
@@ -336,6 +553,8 @@ function symlinkHarperModule(componentDirectory) {
|
|
|
336
553
|
}
|
|
337
554
|
});
|
|
338
555
|
}
|
|
556
|
+
// Direct access keeps lock timing deterministic without exposing a broader component-load seam.
|
|
557
|
+
exports._symlinkHarperModuleForTests = symlinkHarperModule;
|
|
339
558
|
/**
|
|
340
559
|
* This function handles the `handleApplication` call for a plugin in a sequential manner.
|
|
341
560
|
* It ensures the execution of `handleApplication` happens on one thread at a time for a given scope.
|
|
@@ -446,7 +665,7 @@ async function loadComponent(componentDirectory, resources, origin, options = {}
|
|
|
446
665
|
if (exports.loadedPaths.has(resolvedFolder))
|
|
447
666
|
return exports.loadedPaths.get(resolvedFolder);
|
|
448
667
|
exports.loadedPaths.set(resolvedFolder, true);
|
|
449
|
-
const { providedLoadedComponents, applicationScope = new ApplicationScope_ts_1.ApplicationScope((0, node_path_1.basename)(componentDirectory), resources, Server_ts_1.server, options.isRoot), isRoot, autoReload, appName, mount, } = options;
|
|
668
|
+
const { providedLoadedComponents, applicationScope = new ApplicationScope_ts_1.ApplicationScope((0, node_path_1.basename)(componentDirectory), resources, Server_ts_1.server, options.isRoot), isRoot, autoReload, appName, mount, collectLoadedModules, } = options;
|
|
450
669
|
applicationScope.runtimeRoot ??= resolvedFolder;
|
|
451
670
|
applicationScope.allowedPath ??= (0, node_fs_1.realpathSync)(componentDirectory);
|
|
452
671
|
if (providedLoadedComponents)
|
|
@@ -468,6 +687,30 @@ async function loadComponent(componentDirectory, resources, origin, options = {}
|
|
|
468
687
|
config = DEFAULT_CONFIG_ts_1.DEFAULT_CONFIG;
|
|
469
688
|
}
|
|
470
689
|
applicationScope.config ??= config;
|
|
690
|
+
// Before any of the application's modules are imported: a branch has to exist by the time its
|
|
691
|
+
// code first reaches `databases`, and a declared branch that cannot be created must fail this
|
|
692
|
+
// application's load rather than let it run against the base it asked not to share.
|
|
693
|
+
// Declaring it in the application's own config.yaml is refused rather than ignored: it is a
|
|
694
|
+
// deployment decision and lives in the root config, and an application that believed it had a
|
|
695
|
+
// private fork while silently sharing the base is the one outcome this feature exists to stop.
|
|
696
|
+
if (!isRoot && config?.branchedDatabases !== undefined) {
|
|
697
|
+
const misplaced = `Application '${options.appName ?? (0, node_path_1.basename)(componentDirectory)}' declares branchedDatabases in its own ` +
|
|
698
|
+
`config; it belongs in the root config entry for the application, alongside host and urlPath`;
|
|
699
|
+
// Logged as well as thrown: a component load that rejects this way surfaces downstream only as
|
|
700
|
+
// the application's routes and operations being absent, which says nothing about the cause.
|
|
701
|
+
harper_logger_ts_1.default.error?.(misplaced);
|
|
702
|
+
throw new Error(misplaced);
|
|
703
|
+
}
|
|
704
|
+
// Only on the application's own load: nested components share its scope and its branches, and
|
|
705
|
+
// re-preparing per component would key a second branch off the same application name.
|
|
706
|
+
if (!isRoot && !options.applicationScope && options.branchedDatabases !== undefined) {
|
|
707
|
+
// The loader's own application identity, not the directory's basename: a branch path is
|
|
708
|
+
// keyed by this, and two components can share a basename (a nested one and a top-level one)
|
|
709
|
+
// while being different applications that must not share a fork each believes is private.
|
|
710
|
+
const branchAppName = options.appName ?? (0, node_path_1.basename)(componentDirectory);
|
|
711
|
+
(0, Application_ts_1.assertBranchedDatabases)(branchAppName, options.branchedDatabases);
|
|
712
|
+
applicationScope.branches = await (0, branchDatabase_ts_1.prepareBranches)(branchAppName, options.branchedDatabases, applicationScope.mode);
|
|
713
|
+
}
|
|
471
714
|
// For non-root components with empty/null config (e.g., comment-only YAML),
|
|
472
715
|
// don't synthesize DEFAULT_CONFIG. Empty config means the component has nothing
|
|
473
716
|
// to load; falling back to DEFAULT_CONFIG would cause OptionsWatcher to wait
|
|
@@ -484,8 +727,10 @@ async function loadComponent(componentDirectory, resources, origin, options = {}
|
|
|
484
727
|
// methods. Per-entry errors are logged and skipped by `bootstrapModels`.
|
|
485
728
|
// Awaited so module-backed entries (#1471) finish importing before the
|
|
486
729
|
// per-component iteration below; built-in entries register synchronously.
|
|
487
|
-
if (isRoot)
|
|
730
|
+
if (isRoot) {
|
|
488
731
|
await (0, bootstrap_ts_1.bootstrapModels)(config);
|
|
732
|
+
(0, bootstrap_ts_1.startModelsConfigHotReload)();
|
|
733
|
+
}
|
|
489
734
|
// The `env:` block declares the component's environment expectations (string literal →
|
|
490
735
|
// process.env; object → declaration satisfied from the hdb_secret store / process.env).
|
|
491
736
|
// Processed before any of the component's plugins load, so literals and the load-gate apply
|
|
@@ -585,6 +830,7 @@ async function loadComponent(componentDirectory, resources, origin, options = {}
|
|
|
585
830
|
autoReload: false,
|
|
586
831
|
appName: appName || componentName,
|
|
587
832
|
collectScopes: options.collectScopes,
|
|
833
|
+
collectLoadedModules,
|
|
588
834
|
// `host`/`urlPath` on this entry route the component being loaded. For an
|
|
589
835
|
// application (no plugin module of its own) that entry is the only place an
|
|
590
836
|
// operator can say where the app is served — its own config.yaml declares the
|
|
@@ -620,7 +866,7 @@ async function loadComponent(componentDirectory, resources, origin, options = {}
|
|
|
620
866
|
// our own trusted modules can be directly retrieved from our map, otherwise use the (configurable) secure module loader
|
|
621
867
|
const ensureTable = (options) => {
|
|
622
868
|
options.origin = origin;
|
|
623
|
-
return (0, databases_ts_1.
|
|
869
|
+
return (0, databases_ts_1.scopedTableFactory)(applicationScope.branches)(options);
|
|
624
870
|
};
|
|
625
871
|
// call the main start hook
|
|
626
872
|
const network = componentConfig.network || ((componentConfig.port || componentConfig.securePort) && componentConfig);
|
|
@@ -744,7 +990,18 @@ async function loadComponent(componentDirectory, resources, origin, options = {}
|
|
|
744
990
|
resources,
|
|
745
991
|
...componentConfig,
|
|
746
992
|
})) || extensionModule;
|
|
747
|
-
|
|
993
|
+
// `collectLoadedModules` serves two different purposes, so the two decisions below are made
|
|
994
|
+
// separately. A deferred ORDINARY load passes one too, to await readiness — for that it has to
|
|
995
|
+
// collect what it loaded whether or not the module was already registered. Only a VALIDATION
|
|
996
|
+
// restricts its set, because there the set doubles as the cleanup list and a shared
|
|
997
|
+
// `rest`/`graphql` module already live from a real load must not go on it.
|
|
998
|
+
const validating = (0, deployValidationState_ts_1.isDeployValidating)();
|
|
999
|
+
if (!validating || !loadedComponents.has(extensionModule))
|
|
1000
|
+
collectLoadedModules?.add(extensionModule);
|
|
1001
|
+
// Ownership follows the validation CONTEXT, not the presence of a collect set. Keying it on the
|
|
1002
|
+
// set labelled a deferred ordinary load's registrations validation-owned, which would let the
|
|
1003
|
+
// next validation that collects that module delete a live one.
|
|
1004
|
+
loadedComponents.set(extensionModule, validating ? VALIDATION_OWNED : true);
|
|
748
1005
|
if ((extensionModule.handleFile ||
|
|
749
1006
|
extensionModule.handleDirectory ||
|
|
750
1007
|
extensionModule.setupFile ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"componentLoader.js","sourceRoot":"","sources":["../../components/componentLoader.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"componentLoader.js","sourceRoot":"","sources":["../../components/componentLoader.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,12 +6,17 @@ export interface ComponentPreparationLockOwner {
|
|
|
6
6
|
processInstanceId: string;
|
|
7
7
|
token: string;
|
|
8
8
|
ticket?: number;
|
|
9
|
+
purpose?: string;
|
|
9
10
|
}
|
|
10
11
|
export interface ComponentPreparationLockOptions {
|
|
11
12
|
timeoutMs?: number;
|
|
12
13
|
onWait?: (owner: ComponentPreparationLockOwner | null) => void;
|
|
13
14
|
onReleaseError?: (error: unknown) => void;
|
|
14
15
|
isOwnerAlive?: (owner: ComponentPreparationLockOwner) => boolean | Promise<boolean>;
|
|
16
|
+
purpose?: string;
|
|
17
|
+
renewTimeoutWhileOwnerAlive?: boolean | ((owner: ComponentPreparationLockOwner) => boolean | Promise<boolean>);
|
|
18
|
+
}
|
|
19
|
+
export declare class ComponentPreparationLockTimeoutError extends Error {
|
|
15
20
|
}
|
|
16
21
|
export declare function componentPreparationLockIdentity(componentDirPath: string, platform?: NodeJS.Platform): string;
|
|
17
22
|
export declare function componentPreparationLockPaths(componentDirPath: string): {
|