@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,22 +1,25 @@
|
|
|
1
|
-
import type { PendingRuntimeRequestRecord, ProviderRuntimeEvent, ProviderSessionRecord, RuntimeModeName } from '../../../../types/runtime.js';
|
|
1
|
+
import type { PendingRuntimeRequestRecord, ProviderResumeCursor, ProviderRuntimeEvent, ProviderSessionRecord, RuntimeAgentKind, RuntimeModeName } from '../../../../types/runtime.js';
|
|
2
2
|
import type { SessionOwnerKind } from '../../../../types/plugin.js';
|
|
3
|
+
import type { RuntimeExternalResourceRecord, RuntimeGateRunRecord, RuntimeWorkItemRecord } from '../../../../types/external.js';
|
|
3
4
|
import type { ProviderBindingRecord, RuntimeDomainEvent, RuntimeReceiptRecord } from '../../../runtime/execution/runtimeDomain.js';
|
|
4
5
|
import type { ManagedSidecarRecord } from '../../../runtime/supervision/managedSidecar.js';
|
|
5
6
|
export type SessionLifecycleStatus = 'hot' | 'cool' | 'archived';
|
|
6
|
-
export type MissionLifecycleStatus = 'draft' | 'active' | 'sleeping' | 'waiting_on_user' | 'completed' | 'stopped' | 'failed';
|
|
7
7
|
export interface RuntimeSessionRow {
|
|
8
8
|
sessionId: string;
|
|
9
9
|
scopeId: string;
|
|
10
|
-
|
|
10
|
+
transportResourceId: string;
|
|
11
11
|
threadId: string;
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
transportResourceName: string;
|
|
13
|
+
agentKind?: RuntimeAgentKind;
|
|
14
|
+
workspacePath: string | null;
|
|
15
|
+
providerCwd?: string | null;
|
|
14
16
|
runtimeMode: RuntimeModeName;
|
|
15
17
|
lifecycleStatus: SessionLifecycleStatus;
|
|
16
18
|
summary: string | null;
|
|
17
19
|
provider: ProviderSessionRecord['providerPackageId'];
|
|
18
20
|
providerThreadId: string | null;
|
|
19
|
-
|
|
21
|
+
resumeCursor?: ProviderResumeCursor | null;
|
|
22
|
+
toolGrantIds?: string[];
|
|
20
23
|
providerStatus: ProviderSessionRecord['status'];
|
|
21
24
|
providerAutoStartEnabled?: boolean;
|
|
22
25
|
activeTurnId: string | null;
|
|
@@ -34,13 +37,13 @@ export interface RuntimeSessionRow {
|
|
|
34
37
|
lastDirectedAt?: string | null;
|
|
35
38
|
lastDirectedBy?: string | null;
|
|
36
39
|
}
|
|
37
|
-
export type RuntimeOrchestrationRequestType = 'create_session' | 'direct_session' | 'archive_session' | 'delete_session' | 'post_message' | '
|
|
40
|
+
export type RuntimeOrchestrationRequestType = 'create_session' | 'direct_session' | 'archive_session' | 'delete_session' | 'post_message' | 'runtime_set_accepting' | 'runtime_reload' | 'provider_test' | 'provider_stop' | 'provider_start' | 'resolve_pending_request' | 'answer_pending_request';
|
|
38
41
|
export type RuntimeOrchestrationRequestStatus = 'pending' | 'running' | 'completed' | 'failed';
|
|
39
42
|
export interface RuntimeOrchestrationRequestRow {
|
|
40
43
|
requestId: string;
|
|
41
44
|
actorId: string;
|
|
42
45
|
requestedByThreadId: string;
|
|
43
|
-
|
|
46
|
+
requestedByTransportResourceId: string;
|
|
44
47
|
dedupeKey: string | null;
|
|
45
48
|
type: RuntimeOrchestrationRequestType;
|
|
46
49
|
targetSessionId: string | null;
|
|
@@ -56,56 +59,92 @@ export interface RuntimeOrchestrationRequestRow {
|
|
|
56
59
|
createdAt: string;
|
|
57
60
|
updatedAt: string;
|
|
58
61
|
}
|
|
59
|
-
export interface
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
62
|
+
export interface RuntimePackageStateRow {
|
|
63
|
+
packageId: string;
|
|
64
|
+
key: string;
|
|
65
|
+
valueJson: string;
|
|
66
|
+
updatedAt: string;
|
|
67
|
+
}
|
|
68
|
+
export interface RuntimePackageJobRow {
|
|
69
|
+
packageId: string;
|
|
70
|
+
jobId: string;
|
|
71
|
+
actionId: string;
|
|
72
|
+
schedule: string;
|
|
68
73
|
scheduleAnchorAt: string;
|
|
69
74
|
cadenceMinutes: number;
|
|
70
|
-
scheduleMetaJson
|
|
71
|
-
|
|
72
|
-
workspacePath: string;
|
|
73
|
-
lifecycleStatus: MissionLifecycleStatus;
|
|
74
|
-
pausedAt: string | null;
|
|
75
|
-
lastRunAt: string | null;
|
|
75
|
+
scheduleMetaJson: string;
|
|
76
|
+
payloadJson: string;
|
|
76
77
|
nextRunAt: string | null;
|
|
77
|
-
lastSuccessAt: string | null;
|
|
78
|
-
completedAt: string | null;
|
|
79
|
-
stoppedAt: string | null;
|
|
80
|
-
archivedAt: string | null;
|
|
81
|
-
lastError: string | null;
|
|
82
78
|
createdAt: string;
|
|
83
79
|
updatedAt: string;
|
|
84
80
|
}
|
|
85
|
-
export interface
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
81
|
+
export interface RuntimeExternalResourceRow {
|
|
82
|
+
provider: string;
|
|
83
|
+
kind: string;
|
|
84
|
+
externalId: string;
|
|
85
|
+
url: string | null;
|
|
86
|
+
title: string | null;
|
|
87
|
+
state: string | null;
|
|
88
|
+
metadataJson: string;
|
|
89
|
+
firstSeenAt: string;
|
|
90
|
+
lastSeenAt: string;
|
|
94
91
|
}
|
|
95
|
-
export interface
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
92
|
+
export interface RuntimeWorkItemRow {
|
|
93
|
+
workItemId: string;
|
|
94
|
+
packageId: string;
|
|
95
|
+
queue: string;
|
|
96
|
+
status: RuntimeWorkItemRecord['status'];
|
|
97
|
+
priority: number;
|
|
98
|
+
idempotencyKey: string | null;
|
|
99
|
+
externalProvider: string | null;
|
|
100
|
+
externalKind: string | null;
|
|
101
|
+
externalId: string | null;
|
|
102
|
+
externalUrl: string | null;
|
|
103
|
+
externalTitle: string | null;
|
|
104
|
+
externalMetadataJson: string | null;
|
|
105
|
+
sessionId: string | null;
|
|
106
|
+
payloadJson: string;
|
|
107
|
+
phase: string | null;
|
|
108
|
+
attempts: number;
|
|
109
|
+
maxAttempts: number;
|
|
110
|
+
runAfter: string | null;
|
|
111
|
+
leaseOwner: string | null;
|
|
112
|
+
leaseExpiresAt: string | null;
|
|
113
|
+
lastError: string | null;
|
|
101
114
|
createdAt: string;
|
|
102
115
|
updatedAt: string;
|
|
116
|
+
completedAt: string | null;
|
|
117
|
+
}
|
|
118
|
+
export interface RuntimeSessionExternalResourceRow {
|
|
119
|
+
sessionId: string;
|
|
120
|
+
provider: string;
|
|
121
|
+
kind: string;
|
|
122
|
+
externalId: string;
|
|
123
|
+
relationship: string;
|
|
124
|
+
createdAt: string;
|
|
125
|
+
}
|
|
126
|
+
export interface RuntimeGateRunRow {
|
|
127
|
+
gateRunId: string;
|
|
128
|
+
gateId: string;
|
|
129
|
+
packageId: string;
|
|
130
|
+
workItemId: string | null;
|
|
131
|
+
sessionId: string | null;
|
|
132
|
+
command: string;
|
|
133
|
+
argsJson: string;
|
|
134
|
+
cwd: string | null;
|
|
135
|
+
required: number;
|
|
136
|
+
status: RuntimeGateRunRecord['status'];
|
|
137
|
+
exitCode: number | null;
|
|
138
|
+
stdout: string;
|
|
139
|
+
stderr: string;
|
|
140
|
+
startedAt: string;
|
|
141
|
+
completedAt: string | null;
|
|
103
142
|
}
|
|
104
143
|
export interface RuntimeEventRow {
|
|
105
144
|
eventId: string;
|
|
106
145
|
provider: string;
|
|
107
146
|
threadId: string;
|
|
108
|
-
|
|
147
|
+
transportResourceId: string | null;
|
|
109
148
|
turnId: string | null;
|
|
110
149
|
itemId: string | null;
|
|
111
150
|
requestId: string | null;
|
|
@@ -116,15 +155,17 @@ export interface RuntimeEventRow {
|
|
|
116
155
|
export interface DomainEventRow {
|
|
117
156
|
eventId: string;
|
|
118
157
|
threadId: string;
|
|
119
|
-
|
|
158
|
+
transportResourceId: string | null;
|
|
120
159
|
sessionId: string | null;
|
|
121
160
|
sourceProviderEventId: string | null;
|
|
122
161
|
type: string;
|
|
123
162
|
payloadJson: string;
|
|
124
163
|
createdAt: string;
|
|
125
164
|
}
|
|
126
|
-
export interface RuntimeSessionDbRow extends Omit<RuntimeSessionRow, 'providerAutoStartEnabled' | 'tags'> {
|
|
165
|
+
export interface RuntimeSessionDbRow extends Omit<RuntimeSessionRow, 'providerAutoStartEnabled' | 'tags' | 'resumeCursor' | 'toolGrantIds'> {
|
|
127
166
|
providerAutoStartEnabled: number;
|
|
167
|
+
resumeCursorJson: string | null;
|
|
168
|
+
toolGrantIdsJson: string | null;
|
|
128
169
|
tagsJson: string | null;
|
|
129
170
|
}
|
|
130
171
|
export interface ManagedSidecarDbRow extends Omit<ManagedSidecarRecord, 'args' | 'env' | 'readiness'> {
|
|
@@ -135,6 +176,8 @@ export interface ManagedSidecarDbRow extends Omit<ManagedSidecarRecord, 'args' |
|
|
|
135
176
|
export type { PendingRuntimeRequestRecord, ProviderBindingRecord, ProviderRuntimeEvent, RuntimeDomainEvent, RuntimeReceiptRecord };
|
|
136
177
|
export declare function hydrateSession(row: RuntimeSessionDbRow | undefined): RuntimeSessionRow | null;
|
|
137
178
|
export declare function hydrateManagedSidecar(row: ManagedSidecarDbRow | undefined): ManagedSidecarRecord | null;
|
|
138
|
-
export declare
|
|
139
|
-
export declare
|
|
179
|
+
export declare function hydrateExternalResource(row: RuntimeExternalResourceRow | undefined): RuntimeExternalResourceRecord | null;
|
|
180
|
+
export declare function hydrateWorkItem(row: RuntimeWorkItemRow | undefined): RuntimeWorkItemRecord | null;
|
|
181
|
+
export declare function hydrateGateRun(row: RuntimeGateRunRow | undefined): RuntimeGateRunRecord | null;
|
|
182
|
+
export declare const RUNTIME_SESSION_SELECT = "\n SELECT\n session_id as sessionId,\n scope_id as scopeId,\n transport_resource_id as transportResourceId,\n thread_id as threadId,\n transport_resource_name as transportResourceName,\n COALESCE(agent_kind, 'workspace') as agentKind,\n workspace_path as workspacePath,\n provider_cwd as providerCwd,\n runtime_mode as runtimeMode,\n lifecycle_status as lifecycleStatus,\n summary,\n provider,\n provider_thread_id as providerThreadId,\n resume_cursor_json as resumeCursorJson,\n tool_grant_ids_json as toolGrantIdsJson,\n provider_status as providerStatus,\n provider_auto_start_enabled as providerAutoStartEnabled,\n active_turn_id as activeTurnId,\n created_at as createdAt,\n updated_at as updatedAt,\n last_activity_at as lastActivityAt,\n archived_at as archivedAt,\n last_error as lastError,\n owner_kind as ownerKind,\n owner_id as ownerId,\n owner_label as ownerLabel,\n objective,\n tags_json as tagsJson,\n created_by as createdBy,\n last_directed_at as lastDirectedAt,\n last_directed_by as lastDirectedBy\n FROM runtime_sessions\n";
|
|
140
183
|
export declare const MANAGED_SIDECAR_SELECT = "\n SELECT\n sidecar_id as sidecarId,\n instance_id as instanceId,\n plugin_id as pluginId,\n sidecar_name as name,\n scope_kind as scopeKind,\n scope_key as scopeKey,\n status,\n command,\n args_json as argsJson,\n cwd,\n env_json as envJson,\n restart_policy as restartPolicy,\n max_restarts as maxRestarts,\n readiness_json as readinessJson,\n artifact_dir as artifactDir,\n pid,\n restart_count as restartCount,\n started_at as startedAt,\n ready_at as readyAt,\n stopped_at as stoppedAt,\n last_exit_code as lastExitCode,\n last_exit_signal as lastExitSignal,\n last_error as lastError,\n updated_at as updatedAt\n FROM managed_sidecars\n";
|
|
@@ -5,7 +5,10 @@ export function hydrateSession(row) {
|
|
|
5
5
|
}
|
|
6
6
|
return {
|
|
7
7
|
...row,
|
|
8
|
+
agentKind: row.agentKind ?? 'workspace',
|
|
8
9
|
providerAutoStartEnabled: row.providerAutoStartEnabled !== 0,
|
|
10
|
+
resumeCursor: safeReadJsonValue(row.resumeCursorJson).value ?? null,
|
|
11
|
+
toolGrantIds: safeReadJson(row.toolGrantIdsJson, isStringArray).value ?? [],
|
|
9
12
|
tags: safeReadJson(row.tagsJson, isStringArray).value ?? []
|
|
10
13
|
};
|
|
11
14
|
}
|
|
@@ -22,20 +25,100 @@ export function hydrateManagedSidecar(row) {
|
|
|
22
25
|
readiness: safeReadJsonValue(row.readinessJson).value ?? { kind: 'none' }
|
|
23
26
|
};
|
|
24
27
|
}
|
|
28
|
+
export function hydrateExternalResource(row) {
|
|
29
|
+
if (!row) {
|
|
30
|
+
return null;
|
|
31
|
+
}
|
|
32
|
+
const metadata = safeReadJsonValue(row.metadataJson).value ?? {};
|
|
33
|
+
return {
|
|
34
|
+
provider: row.provider,
|
|
35
|
+
kind: row.kind,
|
|
36
|
+
id: row.externalId,
|
|
37
|
+
...(row.url ? { url: row.url } : {}),
|
|
38
|
+
...(row.title ? { title: row.title } : {}),
|
|
39
|
+
...(row.state ? { state: row.state } : {}),
|
|
40
|
+
...(Object.keys(metadata).length > 0 ? { metadata } : {}),
|
|
41
|
+
firstSeenAt: row.firstSeenAt,
|
|
42
|
+
lastSeenAt: row.lastSeenAt
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
export function hydrateWorkItem(row) {
|
|
46
|
+
if (!row) {
|
|
47
|
+
return null;
|
|
48
|
+
}
|
|
49
|
+
const payload = safeReadJsonValue(row.payloadJson).value ?? {};
|
|
50
|
+
const externalMetadata = safeReadJsonValue(row.externalMetadataJson).value ?? {};
|
|
51
|
+
const externalResource = row.externalProvider && row.externalKind && row.externalId
|
|
52
|
+
? {
|
|
53
|
+
provider: row.externalProvider,
|
|
54
|
+
kind: row.externalKind,
|
|
55
|
+
id: row.externalId,
|
|
56
|
+
...(row.externalUrl ? { url: row.externalUrl } : {}),
|
|
57
|
+
...(row.externalTitle ? { title: row.externalTitle } : {}),
|
|
58
|
+
...(Object.keys(externalMetadata).length > 0 ? { metadata: externalMetadata } : {})
|
|
59
|
+
}
|
|
60
|
+
: undefined;
|
|
61
|
+
return {
|
|
62
|
+
workItemId: row.workItemId,
|
|
63
|
+
packageId: row.packageId,
|
|
64
|
+
queue: row.queue,
|
|
65
|
+
status: row.status,
|
|
66
|
+
priority: row.priority,
|
|
67
|
+
...(row.idempotencyKey ? { idempotencyKey: row.idempotencyKey } : {}),
|
|
68
|
+
...(externalResource ? { externalResource } : {}),
|
|
69
|
+
...(row.sessionId ? { sessionId: row.sessionId } : {}),
|
|
70
|
+
payload,
|
|
71
|
+
...(row.phase ? { phase: row.phase } : {}),
|
|
72
|
+
attempts: row.attempts,
|
|
73
|
+
maxAttempts: row.maxAttempts,
|
|
74
|
+
runAfter: row.runAfter,
|
|
75
|
+
leaseOwner: row.leaseOwner,
|
|
76
|
+
leaseExpiresAt: row.leaseExpiresAt,
|
|
77
|
+
lastError: row.lastError,
|
|
78
|
+
createdAt: row.createdAt,
|
|
79
|
+
updatedAt: row.updatedAt,
|
|
80
|
+
completedAt: row.completedAt
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
export function hydrateGateRun(row) {
|
|
84
|
+
if (!row) {
|
|
85
|
+
return null;
|
|
86
|
+
}
|
|
87
|
+
return {
|
|
88
|
+
gateRunId: row.gateRunId,
|
|
89
|
+
gateId: row.gateId,
|
|
90
|
+
packageId: row.packageId,
|
|
91
|
+
...(row.workItemId ? { workItemId: row.workItemId } : {}),
|
|
92
|
+
...(row.sessionId ? { sessionId: row.sessionId } : {}),
|
|
93
|
+
command: row.command,
|
|
94
|
+
args: safeReadJson(row.argsJson, isStringArray).value ?? [],
|
|
95
|
+
...(row.cwd ? { cwd: row.cwd } : {}),
|
|
96
|
+
required: row.required !== 0,
|
|
97
|
+
status: row.status,
|
|
98
|
+
exitCode: row.exitCode,
|
|
99
|
+
stdout: row.stdout,
|
|
100
|
+
stderr: row.stderr,
|
|
101
|
+
startedAt: row.startedAt,
|
|
102
|
+
completedAt: row.completedAt
|
|
103
|
+
};
|
|
104
|
+
}
|
|
25
105
|
export const RUNTIME_SESSION_SELECT = `
|
|
26
106
|
SELECT
|
|
27
107
|
session_id as sessionId,
|
|
28
108
|
scope_id as scopeId,
|
|
29
|
-
|
|
109
|
+
transport_resource_id as transportResourceId,
|
|
30
110
|
thread_id as threadId,
|
|
31
|
-
|
|
111
|
+
transport_resource_name as transportResourceName,
|
|
112
|
+
COALESCE(agent_kind, 'workspace') as agentKind,
|
|
32
113
|
workspace_path as workspacePath,
|
|
114
|
+
provider_cwd as providerCwd,
|
|
33
115
|
runtime_mode as runtimeMode,
|
|
34
116
|
lifecycle_status as lifecycleStatus,
|
|
35
117
|
summary,
|
|
36
118
|
provider,
|
|
37
119
|
provider_thread_id as providerThreadId,
|
|
38
|
-
|
|
120
|
+
resume_cursor_json as resumeCursorJson,
|
|
121
|
+
tool_grant_ids_json as toolGrantIdsJson,
|
|
39
122
|
provider_status as providerStatus,
|
|
40
123
|
provider_auto_start_enabled as providerAutoStartEnabled,
|
|
41
124
|
active_turn_id as activeTurnId,
|
|
@@ -54,34 +137,6 @@ export const RUNTIME_SESSION_SELECT = `
|
|
|
54
137
|
last_directed_by as lastDirectedBy
|
|
55
138
|
FROM runtime_sessions
|
|
56
139
|
`;
|
|
57
|
-
export const RUNTIME_MISSION_SELECT = `
|
|
58
|
-
SELECT
|
|
59
|
-
mission_id as missionId,
|
|
60
|
-
scope_id as scopeId,
|
|
61
|
-
space_id as spaceId,
|
|
62
|
-
thread_id as threadId,
|
|
63
|
-
space_name as spaceName,
|
|
64
|
-
title,
|
|
65
|
-
goal,
|
|
66
|
-
schedule_text as scheduleText,
|
|
67
|
-
schedule_anchor_at as scheduleAnchorAt,
|
|
68
|
-
cadence_minutes as cadenceMinutes,
|
|
69
|
-
schedule_meta_json as scheduleMetaJson,
|
|
70
|
-
runtime_mode as runtimeMode,
|
|
71
|
-
workspace_path as workspacePath,
|
|
72
|
-
lifecycle_status as lifecycleStatus,
|
|
73
|
-
paused_at as pausedAt,
|
|
74
|
-
last_run_at as lastRunAt,
|
|
75
|
-
next_run_at as nextRunAt,
|
|
76
|
-
last_success_at as lastSuccessAt,
|
|
77
|
-
completed_at as completedAt,
|
|
78
|
-
stopped_at as stoppedAt,
|
|
79
|
-
archived_at as archivedAt,
|
|
80
|
-
last_error as lastError,
|
|
81
|
-
created_at as createdAt,
|
|
82
|
-
updated_at as updatedAt
|
|
83
|
-
FROM runtime_missions
|
|
84
|
-
`;
|
|
85
140
|
export const MANAGED_SIDECAR_SELECT = `
|
|
86
141
|
SELECT
|
|
87
142
|
sidecar_id as sidecarId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../../../src/core/system/state/sqlite/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../../../src/core/system/state/sqlite/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { DatabaseSync } from 'node:sqlite';
|
|
2
|
+
import type { RuntimeExternalResourceRef, RuntimeWorkItemRecord, RuntimeWorkItemStatus } from '../../../../types/external.js';
|
|
3
|
+
export declare class WorkItemRepository {
|
|
4
|
+
private readonly db;
|
|
5
|
+
constructor(db: DatabaseSync);
|
|
6
|
+
private insert;
|
|
7
|
+
update(record: RuntimeWorkItemRecord): RuntimeWorkItemRecord;
|
|
8
|
+
enqueue(record: RuntimeWorkItemRecord): RuntimeWorkItemRecord;
|
|
9
|
+
get(workItemId: string): RuntimeWorkItemRecord | null;
|
|
10
|
+
findByIdempotencyKey(packageId: string, queue: string, idempotencyKey: string): RuntimeWorkItemRecord | null;
|
|
11
|
+
list(filter?: {
|
|
12
|
+
packageId?: string;
|
|
13
|
+
queue?: string;
|
|
14
|
+
status?: RuntimeWorkItemStatus;
|
|
15
|
+
externalResource?: RuntimeExternalResourceRef;
|
|
16
|
+
limit?: number;
|
|
17
|
+
}): RuntimeWorkItemRecord[];
|
|
18
|
+
claim(input: {
|
|
19
|
+
packageId: string;
|
|
20
|
+
queue: string;
|
|
21
|
+
leaseOwner: string;
|
|
22
|
+
leaseExpiresAt: string;
|
|
23
|
+
nowIso: string;
|
|
24
|
+
}): RuntimeWorkItemRecord | null;
|
|
25
|
+
}
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
import { mapRows } from './rowMappers.js';
|
|
2
|
+
import { hydrateWorkItem } from './types.js';
|
|
3
|
+
const WORK_ITEM_SELECT = `
|
|
4
|
+
SELECT
|
|
5
|
+
work_item_id as workItemId,
|
|
6
|
+
package_id as packageId,
|
|
7
|
+
queue,
|
|
8
|
+
status,
|
|
9
|
+
priority,
|
|
10
|
+
idempotency_key as idempotencyKey,
|
|
11
|
+
external_provider as externalProvider,
|
|
12
|
+
external_kind as externalKind,
|
|
13
|
+
external_id as externalId,
|
|
14
|
+
external_url as externalUrl,
|
|
15
|
+
external_title as externalTitle,
|
|
16
|
+
external_metadata_json as externalMetadataJson,
|
|
17
|
+
session_id as sessionId,
|
|
18
|
+
payload_json as payloadJson,
|
|
19
|
+
phase,
|
|
20
|
+
attempts,
|
|
21
|
+
max_attempts as maxAttempts,
|
|
22
|
+
run_after as runAfter,
|
|
23
|
+
lease_owner as leaseOwner,
|
|
24
|
+
lease_expires_at as leaseExpiresAt,
|
|
25
|
+
last_error as lastError,
|
|
26
|
+
created_at as createdAt,
|
|
27
|
+
updated_at as updatedAt,
|
|
28
|
+
completed_at as completedAt
|
|
29
|
+
FROM runtime_work_items
|
|
30
|
+
`;
|
|
31
|
+
function workItemRow(input) {
|
|
32
|
+
return {
|
|
33
|
+
workItemId: input.workItemId,
|
|
34
|
+
packageId: input.packageId,
|
|
35
|
+
queue: input.queue,
|
|
36
|
+
status: input.status,
|
|
37
|
+
priority: input.priority,
|
|
38
|
+
idempotencyKey: input.idempotencyKey ?? null,
|
|
39
|
+
externalProvider: input.externalResource?.provider ?? null,
|
|
40
|
+
externalKind: input.externalResource?.kind ?? null,
|
|
41
|
+
externalId: input.externalResource?.id ?? null,
|
|
42
|
+
externalUrl: input.externalResource?.url ?? null,
|
|
43
|
+
externalTitle: input.externalResource?.title ?? null,
|
|
44
|
+
externalMetadataJson: input.externalResource ? JSON.stringify(input.externalResource.metadata ?? {}) : null,
|
|
45
|
+
sessionId: input.sessionId ?? null,
|
|
46
|
+
payloadJson: JSON.stringify(input.payload),
|
|
47
|
+
phase: input.phase ?? null,
|
|
48
|
+
attempts: input.attempts,
|
|
49
|
+
maxAttempts: input.maxAttempts,
|
|
50
|
+
runAfter: input.runAfter,
|
|
51
|
+
leaseOwner: input.leaseOwner,
|
|
52
|
+
leaseExpiresAt: input.leaseExpiresAt,
|
|
53
|
+
lastError: input.lastError,
|
|
54
|
+
createdAt: input.createdAt,
|
|
55
|
+
updatedAt: input.updatedAt,
|
|
56
|
+
completedAt: input.completedAt
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
export class WorkItemRepository {
|
|
60
|
+
db;
|
|
61
|
+
constructor(db) {
|
|
62
|
+
this.db = db;
|
|
63
|
+
}
|
|
64
|
+
insert(row, conflictClause) {
|
|
65
|
+
this.db
|
|
66
|
+
.prepare(`
|
|
67
|
+
INSERT ${conflictClause} INTO runtime_work_items (
|
|
68
|
+
work_item_id, package_id, queue, status, priority, idempotency_key,
|
|
69
|
+
external_provider, external_kind, external_id, external_url, external_title, external_metadata_json,
|
|
70
|
+
session_id, payload_json, phase, attempts, max_attempts, run_after, lease_owner, lease_expires_at,
|
|
71
|
+
last_error, created_at, updated_at, completed_at
|
|
72
|
+
)
|
|
73
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
74
|
+
`)
|
|
75
|
+
.run(row.workItemId, row.packageId, row.queue, row.status, row.priority, row.idempotencyKey, row.externalProvider, row.externalKind, row.externalId, row.externalUrl, row.externalTitle, row.externalMetadataJson, row.sessionId, row.payloadJson, row.phase, row.attempts, row.maxAttempts, row.runAfter, row.leaseOwner, row.leaseExpiresAt, row.lastError, row.createdAt, row.updatedAt, row.completedAt);
|
|
76
|
+
}
|
|
77
|
+
update(record) {
|
|
78
|
+
const row = workItemRow(record);
|
|
79
|
+
this.db
|
|
80
|
+
.prepare(`
|
|
81
|
+
UPDATE runtime_work_items
|
|
82
|
+
SET
|
|
83
|
+
status = ?,
|
|
84
|
+
priority = ?,
|
|
85
|
+
external_provider = ?,
|
|
86
|
+
external_kind = ?,
|
|
87
|
+
external_id = ?,
|
|
88
|
+
external_url = ?,
|
|
89
|
+
external_title = ?,
|
|
90
|
+
external_metadata_json = ?,
|
|
91
|
+
session_id = ?,
|
|
92
|
+
payload_json = ?,
|
|
93
|
+
phase = ?,
|
|
94
|
+
attempts = ?,
|
|
95
|
+
max_attempts = ?,
|
|
96
|
+
run_after = ?,
|
|
97
|
+
lease_owner = ?,
|
|
98
|
+
lease_expires_at = ?,
|
|
99
|
+
last_error = ?,
|
|
100
|
+
updated_at = ?,
|
|
101
|
+
completed_at = ?
|
|
102
|
+
WHERE work_item_id = ?
|
|
103
|
+
`)
|
|
104
|
+
.run(row.status, row.priority, row.externalProvider, row.externalKind, row.externalId, row.externalUrl, row.externalTitle, row.externalMetadataJson, row.sessionId, row.payloadJson, row.phase, row.attempts, row.maxAttempts, row.runAfter, row.leaseOwner, row.leaseExpiresAt, row.lastError, row.updatedAt, row.completedAt, row.workItemId);
|
|
105
|
+
return this.get(record.workItemId);
|
|
106
|
+
}
|
|
107
|
+
enqueue(record) {
|
|
108
|
+
const row = workItemRow(record);
|
|
109
|
+
if (row.idempotencyKey) {
|
|
110
|
+
this.insert(row, 'OR IGNORE');
|
|
111
|
+
return this.findByIdempotencyKey(row.packageId, row.queue, row.idempotencyKey);
|
|
112
|
+
}
|
|
113
|
+
this.insert(row, '');
|
|
114
|
+
return this.get(record.workItemId);
|
|
115
|
+
}
|
|
116
|
+
get(workItemId) {
|
|
117
|
+
return hydrateWorkItem(this.db.prepare(`${WORK_ITEM_SELECT} WHERE work_item_id = ?`).get(workItemId));
|
|
118
|
+
}
|
|
119
|
+
findByIdempotencyKey(packageId, queue, idempotencyKey) {
|
|
120
|
+
return hydrateWorkItem(this.db
|
|
121
|
+
.prepare(`${WORK_ITEM_SELECT} WHERE package_id = ? AND queue = ? AND idempotency_key = ?`)
|
|
122
|
+
.get(packageId, queue, idempotencyKey));
|
|
123
|
+
}
|
|
124
|
+
list(filter = {}) {
|
|
125
|
+
const clauses = [];
|
|
126
|
+
const params = [];
|
|
127
|
+
if (filter.packageId) {
|
|
128
|
+
clauses.push('package_id = ?');
|
|
129
|
+
params.push(filter.packageId);
|
|
130
|
+
}
|
|
131
|
+
if (filter.queue) {
|
|
132
|
+
clauses.push('queue = ?');
|
|
133
|
+
params.push(filter.queue);
|
|
134
|
+
}
|
|
135
|
+
if (filter.status) {
|
|
136
|
+
clauses.push('status = ?');
|
|
137
|
+
params.push(filter.status);
|
|
138
|
+
}
|
|
139
|
+
if (filter.externalResource) {
|
|
140
|
+
clauses.push('external_provider = ? AND external_kind = ? AND external_id = ?');
|
|
141
|
+
params.push(filter.externalResource.provider, filter.externalResource.kind, filter.externalResource.id);
|
|
142
|
+
}
|
|
143
|
+
const where = clauses.length > 0 ? ` WHERE ${clauses.join(' AND ')}` : '';
|
|
144
|
+
const limit = Math.max(1, filter.limit ?? 200);
|
|
145
|
+
return mapRows(this.db.prepare(`${WORK_ITEM_SELECT}${where} ORDER BY created_at DESC LIMIT ?`).all(...params, limit))
|
|
146
|
+
.map((row) => hydrateWorkItem(row))
|
|
147
|
+
.filter((row) => row !== null);
|
|
148
|
+
}
|
|
149
|
+
claim(input) {
|
|
150
|
+
this.db.exec('BEGIN IMMEDIATE');
|
|
151
|
+
try {
|
|
152
|
+
const candidate = hydrateWorkItem(this.db
|
|
153
|
+
.prepare(`
|
|
154
|
+
${WORK_ITEM_SELECT}
|
|
155
|
+
WHERE package_id = ?
|
|
156
|
+
AND queue = ?
|
|
157
|
+
AND (
|
|
158
|
+
status = 'queued'
|
|
159
|
+
OR (status = 'running' AND lease_expires_at IS NOT NULL AND lease_expires_at <= ?)
|
|
160
|
+
)
|
|
161
|
+
AND (run_after IS NULL OR run_after <= ?)
|
|
162
|
+
ORDER BY priority DESC, created_at ASC, work_item_id ASC
|
|
163
|
+
LIMIT 1
|
|
164
|
+
`)
|
|
165
|
+
.get(input.packageId, input.queue, input.nowIso, input.nowIso));
|
|
166
|
+
if (!candidate) {
|
|
167
|
+
this.db.exec('COMMIT');
|
|
168
|
+
return null;
|
|
169
|
+
}
|
|
170
|
+
const result = this.db
|
|
171
|
+
.prepare(`
|
|
172
|
+
UPDATE runtime_work_items
|
|
173
|
+
SET
|
|
174
|
+
status = 'running',
|
|
175
|
+
attempts = attempts + 1,
|
|
176
|
+
lease_owner = ?,
|
|
177
|
+
lease_expires_at = ?,
|
|
178
|
+
updated_at = ?,
|
|
179
|
+
completed_at = NULL
|
|
180
|
+
WHERE work_item_id = ?
|
|
181
|
+
AND package_id = ?
|
|
182
|
+
AND queue = ?
|
|
183
|
+
AND (
|
|
184
|
+
status = 'queued'
|
|
185
|
+
OR (status = 'running' AND lease_expires_at IS NOT NULL AND lease_expires_at <= ?)
|
|
186
|
+
)
|
|
187
|
+
AND (run_after IS NULL OR run_after <= ?)
|
|
188
|
+
`)
|
|
189
|
+
.run(input.leaseOwner, input.leaseExpiresAt, input.nowIso, candidate.workItemId, input.packageId, input.queue, input.nowIso, input.nowIso);
|
|
190
|
+
const claimed = result.changes > 0 ? this.get(candidate.workItemId) : null;
|
|
191
|
+
this.db.exec('COMMIT');
|
|
192
|
+
return claimed;
|
|
193
|
+
}
|
|
194
|
+
catch (error) {
|
|
195
|
+
this.db.exec('ROLLBACK');
|
|
196
|
+
throw error;
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
//# sourceMappingURL=workItemRepository.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workItemRepository.js","sourceRoot":"","sources":["../../../../../../../../src/core/system/state/sqlite/workItemRepository.ts"],"names":[],"mappings":"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"}
|