@moorline/core 0.0.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/dist/app/bootstrap/apiAdapterPackageLoader.d.ts +21 -0
- package/dist/app/bootstrap/apiAdapterPackageLoader.js +143 -0
- package/dist/app/bootstrap/apiAdapterPackageLoader.js.map +1 -0
- package/dist/app/bootstrap/officialCatalog.d.ts +1 -0
- package/dist/app/bootstrap/officialCatalog.js +2 -0
- package/dist/app/bootstrap/officialCatalog.js.map +1 -0
- package/dist/app/bootstrap/operatorPackageService.d.ts +79 -0
- package/dist/app/bootstrap/operatorPackageService.js +1025 -0
- package/dist/app/bootstrap/operatorPackageService.js.map +1 -0
- package/dist/app/bootstrap/providerPackageLoader.d.ts +12 -0
- package/dist/app/bootstrap/providerPackageLoader.js +139 -0
- package/dist/app/bootstrap/providerPackageLoader.js.map +1 -0
- package/dist/app/bootstrap/runtimeBootstrap.d.ts +12 -0
- package/dist/app/bootstrap/runtimeBootstrap.js +46 -0
- package/dist/app/bootstrap/runtimeBootstrap.js.map +1 -0
- package/dist/app/bootstrap/transportPackageLoader.d.ts +23 -0
- package/dist/app/bootstrap/transportPackageLoader.js +149 -0
- package/dist/app/bootstrap/transportPackageLoader.js.map +1 -0
- package/dist/app/control-api/services/actions.d.ts +140 -0
- package/dist/app/control-api/services/actions.js +312 -0
- package/dist/app/control-api/services/actions.js.map +1 -0
- package/dist/app/control-api/services/controlPlane.d.ts +245 -0
- package/dist/app/control-api/services/controlPlane.js +301 -0
- package/dist/app/control-api/services/controlPlane.js.map +1 -0
- package/dist/app/control-api/services/runtimeHost.d.ts +61 -0
- package/dist/app/control-api/services/runtimeHost.js +117 -0
- package/dist/app/control-api/services/runtimeHost.js.map +1 -0
- package/dist/app/control-api/services/state.d.ts +19 -0
- package/dist/app/control-api/services/state.js +177 -0
- package/dist/app/control-api/services/state.js.map +1 -0
- package/dist/core/domain/memory/operatorMemoryService.d.ts +36 -0
- package/dist/core/domain/memory/operatorMemoryService.js +81 -0
- package/dist/core/domain/memory/operatorMemoryService.js.map +1 -0
- package/dist/core/domain/memory/pathSafety.d.ts +2 -0
- package/dist/core/domain/memory/pathSafety.js +36 -0
- package/dist/core/domain/memory/pathSafety.js.map +1 -0
- package/dist/core/domain/memory/retrieval/fileWalker.d.ts +1 -0
- package/dist/core/domain/memory/retrieval/fileWalker.js +31 -0
- package/dist/core/domain/memory/retrieval/fileWalker.js.map +1 -0
- package/dist/core/domain/memory/retrieval/indexTargets.d.ts +3 -0
- package/dist/core/domain/memory/retrieval/indexTargets.js +43 -0
- package/dist/core/domain/memory/retrieval/indexTargets.js.map +1 -0
- package/dist/core/domain/memory/retrieval/markdownChunker.d.ts +3 -0
- package/dist/core/domain/memory/retrieval/markdownChunker.js +77 -0
- package/dist/core/domain/memory/retrieval/markdownChunker.js.map +1 -0
- package/dist/core/domain/memory/retrieval/parse.d.ts +2 -0
- package/dist/core/domain/memory/retrieval/parse.js +28 -0
- package/dist/core/domain/memory/retrieval/parse.js.map +1 -0
- package/dist/core/domain/memory/retrieval/ranking.d.ts +11 -0
- package/dist/core/domain/memory/retrieval/ranking.js +63 -0
- package/dist/core/domain/memory/retrieval/ranking.js.map +1 -0
- package/dist/core/domain/memory/retrieval/schema.d.ts +2 -0
- package/dist/core/domain/memory/retrieval/schema.js +105 -0
- package/dist/core/domain/memory/retrieval/schema.js.map +1 -0
- package/dist/core/domain/memory/retrieval/scope.d.ts +20 -0
- package/dist/core/domain/memory/retrieval/scope.js +38 -0
- package/dist/core/domain/memory/retrieval/scope.js.map +1 -0
- package/dist/core/domain/memory/retrieval/tokenEmbedding.d.ts +4 -0
- package/dist/core/domain/memory/retrieval/tokenEmbedding.js +44 -0
- package/dist/core/domain/memory/retrieval/tokenEmbedding.js.map +1 -0
- package/dist/core/domain/memory/retrieval/types.d.ts +88 -0
- package/dist/core/domain/memory/retrieval/types.js +7 -0
- package/dist/core/domain/memory/retrieval/types.js.map +1 -0
- package/dist/core/domain/memory/retrieval.d.ts +4 -0
- package/dist/core/domain/memory/retrieval.js +398 -0
- package/dist/core/domain/memory/retrieval.js.map +1 -0
- package/dist/core/domain/memory/store.d.ts +28 -0
- package/dist/core/domain/memory/store.js +52 -0
- package/dist/core/domain/memory/store.js.map +1 -0
- package/dist/core/domain/missions/missionDraftSetup.d.ts +12 -0
- package/dist/core/domain/missions/missionDraftSetup.js +92 -0
- package/dist/core/domain/missions/missionDraftSetup.js.map +1 -0
- package/dist/core/domain/missions/missionHookService.d.ts +41 -0
- package/dist/core/domain/missions/missionHookService.js +161 -0
- package/dist/core/domain/missions/missionHookService.js.map +1 -0
- package/dist/core/domain/missions/missionHookValidation.d.ts +8 -0
- package/dist/core/domain/missions/missionHookValidation.js +59 -0
- package/dist/core/domain/missions/missionHookValidation.js.map +1 -0
- package/dist/core/domain/missions/missionRegistry.d.ts +55 -0
- package/dist/core/domain/missions/missionRegistry.js +204 -0
- package/dist/core/domain/missions/missionRegistry.js.map +1 -0
- package/dist/core/domain/missions/missionSchedule.d.ts +24 -0
- package/dist/core/domain/missions/missionSchedule.js +441 -0
- package/dist/core/domain/missions/missionSchedule.js.map +1 -0
- package/dist/core/domain/sessions/lifecycleOrchestration.d.ts +23 -0
- package/dist/core/domain/sessions/lifecycleOrchestration.js +18 -0
- package/dist/core/domain/sessions/lifecycleOrchestration.js.map +1 -0
- package/dist/core/domain/sessions/managedWorkerSessions.d.ts +3 -0
- package/dist/core/domain/sessions/managedWorkerSessions.js +4 -0
- package/dist/core/domain/sessions/managedWorkerSessions.js.map +1 -0
- package/dist/core/domain/sessions/runtimeWorkManagementService.d.ts +129 -0
- package/dist/core/domain/sessions/runtimeWorkManagementService.js +627 -0
- package/dist/core/domain/sessions/runtimeWorkManagementService.js.map +1 -0
- package/dist/core/domain/sessions/sessionLifecycleService.d.ts +21 -0
- package/dist/core/domain/sessions/sessionLifecycleService.js +76 -0
- package/dist/core/domain/sessions/sessionLifecycleService.js.map +1 -0
- package/dist/core/domain/sessions/sessionState.d.ts +34 -0
- package/dist/core/domain/sessions/sessionState.js +154 -0
- package/dist/core/domain/sessions/sessionState.js.map +1 -0
- package/dist/core/domain/sessions/workManagement/managedSessionLimit.d.ts +3 -0
- package/dist/core/domain/sessions/workManagement/managedSessionLimit.js +15 -0
- package/dist/core/domain/sessions/workManagement/managedSessionLimit.js.map +1 -0
- package/dist/core/domain/sessions/workManagement/spaceNames.d.ts +2 -0
- package/dist/core/domain/sessions/workManagement/spaceNames.js +15 -0
- package/dist/core/domain/sessions/workManagement/spaceNames.js.map +1 -0
- package/dist/core/extension/capabilities/capabilities.d.ts +8 -0
- package/dist/core/extension/capabilities/capabilities.js +40 -0
- package/dist/core/extension/capabilities/capabilities.js.map +1 -0
- package/dist/core/extension/packages/archiveExtraction.d.ts +1 -0
- package/dist/core/extension/packages/archiveExtraction.js +194 -0
- package/dist/core/extension/packages/archiveExtraction.js.map +1 -0
- package/dist/core/extension/packages/npmRegistryClient.d.ts +24 -0
- package/dist/core/extension/packages/npmRegistryClient.js +261 -0
- package/dist/core/extension/packages/npmRegistryClient.js.map +1 -0
- package/dist/core/extension/packages/officialArchiveResolver.d.ts +2 -0
- package/dist/core/extension/packages/officialArchiveResolver.js +51 -0
- package/dist/core/extension/packages/officialArchiveResolver.js.map +1 -0
- package/dist/core/extension/packages/officialCatalog.d.ts +9 -0
- package/dist/core/extension/packages/officialCatalog.js +198 -0
- package/dist/core/extension/packages/officialCatalog.js.map +1 -0
- package/dist/core/extension/packages/packageActivation.d.ts +21 -0
- package/dist/core/extension/packages/packageActivation.js +81 -0
- package/dist/core/extension/packages/packageActivation.js.map +1 -0
- package/dist/core/extension/packages/packageApplyPlanner.d.ts +4 -0
- package/dist/core/extension/packages/packageApplyPlanner.js +79 -0
- package/dist/core/extension/packages/packageApplyPlanner.js.map +1 -0
- package/dist/core/extension/packages/packageBundleRoot.d.ts +1 -0
- package/dist/core/extension/packages/packageBundleRoot.js +34 -0
- package/dist/core/extension/packages/packageBundleRoot.js.map +1 -0
- package/dist/core/extension/packages/packageConfigSchema.d.ts +7 -0
- package/dist/core/extension/packages/packageConfigSchema.js +86 -0
- package/dist/core/extension/packages/packageConfigSchema.js.map +1 -0
- package/dist/core/extension/packages/packageDependencyResolver.d.ts +13 -0
- package/dist/core/extension/packages/packageDependencyResolver.js +128 -0
- package/dist/core/extension/packages/packageDependencyResolver.js.map +1 -0
- package/dist/core/extension/packages/packageDistroMetadata.d.ts +14 -0
- package/dist/core/extension/packages/packageDistroMetadata.js +153 -0
- package/dist/core/extension/packages/packageDistroMetadata.js.map +1 -0
- package/dist/core/extension/packages/packageInstaller.d.ts +27 -0
- package/dist/core/extension/packages/packageInstaller.js +269 -0
- package/dist/core/extension/packages/packageInstaller.js.map +1 -0
- package/dist/core/extension/packages/packageInventoryStore.d.ts +25 -0
- package/dist/core/extension/packages/packageInventoryStore.js +398 -0
- package/dist/core/extension/packages/packageInventoryStore.js.map +1 -0
- package/dist/core/extension/packages/packageManifest.d.ts +15 -0
- package/dist/core/extension/packages/packageManifest.js +65 -0
- package/dist/core/extension/packages/packageManifest.js.map +1 -0
- package/dist/core/extension/packages/packageRegistryBlocklist.d.ts +10 -0
- package/dist/core/extension/packages/packageRegistryBlocklist.js +13 -0
- package/dist/core/extension/packages/packageRegistryBlocklist.js.map +1 -0
- package/dist/core/extension/packages/packageRegistryService.d.ts +22 -0
- package/dist/core/extension/packages/packageRegistryService.js +123 -0
- package/dist/core/extension/packages/packageRegistryService.js.map +1 -0
- package/dist/core/extension/packages/packageRegistryTypes.d.ts +33 -0
- package/dist/core/extension/packages/packageRegistryTypes.js +2 -0
- package/dist/core/extension/packages/packageRegistryTypes.js.map +1 -0
- package/dist/core/extension/packages/packageSource.d.ts +8 -0
- package/dist/core/extension/packages/packageSource.js +116 -0
- package/dist/core/extension/packages/packageSource.js.map +1 -0
- package/dist/core/extension/packages/packageSourceLimits.d.ts +5 -0
- package/dist/core/extension/packages/packageSourceLimits.js +6 -0
- package/dist/core/extension/packages/packageSourceLimits.js.map +1 -0
- package/dist/core/extension/packages/packageValidation.d.ts +2 -0
- package/dist/core/extension/packages/packageValidation.js +67 -0
- package/dist/core/extension/packages/packageValidation.js.map +1 -0
- package/dist/core/extension/packages/packageVersionResolver.d.ts +28 -0
- package/dist/core/extension/packages/packageVersionResolver.js +78 -0
- package/dist/core/extension/packages/packageVersionResolver.js.map +1 -0
- package/dist/core/extension/packages/remoteArchiveDownloader.d.ts +10 -0
- package/dist/core/extension/packages/remoteArchiveDownloader.js +156 -0
- package/dist/core/extension/packages/remoteArchiveDownloader.js.map +1 -0
- package/dist/core/extension/packages/runtimeStartability.d.ts +16 -0
- package/dist/core/extension/packages/runtimeStartability.js +237 -0
- package/dist/core/extension/packages/runtimeStartability.js.map +1 -0
- package/dist/core/extension/plugins/pluginHost.d.ts +50 -0
- package/dist/core/extension/plugins/pluginHost.js +303 -0
- package/dist/core/extension/plugins/pluginHost.js.map +1 -0
- package/dist/core/extension/plugins/pluginId.d.ts +2 -0
- package/dist/core/extension/plugins/pluginId.js +8 -0
- package/dist/core/extension/plugins/pluginId.js.map +1 -0
- package/dist/core/extension/plugins/pluginManifest.d.ts +3 -0
- package/dist/core/extension/plugins/pluginManifest.js +17 -0
- package/dist/core/extension/plugins/pluginManifest.js.map +1 -0
- package/dist/core/extension/plugins/runtimePluginLoader.d.ts +7 -0
- package/dist/core/extension/plugins/runtimePluginLoader.js +160 -0
- package/dist/core/extension/plugins/runtimePluginLoader.js.map +1 -0
- package/dist/core/extension/skills/skillRegistry.d.ts +21 -0
- package/dist/core/extension/skills/skillRegistry.js +233 -0
- package/dist/core/extension/skills/skillRegistry.js.map +1 -0
- package/dist/core/extension/skills/skillWriter.d.ts +20 -0
- package/dist/core/extension/skills/skillWriter.js +150 -0
- package/dist/core/extension/skills/skillWriter.js.map +1 -0
- package/dist/core/runtime/execution/commandReactor.d.ts +31 -0
- package/dist/core/runtime/execution/commandReactor.js +38 -0
- package/dist/core/runtime/execution/commandReactor.js.map +1 -0
- package/dist/core/runtime/execution/defaultModelSelection.d.ts +4 -0
- package/dist/core/runtime/execution/defaultModelSelection.js +17 -0
- package/dist/core/runtime/execution/defaultModelSelection.js.map +1 -0
- package/dist/core/runtime/execution/drainableWorker.d.ts +27 -0
- package/dist/core/runtime/execution/drainableWorker.js +79 -0
- package/dist/core/runtime/execution/drainableWorker.js.map +1 -0
- package/dist/core/runtime/execution/orchestrationEngine.d.ts +16 -0
- package/dist/core/runtime/execution/orchestrationEngine.js +181 -0
- package/dist/core/runtime/execution/orchestrationEngine.js.map +1 -0
- package/dist/core/runtime/execution/orchestrationHealth.d.ts +45 -0
- package/dist/core/runtime/execution/orchestrationHealth.js +95 -0
- package/dist/core/runtime/execution/orchestrationHealth.js.map +1 -0
- package/dist/core/runtime/execution/pluginContext/defaultSessionOwner.d.ts +2 -0
- package/dist/core/runtime/execution/pluginContext/defaultSessionOwner.js +10 -0
- package/dist/core/runtime/execution/pluginContext/defaultSessionOwner.js.map +1 -0
- package/dist/core/runtime/execution/pluginContext/pluginCapabilities.d.ts +40 -0
- package/dist/core/runtime/execution/pluginContext/pluginCapabilities.js +73 -0
- package/dist/core/runtime/execution/pluginContext/pluginCapabilities.js.map +1 -0
- package/dist/core/runtime/execution/pluginContext/pluginContextFactory.d.ts +20 -0
- package/dist/core/runtime/execution/pluginContext/pluginContextFactory.js +18 -0
- package/dist/core/runtime/execution/pluginContext/pluginContextFactory.js.map +1 -0
- package/dist/core/runtime/execution/pluginContext/transportAuthor.d.ts +7 -0
- package/dist/core/runtime/execution/pluginContext/transportAuthor.js +15 -0
- package/dist/core/runtime/execution/pluginContext/transportAuthor.js.map +1 -0
- package/dist/core/runtime/execution/providerCoordination/providerCompactionCoordinator.d.ts +7 -0
- package/dist/core/runtime/execution/providerCoordination/providerCompactionCoordinator.js +25 -0
- package/dist/core/runtime/execution/providerCoordination/providerCompactionCoordinator.js.map +1 -0
- package/dist/core/runtime/execution/providerCoordination/providerPolicyTarget.d.ts +2 -0
- package/dist/core/runtime/execution/providerCoordination/providerPolicyTarget.js +5 -0
- package/dist/core/runtime/execution/providerCoordination/providerPolicyTarget.js.map +1 -0
- package/dist/core/runtime/execution/providerCoordination/providerRecoveryService.d.ts +7 -0
- package/dist/core/runtime/execution/providerCoordination/providerRecoveryService.js +6 -0
- package/dist/core/runtime/execution/providerCoordination/providerRecoveryService.js.map +1 -0
- package/dist/core/runtime/execution/providerCoordination/providerRequestAttributionService.d.ts +10 -0
- package/dist/core/runtime/execution/providerCoordination/providerRequestAttributionService.js +33 -0
- package/dist/core/runtime/execution/providerCoordination/providerRequestAttributionService.js.map +1 -0
- package/dist/core/runtime/execution/providerCoordination/providerSessionCoordinator.d.ts +5 -0
- package/dist/core/runtime/execution/providerCoordination/providerSessionCoordinator.js +9 -0
- package/dist/core/runtime/execution/providerCoordination/providerSessionCoordinator.js.map +1 -0
- package/dist/core/runtime/execution/providerCoordination/providerTurnCoordinator.d.ts +3 -0
- package/dist/core/runtime/execution/providerCoordination/providerTurnCoordinator.js +6 -0
- package/dist/core/runtime/execution/providerCoordination/providerTurnCoordinator.js.map +1 -0
- package/dist/core/runtime/execution/providerOrchestration/ports.d.ts +47 -0
- package/dist/core/runtime/execution/providerOrchestration/ports.js +2 -0
- package/dist/core/runtime/execution/providerOrchestration/ports.js.map +1 -0
- package/dist/core/runtime/execution/providerOrchestration/providerAttachmentResolver.d.ts +13 -0
- package/dist/core/runtime/execution/providerOrchestration/providerAttachmentResolver.js +57 -0
- package/dist/core/runtime/execution/providerOrchestration/providerAttachmentResolver.js.map +1 -0
- package/dist/core/runtime/execution/providerOrchestration/providerCompactionPolicy.d.ts +19 -0
- package/dist/core/runtime/execution/providerOrchestration/providerCompactionPolicy.js +129 -0
- package/dist/core/runtime/execution/providerOrchestration/providerCompactionPolicy.js.map +1 -0
- package/dist/core/runtime/execution/providerOrchestration/providerEventPipeline.d.ts +32 -0
- package/dist/core/runtime/execution/providerOrchestration/providerEventPipeline.js +67 -0
- package/dist/core/runtime/execution/providerOrchestration/providerEventPipeline.js.map +1 -0
- package/dist/core/runtime/execution/providerOrchestration/providerMissionEventProjector.d.ts +12 -0
- package/dist/core/runtime/execution/providerOrchestration/providerMissionEventProjector.js +71 -0
- package/dist/core/runtime/execution/providerOrchestration/providerMissionEventProjector.js.map +1 -0
- package/dist/core/runtime/execution/providerOrchestration/providerOrchestrator.d.ts +37 -0
- package/dist/core/runtime/execution/providerOrchestration/providerOrchestrator.js +53 -0
- package/dist/core/runtime/execution/providerOrchestration/providerOrchestrator.js.map +1 -0
- package/dist/core/runtime/execution/providerOrchestration/providerRequestProjector.d.ts +15 -0
- package/dist/core/runtime/execution/providerOrchestration/providerRequestProjector.js +93 -0
- package/dist/core/runtime/execution/providerOrchestration/providerRequestProjector.js.map +1 -0
- package/dist/core/runtime/execution/providerOrchestration/providerSessionOrchestrator.d.ts +37 -0
- package/dist/core/runtime/execution/providerOrchestration/providerSessionOrchestrator.js +104 -0
- package/dist/core/runtime/execution/providerOrchestration/providerSessionOrchestrator.js.map +1 -0
- package/dist/core/runtime/execution/providerOrchestration/providerTurnBroker.d.ts +62 -0
- package/dist/core/runtime/execution/providerOrchestration/providerTurnBroker.js +349 -0
- package/dist/core/runtime/execution/providerOrchestration/providerTurnBroker.js.map +1 -0
- package/dist/core/runtime/execution/providerProjectionTypes.d.ts +25 -0
- package/dist/core/runtime/execution/providerProjectionTypes.js +18 -0
- package/dist/core/runtime/execution/providerProjectionTypes.js.map +1 -0
- package/dist/core/runtime/execution/providerSessionDirectory.d.ts +12 -0
- package/dist/core/runtime/execution/providerSessionDirectory.js +94 -0
- package/dist/core/runtime/execution/providerSessionDirectory.js.map +1 -0
- package/dist/core/runtime/execution/runtimeDomain.d.ts +116 -0
- package/dist/core/runtime/execution/runtimeDomain.js +262 -0
- package/dist/core/runtime/execution/runtimeDomain.js.map +1 -0
- package/dist/core/runtime/execution/runtimeIngestion.d.ts +17 -0
- package/dist/core/runtime/execution/runtimeIngestion.js +254 -0
- package/dist/core/runtime/execution/runtimeIngestion.js.map +1 -0
- package/dist/core/runtime/execution/runtimeInteractionService.d.ts +66 -0
- package/dist/core/runtime/execution/runtimeInteractionService.js +230 -0
- package/dist/core/runtime/execution/runtimeInteractionService.js.map +1 -0
- package/dist/core/runtime/execution/runtimeOrchestrationRequestService.d.ts +64 -0
- package/dist/core/runtime/execution/runtimeOrchestrationRequestService.js +366 -0
- package/dist/core/runtime/execution/runtimeOrchestrationRequestService.js.map +1 -0
- package/dist/core/runtime/execution/runtimeOrchestrationRequests.d.ts +111 -0
- package/dist/core/runtime/execution/runtimeOrchestrationRequests.js +464 -0
- package/dist/core/runtime/execution/runtimeOrchestrationRequests.js.map +1 -0
- package/dist/core/runtime/execution/runtimeOrchestrationResult.d.ts +4 -0
- package/dist/core/runtime/execution/runtimeOrchestrationResult.js +7 -0
- package/dist/core/runtime/execution/runtimeOrchestrationResult.js.map +1 -0
- package/dist/core/runtime/execution/runtimePendingRequestService.d.ts +69 -0
- package/dist/core/runtime/execution/runtimePendingRequestService.js +360 -0
- package/dist/core/runtime/execution/runtimePendingRequestService.js.map +1 -0
- package/dist/core/runtime/execution/runtimePluginContextService.d.ts +100 -0
- package/dist/core/runtime/execution/runtimePluginContextService.js +576 -0
- package/dist/core/runtime/execution/runtimePluginContextService.js.map +1 -0
- package/dist/core/runtime/execution/runtimeReceiptBus.d.ts +17 -0
- package/dist/core/runtime/execution/runtimeReceiptBus.js +50 -0
- package/dist/core/runtime/execution/runtimeReceiptBus.js.map +1 -0
- package/dist/core/runtime/execution/runtimeWorkerQueues.d.ts +33 -0
- package/dist/core/runtime/execution/runtimeWorkerQueues.js +55 -0
- package/dist/core/runtime/execution/runtimeWorkerQueues.js.map +1 -0
- package/dist/core/runtime/graph/runtimePaths.d.ts +2 -0
- package/dist/core/runtime/graph/runtimePaths.js +22 -0
- package/dist/core/runtime/graph/runtimePaths.js.map +1 -0
- package/dist/core/runtime/hosting/managedSpaceMetadata.d.ts +7 -0
- package/dist/core/runtime/hosting/managedSpaceMetadata.js +14 -0
- package/dist/core/runtime/hosting/managedSpaceMetadata.js.map +1 -0
- package/dist/core/runtime/hosting/runtimeHostingService.d.ts +32 -0
- package/dist/core/runtime/hosting/runtimeHostingService.js +123 -0
- package/dist/core/runtime/hosting/runtimeHostingService.js.map +1 -0
- package/dist/core/runtime/hosting/runtimeLayout.d.ts +5 -0
- package/dist/core/runtime/hosting/runtimeLayout.js +133 -0
- package/dist/core/runtime/hosting/runtimeLayout.js.map +1 -0
- package/dist/core/runtime/hosting/runtimeManagementPort.d.ts +60 -0
- package/dist/core/runtime/hosting/runtimeManagementPort.js +28 -0
- package/dist/core/runtime/hosting/runtimeManagementPort.js.map +1 -0
- package/dist/core/runtime/hosting/runtimeTransportSurfaceService.d.ts +20 -0
- package/dist/core/runtime/hosting/runtimeTransportSurfaceService.js +82 -0
- package/dist/core/runtime/hosting/runtimeTransportSurfaceService.js.map +1 -0
- package/dist/core/runtime/hosting/systemEmbeds.d.ts +22 -0
- package/dist/core/runtime/hosting/systemEmbeds.js +25 -0
- package/dist/core/runtime/hosting/systemEmbeds.js.map +1 -0
- package/dist/core/runtime/lifecycle/managedChannelLifecycleService.d.ts +37 -0
- package/dist/core/runtime/lifecycle/managedChannelLifecycleService.js +256 -0
- package/dist/core/runtime/lifecycle/managedChannelLifecycleService.js.map +1 -0
- package/dist/core/runtime/lifecycle/runtimeLifecycleService.d.ts +43 -0
- package/dist/core/runtime/lifecycle/runtimeLifecycleService.js +322 -0
- package/dist/core/runtime/lifecycle/runtimeLifecycleService.js.map +1 -0
- package/dist/core/runtime/moorlineRuntime.d.ts +100 -0
- package/dist/core/runtime/moorlineRuntime.js +573 -0
- package/dist/core/runtime/moorlineRuntime.js.map +1 -0
- package/dist/core/runtime/moorlineRuntimeBuilder.d.ts +180 -0
- package/dist/core/runtime/moorlineRuntimeBuilder.js +681 -0
- package/dist/core/runtime/moorlineRuntimeBuilder.js.map +1 -0
- package/dist/core/runtime/runtimeAudit.d.ts +7 -0
- package/dist/core/runtime/runtimeAudit.js +32 -0
- package/dist/core/runtime/runtimeAudit.js.map +1 -0
- package/dist/core/runtime/runtimeBootstrapRegistry.d.ts +5 -0
- package/dist/core/runtime/runtimeBootstrapRegistry.js +15 -0
- package/dist/core/runtime/runtimeBootstrapRegistry.js.map +1 -0
- package/dist/core/runtime/runtimeStatus.d.ts +14 -0
- package/dist/core/runtime/runtimeStatus.js +16 -0
- package/dist/core/runtime/runtimeStatus.js.map +1 -0
- package/dist/core/runtime/supervision/managedSidecar.d.ts +71 -0
- package/dist/core/runtime/supervision/managedSidecar.js +13 -0
- package/dist/core/runtime/supervision/managedSidecar.js.map +1 -0
- package/dist/core/runtime/supervision/runtimeControl.d.ts +45 -0
- package/dist/core/runtime/supervision/runtimeControl.js +2 -0
- package/dist/core/runtime/supervision/runtimeControl.js.map +1 -0
- package/dist/core/runtime/supervision/runtimeControlService.d.ts +56 -0
- package/dist/core/runtime/supervision/runtimeControlService.js +315 -0
- package/dist/core/runtime/supervision/runtimeControlService.js.map +1 -0
- package/dist/core/runtime/supervision/runtimeSupervisor.d.ts +106 -0
- package/dist/core/runtime/supervision/runtimeSupervisor.js +425 -0
- package/dist/core/runtime/supervision/runtimeSupervisor.js.map +1 -0
- package/dist/core/runtime/supervision/sidecarLaunchDefinition.d.ts +3 -0
- package/dist/core/runtime/supervision/sidecarLaunchDefinition.js +24 -0
- package/dist/core/runtime/supervision/sidecarLaunchDefinition.js.map +1 -0
- package/dist/core/runtime/supervision/sidecarManager.d.ts +40 -0
- package/dist/core/runtime/supervision/sidecarManager.js +409 -0
- package/dist/core/runtime/supervision/sidecarManager.js.map +1 -0
- package/dist/core/shared/fs/atomicWrite.d.ts +6 -0
- package/dist/core/shared/fs/atomicWrite.js +48 -0
- package/dist/core/shared/fs/atomicWrite.js.map +1 -0
- package/dist/core/shared/fs/canonicalPathContainment.d.ts +8 -0
- package/dist/core/shared/fs/canonicalPathContainment.js +31 -0
- package/dist/core/shared/fs/canonicalPathContainment.js.map +1 -0
- package/dist/core/shared/fs/runtimeOwnedPath.d.ts +6 -0
- package/dist/core/shared/fs/runtimeOwnedPath.js +23 -0
- package/dist/core/shared/fs/runtimeOwnedPath.js.map +1 -0
- package/dist/core/shared/utils/childProcessEnv.d.ts +4 -0
- package/dist/core/shared/utils/childProcessEnv.js +66 -0
- package/dist/core/shared/utils/childProcessEnv.js.map +1 -0
- package/dist/core/shared/utils/commandRunner.d.ts +18 -0
- package/dist/core/shared/utils/commandRunner.js +51 -0
- package/dist/core/shared/utils/commandRunner.js.map +1 -0
- package/dist/core/shared/utils/payloadRedaction.d.ts +13 -0
- package/dist/core/shared/utils/payloadRedaction.js +91 -0
- package/dist/core/shared/utils/payloadRedaction.js.map +1 -0
- package/dist/core/shared/utils/remoteNetworkPolicy.d.ts +11 -0
- package/dist/core/shared/utils/remoteNetworkPolicy.js +137 -0
- package/dist/core/shared/utils/remoteNetworkPolicy.js.map +1 -0
- package/dist/core/shared/utils/runtimeMessageUtils.d.ts +27 -0
- package/dist/core/shared/utils/runtimeMessageUtils.js +383 -0
- package/dist/core/shared/utils/runtimeMessageUtils.js.map +1 -0
- package/dist/core/system/audit/auditLogger.d.ts +15 -0
- package/dist/core/system/audit/auditLogger.js +22 -0
- package/dist/core/system/audit/auditLogger.js.map +1 -0
- package/dist/core/system/backup/runtimeBackupService.d.ts +28 -0
- package/dist/core/system/backup/runtimeBackupService.js +284 -0
- package/dist/core/system/backup/runtimeBackupService.js.map +1 -0
- package/dist/core/system/config/configStore.d.ts +38 -0
- package/dist/core/system/config/configStore.js +672 -0
- package/dist/core/system/config/configStore.js.map +1 -0
- package/dist/core/system/policy/actorRulePolicy.d.ts +13 -0
- package/dist/core/system/policy/actorRulePolicy.js +87 -0
- package/dist/core/system/policy/actorRulePolicy.js.map +1 -0
- package/dist/core/system/policy/networkPolicy.d.ts +6 -0
- package/dist/core/system/policy/networkPolicy.js +71 -0
- package/dist/core/system/policy/networkPolicy.js.map +1 -0
- package/dist/core/system/policy/policyEngine.d.ts +22 -0
- package/dist/core/system/policy/policyEngine.js +41 -0
- package/dist/core/system/policy/policyEngine.js.map +1 -0
- package/dist/core/system/policy/policyProfile.d.ts +16 -0
- package/dist/core/system/policy/policyProfile.js +78 -0
- package/dist/core/system/policy/policyProfile.js.map +1 -0
- package/dist/core/system/policy/runtimeActionGuard.d.ts +24 -0
- package/dist/core/system/policy/runtimeActionGuard.js +64 -0
- package/dist/core/system/policy/runtimeActionGuard.js.map +1 -0
- package/dist/core/system/projection/managementReadModel/auditEvents.d.ts +9 -0
- package/dist/core/system/projection/managementReadModel/auditEvents.js +61 -0
- package/dist/core/system/projection/managementReadModel/auditEvents.js.map +1 -0
- package/dist/core/system/projection/managementReadModel/deps.d.ts +35 -0
- package/dist/core/system/projection/managementReadModel/deps.js +2 -0
- package/dist/core/system/projection/managementReadModel/deps.js.map +1 -0
- package/dist/core/system/projection/managementReadModel/objects/serviceObjects.d.ts +3 -0
- package/dist/core/system/projection/managementReadModel/objects/serviceObjects.js +129 -0
- package/dist/core/system/projection/managementReadModel/objects/serviceObjects.js.map +1 -0
- package/dist/core/system/projection/managementReadModel/pluginDiskRecords.d.ts +10 -0
- package/dist/core/system/projection/managementReadModel/pluginDiskRecords.js +55 -0
- package/dist/core/system/projection/managementReadModel/pluginDiskRecords.js.map +1 -0
- package/dist/core/system/projection/managementReadModel/providerAlignment.d.ts +7 -0
- package/dist/core/system/projection/managementReadModel/providerAlignment.js +48 -0
- package/dist/core/system/projection/managementReadModel/providerAlignment.js.map +1 -0
- package/dist/core/system/projection/managementReadModel/text.d.ts +1 -0
- package/dist/core/system/projection/managementReadModel/text.js +8 -0
- package/dist/core/system/projection/managementReadModel/text.js.map +1 -0
- package/dist/core/system/projection/managementReadModelService.d.ts +18 -0
- package/dist/core/system/projection/managementReadModelService.js +768 -0
- package/dist/core/system/projection/managementReadModelService.js.map +1 -0
- package/dist/core/system/projection/pendingRequestProjectionStore.d.ts +12 -0
- package/dist/core/system/projection/pendingRequestProjectionStore.js +113 -0
- package/dist/core/system/projection/pendingRequestProjectionStore.js.map +1 -0
- package/dist/core/system/projection/pendingRequestQuestions.d.ts +2 -0
- package/dist/core/system/projection/pendingRequestQuestions.js +51 -0
- package/dist/core/system/projection/pendingRequestQuestions.js.map +1 -0
- package/dist/core/system/projection/projectionStateStore.d.ts +17 -0
- package/dist/core/system/projection/projectionStateStore.js +60 -0
- package/dist/core/system/projection/projectionStateStore.js.map +1 -0
- package/dist/core/system/projection/runtimeActivityStore.d.ts +24 -0
- package/dist/core/system/projection/runtimeActivityStore.js +150 -0
- package/dist/core/system/projection/runtimeActivityStore.js.map +1 -0
- package/dist/core/system/projection/runtimeProjectionService.d.ts +41 -0
- package/dist/core/system/projection/runtimeProjectionService.js +209 -0
- package/dist/core/system/projection/runtimeProjectionService.js.map +1 -0
- package/dist/core/system/projection/runtimeReceiptStore.d.ts +11 -0
- package/dist/core/system/projection/runtimeReceiptStore.js +77 -0
- package/dist/core/system/projection/runtimeReceiptStore.js.map +1 -0
- package/dist/core/system/projection/runtimeReconciler.d.ts +25 -0
- package/dist/core/system/projection/runtimeReconciler.js +83 -0
- package/dist/core/system/projection/runtimeReconciler.js.map +1 -0
- package/dist/core/system/projection/runtimeSnapshotQuery.d.ts +46 -0
- package/dist/core/system/projection/runtimeSnapshotQuery.js +135 -0
- package/dist/core/system/projection/runtimeSnapshotQuery.js.map +1 -0
- package/dist/core/system/release/releaseArtifacts.d.ts +7 -0
- package/dist/core/system/release/releaseArtifacts.js +88 -0
- package/dist/core/system/release/releaseArtifacts.js.map +1 -0
- package/dist/core/system/release/runtimePackageLoadReport.d.ts +10 -0
- package/dist/core/system/release/runtimePackageLoadReport.js +31 -0
- package/dist/core/system/release/runtimePackageLoadReport.js.map +1 -0
- package/dist/core/system/state/canonicalEventLogStore.d.ts +16 -0
- package/dist/core/system/state/canonicalEventLogStore.js +156 -0
- package/dist/core/system/state/canonicalEventLogStore.js.map +1 -0
- package/dist/core/system/state/migrationRunner.d.ts +5 -0
- package/dist/core/system/state/migrationRunner.js +58 -0
- package/dist/core/system/state/migrationRunner.js.map +1 -0
- package/dist/core/system/state/safeJson.d.ts +8 -0
- package/dist/core/system/state/safeJson.js +36 -0
- package/dist/core/system/state/safeJson.js.map +1 -0
- package/dist/core/system/state/sqlite/connection.d.ts +2 -0
- package/dist/core/system/state/sqlite/connection.js +8 -0
- package/dist/core/system/state/sqlite/connection.js.map +1 -0
- package/dist/core/system/state/sqlite/domainEventLogRepository.d.ts +10 -0
- package/dist/core/system/state/sqlite/domainEventLogRepository.js +69 -0
- package/dist/core/system/state/sqlite/domainEventLogRepository.js.map +1 -0
- package/dist/core/system/state/sqlite/eventIntegrity.d.ts +6 -0
- package/dist/core/system/state/sqlite/eventIntegrity.js +7 -0
- package/dist/core/system/state/sqlite/eventIntegrity.js.map +1 -0
- package/dist/core/system/state/sqlite/managedSidecarRepository.d.ts +10 -0
- package/dist/core/system/state/sqlite/managedSidecarRepository.js +62 -0
- package/dist/core/system/state/sqlite/managedSidecarRepository.js.map +1 -0
- package/dist/core/system/state/sqlite/missionRepository.d.ts +24 -0
- package/dist/core/system/state/sqlite/missionRepository.js +252 -0
- package/dist/core/system/state/sqlite/missionRepository.js.map +1 -0
- package/dist/core/system/state/sqlite/orchestrationRepository.d.ts +20 -0
- package/dist/core/system/state/sqlite/orchestrationRepository.js +158 -0
- package/dist/core/system/state/sqlite/orchestrationRepository.js.map +1 -0
- package/dist/core/system/state/sqlite/pendingRequestRepository.d.ts +13 -0
- package/dist/core/system/state/sqlite/pendingRequestRepository.js +76 -0
- package/dist/core/system/state/sqlite/pendingRequestRepository.js.map +1 -0
- package/dist/core/system/state/sqlite/providerBindingRepository.d.ts +10 -0
- package/dist/core/system/state/sqlite/providerBindingRepository.js +58 -0
- package/dist/core/system/state/sqlite/providerBindingRepository.js.map +1 -0
- package/dist/core/system/state/sqlite/providerEventLogRepository.d.ts +10 -0
- package/dist/core/system/state/sqlite/providerEventLogRepository.js +77 -0
- package/dist/core/system/state/sqlite/providerEventLogRepository.js.map +1 -0
- package/dist/core/system/state/sqlite/rowMappers.d.ts +2 -0
- package/dist/core/system/state/sqlite/rowMappers.js +7 -0
- package/dist/core/system/state/sqlite/rowMappers.js.map +1 -0
- package/dist/core/system/state/sqlite/runtimeHistoryPruningRepository.d.ts +23 -0
- package/dist/core/system/state/sqlite/runtimeHistoryPruningRepository.js +82 -0
- package/dist/core/system/state/sqlite/runtimeHistoryPruningRepository.js.map +1 -0
- package/dist/core/system/state/sqlite/runtimeReceiptRepository.d.ts +9 -0
- package/dist/core/system/state/sqlite/runtimeReceiptRepository.js +47 -0
- package/dist/core/system/state/sqlite/runtimeReceiptRepository.js.map +1 -0
- package/dist/core/system/state/sqlite/sessionMetadataRepository.d.ts +7 -0
- package/dist/core/system/state/sqlite/sessionMetadataRepository.js +25 -0
- package/dist/core/system/state/sqlite/sessionMetadataRepository.js.map +1 -0
- package/dist/core/system/state/sqlite/sessionRepository.d.ts +12 -0
- package/dist/core/system/state/sqlite/sessionRepository.js +72 -0
- package/dist/core/system/state/sqlite/sessionRepository.js.map +1 -0
- package/dist/core/system/state/sqlite/types.d.ts +140 -0
- package/dist/core/system/state/sqlite/types.js +113 -0
- package/dist/core/system/state/sqlite/types.js.map +1 -0
- package/dist/core/system/state/sqliteSessionStore.d.ts +86 -0
- package/dist/core/system/state/sqliteSessionStore.js +210 -0
- package/dist/core/system/state/sqliteSessionStore.js.map +1 -0
- package/dist/core/system/state/sqliteSupport.d.ts +4 -0
- package/dist/core/system/state/sqliteSupport.js +32 -0
- package/dist/core/system/state/sqliteSupport.js.map +1 -0
- package/dist/core/system/vcs/gitCheckpointService.d.ts +11 -0
- package/dist/core/system/vcs/gitCheckpointService.js +32 -0
- package/dist/core/system/vcs/gitCheckpointService.js.map +1 -0
- package/dist/core/system/vcs/gitCommitParser.d.ts +3 -0
- package/dist/core/system/vcs/gitCommitParser.js +55 -0
- package/dist/core/system/vcs/gitCommitParser.js.map +1 -0
- package/dist/core/system/vcs/gitDiffFormatter.d.ts +1 -0
- package/dist/core/system/vcs/gitDiffFormatter.js +4 -0
- package/dist/core/system/vcs/gitDiffFormatter.js.map +1 -0
- package/dist/core/system/vcs/gitHistoryService.d.ts +46 -0
- package/dist/core/system/vcs/gitHistoryService.js +277 -0
- package/dist/core/system/vcs/gitHistoryService.js.map +1 -0
- package/dist/core/system/vcs/gitIgnoreTemplate.d.ts +1 -0
- package/dist/core/system/vcs/gitIgnoreTemplate.js +12 -0
- package/dist/core/system/vcs/gitIgnoreTemplate.js.map +1 -0
- package/dist/core/system/vcs/gitRepoStore.d.ts +12 -0
- package/dist/core/system/vcs/gitRepoStore.js +46 -0
- package/dist/core/system/vcs/gitRepoStore.js.map +1 -0
- package/dist/core/system/vcs/gitTrackedPaths.d.ts +6 -0
- package/dist/core/system/vcs/gitTrackedPaths.js +80 -0
- package/dist/core/system/vcs/gitTrackedPaths.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -0
- package/dist/types/app.d.ts +444 -0
- package/dist/types/app.js +2 -0
- package/dist/types/app.js.map +1 -0
- package/dist/types/config.d.ts +188 -0
- package/dist/types/config.js +422 -0
- package/dist/types/config.js.map +1 -0
- package/dist/types/distro.d.ts +1 -0
- package/dist/types/distro.js +2 -0
- package/dist/types/distro.js.map +1 -0
- package/dist/types/history.d.ts +43 -0
- package/dist/types/history.js +2 -0
- package/dist/types/history.js.map +1 -0
- package/dist/types/package.d.ts +61 -0
- package/dist/types/package.js +2 -0
- package/dist/types/package.js.map +1 -0
- package/dist/types/plugin.d.ts +1 -0
- package/dist/types/plugin.js +2 -0
- package/dist/types/plugin.js.map +1 -0
- package/dist/types/provider.d.ts +2 -0
- package/dist/types/provider.js +2 -0
- package/dist/types/provider.js.map +1 -0
- package/dist/types/release.d.ts +24 -0
- package/dist/types/release.js +2 -0
- package/dist/types/release.js.map +1 -0
- package/dist/types/runtime.d.ts +2 -0
- package/dist/types/runtime.js +2 -0
- package/dist/types/runtime.js.map +1 -0
- package/dist/types/skill.d.ts +1 -0
- package/dist/types/skill.js +2 -0
- package/dist/types/skill.js.map +1 -0
- package/dist/types/transport.d.ts +2 -0
- package/dist/types/transport.js +2 -0
- package/dist/types/transport.js.map +1 -0
- package/package.json +62 -0
- package/resources/migrations/001_sessions.sql +59 -0
- package/resources/migrations/002_pending_request_metadata.sql +2 -0
- package/resources/migrations/003_provider_projections.sql +38 -0
- package/resources/migrations/004_runtime_projection_state.sql +22 -0
- package/resources/migrations/005_runtime_robustness.sql +3 -0
- package/resources/migrations/006_provider_autostart.sql +1 -0
- package/resources/migrations/007_missions.sql +41 -0
- package/resources/migrations/008_mission_schedule_anchor.sql +5 -0
- package/resources/migrations/009_session_orchestration.sql +26 -0
- package/resources/migrations/010_mission_archival.sql +1 -0
- package/resources/migrations/011_managed_sidecars.sql +29 -0
- package/resources/migrations/012_scope_space_terminology.sql +19 -0
- package/resources/migrations/013_orchestration_dedupe.sql +5 -0
- package/resources/migrations/014_orchestration_execution_claims.sql +13 -0
- package/resources/migrations/015_mission_schedule_meta.sql +9 -0
- package/resources/migrations/016_mission_hook_bindings.sql +16 -0
- package/resources/migrations/017_domain_event_provenance.sql +1 -0
- package/resources/migrations/018_provider_event_processing.sql +8 -0
- package/resources/official-catalog.json +444 -0
- package/resources/policies/default-secure.json +160 -0
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
export function packageKey(ref) {
|
|
2
|
+
return `${ref.surface}:${ref.packageId}`;
|
|
3
|
+
}
|
|
4
|
+
export function samePackageRef(left, right) {
|
|
5
|
+
return left.surface === right.surface && left.packageId === right.packageId;
|
|
6
|
+
}
|
|
7
|
+
export function sortPackageRefs(refs) {
|
|
8
|
+
return [...refs].sort((left, right) => packageKey(left).localeCompare(packageKey(right)));
|
|
9
|
+
}
|
|
10
|
+
export function uniquePackageRefs(refs) {
|
|
11
|
+
const seen = new Set();
|
|
12
|
+
const unique = [];
|
|
13
|
+
for (const ref of refs) {
|
|
14
|
+
const key = packageKey(ref);
|
|
15
|
+
if (seen.has(key)) {
|
|
16
|
+
continue;
|
|
17
|
+
}
|
|
18
|
+
seen.add(key);
|
|
19
|
+
unique.push({ surface: ref.surface, packageId: ref.packageId });
|
|
20
|
+
}
|
|
21
|
+
return sortPackageRefs(unique);
|
|
22
|
+
}
|
|
23
|
+
export function activatedPackageRefsFromLegacyState(input) {
|
|
24
|
+
return uniquePackageRefs([
|
|
25
|
+
...(input.apiAdapterActivePackageId ? [{ surface: 'api-adapter', packageId: input.apiAdapterActivePackageId }] : []),
|
|
26
|
+
...(input.transportActivePackageId ? [{ surface: 'transport', packageId: input.transportActivePackageId }] : []),
|
|
27
|
+
...(input.providerActivePackageId ? [{ surface: 'provider', packageId: input.providerActivePackageId }] : []),
|
|
28
|
+
...(input.enabledPluginPackageIds ?? []).map((packageId) => ({ surface: 'plugin', packageId })),
|
|
29
|
+
...(input.enabledSkillPackageIds ?? []).map((packageId) => ({ surface: 'skill', packageId }))
|
|
30
|
+
]);
|
|
31
|
+
}
|
|
32
|
+
export function desiredPackageRefsFromConfig(config) {
|
|
33
|
+
return activatedPackageRefsFromLegacyState({
|
|
34
|
+
transportActivePackageId: config.surfaces.transport.activePackageId,
|
|
35
|
+
providerActivePackageId: config.surfaces.provider.activePackageId,
|
|
36
|
+
apiAdapterActivePackageId: config.surfaces.apiAdapter.activePackageId,
|
|
37
|
+
enabledPluginPackageIds: config.surfaces.plugins.enabledPackageIds,
|
|
38
|
+
enabledSkillPackageIds: config.surfaces.skills.enabledPackageIds
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
export function appliedPackageRefs(state) {
|
|
42
|
+
if (state.activated && state.activated.length > 0) {
|
|
43
|
+
return uniquePackageRefs(state.activated);
|
|
44
|
+
}
|
|
45
|
+
return activatedPackageRefsFromLegacyState({
|
|
46
|
+
transportActivePackageId: state.transportActivePackageId,
|
|
47
|
+
providerActivePackageId: state.providerActivePackageId,
|
|
48
|
+
enabledPluginPackageIds: state.enabledPluginPackageIds,
|
|
49
|
+
enabledSkillPackageIds: state.enabledSkillPackageIds
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
export function isPackageActivated(refs, ref) {
|
|
53
|
+
return refs.some((entry) => samePackageRef(entry, ref));
|
|
54
|
+
}
|
|
55
|
+
export function isBuiltInActivatedPackage(ref) {
|
|
56
|
+
return ref.surface === 'api-adapter' && ref.packageId === 'official/http';
|
|
57
|
+
}
|
|
58
|
+
export function packageActivationUniqueKey(surface, record) {
|
|
59
|
+
if (record?.activation?.uniqueKey) {
|
|
60
|
+
return record.activation.uniqueKey;
|
|
61
|
+
}
|
|
62
|
+
const targetSurface = record?.surface ?? surface;
|
|
63
|
+
if (targetSurface === 'api-adapter' || targetSurface === 'transport' || targetSurface === 'provider') {
|
|
64
|
+
return targetSurface;
|
|
65
|
+
}
|
|
66
|
+
return null;
|
|
67
|
+
}
|
|
68
|
+
export function activatedPackageForUniqueKey(refs, uniqueKey) {
|
|
69
|
+
return refs.find((ref) => packageActivationUniqueKey(ref.surface) === uniqueKey) ?? null;
|
|
70
|
+
}
|
|
71
|
+
export function activatePackageRef(refs, ref) {
|
|
72
|
+
const uniqueKey = packageActivationUniqueKey(ref.surface);
|
|
73
|
+
const filtered = uniqueKey
|
|
74
|
+
? refs.filter((entry) => packageActivationUniqueKey(entry.surface) !== uniqueKey)
|
|
75
|
+
: refs;
|
|
76
|
+
return uniquePackageRefs([...filtered, ref]);
|
|
77
|
+
}
|
|
78
|
+
export function deactivatePackageRef(refs, ref) {
|
|
79
|
+
return uniquePackageRefs(refs.filter((entry) => !samePackageRef(entry, ref)));
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=packageActivation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"packageActivation.js","sourceRoot":"","sources":["../../../../../../../src/core/extension/packages/packageActivation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { MoorlineConfig } from '../../../types/config.js';
|
|
2
|
+
import type { PackageApplyPlan } from '../../../types/package.js';
|
|
3
|
+
import type { PackageInventoryState } from './packageInventoryStore.js';
|
|
4
|
+
export declare function createPackageApplyPlan(config: MoorlineConfig, inventory: PackageInventoryState): PackageApplyPlan;
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { buildAppliedSurfaceConfigs } from '../../system/config/configStore.js';
|
|
2
|
+
import { desiredPackageRefsFromConfig, sortPackageRefs, appliedPackageRefs, isPackageActivated, isBuiltInActivatedPackage } from './packageActivation.js';
|
|
3
|
+
import { resolvePackageDependencyErrors } from './packageDependencyResolver.js';
|
|
4
|
+
function desiredPackageStateFromConfig(config) {
|
|
5
|
+
return {
|
|
6
|
+
activated: desiredPackageRefsFromConfig(config)
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
function canonicalize(value) {
|
|
10
|
+
if (Array.isArray(value)) {
|
|
11
|
+
return value.map((entry) => canonicalize(entry));
|
|
12
|
+
}
|
|
13
|
+
if (value && typeof value === 'object') {
|
|
14
|
+
return Object.fromEntries(Object.entries(value)
|
|
15
|
+
.sort(([left], [right]) => left.localeCompare(right))
|
|
16
|
+
.map(([key, entry]) => [key, canonicalize(entry)]));
|
|
17
|
+
}
|
|
18
|
+
return value;
|
|
19
|
+
}
|
|
20
|
+
function sameConfig(left, right) {
|
|
21
|
+
return JSON.stringify(canonicalize(left ?? null)) === JSON.stringify(canonicalize(right ?? null));
|
|
22
|
+
}
|
|
23
|
+
export function createPackageApplyPlan(config, inventory) {
|
|
24
|
+
const desired = desiredPackageStateFromConfig(config);
|
|
25
|
+
const applied = { activated: appliedPackageRefs(inventory.applied) };
|
|
26
|
+
const installedBySurface = {
|
|
27
|
+
'api-adapter': new Set(inventory.installed.filter((entry) => entry.kind === 'api-adapter').map((entry) => entry.packageId)),
|
|
28
|
+
transport: new Set(inventory.installed.filter((entry) => entry.kind === 'transport').map((entry) => entry.packageId)),
|
|
29
|
+
provider: new Set(inventory.installed.filter((entry) => entry.kind === 'provider').map((entry) => entry.packageId)),
|
|
30
|
+
plugin: new Set(inventory.installed.filter((entry) => entry.kind === 'plugin').map((entry) => entry.packageId)),
|
|
31
|
+
skill: new Set(inventory.installed.filter((entry) => entry.kind === 'skill').map((entry) => entry.packageId))
|
|
32
|
+
};
|
|
33
|
+
const errors = resolvePackageDependencyErrors({
|
|
34
|
+
installed: inventory.installed,
|
|
35
|
+
desired,
|
|
36
|
+
applied
|
|
37
|
+
});
|
|
38
|
+
for (const ref of desired.activated) {
|
|
39
|
+
if (isBuiltInActivatedPackage(ref)) {
|
|
40
|
+
continue;
|
|
41
|
+
}
|
|
42
|
+
if (!installedBySurface[ref.surface].has(ref.packageId)) {
|
|
43
|
+
errors.push({
|
|
44
|
+
code: 'unknown_package',
|
|
45
|
+
kind: ref.surface,
|
|
46
|
+
surface: ref.surface,
|
|
47
|
+
packageId: ref.packageId,
|
|
48
|
+
detail: `Activated ${ref.surface} package ${ref.packageId} is not installed.`
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
const actions = [];
|
|
53
|
+
for (const ref of sortPackageRefs(desired.activated)) {
|
|
54
|
+
if (!isPackageActivated(applied.activated, ref)) {
|
|
55
|
+
actions.push(`Activate ${ref.surface} package ${ref.packageId}`);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
for (const ref of sortPackageRefs(applied.activated)) {
|
|
59
|
+
if (!isPackageActivated(desired.activated, ref)) {
|
|
60
|
+
actions.push(`Deactivate ${ref.surface} package ${ref.packageId}`);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
const desiredAppliedConfig = buildAppliedSurfaceConfigs(config);
|
|
64
|
+
if (config.surfaces.transport.activePackageId && config.transport && desiredAppliedConfig.transport && !sameConfig(desiredAppliedConfig.transport, config.transport)) {
|
|
65
|
+
actions.push('Update transport configuration');
|
|
66
|
+
}
|
|
67
|
+
if (config.surfaces.provider.activePackageId && config.provider && desiredAppliedConfig.provider && !sameConfig(desiredAppliedConfig.provider, config.provider)) {
|
|
68
|
+
actions.push('Update provider configuration');
|
|
69
|
+
}
|
|
70
|
+
return {
|
|
71
|
+
desired,
|
|
72
|
+
applied,
|
|
73
|
+
pending: actions.length > 0,
|
|
74
|
+
actions,
|
|
75
|
+
reloadLevel: actions.length === 0 ? 'none' : 'runtime_reload',
|
|
76
|
+
errors
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=packageApplyPlanner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"packageApplyPlanner.js","sourceRoot":"","sources":["../../../../../../../src/core/extension/packages/packageApplyPlanner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function findBundleRoot(rootDir: string): string;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { existsSync, readdirSync, statSync } from 'node:fs';
|
|
2
|
+
import { join } from 'node:path';
|
|
3
|
+
export function findBundleRoot(rootDir) {
|
|
4
|
+
const stack = [rootDir];
|
|
5
|
+
const matches = [];
|
|
6
|
+
while (stack.length > 0) {
|
|
7
|
+
const current = stack.pop();
|
|
8
|
+
if (!current) {
|
|
9
|
+
continue;
|
|
10
|
+
}
|
|
11
|
+
const stat = statSync(current, { throwIfNoEntry: false });
|
|
12
|
+
if (!stat?.isDirectory()) {
|
|
13
|
+
continue;
|
|
14
|
+
}
|
|
15
|
+
if (existsSync(join(current, 'manifest.json'))) {
|
|
16
|
+
matches.push(current);
|
|
17
|
+
continue;
|
|
18
|
+
}
|
|
19
|
+
for (const entry of readdirSync(current, { withFileTypes: true })) {
|
|
20
|
+
if (!entry.isDirectory()) {
|
|
21
|
+
continue;
|
|
22
|
+
}
|
|
23
|
+
if (entry.name === 'node_modules' || entry.name === '.git') {
|
|
24
|
+
continue;
|
|
25
|
+
}
|
|
26
|
+
stack.push(join(current, entry.name));
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
if (matches.length !== 1) {
|
|
30
|
+
throw new Error(`Expected exactly one Moorline bundle root in ${rootDir}, found ${matches.length}`);
|
|
31
|
+
}
|
|
32
|
+
return matches[0];
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=packageBundleRoot.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"packageBundleRoot.js","sourceRoot":"","sources":["../../../../../../../src/core/extension/packages/packageBundleRoot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC5D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,UAAU,cAAc,CAAC,OAAe;IAC5C,MAAM,KAAK,GAAG,CAAC,OAAO,CAAC,CAAC;IACxB,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,SAAS;QACX,CAAC;QACD,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1D,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,CAAC;YACzB,SAAS;QACX,CAAC;QACD,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,EAAE,CAAC;YAC/C,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACtB,SAAS;QACX,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;YAClE,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACzB,SAAS;YACX,CAAC;YACD,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAC3D,SAAS;YACX,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,gDAAgD,OAAO,WAAW,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACtG,CAAC;IACD,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type JsonSchemaLike, type PackageSurface } from '../../../types/package.js';
|
|
2
|
+
export declare function resolvePackageConfigSchema(input: {
|
|
3
|
+
runtimeRoot: string;
|
|
4
|
+
surface: PackageSurface;
|
|
5
|
+
packageId: string | null | undefined;
|
|
6
|
+
}): JsonSchemaLike | undefined;
|
|
7
|
+
export declare function secretConfigKeys(schema: JsonSchemaLike | undefined): string[];
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { existsSync, readFileSync } from 'node:fs';
|
|
2
|
+
import { isAbsolute, relative, resolve } from 'node:path';
|
|
3
|
+
import { validatePackageId } from '../../../types/package.js';
|
|
4
|
+
import { assertCanonicalExistingPathWithinRoot } from '../../shared/fs/canonicalPathContainment.js';
|
|
5
|
+
import { resolveBundledMoorlineAssetRoot } from '../../system/release/releaseArtifacts.js';
|
|
6
|
+
function surfaceDir(surface) {
|
|
7
|
+
return surface === 'api-adapter' ? 'api-adapters' : `${surface}s`;
|
|
8
|
+
}
|
|
9
|
+
function manifestPathFromPackageId(root, surface, packageId, label) {
|
|
10
|
+
const validatedPackageId = validatePackageId(packageId, label);
|
|
11
|
+
const resolvedRoot = resolve(root);
|
|
12
|
+
const candidate = resolve(resolvedRoot, 'packages', surfaceDir(surface), ...validatedPackageId.split('/'), 'manifest.json');
|
|
13
|
+
const rel = relative(resolvedRoot, candidate);
|
|
14
|
+
if (rel.startsWith('..') || isAbsolute(rel)) {
|
|
15
|
+
throw new Error(`${label} resolved outside the ${surface} root.`);
|
|
16
|
+
}
|
|
17
|
+
return candidate;
|
|
18
|
+
}
|
|
19
|
+
function readSchemaFromManifest(path, root) {
|
|
20
|
+
if (!existsSync(path)) {
|
|
21
|
+
return undefined;
|
|
22
|
+
}
|
|
23
|
+
assertCanonicalExistingPathWithinRoot({
|
|
24
|
+
rootPath: root,
|
|
25
|
+
candidatePath: path,
|
|
26
|
+
rootLabel: `${root} root`,
|
|
27
|
+
candidateLabel: `manifest path ${path}`
|
|
28
|
+
});
|
|
29
|
+
const parsed = JSON.parse(readFileSync(path, 'utf8'));
|
|
30
|
+
return parsed.configSchema;
|
|
31
|
+
}
|
|
32
|
+
function builtinPackageConfigSchema(surface, packageId) {
|
|
33
|
+
if (surface !== 'api-adapter' || packageId !== 'official/http') {
|
|
34
|
+
return undefined;
|
|
35
|
+
}
|
|
36
|
+
return {
|
|
37
|
+
type: 'object',
|
|
38
|
+
properties: {
|
|
39
|
+
host: {
|
|
40
|
+
type: 'string',
|
|
41
|
+
title: 'Host',
|
|
42
|
+
description: 'HTTP bind host.',
|
|
43
|
+
default: '127.0.0.1'
|
|
44
|
+
},
|
|
45
|
+
port: {
|
|
46
|
+
type: 'number',
|
|
47
|
+
title: 'Port',
|
|
48
|
+
description: 'HTTP bind port.',
|
|
49
|
+
default: 45173
|
|
50
|
+
},
|
|
51
|
+
exposure: {
|
|
52
|
+
type: 'string',
|
|
53
|
+
title: 'Exposure',
|
|
54
|
+
description: 'Use loopback by default; remote is intended for reverse-proxy deployments.',
|
|
55
|
+
default: 'loopback',
|
|
56
|
+
enum: ['loopback', 'remote']
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
export function resolvePackageConfigSchema(input) {
|
|
62
|
+
if (!input.packageId) {
|
|
63
|
+
return undefined;
|
|
64
|
+
}
|
|
65
|
+
const installedManifest = manifestPathFromPackageId(input.runtimeRoot, input.surface, input.packageId, `package id for ${input.surface} schema lookup`);
|
|
66
|
+
const installed = readSchemaFromManifest(installedManifest, input.runtimeRoot);
|
|
67
|
+
if (installed) {
|
|
68
|
+
return installed;
|
|
69
|
+
}
|
|
70
|
+
const builtin = builtinPackageConfigSchema(input.surface, input.packageId);
|
|
71
|
+
if (builtin) {
|
|
72
|
+
return builtin;
|
|
73
|
+
}
|
|
74
|
+
const assetRoot = resolveBundledMoorlineAssetRoot(import.meta.url);
|
|
75
|
+
return readSchemaFromManifest(manifestPathFromPackageId(assetRoot, input.surface, input.packageId, `package id for bundled ${input.surface} schema lookup`), assetRoot);
|
|
76
|
+
}
|
|
77
|
+
export function secretConfigKeys(schema) {
|
|
78
|
+
if (!schema?.properties) {
|
|
79
|
+
return [];
|
|
80
|
+
}
|
|
81
|
+
return Object.entries(schema.properties)
|
|
82
|
+
.filter(([, entry]) => entry.secret === true)
|
|
83
|
+
.map(([key]) => key)
|
|
84
|
+
.sort();
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=packageConfigSchema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"packageConfigSchema.js","sourceRoot":"","sources":["../../../../../../../src/core/extension/packages/packageConfigSchema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { PackageAppliedState, PackageDesiredState, PackageInstallRecord, PackageKind, PackageResolutionError, PackageSurface } from '../../../types/package.js';
|
|
2
|
+
interface DependentPackageRecord {
|
|
3
|
+
surface: PackageSurface;
|
|
4
|
+
packageId: string;
|
|
5
|
+
}
|
|
6
|
+
export declare function resolvePackageDependencyErrors(input: {
|
|
7
|
+
installed: PackageInstallRecord[];
|
|
8
|
+
desired: PackageDesiredState;
|
|
9
|
+
applied?: PackageAppliedState;
|
|
10
|
+
}): PackageResolutionError[];
|
|
11
|
+
export declare function findDependentRecords(installed: PackageInstallRecord[], surface: PackageKind, packageId: string): DependentPackageRecord[];
|
|
12
|
+
export declare function findDependents(installed: PackageInstallRecord[], surface: PackageKind, packageId: string): string[];
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import { appliedPackageRefs, isBuiltInActivatedPackage, isPackageActivated } from './packageActivation.js';
|
|
2
|
+
function dependencyNodeId(surface, packageId) {
|
|
3
|
+
return `${surface}:${packageId}`;
|
|
4
|
+
}
|
|
5
|
+
function recordKind(entry) {
|
|
6
|
+
return entry.kind ?? entry.surface;
|
|
7
|
+
}
|
|
8
|
+
function dependenciesFor(entry) {
|
|
9
|
+
return Array.isArray(entry.dependencies) ? entry.dependencies : [];
|
|
10
|
+
}
|
|
11
|
+
export function resolvePackageDependencyErrors(input) {
|
|
12
|
+
const installedByKey = new Map(input.installed
|
|
13
|
+
.filter((entry) => recordKind(entry) !== 'bundle')
|
|
14
|
+
.map((entry) => [dependencyNodeId(recordKind(entry), entry.packageId), entry]));
|
|
15
|
+
const errors = [];
|
|
16
|
+
const activated = appliedPackageRefs(input.desired);
|
|
17
|
+
for (const ref of activated) {
|
|
18
|
+
if (isBuiltInActivatedPackage(ref)) {
|
|
19
|
+
installedByKey.set(dependencyNodeId(ref.surface, ref.packageId), {
|
|
20
|
+
family: 'installable',
|
|
21
|
+
kind: ref.surface,
|
|
22
|
+
surface: ref.surface,
|
|
23
|
+
packageId: ref.packageId,
|
|
24
|
+
name: ref.packageId,
|
|
25
|
+
version: 'builtin',
|
|
26
|
+
installedAt: '',
|
|
27
|
+
installPath: '',
|
|
28
|
+
source: { kind: 'local_dir', path: '' },
|
|
29
|
+
manifestPath: '',
|
|
30
|
+
manifestHash: 'builtin',
|
|
31
|
+
dependencies: []
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
for (const entry of input.installed) {
|
|
36
|
+
const kind = recordKind(entry);
|
|
37
|
+
if (kind === 'bundle') {
|
|
38
|
+
continue;
|
|
39
|
+
}
|
|
40
|
+
const isRelevant = isPackageActivated(activated, { surface: kind, packageId: entry.packageId });
|
|
41
|
+
if (!isRelevant) {
|
|
42
|
+
continue;
|
|
43
|
+
}
|
|
44
|
+
for (const dependency of dependenciesFor(entry)) {
|
|
45
|
+
const dependent = installedByKey.get(dependencyNodeId(dependency.surface, dependency.packageId));
|
|
46
|
+
if (!dependent) {
|
|
47
|
+
errors.push({
|
|
48
|
+
code: 'missing_dependency',
|
|
49
|
+
kind: kind,
|
|
50
|
+
surface: kind,
|
|
51
|
+
packageId: entry.packageId,
|
|
52
|
+
detail: `${entry.packageId} requires ${dependency.surface} package ${dependency.packageId} to be installed.`,
|
|
53
|
+
dependency
|
|
54
|
+
});
|
|
55
|
+
continue;
|
|
56
|
+
}
|
|
57
|
+
if (dependency.requiredState === 'active') {
|
|
58
|
+
if (!isPackageActivated(activated, dependency)) {
|
|
59
|
+
errors.push({
|
|
60
|
+
code: 'inactive_dependency',
|
|
61
|
+
kind: kind,
|
|
62
|
+
surface: kind,
|
|
63
|
+
packageId: entry.packageId,
|
|
64
|
+
detail: `${entry.packageId} requires active ${dependency.surface} package ${dependency.packageId}.`,
|
|
65
|
+
dependency
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
const adjacency = new Map();
|
|
72
|
+
for (const entry of input.installed) {
|
|
73
|
+
const kind = recordKind(entry);
|
|
74
|
+
if (kind === 'bundle') {
|
|
75
|
+
continue;
|
|
76
|
+
}
|
|
77
|
+
adjacency.set(dependencyNodeId(kind, entry.packageId), dependenciesFor(entry).map((dependency) => dependencyNodeId(dependency.surface, dependency.packageId)));
|
|
78
|
+
}
|
|
79
|
+
const visiting = new Set();
|
|
80
|
+
const visited = new Set();
|
|
81
|
+
const path = [];
|
|
82
|
+
const visit = (node) => {
|
|
83
|
+
if (visiting.has(node)) {
|
|
84
|
+
const cycleStart = path.indexOf(node);
|
|
85
|
+
const cycle = cycleStart === -1 ? [...path, node] : [...path.slice(cycleStart), node];
|
|
86
|
+
const [surface, packageId] = node.split(':');
|
|
87
|
+
errors.push({
|
|
88
|
+
code: 'dependency_cycle',
|
|
89
|
+
kind: surface,
|
|
90
|
+
surface: surface,
|
|
91
|
+
packageId,
|
|
92
|
+
detail: `Dependency cycle detected: ${cycle.join(' -> ')}`
|
|
93
|
+
});
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
if (visited.has(node)) {
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
visiting.add(node);
|
|
100
|
+
path.push(node);
|
|
101
|
+
for (const next of adjacency.get(node) ?? []) {
|
|
102
|
+
if (adjacency.has(next)) {
|
|
103
|
+
visit(next);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
path.pop();
|
|
107
|
+
visiting.delete(node);
|
|
108
|
+
visited.add(node);
|
|
109
|
+
};
|
|
110
|
+
for (const node of adjacency.keys()) {
|
|
111
|
+
visit(node);
|
|
112
|
+
}
|
|
113
|
+
return errors;
|
|
114
|
+
}
|
|
115
|
+
export function findDependentRecords(installed, surface, packageId) {
|
|
116
|
+
if (surface === 'bundle') {
|
|
117
|
+
return [];
|
|
118
|
+
}
|
|
119
|
+
return installed
|
|
120
|
+
.filter((entry) => dependenciesFor(entry).some((dependency) => dependency.surface === surface && dependency.packageId === packageId))
|
|
121
|
+
.filter((entry) => recordKind(entry) !== 'bundle')
|
|
122
|
+
.map((entry) => ({ surface: recordKind(entry), packageId: entry.packageId }))
|
|
123
|
+
.sort((left, right) => left.surface === right.surface ? left.packageId.localeCompare(right.packageId) : left.surface.localeCompare(right.surface));
|
|
124
|
+
}
|
|
125
|
+
export function findDependents(installed, surface, packageId) {
|
|
126
|
+
return findDependentRecords(installed, surface, packageId).map((entry) => entry.packageId);
|
|
127
|
+
}
|
|
128
|
+
//# sourceMappingURL=packageDependencyResolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"packageDependencyResolver.js","sourceRoot":"","sources":["../../../../../../../src/core/extension/packages/packageDependencyResolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ResolvedMoorlineDistroMetadata } from '../../../types/distro.js';
|
|
2
|
+
import { type PackageKind } from '../../../types/package.js';
|
|
3
|
+
import { loadInstallablePackageManifest } from './packageManifest.js';
|
|
4
|
+
interface OfficialPackageMetadataRecord {
|
|
5
|
+
surface: PackageKind;
|
|
6
|
+
packageDir: string;
|
|
7
|
+
packageId: string;
|
|
8
|
+
sourceSubdir: string;
|
|
9
|
+
installSubdir: string;
|
|
10
|
+
manifest: ReturnType<typeof loadInstallablePackageManifest>['manifest'];
|
|
11
|
+
distro: ResolvedMoorlineDistroMetadata;
|
|
12
|
+
}
|
|
13
|
+
export declare function discoverOfficialPackageMetadata(): OfficialPackageMetadataRecord[];
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
import { existsSync, readFileSync, readdirSync, statSync } from 'node:fs';
|
|
2
|
+
import { basename, dirname, join, relative } from 'node:path';
|
|
3
|
+
import { packageFamilyForKind } from '../../../types/package.js';
|
|
4
|
+
import { resolveBundledMoorlineAssetRoot } from '../../system/release/releaseArtifacts.js';
|
|
5
|
+
import { loadInstallablePackageManifest } from './packageManifest.js';
|
|
6
|
+
function distroPath(dir) {
|
|
7
|
+
return join(dir, 'moorline.dist.json');
|
|
8
|
+
}
|
|
9
|
+
function readDistro(dir) {
|
|
10
|
+
const path = distroPath(dir);
|
|
11
|
+
if (!existsSync(path)) {
|
|
12
|
+
return null;
|
|
13
|
+
}
|
|
14
|
+
const parsed = JSON.parse(readFileSync(path, 'utf8'));
|
|
15
|
+
if (parsed.schemaVersion !== 1) {
|
|
16
|
+
throw new Error(`Unsupported distro metadata schema in ${path}`);
|
|
17
|
+
}
|
|
18
|
+
return parsed;
|
|
19
|
+
}
|
|
20
|
+
function mergeArray(parent, child, mode) {
|
|
21
|
+
if (mode === 'replace') {
|
|
22
|
+
return child;
|
|
23
|
+
}
|
|
24
|
+
const seen = new Set();
|
|
25
|
+
const merged = [];
|
|
26
|
+
for (const entry of [...parent, ...child]) {
|
|
27
|
+
const key = JSON.stringify(entry);
|
|
28
|
+
if (!seen.has(key)) {
|
|
29
|
+
seen.add(key);
|
|
30
|
+
merged.push(entry);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return merged;
|
|
34
|
+
}
|
|
35
|
+
function deepMerge(parent, child, path = []) {
|
|
36
|
+
const merged = { ...parent };
|
|
37
|
+
for (const [key, value] of Object.entries(child)) {
|
|
38
|
+
const nextPath = [...path, key];
|
|
39
|
+
const previous = merged[key];
|
|
40
|
+
if (Array.isArray(previous) && Array.isArray(value)) {
|
|
41
|
+
const mode = key === 'tags' || key === 'audiences' ? 'union' : 'replace';
|
|
42
|
+
merged[key] = mergeArray(previous, value, mode);
|
|
43
|
+
continue;
|
|
44
|
+
}
|
|
45
|
+
if (previous &&
|
|
46
|
+
typeof previous === 'object' &&
|
|
47
|
+
!Array.isArray(previous) &&
|
|
48
|
+
value &&
|
|
49
|
+
typeof value === 'object' &&
|
|
50
|
+
!Array.isArray(value)) {
|
|
51
|
+
merged[key] = deepMerge(previous, value, nextPath);
|
|
52
|
+
continue;
|
|
53
|
+
}
|
|
54
|
+
merged[key] = value;
|
|
55
|
+
}
|
|
56
|
+
return merged;
|
|
57
|
+
}
|
|
58
|
+
function workspacePackagesRoot(root) {
|
|
59
|
+
const nested = join(root, 'packages');
|
|
60
|
+
if (existsSync(nested)) {
|
|
61
|
+
return nested;
|
|
62
|
+
}
|
|
63
|
+
const parent = dirname(root);
|
|
64
|
+
return basename(parent) === 'packages' ? parent : nested;
|
|
65
|
+
}
|
|
66
|
+
function manifestRoots(surface, root) {
|
|
67
|
+
const base = workspacePackagesRoot(root);
|
|
68
|
+
if (!existsSync(base)) {
|
|
69
|
+
return [];
|
|
70
|
+
}
|
|
71
|
+
const results = [];
|
|
72
|
+
for (const entry of readdirSync(base).sort()) {
|
|
73
|
+
const current = join(base, entry);
|
|
74
|
+
const stat = statSync(current, { throwIfNoEntry: false });
|
|
75
|
+
if (!stat?.isDirectory() || !existsSync(join(current, 'manifest.json'))) {
|
|
76
|
+
continue;
|
|
77
|
+
}
|
|
78
|
+
const manifest = JSON.parse(readFileSync(join(current, 'manifest.json'), 'utf8'));
|
|
79
|
+
if (manifest.type === surface && typeof manifest.id === 'string' && manifest.id.startsWith('official/')) {
|
|
80
|
+
results.push(current);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
return results.sort();
|
|
84
|
+
}
|
|
85
|
+
function resolvePackageDistroMetadata(input) {
|
|
86
|
+
const root = resolveBundledMoorlineAssetRoot(import.meta.url);
|
|
87
|
+
const packageRoot = workspacePackagesRoot(root);
|
|
88
|
+
const rel = relative(packageRoot, input.packageDir);
|
|
89
|
+
const segments = rel.split(/[\\/]/u).filter(Boolean);
|
|
90
|
+
const dirs = [packageRoot];
|
|
91
|
+
let current = packageRoot;
|
|
92
|
+
for (const segment of segments) {
|
|
93
|
+
current = join(current, segment);
|
|
94
|
+
dirs.push(current);
|
|
95
|
+
}
|
|
96
|
+
let merged = { schemaVersion: 1 };
|
|
97
|
+
for (const dir of dirs) {
|
|
98
|
+
const distro = readDistro(dir);
|
|
99
|
+
if (distro) {
|
|
100
|
+
merged = deepMerge(merged, distro);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
const typed = merged;
|
|
104
|
+
const display = {
|
|
105
|
+
...(typed.display ?? {}),
|
|
106
|
+
...(typed.display?.name ? {} : input.manifestFallback?.name ? { name: input.manifestFallback.name } : {}),
|
|
107
|
+
...(typed.display?.description
|
|
108
|
+
? {}
|
|
109
|
+
: input.manifestFallback?.description
|
|
110
|
+
? { description: input.manifestFallback.description }
|
|
111
|
+
: {}),
|
|
112
|
+
...(typed.display?.version ? {} : input.manifestFallback?.version ? { version: input.manifestFallback.version } : {})
|
|
113
|
+
};
|
|
114
|
+
if (!display.name || !display.description || !display.version) {
|
|
115
|
+
throw new Error(`Resolved distro metadata is missing name, description, or version for ${input.packageDir}`);
|
|
116
|
+
}
|
|
117
|
+
return {
|
|
118
|
+
...typed,
|
|
119
|
+
display: display
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
export function discoverOfficialPackageMetadata() {
|
|
123
|
+
const root = resolveBundledMoorlineAssetRoot(import.meta.url);
|
|
124
|
+
const packageRoot = workspacePackagesRoot(root);
|
|
125
|
+
const surfaces = ['api-adapter', 'transport', 'provider', 'plugin', 'skill', 'bundle'];
|
|
126
|
+
const records = [];
|
|
127
|
+
for (const surface of surfaces) {
|
|
128
|
+
for (const packageDir of manifestRoots(surface, root)) {
|
|
129
|
+
const loaded = loadInstallablePackageManifest(surface, packageDir);
|
|
130
|
+
records.push({
|
|
131
|
+
surface,
|
|
132
|
+
packageDir,
|
|
133
|
+
packageId: loaded.manifest.id,
|
|
134
|
+
sourceSubdir: join('packages', relative(packageRoot, packageDir)).replaceAll('\\', '/'),
|
|
135
|
+
installSubdir: packageFamilyForKind(surface) === 'installable' || packageFamilyForKind(surface) === 'bundle'
|
|
136
|
+
? join('dist', 'installables', `${surface}s`, relative(packageRoot, packageDir)).replaceAll('\\', '/')
|
|
137
|
+
: join('packages', relative(packageRoot, packageDir)).replaceAll('\\', '/'),
|
|
138
|
+
manifest: loaded.manifest,
|
|
139
|
+
distro: resolvePackageDistroMetadata({
|
|
140
|
+
surface,
|
|
141
|
+
packageDir,
|
|
142
|
+
manifestFallback: {
|
|
143
|
+
name: loaded.manifest.name,
|
|
144
|
+
description: loaded.manifest.description,
|
|
145
|
+
version: loaded.manifest.version
|
|
146
|
+
}
|
|
147
|
+
})
|
|
148
|
+
});
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
return records.sort((left, right) => `${left.surface}:${left.packageId}`.localeCompare(`${right.surface}:${right.packageId}`));
|
|
152
|
+
}
|
|
153
|
+
//# sourceMappingURL=packageDistroMetadata.js.map
|