@curie-agent/core 0.4.2 → 0.4.4

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.
Files changed (54) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/src/compaction.d.ts +76 -0
  3. package/dist/src/compaction.d.ts.map +1 -0
  4. package/dist/src/compaction.js +229 -0
  5. package/dist/src/compaction.js.map +1 -0
  6. package/dist/src/context-budget.d.ts +72 -0
  7. package/dist/src/context-budget.d.ts.map +1 -0
  8. package/dist/src/context-budget.js +132 -0
  9. package/dist/src/context-budget.js.map +1 -0
  10. package/dist/src/event-bus.d.ts +20 -0
  11. package/dist/src/event-bus.d.ts.map +1 -1
  12. package/dist/src/event-bus.js.map +1 -1
  13. package/dist/src/index.d.ts +8 -5
  14. package/dist/src/index.d.ts.map +1 -1
  15. package/dist/src/index.js +6 -4
  16. package/dist/src/index.js.map +1 -1
  17. package/dist/src/reminder-parser.d.ts +6 -0
  18. package/dist/src/reminder-parser.d.ts.map +1 -1
  19. package/dist/src/reminder-parser.js +85 -105
  20. package/dist/src/reminder-parser.js.map +1 -1
  21. package/dist/src/settings.d.ts +13 -0
  22. package/dist/src/settings.d.ts.map +1 -1
  23. package/dist/src/settings.js +37 -12
  24. package/dist/src/settings.js.map +1 -1
  25. package/dist/src/subagent-executor.d.ts +8 -0
  26. package/dist/src/subagent-executor.d.ts.map +1 -1
  27. package/dist/src/subagent-executor.js +20 -6
  28. package/dist/src/subagent-executor.js.map +1 -1
  29. package/dist/src/task-manager.d.ts +53 -12
  30. package/dist/src/task-manager.d.ts.map +1 -1
  31. package/dist/src/task-manager.js +225 -124
  32. package/dist/src/task-manager.js.map +1 -1
  33. package/dist/src/task-migration.d.ts +29 -2
  34. package/dist/src/task-migration.d.ts.map +1 -1
  35. package/dist/src/task-migration.js +115 -7
  36. package/dist/src/task-migration.js.map +1 -1
  37. package/dist/src/turn-loop.d.ts +22 -2
  38. package/dist/src/turn-loop.d.ts.map +1 -1
  39. package/dist/src/turn-loop.js +222 -95
  40. package/dist/src/turn-loop.js.map +1 -1
  41. package/package.json +1 -1
  42. package/templates/settings.json +100 -91
  43. package/dist/src/cron-manager.d.ts +0 -92
  44. package/dist/src/cron-manager.d.ts.map +0 -1
  45. package/dist/src/cron-manager.js +0 -410
  46. package/dist/src/cron-manager.js.map +0 -1
  47. package/dist/src/task-executor.d.ts +0 -31
  48. package/dist/src/task-executor.d.ts.map +0 -1
  49. package/dist/src/task-executor.js +0 -91
  50. package/dist/src/task-executor.js.map +0 -1
  51. package/dist/src/token-monitor.d.ts +0 -50
  52. package/dist/src/token-monitor.d.ts.map +0 -1
  53. package/dist/src/token-monitor.js +0 -119
  54. package/dist/src/token-monitor.js.map +0 -1
@@ -6,6 +6,8 @@ export class SubagentExecutor {
6
6
  maxConcurrentOption;
7
7
  agents = new Map();
8
8
  running = new Map();
9
+ /** Live TurnLoop per running agent, so cancel() can actually abort the child. */
10
+ loops = new Map();
9
11
  maxConcurrent;
10
12
  constructor(eventBus, sessionStore, maxConcurrentOption) {
11
13
  this.eventBus = eventBus;
@@ -62,10 +64,22 @@ export class SubagentExecutor {
62
64
  sessionId: subSession.id,
63
65
  }).finally(() => {
64
66
  this.running.delete(agentId);
67
+ this.loops.delete(agentId);
65
68
  });
66
69
  this.running.set(agentId, promise);
67
70
  return handle;
68
71
  }
