@agentuity/core 1.0.22 → 1.0.24
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/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/services/_util.d.ts.map +1 -1
- package/dist/services/_util.js +26 -1
- package/dist/services/_util.js.map +1 -1
- package/dist/services/email.d.ts +298 -0
- package/dist/services/email.d.ts.map +1 -0
- package/dist/services/email.js +308 -0
- package/dist/services/email.js.map +1 -0
- package/dist/services/index.d.ts +3 -0
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +3 -0
- package/dist/services/index.js.map +1 -1
- package/dist/services/schedule.d.ts +88 -0
- package/dist/services/schedule.d.ts.map +1 -0
- package/dist/services/schedule.js +206 -0
- package/dist/services/schedule.js.map +1 -0
- package/dist/services/task.d.ts +100 -0
- package/dist/services/task.d.ts.map +1 -0
- package/dist/services/task.js +208 -0
- package/dist/services/task.js.map +1 -0
- package/package.json +2 -2
- package/src/index.ts +37 -0
- package/src/services/_util.ts +27 -1
- package/src/services/email.ts +665 -0
- package/src/services/index.ts +3 -0
- package/src/services/schedule.ts +332 -0
- package/src/services/task.ts +366 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schedule.js","sourceRoot":"","sources":["../../src/services/schedule.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { FetchAdapter } from './adapter.ts';
|
|
2
|
+
export type TaskPriority = 'high' | 'medium' | 'low' | 'none';
|
|
3
|
+
export type TaskType = 'epic' | 'feature' | 'enhancement' | 'bug' | 'task';
|
|
4
|
+
export type TaskStatus = 'open' | 'in_progress' | 'closed';
|
|
5
|
+
export interface Task {
|
|
6
|
+
id: string;
|
|
7
|
+
created_at: string;
|
|
8
|
+
updated_at: string;
|
|
9
|
+
title: string;
|
|
10
|
+
description?: string;
|
|
11
|
+
metadata?: Record<string, unknown>;
|
|
12
|
+
priority: TaskPriority;
|
|
13
|
+
parent_id?: string;
|
|
14
|
+
type: TaskType;
|
|
15
|
+
status: TaskStatus;
|
|
16
|
+
open_date?: string;
|
|
17
|
+
in_progress_date?: string;
|
|
18
|
+
closed_date?: string;
|
|
19
|
+
created_id: string;
|
|
20
|
+
assigned_id?: string;
|
|
21
|
+
closed_id?: string;
|
|
22
|
+
}
|
|
23
|
+
export interface TaskChangelogEntry {
|
|
24
|
+
id: string;
|
|
25
|
+
created_at: string;
|
|
26
|
+
task_id: string;
|
|
27
|
+
field: string;
|
|
28
|
+
old_value?: string;
|
|
29
|
+
new_value?: string;
|
|
30
|
+
}
|
|
31
|
+
export interface CreateTaskParams {
|
|
32
|
+
title: string;
|
|
33
|
+
description?: string;
|
|
34
|
+
metadata?: Record<string, unknown>;
|
|
35
|
+
priority?: TaskPriority;
|
|
36
|
+
parent_id?: string;
|
|
37
|
+
type: TaskType;
|
|
38
|
+
status?: TaskStatus;
|
|
39
|
+
created_id: string;
|
|
40
|
+
assigned_id?: string;
|
|
41
|
+
}
|
|
42
|
+
export interface UpdateTaskParams {
|
|
43
|
+
title?: string;
|
|
44
|
+
description?: string;
|
|
45
|
+
metadata?: Record<string, unknown>;
|
|
46
|
+
priority?: TaskPriority;
|
|
47
|
+
parent_id?: string;
|
|
48
|
+
type?: TaskType;
|
|
49
|
+
status?: TaskStatus;
|
|
50
|
+
assigned_id?: string;
|
|
51
|
+
closed_id?: string;
|
|
52
|
+
}
|
|
53
|
+
export interface ListTasksParams {
|
|
54
|
+
status?: TaskStatus;
|
|
55
|
+
type?: TaskType;
|
|
56
|
+
priority?: TaskPriority;
|
|
57
|
+
assigned_id?: string;
|
|
58
|
+
parent_id?: string;
|
|
59
|
+
sort?: string;
|
|
60
|
+
order?: 'asc' | 'desc';
|
|
61
|
+
limit?: number;
|
|
62
|
+
offset?: number;
|
|
63
|
+
}
|
|
64
|
+
export interface ListTasksResult {
|
|
65
|
+
tasks: Task[];
|
|
66
|
+
total: number;
|
|
67
|
+
limit: number;
|
|
68
|
+
offset: number;
|
|
69
|
+
}
|
|
70
|
+
export interface TaskChangelogResult {
|
|
71
|
+
changelog: TaskChangelogEntry[];
|
|
72
|
+
total: number;
|
|
73
|
+
limit: number;
|
|
74
|
+
offset: number;
|
|
75
|
+
}
|
|
76
|
+
export interface TaskStorage {
|
|
77
|
+
create(params: CreateTaskParams): Promise<Task>;
|
|
78
|
+
get(id: string): Promise<Task | null>;
|
|
79
|
+
list(params?: ListTasksParams): Promise<ListTasksResult>;
|
|
80
|
+
update(id: string, params: UpdateTaskParams): Promise<Task>;
|
|
81
|
+
close(id: string): Promise<Task>;
|
|
82
|
+
changelog(id: string, params?: {
|
|
83
|
+
limit?: number;
|
|
84
|
+
offset?: number;
|
|
85
|
+
}): Promise<TaskChangelogResult>;
|
|
86
|
+
}
|
|
87
|
+
export declare class TaskStorageService implements TaskStorage {
|
|
88
|
+
#private;
|
|
89
|
+
constructor(baseUrl: string, adapter: FetchAdapter);
|
|
90
|
+
create(params: CreateTaskParams): Promise<Task>;
|
|
91
|
+
get(id: string): Promise<Task | null>;
|
|
92
|
+
list(params?: ListTasksParams): Promise<ListTasksResult>;
|
|
93
|
+
update(id: string, params: UpdateTaskParams): Promise<Task>;
|
|
94
|
+
close(id: string): Promise<Task>;
|
|
95
|
+
changelog(id: string, params?: {
|
|
96
|
+
limit?: number;
|
|
97
|
+
offset?: number;
|
|
98
|
+
}): Promise<TaskChangelogResult>;
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=task.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../src/services/task.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
import { buildUrl, toServiceException } from "./_util.js";
|
|
2
|
+
import { StructuredError } from "../error.js";
|
|
3
|
+
import { safeStringify } from "../json.js";
|
|
4
|
+
const TASK_API_VERSION = '2026-02-24';
|
|
5
|
+
const TaskIdRequiredError = StructuredError('TaskIdRequiredError', 'Task ID is required and must be a non-empty string');
|
|
6
|
+
const TaskTitleRequiredError = StructuredError('TaskTitleRequiredError', 'Task title is required and must be a non-empty string');
|
|
7
|
+
const TaskStorageResponseError = StructuredError('TaskStorageResponseError')();
|
|
8
|
+
export class TaskStorageService {
|
|
9
|
+
#adapter;
|
|
10
|
+
#baseUrl;
|
|
11
|
+
constructor(baseUrl, adapter) {
|
|
12
|
+
this.#adapter = adapter;
|
|
13
|
+
this.#baseUrl = baseUrl;
|
|
14
|
+
}
|
|
15
|
+
async create(params) {
|
|
16
|
+
if (!params?.title || typeof params.title !== 'string' || params.title.trim().length === 0) {
|
|
17
|
+
throw new TaskTitleRequiredError();
|
|
18
|
+
}
|
|
19
|
+
const url = buildUrl(this.#baseUrl, `/task/${TASK_API_VERSION}`);
|
|
20
|
+
const signal = AbortSignal.timeout(30_000);
|
|
21
|
+
const res = await this.#adapter.invoke(url, {
|
|
22
|
+
method: 'POST',
|
|
23
|
+
body: safeStringify(params),
|
|
24
|
+
contentType: 'application/json',
|
|
25
|
+
signal,
|
|
26
|
+
telemetry: {
|
|
27
|
+
name: 'agentuity.task.create',
|
|
28
|
+
attributes: {
|
|
29
|
+
type: params.type,
|
|
30
|
+
priority: params.priority ?? 'none',
|
|
31
|
+
status: params.status ?? 'open',
|
|
32
|
+
},
|
|
33
|
+
},
|
|
34
|
+
});
|
|
35
|
+
if (res.ok) {
|
|
36
|
+
if (res.data.success) {
|
|
37
|
+
return res.data.data;
|
|
38
|
+
}
|
|
39
|
+
throw new TaskStorageResponseError({
|
|
40
|
+
status: res.response.status,
|
|
41
|
+
message: res.data.message,
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
throw await toServiceException('POST', url, res.response);
|
|
45
|
+
}
|
|
46
|
+
async get(id) {
|
|
47
|
+
if (!id || typeof id !== 'string' || id.trim().length === 0) {
|
|
48
|
+
throw new TaskIdRequiredError();
|
|
49
|
+
}
|
|
50
|
+
const url = buildUrl(this.#baseUrl, `/task/${TASK_API_VERSION}/${encodeURIComponent(id)}`);
|
|
51
|
+
const signal = AbortSignal.timeout(30_000);
|
|
52
|
+
const res = await this.#adapter.invoke(url, {
|
|
53
|
+
method: 'GET',
|
|
54
|
+
signal,
|
|
55
|
+
telemetry: {
|
|
56
|
+
name: 'agentuity.task.get',
|
|
57
|
+
attributes: { id },
|
|
58
|
+
},
|
|
59
|
+
});
|
|
60
|
+
if (res.response.status === 404) {
|
|
61
|
+
return null;
|
|
62
|
+
}
|
|
63
|
+
if (res.ok) {
|
|
64
|
+
if (res.data.success) {
|
|
65
|
+
return res.data.data;
|
|
66
|
+
}
|
|
67
|
+
throw new TaskStorageResponseError({
|
|
68
|
+
status: res.response.status,
|
|
69
|
+
message: res.data.message,
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
throw await toServiceException('GET', url, res.response);
|
|
73
|
+
}
|
|
74
|
+
async list(params) {
|
|
75
|
+
const queryParams = new URLSearchParams();
|
|
76
|
+
if (params?.status)
|
|
77
|
+
queryParams.set('status', params.status);
|
|
78
|
+
if (params?.type)
|
|
79
|
+
queryParams.set('type', params.type);
|
|
80
|
+
if (params?.priority)
|
|
81
|
+
queryParams.set('priority', params.priority);
|
|
82
|
+
if (params?.assigned_id)
|
|
83
|
+
queryParams.set('assigned_id', params.assigned_id);
|
|
84
|
+
if (params?.parent_id)
|
|
85
|
+
queryParams.set('parent_id', params.parent_id);
|
|
86
|
+
if (params?.sort)
|
|
87
|
+
queryParams.set('sort', params.sort);
|
|
88
|
+
if (params?.order)
|
|
89
|
+
queryParams.set('order', params.order);
|
|
90
|
+
if (params?.limit !== undefined)
|
|
91
|
+
queryParams.set('limit', String(params.limit));
|
|
92
|
+
if (params?.offset !== undefined)
|
|
93
|
+
queryParams.set('offset', String(params.offset));
|
|
94
|
+
const queryString = queryParams.toString();
|
|
95
|
+
const url = buildUrl(this.#baseUrl, `/task/${TASK_API_VERSION}${queryString ? `?${queryString}` : ''}`);
|
|
96
|
+
const signal = AbortSignal.timeout(30_000);
|
|
97
|
+
const res = await this.#adapter.invoke(url, {
|
|
98
|
+
method: 'GET',
|
|
99
|
+
signal,
|
|
100
|
+
telemetry: {
|
|
101
|
+
name: 'agentuity.task.list',
|
|
102
|
+
attributes: {
|
|
103
|
+
...(params?.status ? { status: params.status } : {}),
|
|
104
|
+
...(params?.type ? { type: params.type } : {}),
|
|
105
|
+
...(params?.priority ? { priority: params.priority } : {}),
|
|
106
|
+
},
|
|
107
|
+
},
|
|
108
|
+
});
|
|
109
|
+
if (res.ok) {
|
|
110
|
+
if (res.data.success) {
|
|
111
|
+
return res.data.data;
|
|
112
|
+
}
|
|
113
|
+
throw new TaskStorageResponseError({
|
|
114
|
+
status: res.response.status,
|
|
115
|
+
message: res.data.message,
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
throw await toServiceException('GET', url, res.response);
|
|
119
|
+
}
|
|
120
|
+
async update(id, params) {
|
|
121
|
+
if (!id || typeof id !== 'string' || id.trim().length === 0) {
|
|
122
|
+
throw new TaskIdRequiredError();
|
|
123
|
+
}
|
|
124
|
+
if (params.title !== undefined &&
|
|
125
|
+
(typeof params.title !== 'string' || params.title.trim().length === 0)) {
|
|
126
|
+
throw new TaskTitleRequiredError();
|
|
127
|
+
}
|
|
128
|
+
const url = buildUrl(this.#baseUrl, `/task/${TASK_API_VERSION}/${encodeURIComponent(id)}`);
|
|
129
|
+
const signal = AbortSignal.timeout(30_000);
|
|
130
|
+
const res = await this.#adapter.invoke(url, {
|
|
131
|
+
method: 'PATCH',
|
|
132
|
+
body: safeStringify(params),
|
|
133
|
+
contentType: 'application/json',
|
|
134
|
+
signal,
|
|
135
|
+
telemetry: {
|
|
136
|
+
name: 'agentuity.task.update',
|
|
137
|
+
attributes: { id },
|
|
138
|
+
},
|
|
139
|
+
});
|
|
140
|
+
if (res.ok) {
|
|
141
|
+
if (res.data.success) {
|
|
142
|
+
return res.data.data;
|
|
143
|
+
}
|
|
144
|
+
throw new TaskStorageResponseError({
|
|
145
|
+
status: res.response.status,
|
|
146
|
+
message: res.data.message,
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
throw await toServiceException('PATCH', url, res.response);
|
|
150
|
+
}
|
|
151
|
+
async close(id) {
|
|
152
|
+
if (!id || typeof id !== 'string' || id.trim().length === 0) {
|
|
153
|
+
throw new TaskIdRequiredError();
|
|
154
|
+
}
|
|
155
|
+
const url = buildUrl(this.#baseUrl, `/task/${TASK_API_VERSION}/${encodeURIComponent(id)}`);
|
|
156
|
+
const signal = AbortSignal.timeout(30_000);
|
|
157
|
+
const res = await this.#adapter.invoke(url, {
|
|
158
|
+
method: 'DELETE',
|
|
159
|
+
signal,
|
|
160
|
+
telemetry: {
|
|
161
|
+
name: 'agentuity.task.close',
|
|
162
|
+
attributes: { id },
|
|
163
|
+
},
|
|
164
|
+
});
|
|
165
|
+
if (res.ok) {
|
|
166
|
+
if (res.data.success) {
|
|
167
|
+
return res.data.data;
|
|
168
|
+
}
|
|
169
|
+
throw new TaskStorageResponseError({
|
|
170
|
+
status: res.response.status,
|
|
171
|
+
message: res.data.message,
|
|
172
|
+
});
|
|
173
|
+
}
|
|
174
|
+
throw await toServiceException('DELETE', url, res.response);
|
|
175
|
+
}
|
|
176
|
+
async changelog(id, params) {
|
|
177
|
+
if (!id || typeof id !== 'string' || id.trim().length === 0) {
|
|
178
|
+
throw new TaskIdRequiredError();
|
|
179
|
+
}
|
|
180
|
+
const queryParams = new URLSearchParams();
|
|
181
|
+
if (params?.limit !== undefined)
|
|
182
|
+
queryParams.set('limit', String(params.limit));
|
|
183
|
+
if (params?.offset !== undefined)
|
|
184
|
+
queryParams.set('offset', String(params.offset));
|
|
185
|
+
const queryString = queryParams.toString();
|
|
186
|
+
const url = buildUrl(this.#baseUrl, `/task-changelog/${TASK_API_VERSION}/${encodeURIComponent(id)}${queryString ? `?${queryString}` : ''}`);
|
|
187
|
+
const signal = AbortSignal.timeout(30_000);
|
|
188
|
+
const res = await this.#adapter.invoke(url, {
|
|
189
|
+
method: 'GET',
|
|
190
|
+
signal,
|
|
191
|
+
telemetry: {
|
|
192
|
+
name: 'agentuity.task.changelog',
|
|
193
|
+
attributes: { id },
|
|
194
|
+
},
|
|
195
|
+
});
|
|
196
|
+
if (res.ok) {
|
|
197
|
+
if (res.data.success) {
|
|
198
|
+
return res.data.data;
|
|
199
|
+
}
|
|
200
|
+
throw new TaskStorageResponseError({
|
|
201
|
+
status: res.response.status,
|
|
202
|
+
message: res.data.message,
|
|
203
|
+
});
|
|
204
|
+
}
|
|
205
|
+
throw await toServiceException('GET', url, res.response);
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
//# sourceMappingURL=task.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/services/task.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agentuity/core",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.24",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"author": "Agentuity employees and contributors",
|
|
6
6
|
"type": "module",
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
"zod": "^4.3.5"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
40
|
-
"@agentuity/test-utils": "1.0.
|
|
40
|
+
"@agentuity/test-utils": "1.0.24",
|
|
41
41
|
"@types/bun": "latest",
|
|
42
42
|
"bun-types": "latest",
|
|
43
43
|
"esbuild": "^0.25.0",
|
package/src/index.ts
CHANGED
|
@@ -97,6 +97,43 @@ export {
|
|
|
97
97
|
QueueNotFoundError,
|
|
98
98
|
QueueValidationError,
|
|
99
99
|
} from './services/queue.ts';
|
|
100
|
+
export {
|
|
101
|
+
type EmailAddress,
|
|
102
|
+
type EmailDestination,
|
|
103
|
+
type EmailInbound,
|
|
104
|
+
type EmailOutbound,
|
|
105
|
+
type EmailAttachment,
|
|
106
|
+
type EmailSendParams,
|
|
107
|
+
type EmailService,
|
|
108
|
+
EmailStorageService,
|
|
109
|
+
} from './services/email.ts';
|
|
110
|
+
export {
|
|
111
|
+
type Schedule,
|
|
112
|
+
type ScheduleDestination,
|
|
113
|
+
type ScheduleDelivery,
|
|
114
|
+
type CreateScheduleParams,
|
|
115
|
+
type CreateScheduleDestinationParams,
|
|
116
|
+
type UpdateScheduleParams,
|
|
117
|
+
type ScheduleListResult,
|
|
118
|
+
type ScheduleGetResult,
|
|
119
|
+
type ScheduleCreateResult,
|
|
120
|
+
type ScheduleDeliveryListResult,
|
|
121
|
+
ScheduleService,
|
|
122
|
+
} from './services/schedule.ts';
|
|
123
|
+
export {
|
|
124
|
+
type TaskPriority,
|
|
125
|
+
type TaskType,
|
|
126
|
+
type TaskStatus,
|
|
127
|
+
type Task,
|
|
128
|
+
type TaskChangelogEntry,
|
|
129
|
+
type CreateTaskParams,
|
|
130
|
+
type UpdateTaskParams,
|
|
131
|
+
type ListTasksParams,
|
|
132
|
+
type ListTasksResult,
|
|
133
|
+
type TaskChangelogResult,
|
|
134
|
+
type TaskStorage,
|
|
135
|
+
TaskStorageService,
|
|
136
|
+
} from './services/task.ts';
|
|
100
137
|
export {
|
|
101
138
|
type EvalRunEventProvider,
|
|
102
139
|
EvalRunStartEventSchema,
|
package/src/services/_util.ts
CHANGED
|
@@ -2,6 +2,30 @@ import { safeStringify } from '../json.ts';
|
|
|
2
2
|
import type { Body, HttpMethod } from './adapter.ts';
|
|
3
3
|
import { ServiceException } from './exception.ts';
|
|
4
4
|
|
|
5
|
+
/**
|
|
6
|
+
* Extract a human-readable error message from an HTML error page or plain text body.
|
|
7
|
+
* Looks for content inside `<p>` tags first (Agentuity error pages put the message there),
|
|
8
|
+
* then falls back to the raw body.
|
|
9
|
+
*/
|
|
10
|
+
function extractMessageFromBody(body: string): string {
|
|
11
|
+
if (body.includes('<html') || body.includes('<!DOCTYPE')) {
|
|
12
|
+
// Try to extract message from <p> tags (Agentuity error pages use <p> for the message)
|
|
13
|
+
const pMatch = /<p[^>]*>([^<]+)<\/p>/i.exec(body);
|
|
14
|
+
if (pMatch?.[1]) {
|
|
15
|
+
// Strip ref suffix like "(ref: sess_xxx)" to get clean message
|
|
16
|
+
const msg = pMatch[1].trim();
|
|
17
|
+
const refMatch = /^(.+?)\s*\(ref:\s*\S+\)$/.exec(msg);
|
|
18
|
+
return refMatch?.[1]?.trim() ?? msg;
|
|
19
|
+
}
|
|
20
|
+
// Try <h1> as fallback
|
|
21
|
+
const h1Match = /<h1[^>]*>([^<]+)<\/h1>/i.exec(body);
|
|
22
|
+
if (h1Match?.[1]) {
|
|
23
|
+
return h1Match[1].trim();
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
return body;
|
|
27
|
+
}
|
|
28
|
+
|
|
5
29
|
export const buildUrl = (
|
|
6
30
|
base: string,
|
|
7
31
|
path: string,
|
|
@@ -90,8 +114,10 @@ export async function toServiceException(
|
|
|
90
114
|
}
|
|
91
115
|
try {
|
|
92
116
|
const body = await response.text();
|
|
117
|
+
// If the response is HTML (e.g. server error page), extract the human-readable message
|
|
118
|
+
const message = extractMessageFromBody(body);
|
|
93
119
|
return new ServiceException({
|
|
94
|
-
message
|
|
120
|
+
message,
|
|
95
121
|
method,
|
|
96
122
|
url,
|
|
97
123
|
statusCode: response.status,
|