hzl-core 2.3.0 → 2.4.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.
Files changed (100) hide show
  1. package/dist/__tests__/concurrency/stress.test.js +13 -9
  2. package/dist/__tests__/concurrency/stress.test.js.map +1 -1
  3. package/dist/__tests__/properties/invariants.test.js +31 -10
  4. package/dist/__tests__/properties/invariants.test.js.map +1 -1
  5. package/dist/db/__tests__/transaction.test.d.ts +2 -0
  6. package/dist/db/__tests__/transaction.test.d.ts.map +1 -0
  7. package/dist/db/__tests__/transaction.test.js +67 -0
  8. package/dist/db/__tests__/transaction.test.js.map +1 -0
  9. package/dist/db/migrations/index.d.ts +8 -3
  10. package/dist/db/migrations/index.d.ts.map +1 -1
  11. package/dist/db/migrations/index.js +14 -3
  12. package/dist/db/migrations/index.js.map +1 -1
  13. package/dist/db/migrations/index.test.d.ts +2 -0
  14. package/dist/db/migrations/index.test.d.ts.map +1 -0
  15. package/dist/db/migrations/index.test.js +53 -0
  16. package/dist/db/migrations/index.test.js.map +1 -0
  17. package/dist/db/schema.d.ts +2 -2
  18. package/dist/db/schema.d.ts.map +1 -1
  19. package/dist/db/schema.js +3 -1
  20. package/dist/db/schema.js.map +1 -1
  21. package/dist/db/transaction.d.ts.map +1 -1
  22. package/dist/db/transaction.js +16 -4
  23. package/dist/db/transaction.js.map +1 -1
  24. package/dist/events/store.d.ts +3 -1
  25. package/dist/events/store.d.ts.map +1 -1
  26. package/dist/events/store.js +23 -9
  27. package/dist/events/store.js.map +1 -1
  28. package/dist/events/store.test.js +49 -2
  29. package/dist/events/store.test.js.map +1 -1
  30. package/dist/events/types.d.ts +1 -0
  31. package/dist/events/types.d.ts.map +1 -1
  32. package/dist/events/types.js +1 -0
  33. package/dist/events/types.js.map +1 -1
  34. package/dist/events/upcasters.d.ts +16 -0
  35. package/dist/events/upcasters.d.ts.map +1 -0
  36. package/dist/events/upcasters.js +35 -0
  37. package/dist/events/upcasters.js.map +1 -0
  38. package/dist/events/upcasters.test.d.ts +2 -0
  39. package/dist/events/upcasters.test.d.ts.map +1 -0
  40. package/dist/events/upcasters.test.js +47 -0
  41. package/dist/events/upcasters.test.js.map +1 -0
  42. package/dist/index.d.ts +2 -2
  43. package/dist/index.d.ts.map +1 -1
  44. package/dist/index.js +2 -1
  45. package/dist/index.js.map +1 -1
  46. package/dist/index.test.js +0 -1
  47. package/dist/index.test.js.map +1 -1
  48. package/dist/projections/comments-checkpoints.d.ts +2 -2
  49. package/dist/projections/comments-checkpoints.d.ts.map +1 -1
  50. package/dist/projections/comments-checkpoints.js +4 -3
  51. package/dist/projections/comments-checkpoints.js.map +1 -1
  52. package/dist/projections/comments-checkpoints.test.js +30 -0
  53. package/dist/projections/comments-checkpoints.test.js.map +1 -1
  54. package/dist/projections/dependencies.d.ts +2 -2
  55. package/dist/projections/dependencies.d.ts.map +1 -1
  56. package/dist/projections/dependencies.js +5 -4
  57. package/dist/projections/dependencies.js.map +1 -1
  58. package/dist/projections/dependencies.test.js +29 -0
  59. package/dist/projections/dependencies.test.js.map +1 -1
  60. package/dist/projections/projects.d.ts +2 -2
  61. package/dist/projections/projects.d.ts.map +1 -1
  62. package/dist/projections/projects.js +8 -9
  63. package/dist/projections/projects.js.map +1 -1
  64. package/dist/projections/projects.test.js +34 -0
  65. package/dist/projections/projects.test.js.map +1 -1
  66. package/dist/projections/search.d.ts +2 -2
  67. package/dist/projections/search.d.ts.map +1 -1
  68. package/dist/projections/search.js +15 -12
  69. package/dist/projections/search.js.map +1 -1
  70. package/dist/projections/search.test.js +37 -0
  71. package/dist/projections/search.test.js.map +1 -1
  72. package/dist/projections/tags.d.ts +2 -2
  73. package/dist/projections/tags.d.ts.map +1 -1
  74. package/dist/projections/tags.js +4 -3
  75. package/dist/projections/tags.js.map +1 -1
  76. package/dist/projections/tags.test.js +29 -0
  77. package/dist/projections/tags.test.js.map +1 -1
  78. package/dist/projections/tasks-current.d.ts +2 -2
  79. package/dist/projections/tasks-current.d.ts.map +1 -1
  80. package/dist/projections/tasks-current.js +19 -14
  81. package/dist/projections/tasks-current.js.map +1 -1
  82. package/dist/projections/tasks-current.test.js +87 -0
  83. package/dist/projections/tasks-current.test.js.map +1 -1
  84. package/dist/projections/types.d.ts +14 -0
  85. package/dist/projections/types.d.ts.map +1 -1
  86. package/dist/projections/types.js +23 -1
  87. package/dist/projections/types.js.map +1 -1
  88. package/dist/services/search-service.js +1 -1
  89. package/dist/services/search-service.js.map +1 -1
  90. package/dist/services/search-service.test.js +23 -0
  91. package/dist/services/search-service.test.js.map +1 -1
  92. package/dist/services/task-service.d.ts +29 -4
  93. package/dist/services/task-service.d.ts.map +1 -1
  94. package/dist/services/task-service.js +272 -69
  95. package/dist/services/task-service.js.map +1 -1
  96. package/dist/services/task-service.test.js +313 -15
  97. package/dist/services/task-service.test.js.map +1 -1
  98. package/dist/services/workflow-service.test.js +525 -161
  99. package/dist/services/workflow-service.test.js.map +1 -1
  100. package/package.json +1 -1