72
+ /**
73
+ * Await a spawned subagent's completion and return its final handle.
74
+ * Resolves immediately if the agent has already finished. Returns undefined
75
+ * for an unknown agentId.
76
+ */
77
+ async waitFor(agentId) {
78
+ const promise = this.running.get(agentId);
79
+ if (promise)
80
+ await promise;
81
+ return this.agents.get(agentId);
82
+ }
69
83
  async runSubagent(config) {
70
84
  const { agentId } = findHandle(this.agents, config.sessionId) ?? { agentId: '' };
71
85
  const turnLoop = new TurnLoop({
@@ -81,6 +95,8 @@ export class SubagentExecutor {
81
95
  sessionId: config.sessionId,
82
96
  type: config.type || 'subagent',
83
97
  }, this.sessionStore);
98
+ if (agentId)
99
+ this.loops.set(agentId, turnLoop);
84
100
  // Use config.system directly as the subagent's system prompt
85
101
  const runPromise = config.system
86
102
  ? createAndRunTurnLoop(turnLoop, config.prompt, config.system)
@@ -181,12 +197,9 @@ export class SubagentExecutor {
181
197
  }
182
198
  handle.status = 'cancelled';
183
199
  handle.doneAt = Date.now();
184
- // Cancel the TurnLoop if running
185
- const promise = this.running.get(agentId);
186
- if (promise) {
187
- // We need to find and cancel the TurnLoop — stored in the running promise
188
- // For now, emit cancellation event
189
- }
200
+ // Abort the child TurnLoop so it actually stops mid-turn, rather than
201
+ // running to completion while the handle claims it was cancelled.
202
+ this.loops.get(agentId)?.cancel();
190
203
  this.eventBus.emit({
191
204
  type: 'agent-error',
192
205
  id: randomUUID(),
@@ -231,6 +244,7 @@ export class SubagentExecutor {
231
244
  }
232
245
  this.agents.clear();
233
246
  this.running.clear();
247
+ this.loops.clear();
234
248
  }
235
249
  getRunningCount() {
236
250
  return [...this.agents.values()].filter((a) => a.status === 'running' || a.status === 'starting').length;
@@ -1 +1 @@
1
- {"version":3,"file":"subagent-executor.js","sourceRoot":"","sources":["../../src/subagent-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subagent-executor.js","sourceRoot":"","sources":["../../src/subagent-executor.ts"],"names":[],"mappings":"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"}
@@ -1,21 +1,38 @@
1
1
  /**
2
- * Unified task manager — replaces CronManager as the primary task store.
2
+ * Unified task manager — the single owner of the task store.
3
3
  * Manages tasks across both personal (~/.curie-agent/tasks.json) and project (<cwd>/tasks.json) scopes.
4
+ *
5
+ * Two invariants matter here:
6
+ * 1. Nothing is ever deleted automatically. Only explicit user actions
7
+ * (`removeTask`, `clearCompleted`) drop a task.
8
+ * 2. Every write goes through `mutate()`, which re-reads the file if another
9
+ * process touched it since our last read. Without this, two in-memory
10
+ * copies of the task array silently overwrite each other's work.
4
11
  */
5
12
  import type { ScheduleType, TaskMode, TaskPriority, TaskScope, TaskStatus, UnifiedTask, TasksFile } from './unified-task.js';
6
13
  export declare class TaskManager {
7
14
  private data;
8
- /** TTL for pruning completed tasks. */
9
- private ttlMs;
10
15
  /** File path for persistence. */
11
16
  private filePath;
17
+ /** Fingerprint of the file as of our last read/write — used to detect foreign writes. */
18
+ private seenFingerprint;
12
19
  /** Set of task IDs currently being executed (prevents re-firing). */
13
20
  private executing;
14
- constructor(optTtlOrPath?: number | string, optFilePath?: string);
21
+ constructor(filePath?: string);
15
22
  /** Reload the file from disk. */
16
23
  load(): TasksFile;
17
- /** Persist to disk. */
24
+ /**
25
+ * Persist the in-memory array as-is. Prefer the mutating methods below —
26
+ * they reload first, so they can't clobber another writer's changes.
27
+ */
18
28
  save(): void;
29
+ /** Re-read the file if someone else wrote it since we last looked. */
30
+ private refreshIfStale;
31
+ /**
32
+ * The only write path: reload-if-stale → mutate → persist.
33
+ * All lookups must happen inside `fn`, since a refresh replaces the array.
34
+ */
35
+ private mutate;
19
36
  /** Create a new task with the given mode and scope. */
20
37
  create(options: {
21
38
  title: string;
@@ -35,7 +52,16 @@ export declare class TaskManager {
35
52
  updateTaskStatus(id: string, status: TaskStatus): boolean;
36
53
  /** Advance through the manual task lifecycle (todo → in_progress → done). */
37
54
  setTaskStatus(id: string, status: 'todo' | 'in_progress'): boolean;
38
- /** Find a single task by ID. */
55
+ /**
56
+ * Apply a partial patch to a task. Use this instead of mutating the object
57
+ * returned by `findTask()` and calling `save()` — that pattern races.
58
+ */
59
+ updateTask(id: string, patch: Partial<Omit<UnifiedTask, 'id'>>): UnifiedTask | undefined;
60
+ /**
61
+ * Find a single task by ID. Falls back to a unique prefix match, so the
62
+ * truncated IDs shown by `/todo list` and `/cron list` are usable directly.
63
+ * Ambiguous prefixes resolve to undefined rather than an arbitrary task.
64
+ */
39
65
  findTask(id: string): UnifiedTask | undefined;
40
66
  /** List tasks with optional filters. */
41
67
  list(options?: {
@@ -44,7 +70,7 @@ export declare class TaskManager {
44
70
  scope?: TaskScope;
45
71
  priority?: TaskPriority;
46
72
  }): UnifiedTask[];
47
- /** Get pending scheduled tasks that are due (mode=auto or notify with scheduled_at <= now). */
73
+ /** Get pending scheduled tasks that are due (mode=agent or notify with scheduled_at <= now). */
48
74
  getNextTasks(now?: number): UnifiedTask[];
49
75
  /** Mark a task as currently executing. */
50
76
  markExecuting(id: string): boolean;
@@ -52,23 +78,30 @@ export declare class TaskManager {
52
78
  clearExecuting(id: string): void;
53
79
  /** Cancel (soft-delete) a pending/fired task. */
54
80
  cancelTask(id: string): boolean;
55
- /** Remove completed/fired/failed tasks (hard-delete). */
81
+ /**
82
+ * Remove completed/canceled/failed tasks (hard-delete).
83
+ * Explicit user action only — nothing calls this on a timer.
84
+ */
56
85
  clearCompleted(): number;
57
86
  /** Remove a task permanently. */
58
87
  removeTask(id: string): boolean;
88
+ /** Reorder tasks to match the given ID sequence. IDs not listed keep their relative order. */
89
+ reorder(ids: string[]): number;
59
90
  /** Renormalize the `order` field for all tasks in scope. */
60
91
  private renormalizeOrders;
61
- /** Remove completed tasks older than the cutoff. Pending/pending-like tasks always kept. */
62
- pruneOld(cutoff: number): number;
63
92
  /** Count of pending tasks. */
64
93
  get pendingCount(): number;
65
- /** Check if a task is a recurring heartbeat (auto mode with frequency). */
94
+ /** Check if a task is a recurring heartbeat (agent mode with a frequency). */
66
95
  isHeartbeat(task: UnifiedTask): boolean;
67
96
  /** Get all pending heartbeat tasks. */
68
97
  getHeartbeats(): UnifiedTask[];
69
98
  /**
70
99
  * Evaluate all five heartbeat schedule settings and ensure exactly one
71
- * pending auto+frequency task exists in the store. Called after settings change.
100
+ * pending agent+frequency task exists in the store. Called after settings change.
101
+ *
102
+ * If the winning schedule is unchanged, `scheduled_at` is left alone —
103
+ * recomputing it from "now" on every config change silently skips the slot
104
+ * the user was waiting for.
72
105
  */
73
106
  rescheduleFromSettings(settings: {
74
107
  HEARTBEAT_INTRADAY?: string;
@@ -80,4 +113,12 @@ export declare class TaskManager {
80
113
  /** Cancel all pending heartbeat tasks. Returns count cancelled. */
81
114
  cancelAllHeartbeats(): number;
82
115
  }
116
+ /**
117
+ * Get the process-shared TaskManager for a store path. Every writer in a
118
+ * process must go through this — separate instances hold separate copies of
119
+ * the task array and overwrite each other on save.
120
+ */
121
+ export declare function getTaskManager(filePath?: string): TaskManager;
122
+ /** Drop all memoized instances. Test helper. */
123
+ export declare function resetTaskManagers(): void;
83
124
  //# sourceMappingURL=task-manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"task-manager.d.ts","sourceRoot":"","sources":["../../src/task-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task-manager.d.ts","sourceRoot":"","sources":["../../src/task-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAMH,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AA8D7H,qBAAa,WAAW;IACtB,OAAO,CAAC,IAAI,CAAY;IACxB,iCAAiC;IACjC,OAAO,CAAC,QAAQ,CAAS;IACzB,yFAAyF;IACzF,OAAO,CAAC,eAAe,CAAM;IAC7B,qEAAqE;IACrE,OAAO,CAAC,SAAS,CAAqB;gBAE1B,QAAQ,GAAE,MAAqB;IAM3C,iCAAiC;IACjC,IAAI,IAAI,SAAS;IAMjB;;;OAGG;IACH,IAAI,IAAI,IAAI;IAKZ,sEAAsE;IACtE,OAAO,CAAC,cAAc;IAQtB;;;OAGG;IACH,OAAO,CAAC,MAAM;IAWd,uDAAuD;IACvD,MAAM,CAAC,OAAO,EAAE;QACd,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,IAAI,EAAE,QAAQ,CAAC;QACf,KAAK,EAAE,SAAS,CAAC;QACjB,QAAQ,CAAC,EAAE,YAAY,CAAC;QACxB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAChB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE;YAAE,IAAI,EAAE,YAAY,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,GAAG,IAAI,CAAC;QACzD,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACpC,GAAG,WAAW;IA6Bf,+DAA+D;IAC/D,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO;IAqBzD,6EAA6E;IAC7E,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,aAAa,GAAG,OAAO;IAIlE;;;OAGG;IACH,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,GAAG,WAAW,GAAG,SAAS;IAaxF;;;;OAIG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAS7C,wCAAwC;IACxC,IAAI,CAAC,OAAO,CAAC,EAAE;QACb,MAAM,CAAC,EAAE,UAAU,CAAC;QACpB,IAAI,CAAC,EAAE,QAAQ,CAAC;QAChB,KAAK,CAAC,EAAE,SAAS,CAAC;QAClB,QAAQ,CAAC,EAAE,YAAY,CAAC;KACzB,GAAG,WAAW,EAAE;IAoBjB,gGAAgG;IAChG,YAAY,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,WAAW,EAAE;IAczC,0CAA0C;IAC1C,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAWlC,uCAAuC;IACvC,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQhC,iDAAiD;IACjD,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAU/B;;;OAGG;IACH,cAAc,IAAI,MAAM;IAcxB,iCAAiC;IACjC,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAY/B,8FAA8F;IAC9F,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM;IAe9B,4DAA4D;IAC5D,OAAO,CAAC,iBAAiB;IAOzB,8BAA8B;IAC9B,IAAI,YAAY,IAAI,MAAM,CAEzB;IAMD,8EAA8E;IAC9E,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO;IAIvC,uCAAuC;IACvC,aAAa,IAAI,WAAW,EAAE;IAQ9B;;;;;;;OAOG;IACH,sBAAsB,CAAC,QAAQ,EAAE;QAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,kBAAkB,CAAC,EAAE,MAAM,CAAC;KAC7B,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI;IA8BtB,mEAAmE;IACnE,mBAAmB,IAAI,MAAM;CAS9B;AAQD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,WAAW,CAQ7D;AAED,gDAAgD;AAChD,wBAAgB,iBAAiB,IAAI,IAAI,CAExC"}