@taico/taico 0.3.1 → 0.3.3

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 (66) hide show
  1. package/README.md +2 -2
  2. package/dist/agents/agent-avatar.library.js +6 -0
  3. package/dist/agents/agent-avatar.library.js.map +1 -1
  4. package/dist/agents/agent-template.catalog.js +23 -3
  5. package/dist/agents/agent-template.catalog.js.map +1 -1
  6. package/dist/app-init/agent/developer.agent.d.ts +2 -0
  7. package/dist/app-init/agent/developer.agent.js +23 -0
  8. package/dist/app-init/agent/developer.agent.js.map +1 -0
  9. package/dist/app-init/agent/lead.agent.d.ts +2 -0
  10. package/dist/app-init/agent/lead.agent.js +23 -0
  11. package/dist/app-init/agent/lead.agent.js.map +1 -0
  12. package/dist/app-init/agent/plan-reviewer.agent.d.ts +2 -0
  13. package/dist/app-init/agent/plan-reviewer.agent.js +24 -0
  14. package/dist/app-init/agent/plan-reviewer.agent.js.map +1 -0
  15. package/dist/app-init/agent/planner.agent.d.ts +2 -0
  16. package/dist/app-init/agent/planner.agent.js +23 -0
  17. package/dist/app-init/agent/planner.agent.js.map +1 -0
  18. package/dist/app-init/agent/taskmaster.agent.d.ts +2 -0
  19. package/dist/app-init/agent/taskmaster.agent.js +23 -0
  20. package/dist/app-init/agent/taskmaster.agent.js.map +1 -0
  21. package/dist/app-init/app-init.runner.js +35 -0
  22. package/dist/app-init/app-init.runner.js.map +1 -1
  23. package/dist/app-init/models/models.d.ts +4 -0
  24. package/dist/app-init/models/models.js +21 -1
  25. package/dist/app-init/models/models.js.map +1 -1
  26. package/dist/app-init/prompts/prompts.d.ts +4 -0
  27. package/dist/app-init/prompts/prompts.js +175 -1
  28. package/dist/app-init/prompts/prompts.js.map +1 -1
  29. package/dist/app.controller.d.ts +9 -1
  30. package/dist/app.controller.js +52 -2
  31. package/dist/app.controller.js.map +1 -1
  32. package/dist/app.controller.spec.js +16 -1
  33. package/dist/app.controller.spec.js.map +1 -1
  34. package/dist/app.module.js +4 -1
  35. package/dist/app.module.js.map +1 -1
  36. package/dist/main.js +10 -0
  37. package/dist/main.js.map +1 -1
  38. package/dist/meta/meta.service.d.ts +4 -1
  39. package/dist/meta/meta.service.js +38 -0
  40. package/dist/meta/meta.service.js.map +1 -1
  41. package/dist/meta/meta.service.spec.d.ts +1 -0
  42. package/dist/meta/meta.service.spec.js +100 -0
  43. package/dist/meta/meta.service.spec.js.map +1 -0
  44. package/dist/meta/system-tags.d.ts +6 -0
  45. package/dist/meta/system-tags.js +19 -0
  46. package/dist/meta/system-tags.js.map +1 -0
  47. package/dist/migrations/1742800000000-RemovePlannerPlanTagTrigger.d.ts +5 -0
  48. package/dist/migrations/1742800000000-RemovePlannerPlanTagTrigger.js +27 -0
  49. package/dist/migrations/1742800000000-RemovePlannerPlanTagTrigger.js.map +1 -0
  50. package/dist/public/assets/{index-DzwOFnwx.js → index-C1ykqErs.js} +1 -1
  51. package/dist/public/index.html +1 -1
  52. package/dist/public/package.json +4 -4
  53. package/dist/server-lifecycle.service.d.ts +14 -0
  54. package/dist/server-lifecycle.service.js +54 -0
  55. package/dist/server-lifecycle.service.js.map +1 -0
  56. package/dist/server-lifecycle.service.spec.d.ts +1 -0
  57. package/dist/server-lifecycle.service.spec.js +63 -0
  58. package/dist/server-lifecycle.service.spec.js.map +1 -0
  59. package/dist/tasks/tasks.service.auto-prune.spec.d.ts +1 -0
  60. package/dist/tasks/tasks.service.auto-prune.spec.js +135 -0
  61. package/dist/tasks/tasks.service.auto-prune.spec.js.map +1 -0
  62. package/dist/tasks/tasks.service.d.ts +2 -0
  63. package/dist/tasks/tasks.service.js +29 -0
  64. package/dist/tasks/tasks.service.js.map +1 -1
  65. package/dist/tsconfig.tsbuildinfo +1 -1
  66. package/package.json +5 -5
