UNPKG

n8n

Version:

n8n Workflow Automation Tool

53 lines (52 loc) 2.73 kB
import type { AgentTaskDto, CreateAgentTaskDto, UpdateAgentTaskDto } from '@n8n/api-types'; import { Logger } from '@n8n/backend-common'; import { GlobalConfig } from '@n8n/config'; import { ProjectRelationRepository } from '@n8n/db'; import { InstanceSettings } from 'n8n-core'; import type { PubSubCommandMap } from '../../scaling/pubsub/pubsub.event-map'; import { Publisher } from '../../scaling/pubsub/publisher.service'; import { AgentsService } from './agents.service'; import { AgentRepository } from './repositories/agent.repository'; import { AgentTaskRunLockRepository } from './repositories/agent-task-run-lock.repository'; import { AgentTaskSnapshotRepository } from './repositories/agent-task-snapshot.repository'; import { AgentTaskRepository } from './repositories/agent-task.repository'; export declare class AgentTaskService { private readonly logger; private readonly globalConfig; private readonly taskRepository; private readonly taskSnapshotRepository; private readonly taskRunLockRepository; private readonly agentRepository; private readonly projectRelationRepository; private readonly agentsService; private readonly instanceSettings; private readonly publisher; private readonly jobs; constructor(logger: Logger, globalConfig: GlobalConfig, taskRepository: AgentTaskRepository, taskSnapshotRepository: AgentTaskSnapshotRepository, taskRunLockRepository: AgentTaskRunLockRepository, agentRepository: AgentRepository, projectRelationRepository: ProjectRelationRepository, agentsService: AgentsService, instanceSettings: InstanceSettings, publisher: Publisher); list(agentId: string): Promise<AgentTaskDto[]>; create(agentId: string, dto: CreateAgentTaskDto): Promise<AgentTaskDto>; update(agentId: string, taskId: string, dto: UpdateAgentTaskDto): Promise<AgentTaskDto>; delete(agentId: string, taskId: string): Promise<void>; private attachTaskRef; requestReconcile(agentId: string): Promise<void>; registerEnabledForAgent(agentId: string): Promise<void>; handleTasksChanged(payload: PubSubCommandMap['agent-tasks-changed']): Promise<void>; private broadcastTasksChanged; deregisterAgentTasks(agentId: string): void; reconnectAll(): Promise<void>; stopAll(): void; private reconcileAgent; private registerOrRefresh; private deregister; private runScheduledTask; private startTaskRunLockRenewal; private runTask; private buildTaskRunMessage; private consumeTaskRun; runNow(agentId: string, taskId: string, userId: string): Promise<void>; private executeNow; private resolveExecutionUserId; private getOrThrow; private assertValidCron; private toDto; }