@moorline/core 0.0.1 → 0.0.3
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/dist/app/bootstrap/apiAdapterPackageLoader.d.ts +0 -10
- package/dist/app/bootstrap/apiAdapterPackageLoader.js +1 -1
- package/dist/app/bootstrap/apiAdapterPackageLoader.js.map +1 -1
- package/dist/app/bootstrap/operatorPackageService.d.ts +11 -4
- package/dist/app/bootstrap/operatorPackageService.js +231 -59
- package/dist/app/bootstrap/operatorPackageService.js.map +1 -1
- package/dist/app/bootstrap/runtimeBootstrap.d.ts +2 -1
- package/dist/app/bootstrap/runtimeBootstrap.js +14 -3
- package/dist/app/bootstrap/runtimeBootstrap.js.map +1 -1
- package/dist/app/control-api/services/actions.d.ts +12 -16
- package/dist/app/control-api/services/actions.js +89 -68
- package/dist/app/control-api/services/actions.js.map +1 -1
- package/dist/app/control-api/services/controlPlane.d.ts +17 -21
- package/dist/app/control-api/services/controlPlane.js +69 -74
- package/dist/app/control-api/services/controlPlane.js.map +1 -1
- package/dist/app/control-api/services/state.js +5 -9
- package/dist/app/control-api/services/state.js.map +1 -1
- package/dist/core/domain/memory/retrieval/indexTargets.js +6 -6
- package/dist/core/domain/memory/retrieval/indexTargets.js.map +1 -1
- package/dist/core/domain/memory/retrieval/schema.js +10 -6
- package/dist/core/domain/memory/retrieval/schema.js.map +1 -1
- package/dist/core/domain/memory/retrieval/scope.d.ts +2 -2
- package/dist/core/domain/memory/retrieval/scope.js +7 -7
- package/dist/core/domain/memory/retrieval/scope.js.map +1 -1
- package/dist/core/domain/memory/retrieval/types.d.ts +2 -7
- package/dist/core/domain/memory/retrieval/types.js.map +1 -1
- package/dist/core/domain/memory/retrieval.d.ts +1 -2
- package/dist/core/domain/memory/retrieval.js +9 -16
- package/dist/core/domain/memory/retrieval.js.map +1 -1
- package/dist/core/domain/memory/store.d.ts +1 -1
- package/dist/core/domain/memory/store.js +2 -2
- package/dist/core/domain/memory/store.js.map +1 -1
- package/dist/core/domain/sessions/managedWorkerSessions.d.ts +0 -1
- package/dist/core/domain/sessions/managedWorkerSessions.js.map +1 -1
- package/dist/core/domain/sessions/runtimeWorkManagementService.d.ts +41 -60
- package/dist/core/domain/sessions/runtimeWorkManagementService.js +169 -351
- package/dist/core/domain/sessions/runtimeWorkManagementService.js.map +1 -1
- package/dist/core/domain/sessions/sessionLifecycleService.d.ts +1 -1
- package/dist/core/domain/sessions/sessionLifecycleService.js +4 -4
- package/dist/core/domain/sessions/sessionLifecycleService.js.map +1 -1
- package/dist/core/domain/sessions/sessionState.d.ts +14 -8
- package/dist/core/domain/sessions/sessionState.js +74 -28
- package/dist/core/domain/sessions/sessionState.js.map +1 -1
- package/dist/core/domain/sessions/workManagement/transportResourceNames.d.ts +2 -0
- package/dist/core/domain/sessions/workManagement/{spaceNames.js → transportResourceNames.js} +2 -2
- package/dist/core/domain/sessions/workManagement/transportResourceNames.js.map +1 -0
- package/dist/core/extension/capabilities/capabilities.d.ts +1 -1
- package/dist/core/extension/capabilities/capabilities.js +11 -8
- package/dist/core/extension/capabilities/capabilities.js.map +1 -1
- package/dist/core/extension/packages/bundledArchiveResolver.d.ts +2 -0
- package/dist/core/extension/packages/{officialArchiveResolver.js → bundledArchiveResolver.js} +4 -4
- package/dist/core/extension/packages/bundledArchiveResolver.js.map +1 -0
- package/dist/core/extension/packages/npmRegistryClient.d.ts +3 -2
- package/dist/core/extension/packages/npmRegistryClient.js +12 -37
- package/dist/core/extension/packages/npmRegistryClient.js.map +1 -1
- package/dist/core/extension/packages/packageActivation.d.ts +0 -4
- package/dist/core/extension/packages/packageActivation.js +2 -12
- package/dist/core/extension/packages/packageActivation.js.map +1 -1
- package/dist/core/extension/packages/packageApplyPlanner.js +1 -4
- package/dist/core/extension/packages/packageApplyPlanner.js.map +1 -1
- package/dist/core/extension/packages/packageConfigSchema.js +0 -33
- package/dist/core/extension/packages/packageConfigSchema.js.map +1 -1
- package/dist/core/extension/packages/packageDependencyResolver.js +2 -20
- package/dist/core/extension/packages/packageDependencyResolver.js.map +1 -1
- package/dist/core/extension/packages/packageInstaller.js +3 -0
- package/dist/core/extension/packages/packageInstaller.js.map +1 -1
- package/dist/core/extension/packages/packageInventoryStore.js +20 -4
- package/dist/core/extension/packages/packageInventoryStore.js.map +1 -1
- package/dist/core/extension/packages/packageRegistryBlocklist.d.ts +2 -2
- package/dist/core/extension/packages/packageRegistryBlocklist.js +1 -1
- package/dist/core/extension/packages/packageRegistryBlocklist.js.map +1 -1
- package/dist/core/extension/packages/packageRegistryService.d.ts +8 -3
- package/dist/core/extension/packages/packageRegistryService.js +109 -49
- package/dist/core/extension/packages/packageRegistryService.js.map +1 -1
- package/dist/core/extension/packages/packageRegistryTypes.d.ts +14 -6
- package/dist/core/extension/packages/packageSource.js +120 -5
- package/dist/core/extension/packages/packageSource.js.map +1 -1
- package/dist/core/extension/packages/packageValidation.js +1 -1
- package/dist/core/extension/packages/packageValidation.js.map +1 -1
- package/dist/core/extension/packages/packageVersionResolver.d.ts +6 -11
- package/dist/core/extension/packages/packageVersionResolver.js +5 -5
- package/dist/core/extension/packages/packageVersionResolver.js.map +1 -1
- package/dist/core/extension/packages/runtimeStartability.d.ts +2 -2
- package/dist/core/extension/packages/runtimeStartability.js +26 -23
- package/dist/core/extension/packages/runtimeStartability.js.map +1 -1
- package/dist/core/extension/plugins/pluginHost.d.ts +13 -8
- package/dist/core/extension/plugins/pluginHost.js +41 -13
- package/dist/core/extension/plugins/pluginHost.js.map +1 -1
- package/dist/core/extension/plugins/pluginId.d.ts +0 -1
- package/dist/core/extension/plugins/pluginId.js +0 -3
- package/dist/core/extension/plugins/pluginId.js.map +1 -1
- package/dist/core/extension/plugins/runtimePluginLoader.d.ts +0 -1
- package/dist/core/extension/plugins/runtimePluginLoader.js +0 -7
- package/dist/core/extension/plugins/runtimePluginLoader.js.map +1 -1
- package/dist/core/extension/skills/skillRegistry.d.ts +3 -2
- package/dist/core/extension/skills/skillWriter.d.ts +1 -1
- package/dist/core/extension/skills/skillWriter.js +2 -2
- package/dist/core/runtime/execution/commandReactor.d.ts +5 -5
- package/dist/core/runtime/execution/commandReactor.js +10 -7
- package/dist/core/runtime/execution/commandReactor.js.map +1 -1
- package/dist/core/runtime/execution/defaultModelSelection.js +1 -1
- package/dist/core/runtime/execution/orchestrationEngine.js +10 -10
- package/dist/core/runtime/execution/orchestrationEngine.js.map +1 -1
- package/dist/core/runtime/execution/orchestrationHealth.d.ts +0 -7
- package/dist/core/runtime/execution/orchestrationHealth.js +1 -1
- package/dist/core/runtime/execution/orchestrationHealth.js.map +1 -1
- package/dist/core/runtime/execution/pluginContext/defaultSessionOwner.js +3 -5
- package/dist/core/runtime/execution/pluginContext/defaultSessionOwner.js.map +1 -1
- package/dist/core/runtime/execution/pluginContext/pluginCapabilities.d.ts +0 -2
- package/dist/core/runtime/execution/pluginContext/pluginCapabilities.js +0 -2
- package/dist/core/runtime/execution/pluginContext/pluginCapabilities.js.map +1 -1
- package/dist/core/runtime/execution/pluginContext/pluginContextFactory.d.ts +1 -2
- package/dist/core/runtime/execution/pluginContext/pluginContextFactory.js +1 -2
- package/dist/core/runtime/execution/pluginContext/pluginContextFactory.js.map +1 -1
- package/dist/core/runtime/execution/providerCoordination/providerSessionCoordinator.js +3 -3
- package/dist/core/runtime/execution/providerCoordination/providerSessionCoordinator.js.map +1 -1
- package/dist/core/runtime/execution/providerOrchestration/ports.d.ts +3 -13
- package/dist/core/runtime/execution/providerOrchestration/providerAttachmentResolver.d.ts +3 -3
- package/dist/core/runtime/execution/providerOrchestration/providerAttachmentResolver.js +4 -5
- package/dist/core/runtime/execution/providerOrchestration/providerAttachmentResolver.js.map +1 -1
- package/dist/core/runtime/execution/providerOrchestration/providerCompactionPolicy.d.ts +2 -1
- package/dist/core/runtime/execution/providerOrchestration/providerCompactionPolicy.js +5 -5
- package/dist/core/runtime/execution/providerOrchestration/providerCompactionPolicy.js.map +1 -1
- package/dist/core/runtime/execution/providerOrchestration/providerEventPipeline.d.ts +3 -5
- package/dist/core/runtime/execution/providerOrchestration/providerEventPipeline.js +10 -8
- package/dist/core/runtime/execution/providerOrchestration/providerEventPipeline.js.map +1 -1
- package/dist/core/runtime/execution/providerOrchestration/providerOrchestrator.d.ts +3 -3
- package/dist/core/runtime/execution/providerOrchestration/providerOrchestrator.js +0 -3
- package/dist/core/runtime/execution/providerOrchestration/providerOrchestrator.js.map +1 -1
- package/dist/core/runtime/execution/providerOrchestration/providerRequestProjector.d.ts +3 -2
- package/dist/core/runtime/execution/providerOrchestration/providerRequestProjector.js +6 -6
- package/dist/core/runtime/execution/providerOrchestration/providerRequestProjector.js.map +1 -1
- package/dist/core/runtime/execution/providerOrchestration/providerSessionOrchestrator.d.ts +9 -6
- package/dist/core/runtime/execution/providerOrchestration/providerSessionOrchestrator.js +36 -15
- package/dist/core/runtime/execution/providerOrchestration/providerSessionOrchestrator.js.map +1 -1
- package/dist/core/runtime/execution/providerOrchestration/providerTurnBroker.d.ts +9 -3
- package/dist/core/runtime/execution/providerOrchestration/providerTurnBroker.js +19 -7
- package/dist/core/runtime/execution/providerOrchestration/providerTurnBroker.js.map +1 -1
- package/dist/core/runtime/execution/providerProjectionTypes.d.ts +4 -2
- package/dist/core/runtime/execution/providerProjectionTypes.js +2 -0
- package/dist/core/runtime/execution/providerProjectionTypes.js.map +1 -1
- package/dist/core/runtime/execution/providerSessionDirectory.js +12 -4
- package/dist/core/runtime/execution/providerSessionDirectory.js.map +1 -1
- package/dist/core/runtime/execution/runtimeDomain.d.ts +11 -9
- package/dist/core/runtime/execution/runtimeDomain.js +10 -3
- package/dist/core/runtime/execution/runtimeDomain.js.map +1 -1
- package/dist/core/runtime/execution/runtimeIngestion.js +15 -13
- package/dist/core/runtime/execution/runtimeIngestion.js.map +1 -1
- package/dist/core/runtime/execution/runtimeInteractionService.d.ts +12 -26
- package/dist/core/runtime/execution/runtimeInteractionService.js +23 -113
- package/dist/core/runtime/execution/runtimeInteractionService.js.map +1 -1
- package/dist/core/runtime/execution/runtimeOrchestrationRequestService.d.ts +1 -1
- package/dist/core/runtime/execution/runtimeOrchestrationRequestService.js +8 -28
- package/dist/core/runtime/execution/runtimeOrchestrationRequestService.js.map +1 -1
- package/dist/core/runtime/execution/runtimeOrchestrationRequests.d.ts +7 -29
- package/dist/core/runtime/execution/runtimeOrchestrationRequests.js +21 -67
- package/dist/core/runtime/execution/runtimeOrchestrationRequests.js.map +1 -1
- package/dist/core/runtime/execution/runtimeOrchestrationResult.js +5 -0
- package/dist/core/runtime/execution/runtimeOrchestrationResult.js.map +1 -1
- package/dist/core/runtime/execution/runtimePendingRequestService.d.ts +2 -2
- package/dist/core/runtime/execution/runtimePendingRequestService.js +10 -10
- package/dist/core/runtime/execution/runtimePendingRequestService.js.map +1 -1
- package/dist/core/runtime/execution/runtimePluginContextService.d.ts +28 -15
- package/dist/core/runtime/execution/runtimePluginContextService.js +994 -165
- package/dist/core/runtime/execution/runtimePluginContextService.js.map +1 -1
- package/dist/core/runtime/execution/runtimeWorkerQueues.js +1 -1
- package/dist/core/runtime/execution/runtimeWorkerQueues.js.map +1 -1
- package/dist/core/runtime/hosting/managedTransportResourceMetadata.d.ts +6 -0
- package/dist/core/runtime/hosting/managedTransportResourceMetadata.js +8 -0
- package/dist/core/runtime/hosting/managedTransportResourceMetadata.js.map +1 -0
- package/dist/core/runtime/hosting/runtimeHostingService.d.ts +6 -4
- package/dist/core/runtime/hosting/runtimeHostingService.js +23 -46
- package/dist/core/runtime/hosting/runtimeHostingService.js.map +1 -1
- package/dist/core/runtime/hosting/runtimeLayout.js +1 -1
- package/dist/core/runtime/hosting/runtimeLayout.js.map +1 -1
- package/dist/core/runtime/hosting/runtimeTransportEffectService.d.ts +22 -0
- package/dist/core/runtime/hosting/runtimeTransportEffectService.js +86 -0
- package/dist/core/runtime/hosting/runtimeTransportEffectService.js.map +1 -0
- package/dist/core/runtime/hosting/runtimeTransportIntentService.d.ts +23 -0
- package/dist/core/runtime/hosting/runtimeTransportIntentService.js +144 -0
- package/dist/core/runtime/hosting/runtimeTransportIntentService.js.map +1 -0
- package/dist/core/runtime/hosting/runtimeTransportSurfaceService.d.ts +6 -7
- package/dist/core/runtime/hosting/runtimeTransportSurfaceService.js +15 -63
- package/dist/core/runtime/hosting/runtimeTransportSurfaceService.js.map +1 -1
- package/dist/core/runtime/hosting/systemEmbeds.d.ts +0 -1
- package/dist/core/runtime/hosting/systemEmbeds.js +0 -9
- package/dist/core/runtime/hosting/systemEmbeds.js.map +1 -1
- package/dist/core/runtime/lifecycle/packageJobSchedulerService.d.ts +21 -0
- package/dist/core/runtime/lifecycle/packageJobSchedulerService.js +84 -0
- package/dist/core/runtime/lifecycle/packageJobSchedulerService.js.map +1 -0
- package/dist/core/runtime/lifecycle/runtimeLifecycleService.d.ts +2 -13
- package/dist/core/runtime/lifecycle/runtimeLifecycleService.js +12 -256
- package/dist/core/runtime/lifecycle/runtimeLifecycleService.js.map +1 -1
- package/dist/core/runtime/moorlineRuntime.d.ts +7 -8
- package/dist/core/runtime/moorlineRuntime.js +73 -57
- package/dist/core/runtime/moorlineRuntime.js.map +1 -1
- package/dist/core/runtime/moorlineRuntimeBuilder.d.ts +19 -18
- package/dist/core/runtime/moorlineRuntimeBuilder.js +69 -109
- package/dist/core/runtime/moorlineRuntimeBuilder.js.map +1 -1
- package/dist/core/runtime/runtimeBootstrapRegistry.d.ts +0 -2
- package/dist/core/runtime/runtimeBootstrapRegistry.js +0 -6
- package/dist/core/runtime/runtimeBootstrapRegistry.js.map +1 -1
- package/dist/core/runtime/runtimeStatus.js +2 -2
- package/dist/core/runtime/runtimeStatus.js.map +1 -1
- package/dist/core/runtime/supervision/runtimeControlService.js +4 -1
- package/dist/core/runtime/supervision/runtimeControlService.js.map +1 -1
- package/dist/core/shared/errors/statusError.d.ts +5 -0
- package/dist/core/shared/errors/statusError.js +18 -0
- package/dist/core/shared/errors/statusError.js.map +1 -0
- package/dist/core/shared/fs/canonicalPathContainment.d.ts +0 -2
- package/dist/core/shared/fs/canonicalPathContainment.js +1 -6
- package/dist/core/shared/fs/canonicalPathContainment.js.map +1 -1
- package/dist/core/shared/fs/runtimeOwnedPath.d.ts +1 -1
- package/dist/core/shared/fs/runtimeOwnedPath.js +3 -3
- package/dist/core/shared/fs/runtimeOwnedPath.js.map +1 -1
- package/dist/core/shared/scheduling/packageSchedule.d.ts +22 -0
- package/dist/core/{domain/missions/missionSchedule.js → shared/scheduling/packageSchedule.js} +15 -18
- package/dist/core/shared/scheduling/packageSchedule.js.map +1 -0
- package/dist/core/shared/utils/childProcessEnv.js +1 -1
- package/dist/core/shared/utils/childProcessEnv.js.map +1 -1
- package/dist/core/shared/utils/payloadRedaction.d.ts +0 -12
- package/dist/core/shared/utils/payloadRedaction.js +0 -77
- package/dist/core/shared/utils/payloadRedaction.js.map +1 -1
- package/dist/core/shared/utils/remoteNetworkPolicy.d.ts +0 -4
- package/dist/core/shared/utils/remoteNetworkPolicy.js +1 -7
- package/dist/core/shared/utils/remoteNetworkPolicy.js.map +1 -1
- package/dist/core/shared/utils/runtimeMessageUtils.d.ts +0 -1
- package/dist/core/shared/utils/runtimeMessageUtils.js +0 -19
- package/dist/core/shared/utils/runtimeMessageUtils.js.map +1 -1
- package/dist/core/system/backup/runtimeBackupService.d.ts +0 -2
- package/dist/core/system/backup/runtimeBackupService.js +71 -2
- package/dist/core/system/backup/runtimeBackupService.js.map +1 -1
- package/dist/core/system/config/configStore.d.ts +3 -3
- package/dist/core/system/config/configStore.js +19 -20
- package/dist/core/system/config/configStore.js.map +1 -1
- package/dist/core/system/projection/managementReadModel/deps.d.ts +4 -5
- package/dist/core/system/projection/managementReadModel/objects/serviceObjects.d.ts +2 -1
- package/dist/core/system/projection/managementReadModel/objects/serviceObjects.js +13 -7
- package/dist/core/system/projection/managementReadModel/objects/serviceObjects.js.map +1 -1
- package/dist/core/system/projection/managementReadModel/packageTrust.d.ts +5 -0
- package/dist/core/system/projection/managementReadModel/packageTrust.js +40 -0
- package/dist/core/system/projection/managementReadModel/packageTrust.js.map +1 -0
- package/dist/core/system/projection/managementReadModel/pluginDiskRecords.d.ts +0 -1
- package/dist/core/system/projection/managementReadModel/pluginDiskRecords.js +1 -10
- package/dist/core/system/projection/managementReadModel/pluginDiskRecords.js.map +1 -1
- package/dist/core/system/projection/managementReadModelService.d.ts +3 -1
- package/dist/core/system/projection/managementReadModelService.js +133 -117
- package/dist/core/system/projection/managementReadModelService.js.map +1 -1
- package/dist/core/system/projection/pendingRequestProjectionStore.d.ts +1 -1
- package/dist/core/system/projection/pendingRequestProjectionStore.js +9 -9
- package/dist/core/system/projection/pendingRequestProjectionStore.js.map +1 -1
- package/dist/core/system/projection/runtimeActivityStore.d.ts +1 -1
- package/dist/core/system/projection/runtimeActivityStore.js +7 -7
- package/dist/core/system/projection/runtimeActivityStore.js.map +1 -1
- package/dist/core/system/projection/runtimeProjectionService.d.ts +1 -1
- package/dist/core/system/projection/runtimeProjectionService.js +3 -3
- package/dist/core/system/projection/runtimeProjectionService.js.map +1 -1
- package/dist/core/system/projection/runtimeReceiptStore.js +5 -5
- package/dist/core/system/projection/runtimeReceiptStore.js.map +1 -1
- package/dist/core/system/projection/runtimeReconciler.js +2 -2
- package/dist/core/system/projection/runtimeReconciler.js.map +1 -1
- package/dist/core/system/projection/runtimeSnapshotQuery.d.ts +6 -5
- package/dist/core/system/projection/runtimeSnapshotQuery.js +6 -6
- package/dist/core/system/projection/runtimeSnapshotQuery.js.map +1 -1
- package/dist/core/system/release/releaseArtifacts.d.ts +0 -2
- package/dist/core/system/release/releaseArtifacts.js +1 -12
- package/dist/core/system/release/releaseArtifacts.js.map +1 -1
- package/dist/core/system/release/runtimePackageLoadReport.d.ts +0 -1
- package/dist/core/system/release/runtimePackageLoadReport.js +0 -7
- package/dist/core/system/release/runtimePackageLoadReport.js.map +1 -1
- package/dist/core/system/state/canonicalEventLogStore.d.ts +1 -1
- package/dist/core/system/state/canonicalEventLogStore.js +7 -7
- package/dist/core/system/state/canonicalEventLogStore.js.map +1 -1
- package/dist/core/system/state/safeJson.d.ts +2 -1
- package/dist/core/system/state/sqlite/domainEventLogRepository.js +5 -5
- package/dist/core/system/state/sqlite/domainEventLogRepository.js.map +1 -1
- package/dist/core/system/state/sqlite/externalResourceRepository.d.ts +25 -0
- package/dist/core/system/state/sqlite/externalResourceRepository.js +105 -0
- package/dist/core/system/state/sqlite/externalResourceRepository.js.map +1 -0
- package/dist/core/system/state/sqlite/gateRunRepository.d.ts +13 -0
- package/dist/core/system/state/sqlite/gateRunRepository.js +66 -0
- package/dist/core/system/state/sqlite/gateRunRepository.js.map +1 -0
- package/dist/core/system/state/sqlite/orchestrationRepository.js +6 -6
- package/dist/core/system/state/sqlite/orchestrationRepository.js.map +1 -1
- package/dist/core/system/state/sqlite/packageJobRepository.d.ts +11 -0
- package/dist/core/system/state/sqlite/packageJobRepository.js +60 -0
- package/dist/core/system/state/sqlite/packageJobRepository.js.map +1 -0
- package/dist/core/system/state/sqlite/packageStateRepository.d.ts +10 -0
- package/dist/core/system/state/sqlite/packageStateRepository.js +45 -0
- package/dist/core/system/state/sqlite/packageStateRepository.js.map +1 -0
- package/dist/core/system/state/sqlite/pendingRequestRepository.d.ts +2 -2
- package/dist/core/system/state/sqlite/pendingRequestRepository.js +10 -10
- package/dist/core/system/state/sqlite/pendingRequestRepository.js.map +1 -1
- package/dist/core/system/state/sqlite/providerEventLogRepository.d.ts +1 -1
- package/dist/core/system/state/sqlite/providerEventLogRepository.js +6 -6
- package/dist/core/system/state/sqlite/providerEventLogRepository.js.map +1 -1
- package/dist/core/system/state/sqlite/rowMappers.d.ts +0 -1
- package/dist/core/system/state/sqlite/rowMappers.js +0 -3
- package/dist/core/system/state/sqlite/rowMappers.js.map +1 -1
- package/dist/core/system/state/sqlite/runtimeReceiptRepository.js +4 -4
- package/dist/core/system/state/sqlite/runtimeReceiptRepository.js.map +1 -1
- package/dist/core/system/state/sqlite/sessionRepository.d.ts +1 -1
- package/dist/core/system/state/sqlite/sessionRepository.js +13 -10
- package/dist/core/system/state/sqlite/sessionRepository.js.map +1 -1
- package/dist/core/system/state/sqlite/transportIntentRepository.d.ts +12 -0
- package/dist/core/system/state/sqlite/transportIntentRepository.js +106 -0
- package/dist/core/system/state/sqlite/transportIntentRepository.js.map +1 -0
- package/dist/core/system/state/sqlite/types.d.ts +91 -48
- package/dist/core/system/state/sqlite/types.js +86 -31
- package/dist/core/system/state/sqlite/types.js.map +1 -1
- package/dist/core/system/state/sqlite/workItemRepository.d.ts +25 -0
- package/dist/core/system/state/sqlite/workItemRepository.js +200 -0
- package/dist/core/system/state/sqlite/workItemRepository.js.map +1 -0
- package/dist/core/system/state/sqliteSessionStore.d.ts +68 -24
- package/dist/core/system/state/sqliteSessionStore.js +92 -41
- package/dist/core/system/state/sqliteSessionStore.js.map +1 -1
- package/dist/core/system/vcs/gitIgnoreTemplate.js +1 -1
- package/dist/core/system/vcs/gitIgnoreTemplate.js.map +1 -1
- package/dist/core/system/vcs/gitTrackedPaths.js +1 -1
- package/dist/core/system/vcs/gitTrackedPaths.js.map +1 -1
- package/dist/types/app.d.ts +35 -36
- package/dist/types/config.d.ts +14 -26
- package/dist/types/config.js +16 -22
- package/dist/types/config.js.map +1 -1
- package/dist/types/distro.d.ts +1 -1
- package/dist/types/distro.js.map +1 -1
- package/dist/types/external.d.ts +1 -0
- package/dist/types/external.js +2 -0
- package/dist/types/external.js.map +1 -0
- package/dist/types/package.d.ts +4 -4
- package/dist/types/provider.d.ts +2 -2
- package/dist/types/provider.js +1 -1
- package/dist/types/provider.js.map +1 -1
- package/dist/types/runtime.d.ts +2 -2
- package/dist/types/runtime.js +1 -1
- package/dist/types/runtime.js.map +1 -1
- package/dist/types/transport.d.ts +1 -1
- package/dist/types/transport.js.map +1 -1
- package/package.json +6 -3
- package/resources/migrations/001_sessions.sql +8 -9
- package/resources/migrations/003_provider_projections.sql +2 -2
- package/resources/migrations/004_runtime_projection_state.sql +1 -1
- package/resources/migrations/007_package_state_jobs.sql +28 -0
- package/resources/migrations/{009_session_orchestration.sql → 008_session_orchestration.sql} +1 -1
- package/resources/migrations/010_scope_space_terminology.sql +2 -0
- package/resources/migrations/015_external_work_spine.sql +92 -0
- package/resources/migrations/016_provider_profiles.sql +4 -0
- package/resources/migrations/017_nullable_session_workspace.sql +49 -0
- package/resources/migrations/018_transport_intents.sql +18 -0
- package/resources/policies/default-secure.json +13 -95
- package/dist/app/bootstrap/officialCatalog.d.ts +0 -1
- package/dist/app/bootstrap/officialCatalog.js +0 -2
- package/dist/app/bootstrap/officialCatalog.js.map +0 -1
- package/dist/core/domain/memory/operatorMemoryService.d.ts +0 -36
- package/dist/core/domain/memory/operatorMemoryService.js +0 -81
- package/dist/core/domain/memory/operatorMemoryService.js.map +0 -1
- package/dist/core/domain/missions/missionDraftSetup.d.ts +0 -12
- package/dist/core/domain/missions/missionDraftSetup.js +0 -92
- package/dist/core/domain/missions/missionDraftSetup.js.map +0 -1
- package/dist/core/domain/missions/missionHookService.d.ts +0 -41
- package/dist/core/domain/missions/missionHookService.js +0 -161
- package/dist/core/domain/missions/missionHookService.js.map +0 -1
- package/dist/core/domain/missions/missionHookValidation.d.ts +0 -8
- package/dist/core/domain/missions/missionHookValidation.js +0 -59
- package/dist/core/domain/missions/missionHookValidation.js.map +0 -1
- package/dist/core/domain/missions/missionRegistry.d.ts +0 -55
- package/dist/core/domain/missions/missionRegistry.js +0 -204
- package/dist/core/domain/missions/missionRegistry.js.map +0 -1
- package/dist/core/domain/missions/missionSchedule.d.ts +0 -24
- package/dist/core/domain/missions/missionSchedule.js.map +0 -1
- package/dist/core/domain/sessions/workManagement/spaceNames.d.ts +0 -2
- package/dist/core/domain/sessions/workManagement/spaceNames.js.map +0 -1
- package/dist/core/extension/packages/officialArchiveResolver.d.ts +0 -2
- package/dist/core/extension/packages/officialArchiveResolver.js.map +0 -1
- package/dist/core/extension/packages/officialCatalog.d.ts +0 -9
- package/dist/core/extension/packages/officialCatalog.js +0 -198
- package/dist/core/extension/packages/officialCatalog.js.map +0 -1
- package/dist/core/extension/packages/packageDistroMetadata.d.ts +0 -14
- package/dist/core/extension/packages/packageDistroMetadata.js +0 -153
- package/dist/core/extension/packages/packageDistroMetadata.js.map +0 -1
- package/dist/core/runtime/execution/providerCoordination/providerCompactionCoordinator.d.ts +0 -7
- package/dist/core/runtime/execution/providerCoordination/providerCompactionCoordinator.js +0 -25
- package/dist/core/runtime/execution/providerCoordination/providerCompactionCoordinator.js.map +0 -1
- package/dist/core/runtime/execution/providerCoordination/providerRecoveryService.d.ts +0 -7
- package/dist/core/runtime/execution/providerCoordination/providerRecoveryService.js +0 -6
- package/dist/core/runtime/execution/providerCoordination/providerRecoveryService.js.map +0 -1
- package/dist/core/runtime/execution/providerCoordination/providerTurnCoordinator.d.ts +0 -3
- package/dist/core/runtime/execution/providerCoordination/providerTurnCoordinator.js +0 -6
- package/dist/core/runtime/execution/providerCoordination/providerTurnCoordinator.js.map +0 -1
- package/dist/core/runtime/execution/providerOrchestration/providerMissionEventProjector.d.ts +0 -12
- package/dist/core/runtime/execution/providerOrchestration/providerMissionEventProjector.js +0 -71
- package/dist/core/runtime/execution/providerOrchestration/providerMissionEventProjector.js.map +0 -1
- package/dist/core/runtime/hosting/managedSpaceMetadata.d.ts +0 -7
- package/dist/core/runtime/hosting/managedSpaceMetadata.js +0 -14
- package/dist/core/runtime/hosting/managedSpaceMetadata.js.map +0 -1
- package/dist/core/runtime/lifecycle/managedChannelLifecycleService.d.ts +0 -37
- package/dist/core/runtime/lifecycle/managedChannelLifecycleService.js +0 -256
- package/dist/core/runtime/lifecycle/managedChannelLifecycleService.js.map +0 -1
- package/dist/core/system/state/sqlite/missionRepository.d.ts +0 -24
- package/dist/core/system/state/sqlite/missionRepository.js +0 -252
- package/dist/core/system/state/sqlite/missionRepository.js.map +0 -1
- package/resources/migrations/007_missions.sql +0 -41
- package/resources/migrations/008_mission_schedule_anchor.sql +0 -5
- package/resources/migrations/010_mission_archival.sql +0 -1
- package/resources/migrations/012_scope_space_terminology.sql +0 -19
- package/resources/migrations/015_mission_schedule_meta.sql +0 -9
- package/resources/migrations/016_mission_hook_bindings.sql +0 -16
- package/resources/official-catalog.json +0 -444
- /package/resources/migrations/{011_managed_sidecars.sql → 009_managed_sidecars.sql} +0 -0
- /package/resources/migrations/{013_orchestration_dedupe.sql → 011_orchestration_dedupe.sql} +0 -0
- /package/resources/migrations/{014_orchestration_execution_claims.sql → 012_orchestration_execution_claims.sql} +0 -0
- /package/resources/migrations/{017_domain_event_provenance.sql → 013_domain_event_provenance.sql} +0 -0
- /package/resources/migrations/{018_provider_event_processing.sql → 014_provider_event_processing.sql} +0 -0
|
@@ -1,15 +1,5 @@
|
|
|
1
1
|
import type { MoorlineConfig } from '../../types/config.js';
|
|
2
2
|
import { type RuntimeApiAdapterPackage, type RuntimeApiAdapterContext } from '@moorline/contracts';
|
|
3
|
-
export declare function loadApiAdapterPackageById(input: {
|
|
4
|
-
runtimeRoot: string;
|
|
5
|
-
packageId: string;
|
|
6
|
-
context: RuntimeApiAdapterContext;
|
|
7
|
-
onDiscoveryWarning?: (input: {
|
|
8
|
-
packageId: string;
|
|
9
|
-
packageDir: string;
|
|
10
|
-
detail: string;
|
|
11
|
-
}) => void;
|
|
12
|
-
}): Promise<RuntimeApiAdapterPackage>;
|
|
13
3
|
export declare function loadConfiguredApiAdapterPackage(input: {
|
|
14
4
|
config: MoorlineConfig;
|
|
15
5
|
context: RuntimeApiAdapterContext;
|
|
@@ -101,7 +101,7 @@ async function importApiAdapterPackage(record, context) {
|
|
|
101
101
|
manifest: record.manifest
|
|
102
102
|
};
|
|
103
103
|
}
|
|
104
|
-
|
|
104
|
+
async function loadApiAdapterPackageById(input) {
|
|
105
105
|
const rootDir = join(input.runtimeRoot, 'packages', 'api-adapters');
|
|
106
106
|
const records = listApiAdapterPackageRecords(rootDir);
|
|
107
107
|
const validRecords = records.filter((entry) => entry.kind === 'valid');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apiAdapterPackageLoader.js","sourceRoot":"","sources":["../../../../../../src/app/bootstrap/apiAdapterPackageLoader.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"apiAdapterPackageLoader.js","sourceRoot":"","sources":["../../../../../../src/app/bootstrap/apiAdapterPackageLoader.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { type MoorlineConfig } from '../../types/config.js';
|
|
|
2
2
|
import type { MoorlineShareBundle } from '../../types/config.js';
|
|
3
3
|
import type { PackageApplyPlan, PackageKind, PackageSourceDescriptor, PackageSurface } from '../../types/package.js';
|
|
4
4
|
import type { PackageRegistryEntry, PackageSearchInput } from '../../core/extension/packages/packageRegistryTypes.js';
|
|
5
|
-
type PackageConfigValues = Record<string,
|
|
5
|
+
type PackageConfigValues = Record<string, unknown>;
|
|
6
6
|
type PackageConfigReplacement = {
|
|
7
7
|
key: string;
|
|
8
8
|
value: string;
|
|
@@ -21,15 +21,16 @@ export declare class OperatorPackageService {
|
|
|
21
21
|
private operationJournalPath;
|
|
22
22
|
private writeOperationJournal;
|
|
23
23
|
private clearOperationJournal;
|
|
24
|
+
private markSetupIncomplete;
|
|
24
25
|
private withOperationJournal;
|
|
25
26
|
private withAsyncOperationJournal;
|
|
26
27
|
private repairInventoryAgainstDisk;
|
|
27
28
|
private backupCorruptOperationJournal;
|
|
28
29
|
private recoverInterruptedPackageOperation;
|
|
29
30
|
private checkpoint;
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
31
|
+
listPackageCache(): PackageRegistryEntry[];
|
|
32
|
+
searchPackages(input: PackageSearchInput): Promise<PackageRegistryEntry[]>;
|
|
33
|
+
getPackageInfo(input: {
|
|
33
34
|
kind?: PackageKind;
|
|
34
35
|
packageId: string;
|
|
35
36
|
}): Promise<PackageRegistryEntry>;
|
|
@@ -38,6 +39,7 @@ export declare class OperatorPackageService {
|
|
|
38
39
|
getInventory(): import("../../core/extension/packages/packageInventoryStore.js").PackageInventoryState;
|
|
39
40
|
getApplyPlan(): PackageApplyPlan;
|
|
40
41
|
private expectedPackageForEntry;
|
|
42
|
+
private packageMetadataForEntry;
|
|
41
43
|
private embeddedBundleMemberEntries;
|
|
42
44
|
installPackage(input: {
|
|
43
45
|
surface?: PackageKind;
|
|
@@ -46,7 +48,12 @@ export declare class OperatorPackageService {
|
|
|
46
48
|
packageId?: string;
|
|
47
49
|
}): Promise<import("../../types/package.js").PackageInstallRecord>;
|
|
48
50
|
private addBundleOwner;
|
|
51
|
+
private addBundleActivationOwner;
|
|
49
52
|
private removeBundleOwner;
|
|
53
|
+
private removeBundleActivationOwner;
|
|
54
|
+
private packageIsDesiredActive;
|
|
55
|
+
private activationIsBundleOwned;
|
|
56
|
+
private removeBundleOwnedActivation;
|
|
50
57
|
private bundleMemberDependents;
|
|
51
58
|
private assertReplacementSatisfiesExistingBundleOwners;
|
|
52
59
|
private installBundle;
|
|
@@ -1,18 +1,17 @@
|
|
|
1
1
|
import { copyFileSync, existsSync, readFileSync, rmSync, writeFileSync } from 'node:fs';
|
|
2
2
|
import { join } from 'node:path';
|
|
3
|
-
import {
|
|
3
|
+
import { homeRootForRuntime } from '../../types/config.js';
|
|
4
4
|
import { createPackageApplyPlan } from '../../core/extension/packages/packageApplyPlanner.js';
|
|
5
5
|
import { findDependentRecords, findDependents } from '../../core/extension/packages/packageDependencyResolver.js';
|
|
6
6
|
import { resolvePackageConfigSchema } from '../../core/extension/packages/packageConfigSchema.js';
|
|
7
7
|
import { PackageInventoryStore } from '../../core/extension/packages/packageInventoryStore.js';
|
|
8
8
|
import { PackageInstaller } from '../../core/extension/packages/packageInstaller.js';
|
|
9
9
|
import { coerceSurfaceConfigInput, evaluateRuntimeStartability } from '../../core/extension/packages/runtimeStartability.js';
|
|
10
|
-
import { appliedPackageRefs, desiredPackageRefsFromConfig,
|
|
10
|
+
import { appliedPackageRefs, desiredPackageRefsFromConfig, packageActivationUniqueKey } from '../../core/extension/packages/packageActivation.js';
|
|
11
11
|
import { buildRequiredAppliedSurfaceConfigs, buildShareableMoorlineConfig, runtimePaths, saveMoorlineConfig } from '../../core/system/config/configStore.js';
|
|
12
12
|
import { recordHistoryCheckpoint } from '../../core/system/vcs/gitCheckpointService.js';
|
|
13
13
|
import { GitHistoryService } from '../../core/system/vcs/gitHistoryService.js';
|
|
14
14
|
import { loadTransportPackageById } from './transportPackageLoader.js';
|
|
15
|
-
import { assertOfficialCatalogChecksums, getOfficialCatalog } from './officialCatalog.js';
|
|
16
15
|
import { packageVersionSatisfiesRange, resolveBundleMembers } from '../../core/extension/packages/packageVersionResolver.js';
|
|
17
16
|
import { PackageRegistryService } from '../../core/extension/packages/packageRegistryService.js';
|
|
18
17
|
import { loadInstallablePackageManifest } from '../../core/extension/packages/packageManifest.js';
|
|
@@ -70,6 +69,24 @@ function packageConfigRootIfPresent(config, surface, packageId) {
|
|
|
70
69
|
}
|
|
71
70
|
return config.surfaces.skills.configByPackageId[packageId] ?? {};
|
|
72
71
|
}
|
|
72
|
+
function scalarPackageConfigInputText(value, label) {
|
|
73
|
+
if (value === undefined || value === null) {
|
|
74
|
+
return '';
|
|
75
|
+
}
|
|
76
|
+
if (typeof value === 'string') {
|
|
77
|
+
return value;
|
|
78
|
+
}
|
|
79
|
+
if (typeof value === 'number') {
|
|
80
|
+
if (!Number.isFinite(value)) {
|
|
81
|
+
throw new Error(`${label} must be a finite number.`);
|
|
82
|
+
}
|
|
83
|
+
return String(value);
|
|
84
|
+
}
|
|
85
|
+
if (typeof value === 'boolean') {
|
|
86
|
+
return String(value);
|
|
87
|
+
}
|
|
88
|
+
throw new Error(`${label} must be a string, number, or boolean.`);
|
|
89
|
+
}
|
|
73
90
|
function coercePackageConfigValue(input) {
|
|
74
91
|
if (input.surface === 'transport' || input.surface === 'provider') {
|
|
75
92
|
return coerceSurfaceConfigInput({
|
|
@@ -80,19 +97,20 @@ function coercePackageConfigValue(input) {
|
|
|
80
97
|
rawValue: input.rawValue
|
|
81
98
|
});
|
|
82
99
|
}
|
|
100
|
+
const rawText = scalarPackageConfigInputText(input.rawValue, `${input.surface} config key ${input.key}`);
|
|
83
101
|
if (!input.schema?.properties) {
|
|
84
|
-
return
|
|
102
|
+
return rawText;
|
|
85
103
|
}
|
|
86
104
|
const property = input.schema.properties[input.key];
|
|
87
105
|
if (!property) {
|
|
88
106
|
throw new Error(`Unknown ${input.surface} config key ${input.key} for ${input.packageId}.`);
|
|
89
107
|
}
|
|
90
108
|
const required = new Set(input.schema.required ?? []);
|
|
91
|
-
const trimmed =
|
|
109
|
+
const trimmed = rawText.trim();
|
|
92
110
|
if (required.has(input.key) && trimmed.length === 0) {
|
|
93
111
|
throw new Error(`${input.surface} config key ${input.key} is required.`);
|
|
94
112
|
}
|
|
95
|
-
let value =
|
|
113
|
+
let value = rawText;
|
|
96
114
|
if (property.type === 'boolean') {
|
|
97
115
|
if (trimmed === 'true') {
|
|
98
116
|
value = true;
|
|
@@ -117,7 +135,9 @@ function coercePackageConfigValue(input) {
|
|
|
117
135
|
return value;
|
|
118
136
|
}
|
|
119
137
|
function isBuiltInPackage(surface, packageId) {
|
|
120
|
-
|
|
138
|
+
void surface;
|
|
139
|
+
void packageId;
|
|
140
|
+
return false;
|
|
121
141
|
}
|
|
122
142
|
export class OperatorPackageService {
|
|
123
143
|
config;
|
|
@@ -125,7 +145,7 @@ export class OperatorPackageService {
|
|
|
125
145
|
now;
|
|
126
146
|
inventory;
|
|
127
147
|
installer;
|
|
128
|
-
packageRegistry
|
|
148
|
+
packageRegistry;
|
|
129
149
|
history = new GitHistoryService();
|
|
130
150
|
homeRoot;
|
|
131
151
|
constructor(config, configPath, now = () => new Date().toISOString(), homeRoot = homeRootForRuntime(config.runtimeRoot)) {
|
|
@@ -134,6 +154,7 @@ export class OperatorPackageService {
|
|
|
134
154
|
this.now = now;
|
|
135
155
|
this.inventory = new PackageInventoryStore(config.runtimeRoot);
|
|
136
156
|
this.installer = new PackageInstaller(config.runtimeRoot, now);
|
|
157
|
+
this.packageRegistry = new PackageRegistryService({ runtimeRoot: config.runtimeRoot });
|
|
137
158
|
this.homeRoot = homeRoot;
|
|
138
159
|
}
|
|
139
160
|
ensureInitialized() {
|
|
@@ -164,6 +185,16 @@ export class OperatorPackageService {
|
|
|
164
185
|
clearOperationJournal() {
|
|
165
186
|
rmSync(this.operationJournalPath(), { force: true });
|
|
166
187
|
}
|
|
188
|
+
markSetupIncomplete() {
|
|
189
|
+
const nextSetup = {
|
|
190
|
+
completed: false
|
|
191
|
+
};
|
|
192
|
+
if (JSON.stringify(this.config.setup) === JSON.stringify(nextSetup)) {
|
|
193
|
+
return;
|
|
194
|
+
}
|
|
195
|
+
this.config.setup = nextSetup;
|
|
196
|
+
saveMoorlineConfig(this.config, this.configPath);
|
|
197
|
+
}
|
|
167
198
|
withOperationJournal(operation, work) {
|
|
168
199
|
this.writeOperationJournal(operation);
|
|
169
200
|
try {
|
|
@@ -173,6 +204,9 @@ export class OperatorPackageService {
|
|
|
173
204
|
}
|
|
174
205
|
catch (error) {
|
|
175
206
|
this.recoverInterruptedPackageOperation();
|
|
207
|
+
if (operation === 'apply') {
|
|
208
|
+
this.markSetupIncomplete();
|
|
209
|
+
}
|
|
176
210
|
this.clearOperationJournal();
|
|
177
211
|
throw error;
|
|
178
212
|
}
|
|
@@ -186,6 +220,9 @@ export class OperatorPackageService {
|
|
|
186
220
|
}
|
|
187
221
|
catch (error) {
|
|
188
222
|
this.recoverInterruptedPackageOperation();
|
|
223
|
+
if (operation === 'apply') {
|
|
224
|
+
this.markSetupIncomplete();
|
|
225
|
+
}
|
|
189
226
|
this.clearOperationJournal();
|
|
190
227
|
throw error;
|
|
191
228
|
}
|
|
@@ -246,16 +283,16 @@ export class OperatorPackageService {
|
|
|
246
283
|
...(input.includeConfig ? { configPath: this.configPath } : {})
|
|
247
284
|
});
|
|
248
285
|
}
|
|
249
|
-
|
|
250
|
-
return this.packageRegistry.
|
|
286
|
+
listPackageCache() {
|
|
287
|
+
return this.packageRegistry.listCachedEntries();
|
|
251
288
|
}
|
|
252
|
-
async
|
|
289
|
+
async searchPackages(input) {
|
|
253
290
|
return await this.packageRegistry.search(input);
|
|
254
291
|
}
|
|
255
|
-
async
|
|
292
|
+
async getPackageInfo(input) {
|
|
256
293
|
return await this.packageRegistry.getPackage(input);
|
|
257
294
|
}
|
|
258
|
-
exportShareBundle(productVersion = process.env.npm_package_version ?? '0.0.
|
|
295
|
+
exportShareBundle(productVersion = process.env.npm_package_version ?? '0.0.2') {
|
|
259
296
|
const inventory = this.inventory.load();
|
|
260
297
|
const notes = [
|
|
261
298
|
'Secrets are excluded from this bundle.',
|
|
@@ -312,6 +349,21 @@ export class OperatorPackageService {
|
|
|
312
349
|
version: entry.version
|
|
313
350
|
};
|
|
314
351
|
}
|
|
352
|
+
packageMetadataForEntry(entry) {
|
|
353
|
+
return {
|
|
354
|
+
kind: entry.kind,
|
|
355
|
+
surface: entry.surface,
|
|
356
|
+
packageId: entry.packageId,
|
|
357
|
+
name: entry.name,
|
|
358
|
+
description: entry.description,
|
|
359
|
+
...(entry.version ? { version: entry.version } : {}),
|
|
360
|
+
tags: [...entry.tags],
|
|
361
|
+
source: entry.source,
|
|
362
|
+
requires: [...entry.requires],
|
|
363
|
+
...(entry.members ? { members: [...entry.members] } : {}),
|
|
364
|
+
...('suggestedAfterInstall' in entry && entry.suggestedAfterInstall ? { suggestedAfterInstall: [...entry.suggestedAfterInstall] } : {})
|
|
365
|
+
};
|
|
366
|
+
}
|
|
315
367
|
embeddedBundleMemberEntries(input) {
|
|
316
368
|
const entries = [];
|
|
317
369
|
for (const member of input.members) {
|
|
@@ -327,7 +379,6 @@ export class OperatorPackageService {
|
|
|
327
379
|
name: loaded.manifest.name,
|
|
328
380
|
description: loaded.manifest.description ?? loaded.manifest.id,
|
|
329
381
|
version: loaded.manifest.version,
|
|
330
|
-
recommendedForSetup: false,
|
|
331
382
|
tags: ['embedded'],
|
|
332
383
|
source: {
|
|
333
384
|
kind: 'local_dir',
|
|
@@ -343,18 +394,12 @@ export class OperatorPackageService {
|
|
|
343
394
|
if (!kind) {
|
|
344
395
|
throw new Error('Package install requires a kind.');
|
|
345
396
|
}
|
|
346
|
-
if (input.packageId) {
|
|
347
|
-
assertOfficialCatalogChecksums({
|
|
348
|
-
kind,
|
|
349
|
-
packageId: input.packageId
|
|
350
|
-
});
|
|
351
|
-
}
|
|
352
397
|
const registryEntry = input.source || !input.packageId
|
|
353
398
|
? null
|
|
354
399
|
: await this.packageRegistry.resolveInstallEntry({ kind, packageId: input.packageId });
|
|
355
400
|
const source = input.source ?? registryEntry?.source ?? null;
|
|
356
401
|
if (!source) {
|
|
357
|
-
throw new Error('Package install requires a source descriptor or
|
|
402
|
+
throw new Error('Package install requires a source descriptor or package id');
|
|
358
403
|
}
|
|
359
404
|
if (kind === 'bundle') {
|
|
360
405
|
return await this.installBundle({ packageId: input.packageId, source, registryEntry: registryEntry ?? undefined });
|
|
@@ -382,6 +427,15 @@ export class OperatorPackageService {
|
|
|
382
427
|
record.installedByPackageIds = [...new Set([...record.installedByPackageIds, input.bundlePackageId])].sort();
|
|
383
428
|
this.inventory.save(state);
|
|
384
429
|
}
|
|
430
|
+
addBundleActivationOwner(input) {
|
|
431
|
+
const state = this.inventory.load();
|
|
432
|
+
const record = state.installed.find((entry) => entry.kind === input.kind && entry.packageId === input.packageId);
|
|
433
|
+
if (!record) {
|
|
434
|
+
return;
|
|
435
|
+
}
|
|
436
|
+
record.activatedByPackageIds = [...new Set([...(record.activatedByPackageIds ?? []), input.bundlePackageId])].sort();
|
|
437
|
+
this.inventory.save(state);
|
|
438
|
+
}
|
|
385
439
|
removeBundleOwner(input) {
|
|
386
440
|
const state = this.inventory.load();
|
|
387
441
|
const record = state.installed.find((entry) => entry.kind === input.kind && entry.packageId === input.packageId);
|
|
@@ -397,6 +451,60 @@ export class OperatorPackageService {
|
|
|
397
451
|
}
|
|
398
452
|
this.inventory.save(state);
|
|
399
453
|
}
|
|
454
|
+
removeBundleActivationOwner(input) {
|
|
455
|
+
const state = this.inventory.load();
|
|
456
|
+
const record = state.installed.find((entry) => entry.kind === input.kind && entry.packageId === input.packageId);
|
|
457
|
+
if (!record?.activatedByPackageIds?.includes(input.bundlePackageId)) {
|
|
458
|
+
return null;
|
|
459
|
+
}
|
|
460
|
+
const nextOwners = record.activatedByPackageIds.filter((owner) => owner !== input.bundlePackageId);
|
|
461
|
+
if (nextOwners.length > 0) {
|
|
462
|
+
record.activatedByPackageIds = nextOwners;
|
|
463
|
+
}
|
|
464
|
+
else {
|
|
465
|
+
delete record.activatedByPackageIds;
|
|
466
|
+
}
|
|
467
|
+
this.inventory.save(state);
|
|
468
|
+
return nextOwners;
|
|
469
|
+
}
|
|
470
|
+
packageIsDesiredActive(input) {
|
|
471
|
+
if (input.kind === 'api-adapter') {
|
|
472
|
+
return this.config.surfaces.apiAdapter.activePackageId === input.packageId;
|
|
473
|
+
}
|
|
474
|
+
if (input.kind === 'transport') {
|
|
475
|
+
return this.config.surfaces.transport.activePackageId === input.packageId;
|
|
476
|
+
}
|
|
477
|
+
if (input.kind === 'provider') {
|
|
478
|
+
return this.config.surfaces.provider.activePackageId === input.packageId;
|
|
479
|
+
}
|
|
480
|
+
if (input.kind === 'plugin') {
|
|
481
|
+
return this.config.surfaces.plugins.enabledPackageIds.includes(input.packageId);
|
|
482
|
+
}
|
|
483
|
+
if (input.kind === 'skill') {
|
|
484
|
+
return this.config.surfaces.skills.enabledPackageIds.includes(input.packageId);
|
|
485
|
+
}
|
|
486
|
+
return false;
|
|
487
|
+
}
|
|
488
|
+
activationIsBundleOwned(input) {
|
|
489
|
+
const record = this.inventory.get(input.kind, input.packageId);
|
|
490
|
+
return (record?.activatedByPackageIds?.length ?? 0) > 0;
|
|
491
|
+
}
|
|
492
|
+
removeBundleOwnedActivation(input) {
|
|
493
|
+
const remainingOwners = this.removeBundleActivationOwner(input);
|
|
494
|
+
if (remainingOwners === null) {
|
|
495
|
+
return;
|
|
496
|
+
}
|
|
497
|
+
if (remainingOwners.length > 0 || !this.packageIsDesiredActive(input)) {
|
|
498
|
+
return;
|
|
499
|
+
}
|
|
500
|
+
if (input.kind === 'api-adapter' || input.kind === 'transport' || input.kind === 'provider') {
|
|
501
|
+
this.setSelectedPackage(input.kind, null);
|
|
502
|
+
return;
|
|
503
|
+
}
|
|
504
|
+
if (input.kind === 'plugin' || input.kind === 'skill') {
|
|
505
|
+
this.disablePackage(input.kind, input.packageId);
|
|
506
|
+
}
|
|
507
|
+
}
|
|
400
508
|
bundleMemberDependents(input) {
|
|
401
509
|
return findDependentRecords(this.inventory.load().installed, input.kind, input.packageId)
|
|
402
510
|
.map((entry) => `${entry.surface}:${entry.packageId}`)
|
|
@@ -443,7 +551,7 @@ export class OperatorPackageService {
|
|
|
443
551
|
});
|
|
444
552
|
const bundle = input.registryEntry
|
|
445
553
|
? {
|
|
446
|
-
...input.registryEntry,
|
|
554
|
+
...this.packageMetadataForEntry(input.registryEntry),
|
|
447
555
|
members: input.registryEntry.members && input.registryEntry.members.length > 0 ? input.registryEntry.members : record.members ?? []
|
|
448
556
|
}
|
|
449
557
|
: {
|
|
@@ -453,7 +561,6 @@ export class OperatorPackageService {
|
|
|
453
561
|
name: record.name,
|
|
454
562
|
description: record.description ?? record.packageId,
|
|
455
563
|
version: record.version,
|
|
456
|
-
recommendedForSetup: false,
|
|
457
564
|
tags: [],
|
|
458
565
|
source: input.source,
|
|
459
566
|
requires: [],
|
|
@@ -468,14 +575,28 @@ export class OperatorPackageService {
|
|
|
468
575
|
});
|
|
469
576
|
const embeddedKeys = new Set(embeddedMemberEntries.map((entry) => `${entry.kind}:${entry.packageId}`));
|
|
470
577
|
const externalMembers = requestedMembers.filter((member) => !embeddedKeys.has(`${member.kind}:${member.packageId}`));
|
|
471
|
-
const
|
|
472
|
-
|
|
578
|
+
const sourceMemberEntries = externalMembers
|
|
579
|
+
.filter((member) => Boolean(member.source))
|
|
580
|
+
.map((member) => ({
|
|
581
|
+
kind: member.kind,
|
|
582
|
+
surface: member.kind,
|
|
583
|
+
packageId: member.packageId,
|
|
584
|
+
name: member.packageId,
|
|
585
|
+
description: member.reason ?? member.packageId,
|
|
586
|
+
version: member.version === '*' || member.version === 'latest' || member.version === 'stable' ? undefined : member.version,
|
|
587
|
+
tags: ['member-source'],
|
|
588
|
+
source: member.source,
|
|
589
|
+
requires: []
|
|
590
|
+
}));
|
|
591
|
+
const npmMembers = externalMembers.filter((member) => !member.source);
|
|
592
|
+
const memberEntries = npmMembers.length > 0
|
|
593
|
+
? await this.packageRegistry.resolveBundleMemberEntries({ members: npmMembers })
|
|
473
594
|
: [];
|
|
474
595
|
members = resolveBundleMembers({
|
|
475
|
-
|
|
596
|
+
entries: [
|
|
476
597
|
...embeddedMemberEntries,
|
|
477
|
-
...
|
|
478
|
-
...memberEntries
|
|
598
|
+
...sourceMemberEntries,
|
|
599
|
+
...memberEntries.map((entry) => this.packageMetadataForEntry(entry))
|
|
479
600
|
],
|
|
480
601
|
bundle
|
|
481
602
|
});
|
|
@@ -488,56 +609,84 @@ export class OperatorPackageService {
|
|
|
488
609
|
// Best effort rollback; the resolution error below is the actionable failure.
|
|
489
610
|
}
|
|
490
611
|
const detail = error instanceof Error ? error.message : String(error);
|
|
491
|
-
throw new Error(`Bundle ${record.packageId} can only reference packages that
|
|
612
|
+
throw new Error(`Bundle ${record.packageId} can only reference packages that can be resolved from embedded packages, member sources, or registry metadata. ${detail}`);
|
|
492
613
|
}
|
|
493
614
|
try {
|
|
494
615
|
for (const resolved of members) {
|
|
495
|
-
const existing = this.inventory.get(resolved.
|
|
616
|
+
const existing = this.inventory.get(resolved.packageEntry.kind, resolved.packageEntry.packageId);
|
|
496
617
|
if (!existing) {
|
|
497
618
|
await this.installer.install({
|
|
498
|
-
surface: resolved.
|
|
499
|
-
source: resolved.
|
|
619
|
+
surface: resolved.packageEntry.kind,
|
|
620
|
+
source: resolved.packageEntry.source,
|
|
500
621
|
installedByPackageId: record.packageId,
|
|
501
|
-
expectedPackage: this.expectedPackageForEntry(resolved.
|
|
622
|
+
expectedPackage: this.expectedPackageForEntry(resolved.packageEntry)
|
|
502
623
|
});
|
|
503
624
|
}
|
|
504
625
|
else {
|
|
505
626
|
const satisfiesBundleRange = packageVersionSatisfiesRange({
|
|
506
|
-
packageId: resolved.
|
|
627
|
+
packageId: resolved.packageEntry.packageId,
|
|
507
628
|
version: existing.version,
|
|
508
629
|
range: resolved.member.version
|
|
509
630
|
});
|
|
510
631
|
if (!satisfiesBundleRange) {
|
|
511
632
|
if (!existing.installedByPackageIds || existing.installedByPackageIds.length === 0) {
|
|
512
|
-
throw new Error(`Installed ${resolved.
|
|
633
|
+
throw new Error(`Installed ${resolved.packageEntry.kind} package ${existing.packageId}@${existing.version} does not satisfy bundle ` +
|
|
513
634
|
`${record.packageId} requirement ${resolved.member.version}. Remove or update it before installing the bundle.`);
|
|
514
635
|
}
|
|
515
636
|
this.assertReplacementSatisfiesExistingBundleOwners({
|
|
516
|
-
kind: resolved.
|
|
517
|
-
packageId: resolved.
|
|
518
|
-
replacementVersion: resolved.
|
|
637
|
+
kind: resolved.packageEntry.kind,
|
|
638
|
+
packageId: resolved.packageEntry.packageId,
|
|
639
|
+
replacementVersion: resolved.packageEntry.version,
|
|
519
640
|
ownerPackageIds: existing.installedByPackageIds
|
|
520
641
|
});
|
|
521
642
|
await this.installer.install({
|
|
522
|
-
surface: resolved.
|
|
523
|
-
source: resolved.
|
|
643
|
+
surface: resolved.packageEntry.kind,
|
|
644
|
+
source: resolved.packageEntry.source,
|
|
524
645
|
installedByPackageId: record.packageId,
|
|
525
|
-
expectedPackage: this.expectedPackageForEntry(resolved.
|
|
646
|
+
expectedPackage: this.expectedPackageForEntry(resolved.packageEntry)
|
|
526
647
|
});
|
|
527
648
|
}
|
|
528
649
|
else if (existing.installedByPackageIds && existing.installedByPackageIds.length > 0) {
|
|
529
650
|
this.addBundleOwner({
|
|
530
|
-
kind: resolved.
|
|
531
|
-
packageId: resolved.
|
|
651
|
+
kind: resolved.packageEntry.kind,
|
|
652
|
+
packageId: resolved.packageEntry.packageId,
|
|
532
653
|
bundlePackageId: record.packageId
|
|
533
654
|
});
|
|
534
655
|
}
|
|
535
656
|
}
|
|
536
657
|
if (resolved.member.activation === 'select') {
|
|
537
|
-
this.
|
|
658
|
+
const shouldTrackActivation = !this.packageIsDesiredActive({
|
|
659
|
+
kind: resolved.member.kind,
|
|
660
|
+
packageId: resolved.packageEntry.packageId
|
|
661
|
+
}) || this.activationIsBundleOwned({
|
|
662
|
+
kind: resolved.member.kind,
|
|
663
|
+
packageId: resolved.packageEntry.packageId
|
|
664
|
+
});
|
|
665
|
+
this.setSelectedPackage(resolved.member.kind, resolved.packageEntry.packageId);
|
|
666
|
+
if (shouldTrackActivation) {
|
|
667
|
+
this.addBundleActivationOwner({
|
|
668
|
+
kind: resolved.member.kind,
|
|
669
|
+
packageId: resolved.packageEntry.packageId,
|
|
670
|
+
bundlePackageId: record.packageId
|
|
671
|
+
});
|
|
672
|
+
}
|
|
538
673
|
}
|
|
539
674
|
else if (resolved.member.activation === 'enable') {
|
|
540
|
-
this.
|
|
675
|
+
const shouldTrackActivation = !this.packageIsDesiredActive({
|
|
676
|
+
kind: resolved.member.kind,
|
|
677
|
+
packageId: resolved.packageEntry.packageId
|
|
678
|
+
}) || this.activationIsBundleOwned({
|
|
679
|
+
kind: resolved.member.kind,
|
|
680
|
+
packageId: resolved.packageEntry.packageId
|
|
681
|
+
});
|
|
682
|
+
this.enablePackage(resolved.member.kind, resolved.packageEntry.packageId);
|
|
683
|
+
if (shouldTrackActivation) {
|
|
684
|
+
this.addBundleActivationOwner({
|
|
685
|
+
kind: resolved.member.kind,
|
|
686
|
+
packageId: resolved.packageEntry.packageId,
|
|
687
|
+
bundlePackageId: record.packageId
|
|
688
|
+
});
|
|
689
|
+
}
|
|
541
690
|
}
|
|
542
691
|
}
|
|
543
692
|
}
|
|
@@ -596,6 +745,9 @@ export class OperatorPackageService {
|
|
|
596
745
|
if (!installed) {
|
|
597
746
|
continue;
|
|
598
747
|
}
|
|
748
|
+
if (member.activation === 'select' || member.activation === 'enable') {
|
|
749
|
+
this.removeBundleOwnedActivation({ kind: member.kind, packageId: member.packageId, bundlePackageId: input.packageId });
|
|
750
|
+
}
|
|
599
751
|
const owners = installed.installedByPackageIds ?? [];
|
|
600
752
|
if (!owners.includes(input.packageId)) {
|
|
601
753
|
keptMembers.push(`${member.kind}:${member.packageId} is manually installed`);
|
|
@@ -686,7 +838,6 @@ export class OperatorPackageService {
|
|
|
686
838
|
let inventoryChanged = false;
|
|
687
839
|
if (pruneDesiredSelections) {
|
|
688
840
|
if (this.config.surfaces.apiAdapter.activePackageId &&
|
|
689
|
-
this.config.surfaces.apiAdapter.activePackageId !== 'official/http' &&
|
|
690
841
|
!installed['api-adapter'].has(this.config.surfaces.apiAdapter.activePackageId)) {
|
|
691
842
|
this.config.surfaces.apiAdapter.activePackageId = null;
|
|
692
843
|
this.config.surfaces.apiAdapter.config = {};
|
|
@@ -703,8 +854,22 @@ export class OperatorPackageService {
|
|
|
703
854
|
configChanged = true;
|
|
704
855
|
}
|
|
705
856
|
}
|
|
857
|
+
if (this.config.transport &&
|
|
858
|
+
(!this.config.surfaces.transport.activePackageId ||
|
|
859
|
+
this.config.transport.packageId !== this.config.surfaces.transport.activePackageId ||
|
|
860
|
+
!installed.transport.has(this.config.transport.packageId))) {
|
|
861
|
+
delete this.config.transport;
|
|
862
|
+
configChanged = true;
|
|
863
|
+
}
|
|
864
|
+
if (this.config.provider &&
|
|
865
|
+
(!this.config.surfaces.provider.activePackageId ||
|
|
866
|
+
this.config.provider.packageId !== this.config.surfaces.provider.activePackageId ||
|
|
867
|
+
!installed.provider.has(this.config.provider.packageId))) {
|
|
868
|
+
delete this.config.provider;
|
|
869
|
+
configChanged = true;
|
|
870
|
+
}
|
|
706
871
|
for (const packageId of Object.keys(this.config.surfaces.apiAdapter.configByPackageId ?? {})) {
|
|
707
|
-
if (
|
|
872
|
+
if (!installed['api-adapter'].has(packageId)) {
|
|
708
873
|
delete this.config.surfaces.apiAdapter.configByPackageId?.[packageId];
|
|
709
874
|
configChanged = true;
|
|
710
875
|
}
|
|
@@ -743,7 +908,7 @@ export class OperatorPackageService {
|
|
|
743
908
|
configChanged = true;
|
|
744
909
|
}
|
|
745
910
|
}
|
|
746
|
-
const normalizedApplied = appliedPackageRefs(state.applied).filter((entry) =>
|
|
911
|
+
const normalizedApplied = appliedPackageRefs(state.applied).filter((entry) => installed[entry.surface].has(entry.packageId));
|
|
747
912
|
if (JSON.stringify(normalizedApplied) !== JSON.stringify(state.applied.activated)) {
|
|
748
913
|
state.applied.activated = normalizedApplied;
|
|
749
914
|
inventoryChanged = true;
|
|
@@ -785,9 +950,8 @@ export class OperatorPackageService {
|
|
|
785
950
|
}
|
|
786
951
|
else {
|
|
787
952
|
const savedConfig = this.config.surfaces.apiAdapter.configByPackageId?.[packageId];
|
|
788
|
-
const legacyDefaultConfig = packageId === 'official/http' ? defaultHttpApiAdapterConfig() : {};
|
|
789
953
|
this.config.surfaces.apiAdapter.config = {
|
|
790
|
-
...(savedConfig ??
|
|
954
|
+
...(savedConfig ?? {})
|
|
791
955
|
};
|
|
792
956
|
}
|
|
793
957
|
}
|
|
@@ -988,16 +1152,24 @@ export class OperatorPackageService {
|
|
|
988
1152
|
}
|
|
989
1153
|
async apply() {
|
|
990
1154
|
return await this.withAsyncOperationJournal('apply', async () => {
|
|
991
|
-
this.
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
1155
|
+
let state = this.inventory.load();
|
|
1156
|
+
let plan;
|
|
1157
|
+
try {
|
|
1158
|
+
this.reconcileDesiredAndAppliedState();
|
|
1159
|
+
await this.completeSelectedTransportConfig();
|
|
1160
|
+
state = this.inventory.load();
|
|
1161
|
+
const startability = evaluateRuntimeStartability(this.config, state);
|
|
1162
|
+
if (!startability.startable) {
|
|
1163
|
+
throw new Error(startability.issues.join('\n'));
|
|
1164
|
+
}
|
|
1165
|
+
plan = createPackageApplyPlan(this.config, state);
|
|
1166
|
+
if (plan.errors.length > 0) {
|
|
1167
|
+
throw new Error(plan.errors.map((entry) => entry.detail).join('\n'));
|
|
1168
|
+
}
|
|
997
1169
|
}
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
throw
|
|
1170
|
+
catch (error) {
|
|
1171
|
+
this.markSetupIncomplete();
|
|
1172
|
+
throw error;
|
|
1001
1173
|
}
|
|
1002
1174
|
const applied = buildRequiredAppliedSurfaceConfigs(this.config);
|
|
1003
1175
|
this.config.transport = applied.transport;
|