@@ -18,7 +18,7 @@
18
18
  <meta name="apple-mobile-web-app-capable" content="yes" />
19
19
  <meta name="apple-mobile-web-app-status-bar-style" content="default" />
20
20
  <title>taico</title>
21
- <script type="module" crossorigin src="/assets/index-DzwOFnwx.js"></script>
21
+ <script type="module" crossorigin src="/assets/index-C1ykqErs.js"></script>
22
22
  <link rel="stylesheet" crossorigin href="/assets/index-BB0owFtW.css">
23
23
  </head>
24
24
 
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@taico/ui",
3
3
  "private": true,
4
- "version": "0.3.1",
4
+ "version": "0.3.3",
5
5
  "type": "module",
6
6
  "scripts": {
7
7
  "dev": "vite",
@@ -12,9 +12,9 @@
12
12
  },
13
13
  "dependencies": {
14
14
  "@radix-ui/react-dialog": "^1.1.15",
15
- "@taico/client": "^0.3.1",
16
- "@taico/events": "^0.3.1",
17
- "@taico/shared": "^0.3.1",
15
+ "@taico/client": "^0.3.3",
16
+ "@taico/events": "^0.3.3",
17
+ "@taico/shared": "^0.3.3",
18
18
  "lucide-react": "^1.11.0",
19
19
  "marked-react": "^4.0.0",
20
20
  "react": "^19.2.0",
@@ -0,0 +1,14 @@
1
+ import { BeforeApplicationShutdown, OnApplicationShutdown, OnModuleDestroy } from '@nestjs/common';
2
+ export declare class ServerLifecycleService implements OnModuleDestroy, BeforeApplicationShutdown, OnApplicationShutdown {
3
+ private readonly logger;
4
+ private shuttingDown;
5
+ private shutdownStartedAt;
6
+ private shutdownSignal;
7
+ isShuttingDown(): boolean;
8
+ isReady(): boolean;
9
+ beginShutdown(signal?: string): boolean;
10
+ onModuleDestroy(): void;
11
+ beforeApplicationShutdown(signal?: string): void;
12
+ onApplicationShutdown(signal?: string): void;
13
+ private formatSignal;
14
+ }
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var ServerLifecycleService_1;
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.ServerLifecycleService = void 0;
11
+ const common_1 = require("@nestjs/common");
12
+ let ServerLifecycleService = ServerLifecycleService_1 = class ServerLifecycleService {
13
+ logger = new common_1.Logger(ServerLifecycleService_1.name);
14
+ shuttingDown = false;
15
+ shutdownStartedAt = null;
16
+ shutdownSignal;
17
+ isShuttingDown() {
18
+ return this.shuttingDown;
19
+ }
20
+ isReady() {
21
+ return !this.shuttingDown;
22
+ }
23
+ beginShutdown(signal) {
24
+ if (this.shuttingDown) {
25
+ this.logger.log(`Shutdown already in progress${this.formatSignal(signal)}; ignoring duplicate request`);
26
+ return false;
27
+ }
28
+ this.shuttingDown = true;
29
+ this.shutdownStartedAt = Date.now();
30
+ this.shutdownSignal = signal;
31
+ this.logger.log(`Shutdown started${this.formatSignal(signal)}; readiness is now false`);
32
+ return true;
33
+ }
34
+ onModuleDestroy() {
35
+ this.beginShutdown();
36
+ }
37
+ beforeApplicationShutdown(signal) {
38
+ this.beginShutdown(signal);
39
+ }
40
+ onApplicationShutdown(signal) {
41
+ const elapsedMs = this.shutdownStartedAt
42
+ ? Date.now() - this.shutdownStartedAt
43
+ : 0;
44
+ this.logger.log(`Shutdown completed${this.formatSignal(signal ?? this.shutdownSignal)} after ${elapsedMs}ms`);
45
+ }
46
+ formatSignal(signal) {
47
+ return signal ? ` for ${signal}` : '';
48
+ }
49
+ };
50
+ exports.ServerLifecycleService = ServerLifecycleService;
51
+ exports.ServerLifecycleService = ServerLifecycleService = ServerLifecycleService_1 = __decorate([
52
+ (0, common_1.Injectable)()
53
+ ], ServerLifecycleService);
54
+ //# sourceMappingURL=server-lifecycle.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server-lifecycle.service.js","sourceRoot":"","sources":["../src/server-lifecycle.service.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAMwB;AAGjB,IAAM,sBAAsB,8BAA5B,MAAM,sBAAsB;IAGhB,MAAM,GAAG,IAAI,eAAM,CAAC,wBAAsB,CAAC,IAAI,CAAC,CAAC;IAC1D,YAAY,GAAG,KAAK,CAAC;IACrB,iBAAiB,GAAkB,IAAI,CAAC;IACxC,cAAc,CAAqB;IAE3C,cAAc;QACZ,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,OAAO;QACL,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC;IAC5B,CAAC;IAED,aAAa,CAAC,MAAe;QAC3B,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,+BAA+B,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,8BAA8B,CACvF,CAAC;YACF,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACpC,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,mBAAmB,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,0BAA0B,CACvE,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,eAAe;QACb,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED,yBAAyB,CAAC,MAAe;QACvC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;IAED,qBAAqB,CAAC,MAAe;QACnC,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB;YACtC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,iBAAiB;YACrC,CAAC,CAAC,CAAC,CAAC;QACN,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,qBAAqB,IAAI,CAAC,YAAY,CACpC,MAAM,IAAI,IAAI,CAAC,cAAc,CAC9B,UAAU,SAAS,IAAI,CACzB,CAAC;IACJ,CAAC;IAEO,YAAY,CAAC,MAAe;QAClC,OAAO,MAAM,CAAC,CAAC,CAAC,QAAQ,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACxC,CAAC;CACF,CAAA;AAvDY,wDAAsB;iCAAtB,sBAAsB;IADlC,IAAA,mBAAU,GAAE;GACA,sBAAsB,CAuDlC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const common_1 = require("@nestjs/common");
13
+ const testing_1 = require("@nestjs/testing");
14
+ const server_lifecycle_service_1 = require("./server-lifecycle.service");
15
+ let ShutdownProbe = class ShutdownProbe {
16
+ lifecycle;
17
+ observedReadyDuringModuleDestroy = null;
18
+ constructor(lifecycle) {
19
+ this.lifecycle = lifecycle;
20
+ }
21
+ onModuleDestroy() {
22
+ this.observedReadyDuringModuleDestroy = this.lifecycle.isReady();
23
+ }
24
+ };
25
+ ShutdownProbe = __decorate([
26
+ (0, common_1.Injectable)(),
27
+ __metadata("design:paramtypes", [server_lifecycle_service_1.ServerLifecycleService])
28
+ ], ShutdownProbe);
29
+ describe('ServerLifecycleService', () => {
30
+ let service;
31
+ beforeEach(() => {
32
+ service = new server_lifecycle_service_1.ServerLifecycleService();
33
+ });
34
+ it('is ready before shutdown starts', () => {
35
+ expect(service.isReady()).toBe(true);
36
+ expect(service.isShuttingDown()).toBe(false);
37
+ });
38
+ it('is not ready after shutdown starts', () => {
39
+ expect(service.beginShutdown('SIGTERM')).toBe(true);
40
+ expect(service.isReady()).toBe(false);
41
+ expect(service.isShuttingDown()).toBe(true);
42
+ });
43
+ it('makes repeated shutdown starts idempotent', () => {
44
+ expect(service.beginShutdown('SIGTERM')).toBe(true);
45
+ expect(service.beginShutdown('SIGINT')).toBe(false);
46
+ expect(service.isReady()).toBe(false);
47
+ });
48
+ it('marks shutdown during module destroy for programmatic app close', () => {
49
+ service.onModuleDestroy();
50
+ expect(service.isReady()).toBe(false);
51
+ });
52
+ it('marks readiness false before later module destroy hooks run', async () => {
53
+ const module = await testing_1.Test.createTestingModule({
54
+ providers: [server_lifecycle_service_1.ServerLifecycleService, ShutdownProbe],
55
+ }).compile();
56
+ const app = module.createNestApplication();
57
+ await app.init();
58
+ const probe = app.get(ShutdownProbe);
59
+ await app.close();
60
+ expect(probe.observedReadyDuringModuleDestroy).toBe(false);
61
+ });
62
+ });
63
+ //# sourceMappingURL=server-lifecycle.service.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server-lifecycle.service.spec.js","sourceRoot":"","sources":["../src/server-lifecycle.service.spec.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,2CAA+E;AAC/E,6CAAsD;AACtD,yEAAoE;AAEpE,IACM,aAAa,GADnB,MACM,aAAa;IAGY;IAF7B,gCAAgC,GAAmB,IAAI,CAAC;IAExD,YAA6B,SAAiC;QAAjC,cAAS,GAAT,SAAS,CAAwB;IAAG,CAAC;IAElE,eAAe;QACb,IAAI,CAAC,gCAAgC,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;IACnE,CAAC;CACF,CAAA;AARK,aAAa;IADlB,IAAA,mBAAU,GAAE;qCAI6B,iDAAsB;GAH1D,aAAa,CAQlB;AAED,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IACtC,IAAI,OAA+B,CAAC;IAEpC,UAAU,CAAC,GAAG,EAAE;QACd,OAAO,GAAG,IAAI,iDAAsB,EAAE,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrC,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC5C,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEpD,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtC,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACnD,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpD,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEpD,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;QACzE,OAAO,CAAC,eAAe,EAAE,CAAC;QAE1B,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;QAC3E,MAAM,MAAM,GAAkB,MAAM,cAAI,CAAC,mBAAmB,CAAC;YAC3D,SAAS,EAAE,CAAC,iDAAsB,EAAE,aAAa,CAAC;SACnD,CAAC,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,GAAG,GAAqB,MAAM,CAAC,qBAAqB,EAAE,CAAC;QAC7D,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAEjB,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAErC,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC;QAElB,MAAM,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,135 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ jest.mock('@taico/errors', () => ({
4
+ ErrorCodes: {
5
+ TASK_NOT_FOUND: 'TASK_NOT_FOUND',
6
+ TASK_NOT_ASSIGNED: 'TASK_NOT_ASSIGNED',
7
+ INVALID_STATUS_TRANSITION: 'INVALID_STATUS_TRANSITION',
8
+ COMMENT_REQUIRED: 'COMMENT_REQUIRED',
9
+ AGENT_NOT_FOUND: 'AGENT_NOT_FOUND',
10
+ TASK_IS_THREAD_PARENT: 'TASK_IS_THREAD_PARENT',
11
+ INPUT_REQUEST_SELF_ASSIGNMENT: 'INPUT_REQUEST_SELF_ASSIGNMENT',
12
+ },
13
+ }));
14
+ jest.mock('../threads/threads.service', () => ({
15
+ ThreadsService: jest.fn(),
16
+ }));
17
+ const tasks_service_1 = require("./tasks.service");
18
+ const enums_1 = require("./enums");
19
+ const tasks_events_1 = require("./events/tasks.events");
20
+ describe('TasksService auto-prune', () => {
21
+ const actor = {
22
+ id: 'actor-1',
23
+ type: 'agent',
24
+ slug: 'agent-1',
25
+ displayName: 'Agent 1',
26
+ avatarUrl: null,
27
+ introduction: null,
28
+ };
29
+ function createTask(overrides = {}) {
30
+ return {
31
+ id: 'task-1',
32
+ name: 'Task 1',
33
+ description: 'Description',
34
+ status: enums_1.TaskStatus.IN_PROGRESS,
35
+ assigneeActorId: actor.id,
36
+ assigneeActor: actor,
37
+ createdByActorId: actor.id,
38
+ createdByActor: actor,
39
+ sessionId: null,
40
+ comments: [],
41
+ artefacts: [],
42
+ inputRequests: [],
43
+ tags: [{ id: 'tag-1', name: 'auto-prune' }],
44
+ dependsOn: [],
45
+ rowVersion: 1,
46
+ createdAt: new Date('2026-01-01T00:00:00Z'),
47
+ updatedAt: new Date('2026-01-01T00:00:00Z'),
48
+ deletedAt: null,
49
+ ...overrides,
50
+ };
51
+ }
52
+ function createService(options = {}) {
53
+ const taskRepository = {
54
+ findOne: jest.fn(),
55
+ save: jest.fn(async (task) => task),
56
+ softRemove: jest.fn(async (task) => ({ ...task, deletedAt: new Date() })),
57
+ };
58
+ const commentRepository = {
59
+ create: jest.fn((comment) => comment),
60
+ save: jest.fn(async (comment) => comment),
61
+ };
62
+ const eventEmitter = {
63
+ emit: jest.fn(),
64
+ };
65
+ const threadsService = {
66
+ findThreadsByParentTaskId: jest
67
+ .fn()
68
+ .mockResolvedValue(options.threadsWithParent ?? []),
69
+ };
70
+ const service = new tasks_service_1.TasksService(taskRepository, commentRepository, {}, {}, {}, {}, {}, eventEmitter, {}, {}, threadsService, {});
71
+ return {
72
+ service,
73
+ taskRepository,
74
+ commentRepository,
75
+ eventEmitter,
76
+ threadsService,
77
+ };
78
+ }
79
+ it('soft-deletes an auto-prune tagged task after completion', async () => {
80
+ const { service, taskRepository, eventEmitter, threadsService } = createService();
81
+ const task = createTask();
82
+ const completedTask = createTask({
83
+ status: enums_1.TaskStatus.DONE,
84
+ comments: [{ id: 'comment-1' }],
85
+ });
86
+ taskRepository.findOne
87
+ .mockResolvedValueOnce(task)
88
+ .mockResolvedValueOnce(completedTask)
89
+ .mockResolvedValueOnce(completedTask);
90
+ const result = await service.changeStatus(task.id, { status: enums_1.TaskStatus.DONE, comment: 'Finished' }, actor.id);
91
+ expect(result.status).toBe(enums_1.TaskStatus.DONE);
92
+ expect(threadsService.findThreadsByParentTaskId).toHaveBeenCalledWith(task.id);
93
+ expect(taskRepository.softRemove).toHaveBeenCalledWith(completedTask);
94
+ expect(eventEmitter.emit).toHaveBeenCalledWith(tasks_events_1.TaskStatusChangedEvent.INTERNAL, expect.any(tasks_events_1.TaskStatusChangedEvent));
95
+ expect(eventEmitter.emit).toHaveBeenCalledWith(tasks_events_1.TaskDeletedEvent.INTERNAL, expect.any(tasks_events_1.TaskDeletedEvent));
96
+ });
97
+ it('soft-deletes a case-variant auto-prune tagged task after completion', async () => {
98
+ const { service, taskRepository, threadsService } = createService();
99
+ const task = createTask({
100
+ tags: [{ id: 'tag-1', name: 'Auto-Prune' }],
101
+ });
102
+ const completedTask = createTask({
103
+ status: enums_1.TaskStatus.DONE,
104
+ comments: [{ id: 'comment-1' }],
105
+ tags: [{ id: 'tag-1', name: 'Auto-Prune' }],
106
+ });
107
+ taskRepository.findOne
108
+ .mockResolvedValueOnce(task)
109
+ .mockResolvedValueOnce(completedTask)
110
+ .mockResolvedValueOnce(completedTask);
111
+ await service.changeStatus(task.id, { status: enums_1.TaskStatus.DONE, comment: 'Finished' }, actor.id);
112
+ expect(threadsService.findThreadsByParentTaskId).toHaveBeenCalledWith(task.id);
113
+ expect(taskRepository.softRemove).toHaveBeenCalledWith(completedTask);
114
+ });
115
+ it('keeps an auto-prune tagged task when it is a thread parent', async () => {
116
+ const { service, taskRepository, eventEmitter, threadsService } = createService({
117
+ threadsWithParent: [{ id: 'thread-1' }],
118
+ });
119
+ const task = createTask();
120
+ const completedTask = createTask({
121
+ status: enums_1.TaskStatus.DONE,
122
+ comments: [{ id: 'comment-1' }],
123
+ });
124
+ taskRepository.findOne
125
+ .mockResolvedValueOnce(task)
126
+ .mockResolvedValueOnce(completedTask);
127
+ const result = await service.changeStatus(task.id, { status: enums_1.TaskStatus.DONE, comment: 'Finished' }, actor.id);
128
+ expect(result.status).toBe(enums_1.TaskStatus.DONE);
129
+ expect(threadsService.findThreadsByParentTaskId).toHaveBeenCalledWith(task.id);
130
+ expect(taskRepository.softRemove).not.toHaveBeenCalled();
131
+ expect(eventEmitter.emit).toHaveBeenCalledWith(tasks_events_1.TaskStatusChangedEvent.INTERNAL, expect.any(tasks_events_1.TaskStatusChangedEvent));
132
+ expect(eventEmitter.emit).not.toHaveBeenCalledWith(tasks_events_1.TaskDeletedEvent.INTERNAL, expect.any(tasks_events_1.TaskDeletedEvent));
133
+ });
134
+ });
135
+ //# sourceMappingURL=tasks.service.auto-prune.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tasks.service.auto-prune.spec.js","sourceRoot":"","sources":["../../src/tasks/tasks.service.auto-prune.spec.ts"],"names":[],"mappings":"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"}
@@ -38,6 +38,8 @@ export declare class TasksService {
38
38
  addComment(taskId: string, input: CreateCommentInput): Promise<CommentResult>;
39
39
  addArtefact(taskId: string, input: CreateArtefactInput, actorId: string): Promise<ArtefactResult>;
40
40
  changeStatus(taskId: string, input: ChangeStatusInput, actorId: string): Promise<TaskResult>;
41
+ private shouldAutoPrune;
42
+ private autoPruneCompletedTask;
41
43
  addTagToTask(taskId: string, input: AddTagInput, actorId: string): Promise<TaskResult>;
42
44
  removeTagFromTask(taskId: string, tagId: string, actorId: any): Promise<TaskResult>;
43
45
  private mapTaskToResult;
@@ -27,6 +27,7 @@ const actor_entity_1 = require("../identity-provider/actor.entity");
27
27
  const tasks_errors_1 = require("./errors/tasks.errors");
28
28
  const tasks_events_1 = require("./events/tasks.events");
29
29
  const meta_service_1 = require("../meta/meta.service");
30
+ const system_tags_1 = require("../meta/system-tags");
30
31
  const actor_service_1 = require("../identity-provider/actor.service");
31
32
  const search_service_1 = require("../search/search.service");
32
33
  const agent_runs_service_1 = require("../agent-runs/agent-runs.service");
@@ -589,8 +590,36 @@ let TasksService = TasksService_1 = class TasksService {
589
590
  status: taskWithRelations.status,
590
591
  });
