cyrus-core 0.2.5 → 0.2.6
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/CyrusAgentSession.d.ts +14 -0
- package/dist/CyrusAgentSession.d.ts.map +1 -1
- package/dist/agent-runner-types.d.ts +97 -0
- package/dist/agent-runner-types.d.ts.map +1 -1
- package/dist/config-types.d.ts +22 -4
- package/dist/config-types.d.ts.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/issue-tracker/IIssueTrackerService.d.ts +18 -5
- package/dist/issue-tracker/IIssueTrackerService.d.ts.map +1 -1
- package/dist/issue-tracker/adapters/CLIEventTransport.d.ts +91 -0
- package/dist/issue-tracker/adapters/CLIEventTransport.d.ts.map +1 -0
- package/dist/issue-tracker/adapters/CLIEventTransport.js +104 -0
- package/dist/issue-tracker/adapters/CLIEventTransport.js.map +1 -0
- package/dist/issue-tracker/adapters/CLIIssueTrackerService.d.ts +239 -0
- package/dist/issue-tracker/adapters/CLIIssueTrackerService.d.ts.map +1 -0
- package/dist/issue-tracker/adapters/CLIIssueTrackerService.js +1112 -0
- package/dist/issue-tracker/adapters/CLIIssueTrackerService.js.map +1 -0
- package/dist/issue-tracker/adapters/CLIRPCServer.d.ts +318 -0
- package/dist/issue-tracker/adapters/CLIRPCServer.d.ts.map +1 -0
- package/dist/issue-tracker/adapters/CLIRPCServer.js +536 -0
- package/dist/issue-tracker/adapters/CLIRPCServer.js.map +1 -0
- package/dist/issue-tracker/adapters/CLITypes.d.ts +243 -0
- package/dist/issue-tracker/adapters/CLITypes.d.ts.map +1 -0
- package/dist/issue-tracker/adapters/CLITypes.js +378 -0
- package/dist/issue-tracker/adapters/CLITypes.js.map +1 -0
- package/dist/issue-tracker/adapters/index.d.ts +14 -0
- package/dist/issue-tracker/adapters/index.d.ts.map +1 -0
- package/dist/issue-tracker/adapters/index.js +11 -0
- package/dist/issue-tracker/adapters/index.js.map +1 -0
- package/dist/issue-tracker/index.d.ts +2 -1
- package/dist/issue-tracker/index.d.ts.map +1 -1
- package/dist/issue-tracker/index.js +3 -2
- package/dist/issue-tracker/index.js.map +1 -1
- package/dist/issue-tracker/types.d.ts +141 -29
- package/dist/issue-tracker/types.d.ts.map +1 -1
- package/dist/issue-tracker/types.js.map +1 -1
- package/package.json +30 -30
- package/LICENSE +0 -674
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI/in-memory implementation of IIssueTrackerService.
|
|
3
|
+
*
|
|
4
|
+
* This adapter provides an in-memory mock of Linear's issue tracking platform
|
|
5
|
+
* for testing purposes. It implements all methods from IIssueTrackerService
|
|
6
|
+
* while storing data in memory using Maps for O(1) lookups.
|
|
7
|
+
*
|
|
8
|
+
* Unlike Linear's async properties, this implementation uses synchronous properties
|
|
9
|
+
* for immediate access to related entities.
|
|
10
|
+
*
|
|
11
|
+
* @module issue-tracker/adapters/CLIIssueTrackerService
|
|
12
|
+
*/
|
|
13
|
+
import { EventEmitter } from "node:events";
|
|
14
|
+
import type { AgentEventTransportConfig, IAgentEventTransport } from "../IAgentEventTransport.js";
|
|
15
|
+
import type { IIssueTrackerService } from "../IIssueTrackerService.js";
|
|
16
|
+
import { type AgentActivityCreateInput, type AgentActivityPayload, type AgentSessionCreateOnCommentInput, type AgentSessionCreateOnIssueInput, AgentSessionStatus, type Comment, type CommentCreateInput, type CommentWithAttachments, type Connection, type FetchChildrenOptions, type FileUploadRequest, type FileUploadResponse, type Issue, type IssueCreateInput, type IssueTrackerAgentSession, type IssueTrackerAgentSessionPayload, type IssueUpdateInput, type IssueWithChildren, type Label, type PaginationOptions, type Team, type User, type WorkflowState } from "../types.js";
|
|
17
|
+
import { type CLIAgentActivityData, type CLIAgentSessionData, type CLICommentData, type CLIIssueData, type CLILabelData, type CLITeamData, type CLIUserData, type CLIWorkflowStateData } from "./CLITypes.js";
|
|
18
|
+
/**
|
|
19
|
+
* In-memory state for the CLI issue tracker.
|
|
20
|
+
*/
|
|
21
|
+
export interface CLIIssueTrackerState {
|
|
22
|
+
issues: Map<string, CLIIssueData>;
|
|
23
|
+
comments: Map<string, CLICommentData>;
|
|
24
|
+
teams: Map<string, CLITeamData>;
|
|
25
|
+
labels: Map<string, CLILabelData>;
|
|
26
|
+
workflowStates: Map<string, CLIWorkflowStateData>;
|
|
27
|
+
users: Map<string, CLIUserData>;
|
|
28
|
+
agentSessions: Map<string, CLIAgentSessionData>;
|
|
29
|
+
agentActivities: Map<string, CLIAgentActivityData>;
|
|
30
|
+
currentUserId: string;
|
|
31
|
+
issueCounter: number;
|
|
32
|
+
commentCounter: number;
|
|
33
|
+
sessionCounter: number;
|
|
34
|
+
activityCounter: number;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* CLI implementation of IIssueTrackerService.
|
|
38
|
+
*
|
|
39
|
+
* This class provides an in-memory implementation of the issue tracker service
|
|
40
|
+
* for testing purposes. All data is stored in Maps with synchronous property access.
|
|
41
|
+
*
|
|
42
|
+
* @example
|
|
43
|
+
* ```typescript
|
|
44
|
+
* const service = new CLIIssueTrackerService();
|
|
45
|
+
*
|
|
46
|
+
* // Fetch an issue
|
|
47
|
+
* const issue = await service.fetchIssue('issue-1');
|
|
48
|
+
*
|
|
49
|
+
* // Create a comment
|
|
50
|
+
* const comment = await service.createComment(issue.id, {
|
|
51
|
+
* body: 'This is a comment'
|
|
52
|
+
* });
|
|
53
|
+
* ```
|
|
54
|
+
*/
|
|
55
|
+
export declare class CLIIssueTrackerService extends EventEmitter implements IIssueTrackerService {
|
|
56
|
+
private state;
|
|
57
|
+
private eventTransport;
|
|
58
|
+
/**
|
|
59
|
+
* Create a new CLIIssueTrackerService.
|
|
60
|
+
*
|
|
61
|
+
* @param initialState - Optional initial state (useful for testing)
|
|
62
|
+
*/
|
|
63
|
+
constructor(initialState?: Partial<CLIIssueTrackerState>);
|
|
64
|
+
/**
|
|
65
|
+
* Fetch a single issue by ID or identifier.
|
|
66
|
+
*/
|
|
67
|
+
fetchIssue(idOrIdentifier: string): Promise<Issue>;
|
|
68
|
+
/**
|
|
69
|
+
* Create a new issue in a team.
|
|
70
|
+
*
|
|
71
|
+
* @param input - Issue creation parameters
|
|
72
|
+
* @returns Promise resolving to the created issue
|
|
73
|
+
*/
|
|
74
|
+
createIssue(input: IssueCreateInput): Promise<Issue>;
|
|
75
|
+
/**
|
|
76
|
+
* Get priority label from priority number.
|
|
77
|
+
*/
|
|
78
|
+
private getPriorityLabel;
|
|
79
|
+
/**
|
|
80
|
+
* Fetch child issues (sub-issues) for a parent issue.
|
|
81
|
+
*/
|
|
82
|
+
fetchIssueChildren(issueId: string, options?: FetchChildrenOptions): Promise<IssueWithChildren>;
|
|
83
|
+
/**
|
|
84
|
+
* Update an issue's properties.
|
|
85
|
+
*/
|
|
86
|
+
updateIssue(issueId: string, updates: IssueUpdateInput): Promise<Issue>;
|
|
87
|
+
/**
|
|
88
|
+
* Fetch attachments for an issue.
|
|
89
|
+
*/
|
|
90
|
+
fetchIssueAttachments(issueId: string): Promise<Array<{
|
|
91
|
+
title: string;
|
|
92
|
+
url: string;
|
|
93
|
+
}>>;
|
|
94
|
+
/**
|
|
95
|
+
* Fetch comments for an issue with optional pagination.
|
|
96
|
+
*/
|
|
97
|
+
fetchComments(issueId: string, options?: PaginationOptions): Promise<Connection<Comment>>;
|
|
98
|
+
/**
|
|
99
|
+
* Fetch a single comment by ID.
|
|
100
|
+
*/
|
|
101
|
+
fetchComment(commentId: string): Promise<Comment>;
|
|
102
|
+
/**
|
|
103
|
+
* Fetch a comment with attachments.
|
|
104
|
+
*/
|
|
105
|
+
fetchCommentWithAttachments(commentId: string): Promise<CommentWithAttachments>;
|
|
106
|
+
/**
|
|
107
|
+
* Create a comment on an issue.
|
|
108
|
+
*/
|
|
109
|
+
createComment(issueId: string, input: CommentCreateInput): Promise<Comment>;
|
|
110
|
+
/**
|
|
111
|
+
* Fetch all teams in the workspace/organization.
|
|
112
|
+
*/
|
|
113
|
+
fetchTeams(options?: PaginationOptions): Promise<Connection<Team>>;
|
|
114
|
+
/**
|
|
115
|
+
* Fetch a single team by ID or key.
|
|
116
|
+
*/
|
|
117
|
+
fetchTeam(idOrKey: string): Promise<Team>;
|
|
118
|
+
/**
|
|
119
|
+
* Fetch all issue labels in the workspace/organization.
|
|
120
|
+
*/
|
|
121
|
+
fetchLabels(options?: PaginationOptions): Promise<Connection<Label>>;
|
|
122
|
+
/**
|
|
123
|
+
* Fetch a single label by ID or name.
|
|
124
|
+
*/
|
|
125
|
+
fetchLabel(idOrName: string): Promise<Label>;
|
|
126
|
+
/**
|
|
127
|
+
* Fetch label names for a specific issue.
|
|
128
|
+
*/
|
|
129
|
+
getIssueLabels(issueId: string): Promise<string[]>;
|
|
130
|
+
/**
|
|
131
|
+
* Fetch workflow states for a team.
|
|
132
|
+
*/
|
|
133
|
+
fetchWorkflowStates(teamId: string, options?: PaginationOptions): Promise<Connection<WorkflowState>>;
|
|
134
|
+
/**
|
|
135
|
+
* Fetch a single workflow state by ID.
|
|
136
|
+
*/
|
|
137
|
+
fetchWorkflowState(stateId: string): Promise<WorkflowState>;
|
|
138
|
+
/**
|
|
139
|
+
* Fetch a user by ID.
|
|
140
|
+
*/
|
|
141
|
+
fetchUser(userId: string): Promise<User>;
|
|
142
|
+
/**
|
|
143
|
+
* Fetch the current authenticated user.
|
|
144
|
+
*/
|
|
145
|
+
fetchCurrentUser(): Promise<User>;
|
|
146
|
+
/**
|
|
147
|
+
* Create an agent session on an issue.
|
|
148
|
+
*/
|
|
149
|
+
createAgentSessionOnIssue(input: AgentSessionCreateOnIssueInput): Promise<IssueTrackerAgentSessionPayload>;
|
|
150
|
+
/**
|
|
151
|
+
* Create an agent session on a comment thread.
|
|
152
|
+
*/
|
|
153
|
+
createAgentSessionOnComment(input: AgentSessionCreateOnCommentInput): Promise<IssueTrackerAgentSessionPayload>;
|
|
154
|
+
/**
|
|
155
|
+
* Internal helper to create agent sessions.
|
|
156
|
+
*/
|
|
157
|
+
private createAgentSessionInternal;
|
|
158
|
+
/**
|
|
159
|
+
* Fetch an agent session by ID.
|
|
160
|
+
*/
|
|
161
|
+
fetchAgentSession(sessionId: string): Promise<IssueTrackerAgentSession>;
|
|
162
|
+
/**
|
|
163
|
+
* List agent sessions with optional filtering.
|
|
164
|
+
*
|
|
165
|
+
* @param options - Filtering options (issueId, limit, offset)
|
|
166
|
+
* @returns Array of agent session data
|
|
167
|
+
*/
|
|
168
|
+
listAgentSessions(options?: {
|
|
169
|
+
issueId?: string;
|
|
170
|
+
limit?: number;
|
|
171
|
+
offset?: number;
|
|
172
|
+
}): CLIAgentSessionData[];
|
|
173
|
+
/**
|
|
174
|
+
* Update an agent session's status.
|
|
175
|
+
*
|
|
176
|
+
* @param sessionId - The session ID to update
|
|
177
|
+
* @param status - The new status
|
|
178
|
+
* @returns The updated session
|
|
179
|
+
*/
|
|
180
|
+
updateAgentSessionStatus(sessionId: string, status: AgentSessionStatus): Promise<IssueTrackerAgentSession>;
|
|
181
|
+
/**
|
|
182
|
+
* Emit a stop signal webhook event for the EdgeWorker to handle.
|
|
183
|
+
* Should be called by the caller after stopping a session (e.g., CLIRPCServer.handleStopSession).
|
|
184
|
+
*/
|
|
185
|
+
emitStopSignalEvent(sessionId: string): Promise<void>;
|
|
186
|
+
/**
|
|
187
|
+
* Prompt an agent session with a user message.
|
|
188
|
+
* This creates a comment on the associated issue and emits a prompted event.
|
|
189
|
+
*
|
|
190
|
+
* @param sessionId - The session ID to prompt
|
|
191
|
+
* @param message - The user's prompt message
|
|
192
|
+
* @returns The created comment
|
|
193
|
+
*/
|
|
194
|
+
promptAgentSession(sessionId: string, message: string): Promise<Comment>;
|
|
195
|
+
/**
|
|
196
|
+
* Post an agent activity to an agent session.
|
|
197
|
+
*/
|
|
198
|
+
createAgentActivity(input: AgentActivityCreateInput): Promise<AgentActivityPayload>;
|
|
199
|
+
/**
|
|
200
|
+
* List agent activities for a session.
|
|
201
|
+
*
|
|
202
|
+
* @param sessionId - The session ID to get activities for
|
|
203
|
+
* @param options - Pagination options
|
|
204
|
+
* @returns Array of agent activity data
|
|
205
|
+
*/
|
|
206
|
+
listAgentActivities(sessionId: string, options?: {
|
|
207
|
+
limit?: number;
|
|
208
|
+
offset?: number;
|
|
209
|
+
}): CLIAgentActivityData[];
|
|
210
|
+
/**
|
|
211
|
+
* Request a file upload URL from the platform.
|
|
212
|
+
*/
|
|
213
|
+
requestFileUpload(request: FileUploadRequest): Promise<FileUploadResponse>;
|
|
214
|
+
/**
|
|
215
|
+
* Get the platform type identifier.
|
|
216
|
+
*/
|
|
217
|
+
getPlatformType(): string;
|
|
218
|
+
/**
|
|
219
|
+
* Get the platform's API version or other metadata.
|
|
220
|
+
*/
|
|
221
|
+
getPlatformMetadata(): Record<string, unknown>;
|
|
222
|
+
/**
|
|
223
|
+
* Create an event transport for receiving webhook events.
|
|
224
|
+
*
|
|
225
|
+
* @param config - Transport configuration
|
|
226
|
+
* @returns CLI event transport implementation
|
|
227
|
+
*/
|
|
228
|
+
createEventTransport(config: AgentEventTransportConfig): IAgentEventTransport;
|
|
229
|
+
/**
|
|
230
|
+
* Seed default teams and workflow states for testing.
|
|
231
|
+
* Creates a "default" team with standard workflow states.
|
|
232
|
+
*/
|
|
233
|
+
seedDefaultData(): void;
|
|
234
|
+
/**
|
|
235
|
+
* Get the current in-memory state (for testing/debugging).
|
|
236
|
+
*/
|
|
237
|
+
getState(): CLIIssueTrackerState;
|
|
238
|
+
}
|
|
239
|
+
//# sourceMappingURL=CLIIssueTrackerService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CLIIssueTrackerService.d.ts","sourceRoot":"","sources":["../../../src/issue-tracker/adapters/CLIIssueTrackerService.ts"],"names":[],"mappings":"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"}
|