@@ -1,6 +1,8 @@
1
- import { EventType, TaskStatus, } from '../events/types.js';
1
+ import { CachingProjector } from './types.js';
2
+ import { EventType, TaskStatus, UPDATABLE_TASK_FIELDS, } from '../events/types.js';
2
3
  const JSON_FIELDS = new Set(['tags', 'links', 'metadata']);
3
- export class TasksCurrentProjector {
4
+ const SAFE_COLUMNS = new Set(UPDATABLE_TASK_FIELDS.map((field) => (field === 'assignee' ? 'agent' : field)));
5
+ export class TasksCurrentProjector extends CachingProjector {
4
6
  name = 'tasks_current';
5
7
  apply(event, db) {
6
8
  switch (event.type) {
@@ -29,7 +31,7 @@ export class TasksCurrentProjector {
29
31
  }
30
32
  handleTaskCreated(event, db) {
31
33
  const data = event.data;
32
- db.prepare(`
34
+ this.stmt(db, 'taskCreated', `
33
35
  INSERT INTO tasks_current (
34
36
  task_id, title, project, status, parent_id, description,
35
37
  links, tags, priority, due_at, metadata,
@@ -47,7 +49,7 @@ export class TasksCurrentProjector {
47
49
  const newAssignee = data.agent ?? data.assignee ?? event.author ?? event.agent_id ?? null;
48
50
  // Steal case: in_progress → in_progress - always overwrite agent and claimed_at
49
51
  if (data.from === TaskStatus.InProgress) {
50
- db.prepare(`
52
+ this.stmt(db, 'statusChangedSteal', `
51
53
  UPDATE tasks_current SET
52
54
  claimed_at = ?,
53
55
  agent = ?,
@@ -59,7 +61,7 @@ export class TasksCurrentProjector {
59
61
  }
60
62
  else if (data.from === TaskStatus.Blocked) {
61
63
  // Unblock case: blocked → in_progress - preserve claimed_at, update agent only if provided
62
- db.prepare(`
64
+ this.stmt(db, 'statusChangedUnblockToInProgress', `
63
65
  UPDATE tasks_current SET
64
66
  status = ?,
65
67
  agent = COALESCE(?, agent),
@@ -71,7 +73,7 @@ export class TasksCurrentProjector {
71
73
  }
72
74
  else {
73
75
  // Normal claim (ready → in_progress) - set claimed_at, preserve agent if no new one
74
- db.prepare(`
76
+ this.stmt(db, 'statusChangedClaimToInProgress', `
75
77
  UPDATE tasks_current SET
76
78
  status = ?,
77
79
  claimed_at = ?,
@@ -85,7 +87,7 @@ export class TasksCurrentProjector {
85
87
  }
86
88
  else if (data.from === TaskStatus.Blocked && toStatus === TaskStatus.Blocked) {
87
89
  // Updating block reason: preserve agent, claimed_at - just update timestamp
88
- db.prepare(`
90
+ this.stmt(db, 'statusChangedBlockedToBlocked', `
89
91
  UPDATE tasks_current SET
90
92
  updated_at = ?,
91
93
  last_event_id = ?
@@ -94,7 +96,7 @@ export class TasksCurrentProjector {
94
96
  }
95
97
  else if (toStatus === TaskStatus.Blocked) {
96
98
  // Entering blocked state: preserve agent and claimed_at, clear lease_until
97
- db.prepare(`
99
+ this.stmt(db, 'statusChangedToBlocked', `
98
100
  UPDATE tasks_current SET
99
101
  status = ?,
100
102
  lease_until = NULL,
@@ -106,7 +108,7 @@ export class TasksCurrentProjector {
106
108
  else if (data.from === TaskStatus.InProgress || data.from === TaskStatus.Blocked) {
107
109
  // When leaving in_progress/blocked: clear claimed_at and lease, but PRESERVE agent
108
110
  // If transitioning to terminal state, set terminal_at
109
- db.prepare(`
111
+ this.stmt(db, 'statusChangedLeaveInProgressOrBlocked', `
110
112
  UPDATE tasks_current SET
111
113
  status = ?,
112
114
  claimed_at = NULL,
@@ -121,7 +123,7 @@ export class TasksCurrentProjector {
121
123
  else {
122
124
  // Generic status change (including ready → done, backlog → archived, etc.)
123
125
  // If transitioning to terminal state, set terminal_at
124
- db.prepare(`
126
+ this.stmt(db, 'statusChangedGeneric', `
125
127
  UPDATE tasks_current SET
126
128
  status = ?,
127
129
  progress = CASE WHEN ? THEN 100 ELSE progress END,
@@ -134,7 +136,7 @@ export class TasksCurrentProjector {
134
136
  }
135
137
  handleTaskMoved(event, db) {
136
138
  const data = event.data;
137
- db.prepare(`
139
+ this.stmt(db, 'taskMoved', `
138
140
  UPDATE tasks_current SET
139
141
  project = ?,
140
142
  updated_at = ?,
@@ -145,10 +147,13 @@ export class TasksCurrentProjector {
145
147
  handleTaskUpdated(event, db) {
146
148
  const data = event.data;
147
149
  const field = data.field === 'assignee' ? 'agent' : data.field;
150
+ if (!SAFE_COLUMNS.has(field)) {
151
+ return;
152
+ }
148
153
  const newValue = JSON_FIELDS.has(field)
149
154
  ? JSON.stringify(data.new_value)
150
155
  : data.new_value;
151
- db.prepare(`
156
+ this.stmt(db, `taskUpdated:${field}`, `
152
157
  UPDATE tasks_current SET
153
158
  ${field} = ?,
154
159
  updated_at = ?,
@@ -157,7 +162,7 @@ export class TasksCurrentProjector {
157
162
  `).run(newValue, event.timestamp, event.rowid, event.task_id);
158
163
  }
159
164
  handleTaskArchived(event, db) {
160
- db.prepare(`
165
+ this.stmt(db, 'taskArchived', `
161
166
  UPDATE tasks_current SET
162
167
  status = ?,
163
168
  terminal_at = ?,
@@ -170,7 +175,7 @@ export class TasksCurrentProjector {
170
175
  const data = event.data;
171
176
  // Only update progress if it's present in the checkpoint
172
177
  if (data.progress !== undefined) {
173
- db.prepare(`
178
+ this.stmt(db, 'checkpointRecordedProgress', `
174
179
  UPDATE tasks_current SET
175
180
  progress = ?,
176
181
  updated_at = ?,
@@ -1 +1 @@
1
- {"version":3,"file":"tasks-current.js","sourceRoot":"","sources":["../../src/projections/tasks-current.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tasks-current.js","sourceRoot":"","sources":["../../src/projections/tasks-current.ts"],"names":[],"mappings":"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"}
@@ -304,6 +304,63 @@ describe('TasksCurrentProjector', () => {
304
304
  const task = db.prepare('SELECT * FROM tasks_current WHERE task_id = ?').get('TASK1');
305
305
  expect(JSON.parse(task.tags)).toEqual(['new-tag']);
306
306
  });
307
+ it('skips invalid field names defensively', () => {
308
+ const createEvent = eventStore.append({
309
+ task_id: 'TASK1',
310
+ type: EventType.TaskCreated,
311
+ data: { title: 'Original', project: 'inbox' },
312
+ });
313
+ projector.apply(createEvent, db);
314
+ const before = db.prepare('SELECT title, updated_at, last_event_id FROM tasks_current WHERE task_id = ?')
315
+ .get('TASK1');
316
+ const invalidUpdateEvent = {
317
+ rowid: 9999,
318
+ event_id: 'invalid-field-event',
319
+ task_id: 'TASK1',
320
+ type: EventType.TaskUpdated,
321
+ data: {
322
+ field: 'title = ?, status = ?',
323
+ new_value: 'Malicious update',
324
+ },
325
+ timestamp: '2026-01-30T12:00:00.000Z',
326
+ };
327
+ expect(() => projector.apply(invalidUpdateEvent, db)).not.toThrow();
328
+ const task = db.prepare('SELECT title, status, updated_at, last_event_id FROM tasks_current WHERE task_id = ?')
329
+ .get('TASK1');
330
+ expect(task.title).toBe('Original');
331
+ expect(task.status).toBe('backlog');
332
+ expect(task.updated_at).toBe(before.updated_at);
333
+ expect(task.last_event_id).toBe(before.last_event_id);
334
+ });
335
+ it('still applies valid updates after skipping an invalid field', () => {
336
+ const createEvent = eventStore.append({
337
+ task_id: 'TASK1',
338
+ type: EventType.TaskCreated,
339
+ data: { title: 'Original', project: 'inbox' },
340
+ });
341
+ projector.apply(createEvent, db);
342
+ const invalidUpdateEvent = {
343
+ rowid: 9999,
344
+ event_id: 'invalid-field-event',
345
+ task_id: 'TASK1',
346
+ type: EventType.TaskUpdated,
347
+ data: {
348
+ field: 'title = ?, status = ?',
349
+ new_value: 'Malicious update',
350
+ },
351
+ timestamp: '2026-01-30T12:00:00.000Z',
352
+ };
353
+ projector.apply(invalidUpdateEvent, db);
354
+ const validUpdateEvent = eventStore.append({
355
+ task_id: 'TASK1',
356
+ type: EventType.TaskUpdated,
357
+ data: { field: 'title', old_value: 'Original', new_value: 'Updated' },
358
+ });
359
+ projector.apply(validUpdateEvent, db);
360
+ const task = db.prepare('SELECT title, last_event_id FROM tasks_current WHERE task_id = ?').get('TASK1');
361
+ expect(task.title).toBe('Updated');
362
+ expect(task.last_event_id).toBe(validUpdateEvent.rowid);
363
+ });
307
364
  });
308
365
  describe('task_archived', () => {
309
366
  it('sets status to archived', () => {
@@ -369,6 +426,36 @@ describe('TasksCurrentProjector', () => {
369
426
  const count = db.prepare('SELECT COUNT(*) as cnt FROM tasks_current').get();
370
427
  expect(count.cnt).toBe(0);
371
428
  });
429
+ it('re-prepares statements when db reference changes', () => {
430
+ const firstDb = createTestDb();
431
+ const secondDb = createTestDb();
432
+ const firstStore = new EventStore(firstDb);
433
+ const secondStore = new EventStore(secondDb);
434
+ const localProjector = new TasksCurrentProjector();
435
+ try {
436
+ const firstEvent = firstStore.append({
437
+ task_id: 'TASK1',
438
+ type: EventType.TaskCreated,
439
+ data: { title: 'Task 1', project: 'inbox' },
440
+ });
441
+ localProjector.apply(firstEvent, firstDb);
442
+ const secondEvent = secondStore.append({
443
+ task_id: 'TASK2',
444
+ type: EventType.TaskCreated,
445
+ data: { title: 'Task 2', project: 'inbox' },
446
+ });
447
+ localProjector.apply(secondEvent, secondDb);
448
+ const task = secondDb
449
+ .prepare('SELECT * FROM tasks_current WHERE task_id = ?')
450
+ .get('TASK2');
451
+ expect(task).toBeDefined();
452
+ expect(task.title).toBe('Task 2');
453
+ }
454
+ finally {
455
+ firstDb.close();
456
+ secondDb.close();
457
+ }
458
+ });
372
459
  });
373
460
  });
374
461
  //# sourceMappingURL=tasks-current.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tasks-current.test.js","sourceRoot":"","sources":["../../src/projections/tasks-current.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tasks-current.test.js","sourceRoot":"","sources":["../../src/projections/tasks-current.test.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,20 @@ export interface Projector {
5
5
  apply(event: PersistedEventEnvelope, db: Database.Database): void;
6
6
  reset?(db: Database.Database): void;
7
7
  }
8
+ /**
9
+ * Base class for projectors that caches prepared statements.
10
+ *
11
+ * Since `db` is passed per-call (not in constructor), the cache detects
12
+ * when the db reference changes (e.g., during rebuild with a fresh DB)
13
+ * and automatically invalidates all cached statements.
14
+ */
15
+ export declare abstract class CachingProjector implements Projector {
16
+ abstract name: string;
17
+ abstract apply(event: PersistedEventEnvelope, db: Database.Database): void;
18
+ private cachedDb;
19
+ private statementCache;
20
+ protected stmt(db: Database.Database, key: string, sql: string): Database.Statement;
21
+ }
8
22
  export interface ProjectionState {
9
23
  name: string;
10
24
  last_event_id: number;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/projections/types.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,QAAQ,MAAM,QAAQ,CAAC;AACnC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEjE,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,KAAK,EAAE,sBAAsB,EAAE,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;IAClE,KAAK,CAAC,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;CACpB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/projections/types.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,QAAQ,MAAM,QAAQ,CAAC;AACnC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEjE,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,KAAK,EAAE,sBAAsB,EAAE,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;IAClE,KAAK,CAAC,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;CACrC;AAED;;;;;;GAMG;AACH,8BAAsB,gBAAiB,YAAW,SAAS;IACzD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,sBAAsB,EAAE,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,IAAI;IAE1E,OAAO,CAAC,QAAQ,CAAkC;IAClD,OAAO,CAAC,cAAc,CAAyC;IAE/D,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,QAAQ,CAAC,SAAS;CAapF;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;CACpB"}
@@ -1,2 +1,24 @@
1
- export {};
1
+ /**
2
+ * Base class for projectors that caches prepared statements.
3
+ *
4
+ * Since `db` is passed per-call (not in constructor), the cache detects
5
+ * when the db reference changes (e.g., during rebuild with a fresh DB)
6
+ * and automatically invalidates all cached statements.
7
+ */
8
+ export class CachingProjector {
9
+ cachedDb = null;
10
+ statementCache = new Map();
11
+ stmt(db, key, sql) {
12
+ if (this.cachedDb !== db) {
13
+ this.cachedDb = db;
14
+ this.statementCache.clear();
15
+ }
16
+ let cached = this.statementCache.get(key);
17
+ if (!cached) {
18
+ cached = db.prepare(sql);
19
+ this.statementCache.set(key, cached);
20
+ }
21
+ return cached;
22
+ }
23
+ }
2
24
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/projections/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/projections/types.ts"],"names":[],"mappings":"AAUA;;;;;;GAMG;AACH,MAAM,OAAgB,gBAAgB;IAI5B,QAAQ,GAA6B,IAAI,CAAC;IAC1C,cAAc,GAAG,IAAI,GAAG,EAA8B,CAAC;IAErD,IAAI,CAAC,EAAqB,EAAE,GAAW,EAAE,GAAW;QAC5D,IAAI,IAAI,CAAC,QAAQ,KAAK,EAAE,EAAE,CAAC;YACzB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;YACnB,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QAC9B,CAAC;QAED,IAAI,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACzB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;CACF"}
@@ -9,7 +9,7 @@ export class SearchService {
9
9
  const trimmedQuery = query.trim();
10
10
  if (!trimmedQuery)
11
11
  return { tasks: [], total: 0, limit, offset };
12
- const safeQuery = trimmedQuery.split(/\s+/).filter(w => w.length > 0).map(w => w.replace(/[^a-zA-Z0-9]/g, '')).filter(w => w.length > 0).join(' ');
12
+ const safeQuery = trimmedQuery.split(/\s+/).filter(w => w.length > 0).map(w => w.replace(/[^a-zA-Z0-9]/g, '')).filter(w => w.length > 0).map(w => `${w}*`).join(' ');
13
13
  if (!safeQuery)
14
14
  return { tasks: [], total: 0, limit, offset };
15
15
  const where = ['task_search MATCH ?'];
@@ -1 +1 @@
1
- {"version":3,"file":"search-service.js","sourceRoot":"","sources":["../../src/services/search-service.ts"],"names":[],"mappings":"AAOA,MAAM,OAAO,aAAa;IACJ;IAApB,YAAoB,EAAqB;QAArB,OAAE,GAAF,EAAE,CAAmB;IAAG,CAAC;IAE7C,MAAM,CAAC,KAAa,EAAE,IAAoB;QACxC,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,IAAI,CAAC,CAAC;QACjC,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAElC,IAAI,CAAC,YAAY;YAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAEjE,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACnJ,IAAI,CAAC,SAAS;YAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAE9D,MAAM,KAAK,GAAa,CAAC,qBAAqB,CAAC,CAAC;QAChD,MAAM,WAAW,GAA2B,CAAC,SAAS,CAAC,CAAC;QAExD,IAAI,IAAI,EAAE,OAAO,EAAE,CAAC;YAClB,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC5B,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACjC,CAAC;QAED,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC;YACjB,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC3B,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;QAED,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACxC,MAAM,UAAU,GAAG,mGAAmG,WAAW,EAAE,CAAC;QACpI,MAAM,WAAW,GAAG,0JAA0J,WAAW,iCAAiC,CAAC;QAC3N,MAAM,KAAK,GAAI,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,GAAG,WAAW,CAAuB,CAAC,KAAK,CAAC;QAC3F,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,GAAG,WAAW,EAAE,KAAK,EAAE,MAAM,CAAuB,CAAC;QAEnG,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAC/C,CAAC;CACF"}
1
+ {"version":3,"file":"search-service.js","sourceRoot":"","sources":["../../src/services/search-service.ts"],"names":[],"mappings":"AAOA,MAAM,OAAO,aAAa;IACJ;IAApB,YAAoB,EAAqB;QAArB,OAAE,GAAF,EAAE,CAAmB;IAAG,CAAC;IAE7C,MAAM,CAAC,KAAa,EAAE,IAAoB;QACxC,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,IAAI,CAAC,CAAC;QACjC,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAElC,IAAI,CAAC,YAAY;YAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAEjE,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrK,IAAI,CAAC,SAAS;YAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAE9D,MAAM,KAAK,GAAa,CAAC,qBAAqB,CAAC,CAAC;QAChD,MAAM,WAAW,GAA2B,CAAC,SAAS,CAAC,CAAC;QAExD,IAAI,IAAI,EAAE,OAAO,EAAE,CAAC;YAClB,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC5B,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACjC,CAAC;QAED,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC;YACjB,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC3B,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;QAED,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACxC,MAAM,UAAU,GAAG,mGAAmG,WAAW,EAAE,CAAC;QACpI,MAAM,WAAW,GAAG,0JAA0J,WAAW,iCAAiC,CAAC;QAC3N,MAAM,KAAK,GAAI,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,GAAG,WAAW,CAAuB,CAAC,KAAK,CAAC;QAC3F,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,GAAG,WAAW,EAAE,KAAK,EAAE,MAAM,CAAuB,CAAC;QAEnG,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAC/C,CAAC;CACF"}
@@ -68,6 +68,29 @@ describe('SearchService', () => {
68
68
  expect(page2.tasks).toHaveLength(2);
69
69
  expect(page1.total).toBe(5);
70
70
  });
71
+ it('finds tasks by tag match', () => {
72
+ const event = eventStore.append({
73
+ task_id: 'TASK1',
74
+ type: EventType.TaskCreated,
75
+ data: { title: 'Backend work', project: 'project-a', tags: ['api', 'urgent'] },
76
+ });
77
+ engine.applyEvent(event);
78
+ const results = searchService.search('urgent');
79
+ expect(results.tasks).toHaveLength(1);
80
+ expect(results.tasks[0].task_id).toBe('TASK1');
81
+ });
82
+ it('finds tasks after tag update', () => {
83
+ createTask('TASK1', 'Backend work', 'project-a');
84
+ const updateEvent = eventStore.append({
85
+ task_id: 'TASK1',
86
+ type: EventType.TaskUpdated,
87
+ data: { field: 'tags', old_value: [], new_value: ['critical'] },
88
+ });
89
+ engine.applyEvent(updateEvent);
90
+ const results = searchService.search('critical');
91
+ expect(results.tasks).toHaveLength(1);
92
+ expect(results.tasks[0].task_id).toBe('TASK1');
93
+ });
71
94
  it('handles empty query', () => {
72
95
  createTask('TASK1', 'Test', 'inbox');
73
96
  const results = searchService.search('');
@@ -1 +1 @@
1
- {"version":3,"file":"search-service.test.js","sourceRoot":"","sources":["../../src/services/search-service.test.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAErE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAE3D,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,IAAI,EAAqB,CAAC;IAC1B,IAAI,UAAsB,CAAC;IAC3B,IAAI,MAAwB,CAAC;IAC7B,IAAI,aAA4B,CAAC;IAEjC,UAAU,CAAC,GAAG,EAAE;QACd,EAAE,GAAG,YAAY,EAAE,CAAC;QACpB,iCAAiC;QACjC,UAAU,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;QAChC,MAAM,GAAG,IAAI,gBAAgB,CAAC,EAAE,CAAC,CAAC;QAClC,MAAM,CAAC,QAAQ,CAAC,IAAI,qBAAqB,EAAE,CAAC,CAAC;QAC7C,MAAM,CAAC,QAAQ,CAAC,IAAI,eAAe,EAAE,CAAC,CAAC;QACvC,aAAa,GAAG,IAAI,aAAa,CAAC,EAAE,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAEjC,SAAS,UAAU,CAAC,MAAc,EAAE,KAAa,EAAE,OAAe,EAAE,WAAoB;QACtF,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;QACzH,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;QACtB,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;YACpC,UAAU,CAAC,OAAO,EAAE,0BAA0B,EAAE,WAAW,CAAC,CAAC;YAC7D,UAAU,CAAC,OAAO,EAAE,qBAAqB,EAAE,WAAW,CAAC,CAAC;YAExD,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;YACvD,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACtC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;YAC1C,UAAU,CAAC,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,kBAAkB,CAAC,CAAC;YAErE,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC/C,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;YACjC,UAAU,CAAC,OAAO,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;YAC/C,UAAU,CAAC,OAAO,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;YAE/C,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;YACvE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACtC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;YAChC,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;YAC9C,UAAU,CAAC,OAAO,EAAE,oBAAoB,EAAE,WAAW,CAAC,CAAC;YACvD,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC;gBACnC,OAAO,EAAE,OAAO;gBAChB,IAAI,EAAE,SAAS,CAAC,aAAa;gBAC7B,IAAI,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,EAAE,EAAE,UAAU,CAAC,KAAK,EAAE;aACzD,CAAC,CAAC;YACH,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAE9B,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;YAC3E,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACtC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;YAC9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;gBAAE,UAAU,CAAC,OAAO,CAAC,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YAE9E,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;YACpE,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;YAEpE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACpC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACpC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qBAAqB,EAAE,GAAG,EAAE;YAC7B,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;YACrC,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACzC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"search-service.test.js","sourceRoot":"","sources":["../../src/services/search-service.test.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,7 @@ export interface HookOnDoneConfig {
35
35
  }
36
36
  export interface TaskServiceOptions {
37
37
  onDone?: HookOnDoneConfig;
38
+ pruneJournalPath?: string;
38
39
  }
39
40
  export interface ClaimTaskOptions extends EventContext {
40
41
  lease_until?: string;
@@ -133,6 +134,7 @@ export interface TaskListItem {
133
134
  parent_id: string | null;
134
135
  progress: number | null;
135
136
  due_at: string | null;
137
+ tags: string[];
136
138
  }
137
139
  export interface TaskStats {
138
140
  total: number;
@@ -160,15 +162,19 @@ export interface Task {
160
162
  created_at: string;
161
163
  updated_at: string;
162
164
  }
165
+ export interface TaskUpdates {
166
+ title?: string;
167
+ description?: string | null;
168
+ links?: string[];
169
+ priority?: number;
170
+ tags?: string[];
171
+ }
163
172
  export declare class TaskNotFoundError extends Error {
164
173
  constructor(taskId: string);
165
174
  }
166
175
  export declare class TaskNotClaimableError extends Error {
167
176
  constructor(taskId: string, reason: string);
168
177
  }
169
- export declare class DependenciesNotDoneError extends Error {
170
- constructor(taskId: string, pendingDeps: string[]);
171
- }
172
178
  export declare class AmbiguousPrefixError extends Error {
173
179
  readonly matches: Array<{
174
180
  task_id: string;
@@ -198,12 +204,14 @@ export declare class TaskService {
198
204
  private projectionEngine;
199
205
  private projectService?;
200
206
  private eventsDb?;
201
- private getIncompleteDepsStmt;
207
+ private static readonly PRUNE_JOURNAL_FILENAME;
208
+ private static readonly ATTACHED_EVENTS_SCHEMA;
202
209
  private getSubtasksStmt;
203
210
  private getTaskByIdStmt;
204
211
  private resolveTaskIdStmt;
205
212
  private hookOutboxAvailable;
206
213
  private onDoneHook?;
214
+ private pruneJournalPath;
207
215
  constructor(db: Database.Database, // cache database
208
216
  eventStore: EventStore, projectionEngine: ProjectionEngine, projectService?: ProjectService | undefined, eventsDb?: Database.Database | undefined, // events database for pruning
209
217
  options?: TaskServiceOptions);
@@ -295,7 +303,15 @@ export declare class TaskService {
295
303
  sinceDays?: number;
296
304
  project?: string;
297
305
  dueMonth?: string;
306
+ tag?: string;
298
307
  }): TaskListItem[];
308
+ /**
309
+ * Get distinct tags with their task counts, excluding archived tasks.
310
+ */
311
+ getTagCounts(): Array<{
312
+ tag: string;
313
+ count: number;
314
+ }>;
299
315
  /**
300
316
  * Get a map of task_id -> array of blocking task ids.
301
317
  * A task is blocked if it's in 'ready' status but has incomplete dependencies.
@@ -334,6 +350,7 @@ export declare class TaskService {
334
350
  */
335
351
  getBlockedByForTasks(taskIds: string[]): Map<string, string[]>;
336
352
  setParent(taskId: string, parentId: string | null, opts?: EventContext): Task;
353
+ updateTask(taskId: string, updates: TaskUpdates, ctx?: EventContext): Task;
337
354
  orphanSubtasks(parentTaskId: string, opts?: EventContext): void;
338
355
  /**
339
356
  * Archive a task with optional handling of subtasks.
@@ -365,9 +382,17 @@ export declare class TaskService {
365
382
  * Recomputes eligibility inside the prune transaction to avoid TOCTOU.
366
383
  */
367
384
  pruneEligible(opts: PruneOptions): PruneResult;
385
+ private pruneEligibleWithinTransaction;
386
+ private pruneEligibleWithJournalFallback;
368
387
  private deleteTasksFromProjections;
369
388
  private deleteTasksFromEvents;
370
389
  private recreateEventTriggers;
390
+ private getDatabasePath;
391
+ private resolvePruneJournalPath;
392
+ private writePruneJournal;
393
+ private deletePruneJournal;
394
+ private readPruneJournalTaskIds;
395
+ private recoverPruneJournalIfNeeded;
371
396
  private rowToTask;
372
397
  }
373
398
  //# sourceMappingURL=task-service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"task-service.d.ts","sourceRoot":"","sources":["../../src/services/task-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task-service.d.ts","sourceRoot":"","sources":["../../src/services/task-service.ts"],"names":[],"mappings":"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"}