agent-tower 0.4.15 → 0.4.16-beta.0
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/core/event-bus.d.ts +2 -0
- package/dist/core/event-bus.d.ts.map +1 -1
- package/dist/core/event-bus.js.map +1 -1
- package/dist/executors/__tests__/codex.executor.test.d.ts +2 -0
- package/dist/executors/__tests__/codex.executor.test.d.ts.map +1 -0
- package/dist/executors/__tests__/codex.executor.test.js +28 -0
- package/dist/executors/__tests__/codex.executor.test.js.map +1 -0
- package/dist/executors/codex.executor.d.ts +1 -0
- package/dist/executors/codex.executor.d.ts.map +1 -1
- package/dist/executors/codex.executor.js +19 -1
- package/dist/executors/codex.executor.js.map +1 -1
- package/dist/mcp/context.d.ts +3 -0
- package/dist/mcp/context.d.ts.map +1 -1
- package/dist/mcp/context.js +10 -1
- package/dist/mcp/context.js.map +1 -1
- package/dist/mcp/http-client.d.ts +24 -1
- package/dist/mcp/http-client.d.ts.map +1 -1
- package/dist/mcp/http-client.js +29 -2
- package/dist/mcp/http-client.js.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +190 -0
- package/dist/mcp/server.js.map +1 -1
- package/dist/routes/index.d.ts.map +1 -1
- package/dist/routes/index.js +3 -0
- package/dist/routes/index.js.map +1 -1
- package/dist/routes/system.d.ts.map +1 -1
- package/dist/routes/system.js +35 -1
- package/dist/routes/system.js.map +1 -1
- package/dist/routes/team-runs.d.ts +11 -0
- package/dist/routes/team-runs.d.ts.map +1 -0
- package/dist/routes/team-runs.js +299 -0
- package/dist/routes/team-runs.js.map +1 -0
- package/dist/services/__tests__/session-manager.team-run.test.d.ts +2 -0
- package/dist/services/__tests__/session-manager.team-run.test.d.ts.map +1 -0
- package/dist/services/__tests__/session-manager.team-run.test.js +286 -0
- package/dist/services/__tests__/session-manager.team-run.test.js.map +1 -0
- package/dist/services/__tests__/team-lock.service.test.d.ts +2 -0
- package/dist/services/__tests__/team-lock.service.test.d.ts.map +1 -0
- package/dist/services/__tests__/team-lock.service.test.js +81 -0
- package/dist/services/__tests__/team-lock.service.test.js.map +1 -0
- package/dist/services/__tests__/team-reconciler.service.test.d.ts +2 -0
- package/dist/services/__tests__/team-reconciler.service.test.d.ts.map +1 -0
- package/dist/services/__tests__/team-reconciler.service.test.js +1038 -0
- package/dist/services/__tests__/team-reconciler.service.test.js.map +1 -0
- package/dist/services/__tests__/team-run.service.test.d.ts +2 -0
- package/dist/services/__tests__/team-run.service.test.d.ts.map +1 -0
- package/dist/services/__tests__/team-run.service.test.js +447 -0
- package/dist/services/__tests__/team-run.service.test.js.map +1 -0
- package/dist/services/__tests__/team-scheduler.service.test.d.ts +2 -0
- package/dist/services/__tests__/team-scheduler.service.test.d.ts.map +1 -0
- package/dist/services/__tests__/team-scheduler.service.test.js +1158 -0
- package/dist/services/__tests__/team-scheduler.service.test.js.map +1 -0
- package/dist/services/session-manager.d.ts +31 -1
- package/dist/services/session-manager.d.ts.map +1 -1
- package/dist/services/session-manager.js +110 -2
- package/dist/services/session-manager.js.map +1 -1
- package/dist/services/team-lock.service.d.ts +22 -0
- package/dist/services/team-lock.service.d.ts.map +1 -0
- package/dist/services/team-lock.service.js +45 -0
- package/dist/services/team-lock.service.js.map +1 -0
- package/dist/services/team-reconciler.service.d.ts +44 -0
- package/dist/services/team-reconciler.service.d.ts.map +1 -0
- package/dist/services/team-reconciler.service.js +286 -0
- package/dist/services/team-reconciler.service.js.map +1 -0
- package/dist/services/team-run-events.d.ts +13 -0
- package/dist/services/team-run-events.d.ts.map +1 -0
- package/dist/services/team-run-events.js +27 -0
- package/dist/services/team-run-events.js.map +1 -0
- package/dist/services/team-run.service.d.ts +89 -0
- package/dist/services/team-run.service.d.ts.map +1 -0
- package/dist/services/team-run.service.js +577 -0
- package/dist/services/team-run.service.js.map +1 -0
- package/dist/services/team-scheduler.service.d.ts +89 -0
- package/dist/services/team-scheduler.service.d.ts.map +1 -0
- package/dist/services/team-scheduler.service.js +750 -0
- package/dist/services/team-scheduler.service.js.map +1 -0
- package/dist/socket/events.d.ts +1 -1
- package/dist/socket/events.d.ts.map +1 -1
- package/dist/socket/events.js.map +1 -1
- package/dist/socket/socket-gateway.d.ts.map +1 -1
- package/dist/socket/socket-gateway.js +5 -1
- package/dist/socket/socket-gateway.js.map +1 -1
- package/dist/web/assets/AgentDemoPage-p9YI4_l4.js +1 -0
- package/dist/web/assets/{DemoPage-XwuS8vNB.js → DemoPage-B5DTSEbS.js} +3 -3
- package/dist/web/assets/{GeneralSettingsPage-CliIgpwf.js → GeneralSettingsPage-Cspr7Vol.js} +1 -1
- package/dist/web/assets/{NotificationSettingsPage-y3vhVgPv.js → NotificationSettingsPage-C9VfrRr-.js} +1 -1
- package/dist/web/assets/{ProfileSettingsPage-CkU_kZKG.js → ProfileSettingsPage-CNugU40a.js} +1 -1
- package/dist/web/assets/ProjectKanbanPage-CkGNuqxq.js +87 -0
- package/dist/web/assets/{ProjectSettingsPage-B6xhbziO.js → ProjectSettingsPage-f1dg0XMf.js} +1 -1
- package/dist/web/assets/{ProviderSettingsPage-CfvdeoEU.js → ProviderSettingsPage-D_KWkgRM.js} +1 -1
- package/dist/web/assets/TeamSettingsPage-B6WciZyi.js +1 -0
- package/dist/web/assets/{button-BWFTEdOr.js → button-B6JaSbDB.js} +1 -1
- package/dist/web/assets/{chevron-down-CuPdBAx-.js → chevron-down-CACy4UFq.js} +1 -1
- package/dist/web/assets/{chevron-right-Cs8vYTMn.js → chevron-right-DFWfnDJY.js} +1 -1
- package/dist/web/assets/chevron-up-CGlf6jzw.js +1 -0
- package/dist/web/assets/{circle-alert-EUyZcWhp.js → circle-alert-BSAUEd9O.js} +1 -1
- package/dist/web/assets/{circle-check-BXZTzqw0.js → circle-check-DMK8auwb.js} +1 -1
- package/dist/web/assets/{code-block-OCS4YCEC-BxUpvXK_.js → code-block-OCS4YCEC-Hn75KHRK.js} +1 -1
- package/dist/web/assets/{confirm-dialog-CDLHRthd.js → confirm-dialog-DHI2f7Ni.js} +1 -1
- package/dist/web/assets/{folder-picker-CUbhsnhi.js → folder-picker-CtQkbWfa.js} +1 -1
- package/dist/web/assets/index-BFAA3PTl.js +13 -0
- package/dist/web/assets/index-mBCb67dB.css +1 -0
- package/dist/web/assets/{loader-circle-BHzDVpxt.js → loader-circle-CkDnf8ST.js} +1 -1
- package/dist/web/assets/{mermaid-NOHMQCX5-BOSwJqP0.js → mermaid-NOHMQCX5-DJFgrXPd.js} +44 -44
- package/dist/web/assets/modal-B5IRN7QI.js +1 -0
- package/dist/web/assets/{pencil-BMxBxIhw.js → pencil-CJY6Ahn7.js} +1 -1
- package/dist/web/assets/{select-BUmRG0LY.js → select-BPZZlla1.js} +1 -1
- package/dist/web/assets/{use-profiles-C1vlPE-2.js → use-profiles-C2k04ICZ.js} +1 -1
- package/dist/web/assets/{use-projects-Bcd5hIOY.js → use-projects-BxuE-ulT.js} +1 -1
- package/dist/web/assets/{use-providers-Cdxr4Jbz.js → use-providers-C7fIDWzP.js} +1 -1
- package/dist/web/index.html +2 -2
- package/node_modules/@agent-tower/shared/dist/socket/events.d.ts +10 -0
- package/node_modules/@agent-tower/shared/dist/socket/events.d.ts.map +1 -1
- package/node_modules/@agent-tower/shared/dist/socket/events.js +1 -0
- package/node_modules/@agent-tower/shared/dist/socket/events.js.map +1 -1
- package/node_modules/@agent-tower/shared/dist/types.d.ts +153 -0
- package/node_modules/@agent-tower/shared/dist/types.d.ts.map +1 -1
- package/node_modules/@agent-tower/shared/dist/types.js.map +1 -1
- package/node_modules/@prisma/client/.prisma/client/default.d.ts +1 -0
- package/node_modules/@prisma/client/.prisma/client/default.js +1 -0
- package/node_modules/@prisma/client/.prisma/client/edge.d.ts +1 -0
- package/node_modules/@prisma/client/.prisma/client/edge.js +392 -0
- package/node_modules/@prisma/client/.prisma/client/index-browser.js +381 -0
- package/node_modules/@prisma/client/.prisma/client/index.d.ts +25768 -0
- package/node_modules/@prisma/client/.prisma/client/index.js +417 -0
- package/node_modules/@prisma/client/.prisma/client/libquery_engine-darwin-arm64.dylib.node +0 -0
- package/node_modules/@prisma/client/.prisma/client/package.json +97 -0
- package/node_modules/@prisma/client/.prisma/client/query_engine-windows.dll.node +0 -0
- package/node_modules/@prisma/client/.prisma/client/schema.prisma +280 -0
- package/node_modules/@prisma/client/.prisma/client/wasm.d.ts +1 -0
- package/node_modules/@prisma/client/.prisma/client/wasm.js +381 -0
- package/node_modules/@prisma/client/package.json +3 -2
- package/package.json +2 -1
- package/prisma/migrations/20260518000000_add_team_run_collaboration/migration.sql +150 -0
- package/prisma/migrations/20260522000000_add_team_member_session_policy/migration.sql +2 -0
- package/prisma/schema.prisma +131 -1
- package/dist/web/assets/AgentDemoPage-ClnGPAV9.js +0 -1
- package/dist/web/assets/ProjectKanbanPage-BddzfZRV.js +0 -87
- package/dist/web/assets/index-BGvfX18x.css +0 -1
- package/dist/web/assets/index-CHN8jahE.js +0 -13
- package/dist/web/assets/modal-D_AU4URz.js +0 -1
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import type { AgentInvocation, WorkRequest } from '@agent-tower/shared';
|
|
2
|
+
import { AgentType } from '../types/index.js';
|
|
3
|
+
import { type Provider } from '../executors/index.js';
|
|
4
|
+
import { TeamLockService } from './team-lock.service.js';
|
|
5
|
+
export interface SchedulePlan {
|
|
6
|
+
workRequestId: string;
|
|
7
|
+
memberId: string;
|
|
8
|
+
canStart: boolean;
|
|
9
|
+
blockedReason?: 'member_busy' | 'member_already_planned' | 'resource_locked' | 'member_not_found' | 'unsupported_workspace_policy';
|
|
10
|
+
requiresStopCurrent: boolean;
|
|
11
|
+
lockKeys: string[];
|
|
12
|
+
workspaceId: string | null;
|
|
13
|
+
projectId: string | null;
|
|
14
|
+
}
|
|
15
|
+
export interface StopMemberWorkResult {
|
|
16
|
+
stoppedSessionIds: string[];
|
|
17
|
+
cancelledInvocationIds: string[];
|
|
18
|
+
cancelledWorkRequestIds: string[];
|
|
19
|
+
startedInvocations: AgentInvocation[];
|
|
20
|
+
}
|
|
21
|
+
type WorkspaceStarter = {
|
|
22
|
+
create(taskId: string): Promise<{
|
|
23
|
+
id: string;
|
|
24
|
+
}>;
|
|
25
|
+
};
|
|
26
|
+
type SessionStarter = {
|
|
27
|
+
create(workspaceId: string, agentType: AgentType, prompt: string, variant?: string, providerId?: string): Promise<{
|
|
28
|
+
id: string;
|
|
29
|
+
}>;
|
|
30
|
+
start(id: string): Promise<unknown>;
|
|
31
|
+
startFollowUp?(id: string, resumeFromSessionId: string): Promise<unknown>;
|
|
32
|
+
stop?(id: string): Promise<unknown>;
|
|
33
|
+
};
|
|
34
|
+
interface TeamSchedulerDependencies {
|
|
35
|
+
workspaceService?: WorkspaceStarter;
|
|
36
|
+
sessionManager?: SessionStarter;
|
|
37
|
+
getProviderById?: (providerId: string) => Provider | null;
|
|
38
|
+
}
|
|
39
|
+
export declare class TeamSchedulerService {
|
|
40
|
+
private readonly lockService;
|
|
41
|
+
private static readonly memberSchedulingLocks;
|
|
42
|
+
private static readonly sharedWorkspaceClaims;
|
|
43
|
+
private readonly workspaceService;
|
|
44
|
+
private readonly sessionManager;
|
|
45
|
+
private readonly providerLookup;
|
|
46
|
+
constructor(lockService?: TeamLockService, dependencies?: TeamSchedulerDependencies);
|
|
47
|
+
planNext(teamRunId: string): Promise<SchedulePlan[]>;
|
|
48
|
+
startNext(teamRunId: string): Promise<AgentInvocation[]>;
|
|
49
|
+
startNextSessions(teamRunId: string): Promise<AgentInvocation[]>;
|
|
50
|
+
approveWorkRequest(workRequestId: string): Promise<WorkRequest>;
|
|
51
|
+
approveWorkRequestAndStartNext(workRequestId: string): Promise<{
|
|
52
|
+
workRequest: WorkRequest;
|
|
53
|
+
startedInvocations: AgentInvocation[];
|
|
54
|
+
}>;
|
|
55
|
+
rejectWorkRequest(workRequestId: string): Promise<WorkRequest>;
|
|
56
|
+
cancelWorkRequest(workRequestId: string): Promise<WorkRequest>;
|
|
57
|
+
stopMemberWork(teamRunId: string, memberId: string, options?: {
|
|
58
|
+
cancelQueued?: boolean;
|
|
59
|
+
}): Promise<StopMemberWorkResult>;
|
|
60
|
+
releaseInvocationLocks(invocationId: string): void;
|
|
61
|
+
private createInvocationForClaimedWorkRequest;
|
|
62
|
+
private createRunningInvocationForClaimedWorkRequest;
|
|
63
|
+
private getSchedulingContext;
|
|
64
|
+
private getWorkRequestOrThrow;
|
|
65
|
+
private getTeamMemberOrThrow;
|
|
66
|
+
private transitionWorkRequestStatus;
|
|
67
|
+
private cancelInvocationsWithoutSession;
|
|
68
|
+
private cancelQueuedWorkRequestsForMember;
|
|
69
|
+
private findActiveMemberIds;
|
|
70
|
+
private hasActiveInvocation;
|
|
71
|
+
private getOrCreateSharedWorkspace;
|
|
72
|
+
private findOrCreateSharedWorkspace;
|
|
73
|
+
private buildSessionPrompt;
|
|
74
|
+
private findResumeSourceSessionId;
|
|
75
|
+
private markInvocationStartFailed;
|
|
76
|
+
private emitTeamRunInvalidated;
|
|
77
|
+
private emitTeamRunInvalidatedById;
|
|
78
|
+
private markSessionFailed;
|
|
79
|
+
private getRequiredLocks;
|
|
80
|
+
private resolveInvocationWorkspaceId;
|
|
81
|
+
private resolveLockWorkspaceId;
|
|
82
|
+
private memberSchedulingLockKey;
|
|
83
|
+
private acquireMemberSchedulingLock;
|
|
84
|
+
private releaseMemberSchedulingLock;
|
|
85
|
+
private serializeWorkRequest;
|
|
86
|
+
private serializeAgentInvocation;
|
|
87
|
+
}
|
|
88
|
+
export {};
|
|
89
|
+
//# sourceMappingURL=team-scheduler.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"team-scheduler.service.d.ts","sourceRoot":"","sources":["../../src/services/team-scheduler.service.ts"],"names":[],"mappings":"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"}
|