@rk0429/agentic-relay 7.0.1 → 8.1.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.
@@ -24,6 +24,8 @@ export interface BlockedReason {
24
24
  kind: BlockedReasonKind;
25
25
  detail: string;
26
26
  }
27
+ export declare const TASK_PRIORITIES: readonly ["low", "normal", "high", "critical"];
28
+ export type TaskPriority = (typeof TASK_PRIORITIES)[number];
27
29
  export interface TaskRecord {
28
30
  taskId: string;
29
31
  title: string;
@@ -36,6 +38,8 @@ export interface TaskRecord {
36
38
  acceptanceCriteria?: string;
37
39
  blockedReason?: BlockedReason;
38
40
  deadline?: string;
41
+ labels?: string[];
42
+ priority?: TaskPriority;
39
43
  comments: TaskComment[];
40
44
  createdAt: string;
41
45
  updatedAt: string;
@@ -54,14 +58,19 @@ export interface TaskSummary {
54
58
  agent_id?: string;
55
59
  depends_on: string[];
56
60
  acceptance_criteria?: string;
61
+ description?: string;
57
62
  blocked_reason?: BlockedReason;
58
63
  deadline?: string;
59
64
  overdue?: boolean;
65
+ labels?: string[];
66
+ priority?: TaskPriority;
60
67
  warnings: string[];
61
68
  }
62
69
  export interface TaskDetail extends TaskSummary {
63
70
  description: string;
64
71
  initiator_id: string;
72
+ available_transitions: string[];
73
+ transition_blockers: Record<string, string[]>;
65
74
  comments: Array<{
66
75
  author: Actor;
67
76
  content: string;
@@ -75,6 +84,10 @@ export interface GetTaskInput {
75
84
  task_id: string;
76
85
  comments_limit?: number;
77
86
  }
87
+ export interface GetTasksInput {
88
+ task_ids: string[];
89
+ comments_limit?: number;
90
+ }
78
91
  export interface GetTaskTreeInput {
79
92
  root_id?: string;
80
93
  max_depth?: number;
@@ -83,10 +96,24 @@ export interface GetTaskTreeInput {
83
96
  export interface TaskStatsInput {
84
97
  root_id?: string;
85
98
  }
99
+ export interface BottleneckInfo {
100
+ task_id: string;
101
+ title: string;
102
+ status: TaskStatus;
103
+ blocking_count: number;
104
+ }
105
+ export interface StaleTaskInfo {
106
+ task_id: string;
107
+ title: string;
108
+ status: TaskStatus;
109
+ age_hours: number;
110
+ }
86
111
  export interface TaskStatsResult {
87
112
  total: number;
88
113
  by_status: Record<TaskStatus, number>;
89
114
  progress_pct: number;
115
+ bottlenecks: BottleneckInfo[];
116
+ stale_tasks: StaleTaskInfo[];
90
117
  }
91
118
  export interface TaskTreeSummary {
92
119
  task_id: string;
@@ -99,6 +126,8 @@ export interface TaskTreeSummary {
99
126
  blocked_reason?: BlockedReason;
100
127
  deadline?: string;
101
128
  overdue?: boolean;
129
+ labels?: string[];
130
+ priority?: TaskPriority;
102
131
  warnings: string[];
103
132
  children: TaskTreeSummary[];
104
133
  }
@@ -109,6 +138,8 @@ export interface CreateTaskInput {
109
138
  depends_on?: string[];
110
139
  acceptance_criteria?: string;
111
140
  deadline?: string;
141
+ labels?: string[];
142
+ priority?: TaskPriority;
112
143
  assign_to?: string;
113
144
  actor_id?: string;
114
145
  }
@@ -116,15 +147,19 @@ export interface BatchTaskDefinition {
116
147
  id: string;
117
148
  title: string;
118
149
  description: string;
150
+ parent_id?: string;
119
151
  depends_on?: string[];
120
152
  acceptance_criteria?: string;
121
153
  deadline?: string;
154
+ labels?: string[];
155
+ priority?: TaskPriority;
122
156
  assign_to?: string;
123
157
  auto_ready?: boolean;
124
158
  }
125
159
  export interface CreateTasksInput {
126
160
  parent_id?: string;
127
161
  tasks: BatchTaskDefinition[];
162
+ variables?: Record<string, string>;
128
163
  actor_id?: string;
129
164
  }
130
165
  export interface TaskMutationResult {
@@ -151,6 +186,8 @@ export interface UpdateTaskInput {
151
186
  remove_depends_on?: string[];
152
187
  acceptance_criteria?: string;
153
188
  deadline?: string;
189
+ labels?: string[];
190
+ priority?: TaskPriority;
154
191
  actor_id?: string;
155
192
  }
156
193
  export interface UpdateTaskStatusInput {
@@ -170,6 +207,12 @@ export interface ListTasksInput {
170
207
  agent_id?: string;
171
208
  initiator_id?: string;
172
209
  q?: string;
210
+ label?: string;
211
+ priority?: TaskPriority | TaskPriority[];
212
+ include?: ("description" | "acceptance_criteria")[];
213
+ created_after?: string;
214
+ updated_after?: string;
215
+ sort?: "created_at_asc" | "created_at_desc" | "updated_at_asc" | "updated_at_desc";
173
216
  limit?: number;
174
217
  offset?: number;
175
218
  }
@@ -214,20 +257,6 @@ export interface AgentLifecycleTaskEvent {
214
257
  sessionId: string;
215
258
  backend?: BackendType;
216
259
  }
217
- export interface TaskTemplateDefinition {
218
- id: string;
219
- title: string;
220
- description: string;
221
- acceptance_criteria?: string;
222
- depends_on?: string[];
223
- children?: TaskTemplateDefinition[];
224
- }
225
- export interface CreateFromTemplateInput {
226
- template: TaskTemplateDefinition;
227
- parent_id?: string;
228
- variables?: Record<string, string>;
229
- actor_id?: string;
230
- }
231
260
  export interface SpawnAgentInput {
232
261
  backend?: BackendType;
233
262
  prompt: string;
@@ -239,6 +268,7 @@ export interface SpawnAgentInput {
239
268
  export interface SpawnAgentsInput {
240
269
  agents: SpawnAgentInput[];
241
270
  max_depth?: number;
271
+ summary_length?: number;
242
272
  }
243
273
  export interface RoutingInfo {
244
274
  resolved: BackendType;
@@ -23,4 +23,5 @@ export const SYSTEM_CAUSES = [
23
23
  "agent_completed",
24
24
  "agent_failed",
25
25
  ];
26
+ export const TASK_PRIORITIES = ["low", "normal", "high", "critical"];
26
27
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAU,CAAC;AAGpE,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,eAAe;IACf,UAAU;IACV,iBAAiB;IACjB,cAAc;IACd,kBAAkB;IAClB,aAAa;CACL,CAAC;AAMX,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,SAAS;IACT,OAAO;IACP,aAAa;IACb,QAAQ;IACR,SAAS;IACT,MAAM;IACN,YAAY;IACZ,UAAU;CACF,CAAC;AAGX,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,qBAAqB;IACrB,eAAe;IACf,iBAAiB;IACjB,cAAc;CACN,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAU,CAAC;AAGpE,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,eAAe;IACf,UAAU;IACV,iBAAiB;IACjB,cAAc;IACd,kBAAkB;IAClB,aAAa;CACL,CAAC;AAMX,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,SAAS;IACT,OAAO;IACP,aAAa;IACb,QAAQ;IACR,SAAS;IACT,MAAM;IACN,YAAY;IACZ,UAAU;CACF,CAAC;AAGX,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,qBAAqB;IACrB,eAAe;IACf,iBAAiB;IACjB,cAAc;CACN,CAAC;AAwBX,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAU,CAAC"}
@@ -13,6 +13,8 @@ export declare function createTaskRecord(options: {
13
13
  dependsOn?: string[];
14
14
  acceptanceCriteria?: string;
15
15
  deadline?: string;
16
+ labels?: string[];
17
+ priority?: TaskRecord["priority"];
16
18
  initiatorId: string;
17
19
  now: string;
18
20
  }): TaskRecord;
@@ -34,6 +36,8 @@ export declare function updateTaskFields(options: {
34
36
  dependsOn?: string[];
35
37
  acceptanceCriteria?: string;
36
38
  deadline?: string;
39
+ labels?: string[];
40
+ priority?: TaskRecord["priority"];
37
41
  }): TaskRecord;
38
42
  export declare function validateTaskDependencies(options: {
39
43
  taskId: string;
@@ -63,4 +67,9 @@ export declare function canWriteTask(options: {
63
67
  task: TaskRecord;
64
68
  allTasks: TaskRecord[];
65
69
  }): boolean;
70
+ export declare function getValidTransitions(status: TaskStatus): string[];
71
+ export declare function getTransitionBlockers(options: {
72
+ task: TaskRecord;
73
+ allTasks: TaskRecord[];
74
+ }): Record<string, string[]>;
66
75
  export declare function createComment(actor: Actor, content: string, now: string): TaskComment;
@@ -9,6 +9,8 @@ export function createTaskRecord(options) {
9
9
  dependsOn: [...(options.dependsOn ?? [])],
10
10
  acceptanceCriteria: options.acceptanceCriteria,
11
11
  deadline: options.deadline,
12
+ labels: options.labels,
13
+ priority: options.priority,
12
14
  initiatorId: options.initiatorId,
13
15
  comments: [],
14
16
  createdAt: options.now,
@@ -66,6 +68,8 @@ export function updateTaskFields(options) {
66
68
  dependsOn: options.dependsOn ? [...options.dependsOn] : options.task.dependsOn,
67
69
  acceptanceCriteria: options.acceptanceCriteria ?? options.task.acceptanceCriteria,
68
70
  deadline: options.deadline !== undefined ? options.deadline : options.task.deadline,
71
+ labels: options.labels !== undefined ? options.labels : options.task.labels,
72
+ priority: options.priority !== undefined ? options.priority : options.task.priority,
69
73
  updatedAt: options.now,
70
74
  };
71
75
  }
@@ -99,9 +103,12 @@ export function validateNoCycle(options) {
99
103
  adjacency.set(task.taskId, [...task.dependsOn]);
100
104
  }
101
105
  adjacency.set(options.taskId, [...options.dependsOn]);
102
- const visit = (taskId, stack, seen) => {
106
+ const visit = (taskId, stack, seen, path) => {
103
107
  if (stack.has(taskId)) {
104
- throw new ValidationError(`Circular dependency detected at task ${taskId}.`, {
108
+ const cycleStart = path.indexOf(taskId);
109
+ const cyclePath = [...path.slice(cycleStart), taskId];
110
+ throw new ValidationError(`Circular dependency detected: ${cyclePath.join(" → ")}.`, {
111
+ causeData: { cycle: cyclePath },
105
112
  recoveryHint: "Review the depends_on graph and remove circular references.",
106
113
  });
107
114
  }
@@ -111,11 +118,11 @@ export function validateNoCycle(options) {
111
118
  seen.add(taskId);
112
119
  stack.add(taskId);
113
120
  for (const dependencyId of adjacency.get(taskId) ?? []) {
114
- visit(dependencyId, stack, seen);
121
+ visit(dependencyId, stack, seen, [...path, taskId]);
115
122
  }
116
123
  stack.delete(taskId);
117
124
  };
118
- visit(options.taskId, new Set(), new Set());
125
+ visit(options.taskId, new Set(), new Set(), []);
119
126
  }
120
127
  export function canTransitionToReview(taskId, tasks) {
121
128
  const children = tasks.filter((candidate) => candidate.parentId === taskId);
@@ -183,7 +190,15 @@ export function ensureTaskWritePermission(options) {
183
190
  if (canWriteTask(options)) {
184
191
  return;
185
192
  }
186
- throw new AuthorizationError(`Agent ${options.actorId} cannot modify task ${options.task.taskId}.`);
193
+ throw new AuthorizationError(`Agent ${options.actorId} cannot modify task ${options.task.taskId}.`, {
194
+ causeData: {
195
+ actor_id: options.actorId,
196
+ task_id: options.task.taskId,
197
+ task_initiator: options.task.initiatorId,
198
+ task_agent: options.task.agentId,
199
+ },
200
+ recoveryHint: `You are acting as '${options.actorId}'. Write access requires being the local-operator, task initiator ('${options.task.initiatorId}'), or assigned/ancestor agent.`,
201
+ });
187
202
  }
188
203
  export function canWriteTask(options) {
189
204
  if (options.actorId === "local-operator") {
@@ -211,17 +226,26 @@ function validateStatusTransition(options) {
211
226
  }
212
227
  const validTransitions = getValidTransitions(task.status);
213
228
  switch (nextStatus) {
214
- case "ready":
229
+ case "ready": {
215
230
  if (task.status !== "backlog" && task.status !== "blocked") {
216
231
  throw new ValidationError(`Cannot transition task from ${task.status} to ready. Valid transitions from ${task.status}: ${validTransitions.join(", ")}.`, { recoveryHint: "Choose one of the valid transitions listed, or use get_task to check the current task state." });
217
232
  }
218
- if (!allDependenciesResolved(task.dependsOn, new Map(allTasks.map((item) => [item.taskId, item])))) {
219
- throw new ValidationError("All dependency tasks must be done before transitioning to ready.", {
233
+ const tasksById = new Map(allTasks.map((item) => [item.taskId, item]));
234
+ if (!allDependenciesResolved(task.dependsOn, tasksById)) {
235
+ const pendingDeps = task.dependsOn
236
+ .filter((depId) => tasksById.get(depId)?.status !== "done")
237
+ .map((depId) => {
238
+ const dep = tasksById.get(depId);
239
+ return { task_id: depId, title: dep?.title, status: dep?.status };
240
+ });
241
+ throw new ValidationError(`Cannot transition to ready: ${pendingDeps.length} dependency task(s) not done.`, {
242
+ causeData: { pending_dependencies: pendingDeps },
220
243
  recoveryHint: "Complete all dependency tasks first, or use update_task to remove unfinished dependencies from depends_on.",
221
244
  });
222
245
  }
223
246
  ensureLeafTaskReadyForExecution(task, allTasks);
224
247
  return;
248
+ }
225
249
  case "in_progress":
226
250
  if (task.status === "ready" || task.status === "blocked") {
227
251
  ensureAssignedAgentMatchesActor(task, actor);
@@ -277,7 +301,7 @@ function validateStatusTransition(options) {
277
301
  throw new ValidationError(`Cannot transition task from ${task.status} to backlog. Tasks cannot transition back to backlog. Valid transitions from ${task.status}: ${validTransitions.join(", ")}.`, { recoveryHint: "Use one of the valid transitions listed above." });
278
302
  }
279
303
  }
280
- function getValidTransitions(status) {
304
+ export function getValidTransitions(status) {
281
305
  switch (status) {
282
306
  case "backlog":
283
307
  return ["ready", "archived", "superseded"];
@@ -315,8 +339,9 @@ function ensureReviewApprover(task, parentTask, actor) {
315
339
  }
316
340
  if (!task.parentId) {
317
341
  if (actor.agentId !== task.initiatorId) {
318
- throw new ValidationError("Only the task initiator can approve or reject a root task review.", {
319
- recoveryHint: "Use get_task to check the task's initiator_id. Only that agent can approve root task reviews.",
342
+ throw new ValidationError(`Only the task initiator can approve or reject a root task review. You are '${actor.agentId}', but initiator is '${task.initiatorId}'.`, {
343
+ causeData: { actor_id: actor.agentId, required_id: task.initiatorId, reason: "root_task_initiator_only" },
344
+ recoveryHint: `Use get_task to check the task's initiator_id. Only '${task.initiatorId}' can approve root task reviews.`,
320
345
  });
321
346
  }
322
347
  return;
@@ -327,8 +352,9 @@ function ensureReviewApprover(task, parentTask, actor) {
327
352
  });
328
353
  }
329
354
  if (actor.agentId !== parentTask.agentId) {
330
- throw new ValidationError("Only the parent task's assigned agent can approve or reject the child task review.", {
331
- recoveryHint: "Use get_task on the parent task to identify its assigned agent.",
355
+ throw new ValidationError(`Only the parent task's assigned agent can approve or reject the child task review. You are '${actor.agentId}', but parent agent is '${parentTask.agentId}'.`, {
356
+ causeData: { actor_id: actor.agentId, required_id: parentTask.agentId, parent_task_id: parentTask.taskId, reason: "parent_agent_only" },
357
+ recoveryHint: `Use get_task on the parent task to identify its assigned agent. Only '${parentTask.agentId}' can approve.`,
332
358
  });
333
359
  }
334
360
  }
@@ -340,6 +366,38 @@ function ensureLeafTaskReadyForExecution(task, allTasks) {
340
366
  throw new ValidationError(`Leaf task ${task.taskId} must define acceptance_criteria before transitioning to ${task.status === "backlog" ? "ready" : "in_progress"}.`, { recoveryHint: "Use update_task to set acceptance_criteria for this task." });
341
367
  }
342
368
  }
369
+ export function getTransitionBlockers(options) {
370
+ const { task, allTasks } = options;
371
+ const blockers = {};
372
+ const tasksById = new Map(allTasks.map((t) => [t.taskId, t]));
373
+ const validTargets = getValidTransitions(task.status);
374
+ for (const target of validTargets) {
375
+ const targetBlockers = [];
376
+ if (target === "ready" || target === "in_progress") {
377
+ if (!allDependenciesResolved(task.dependsOn, tasksById)) {
378
+ const pending = task.dependsOn.filter((id) => tasksById.get(id)?.status !== "done");
379
+ targetBlockers.push(`dependencies_not_done: ${pending.join(", ")}`);
380
+ }
381
+ if (isLeafTask(task.taskId, allTasks) && !task.acceptanceCriteria?.trim()) {
382
+ targetBlockers.push("acceptance_criteria_missing");
383
+ }
384
+ }
385
+ if (target === "in_progress" && !task.agentId) {
386
+ targetBlockers.push("agent_not_assigned");
387
+ }
388
+ if (target === "review") {
389
+ const children = allTasks.filter((t) => t.parentId === task.taskId);
390
+ const notDone = children.filter((c) => c.status !== "done");
391
+ if (notDone.length > 0) {
392
+ targetBlockers.push(`children_not_done: ${notDone.map((c) => c.taskId).join(", ")}`);
393
+ }
394
+ }
395
+ if (targetBlockers.length > 0) {
396
+ blockers[target] = targetBlockers;
397
+ }
398
+ }
399
+ return blockers;
400
+ }
343
401
  export function createComment(actor, content, now) {
344
402
  return {
345
403
  author: actor,
@@ -1 +1 @@
1
- {"version":3,"file":"task-management.js","sourceRoot":"","sources":["../../src/domain/task-management.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task-management.js","sourceRoot":"","sources":["../../src/domain/task-management.ts"],"names":[],"mappings":"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"}