591
592
  this.eventEmitter.emit(tasks_events_1.TaskStatusChangedEvent.INTERNAL, new tasks_events_1.TaskStatusChangedEvent({ id: actorId }, taskWithRelations));
593
+ if (this.shouldAutoPrune(taskWithRelations)) {
594
+ await this.autoPruneCompletedTask(taskWithRelations.id, actorId);
595
+ }
592
596
  return this.mapTaskToResult(taskWithRelations);
593
597
  }
598
+ shouldAutoPrune(task) {
599
+ return (task.status === enums_1.TaskStatus.DONE &&
600
+ (task.tags || []).some((tag) => (0, system_tags_1.isSystemTagName)(tag.name)));
601
+ }
602
+ async autoPruneCompletedTask(taskId, actorId) {
603
+ const threadsWithParent = await this.threadsService.findThreadsByParentTaskId(taskId);
604
+ if (threadsWithParent.length > 0) {
605
+ this.logger.log({
606
+ message: 'Auto-prune skipped because task is a thread parent',
607
+ taskId,
608
+ threadCount: threadsWithParent.length,
609
+ });
610
+ return;
611
+ }
612
+ const task = await this.taskRepository.findOne({ where: { id: taskId } });
613
+ if (!task) {
614
+ return;
615
+ }
616
+ await this.taskRepository.softRemove(task);
617
+ this.logger.log({
618
+ message: 'Task auto-pruned after completion',
619
+ taskId,
620
+ });
621
+ this.eventEmitter.emit(tasks_events_1.TaskDeletedEvent.INTERNAL, new tasks_events_1.TaskDeletedEvent({ id: actorId }, taskId));
622
+ }
594
623
  async addTagToTask(taskId, input, actorId) {
595
624
  this.logger.log({
596
625
  message: 'Adding tag to task',
@@ -1 +1 @@
1
- {"version":3,"file":"tasks.service.js","sourceRoot":"","sources":["../../src/tasks/tasks.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tasks.service.js","sourceRoot":"","sources":["../../src/tasks/tasks.service.ts"],"names":[],"mappings":"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"}