@hasna/todos 0.11.29 → 0.11.31
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/cli/commands/machines.d.ts +3 -0
- package/dist/cli/commands/machines.d.ts.map +1 -0
- package/dist/cli/index.js +26812 -28466
- package/dist/db/checkpoints.d.ts +55 -0
- package/dist/db/checkpoints.d.ts.map +1 -0
- package/dist/db/database.d.ts.map +1 -1
- package/dist/db/machines.d.ts +30 -1
- package/dist/db/machines.d.ts.map +1 -1
- package/dist/db/migrations.d.ts +2 -0
- package/dist/db/migrations.d.ts.map +1 -0
- package/dist/db/pg-migrations.d.ts.map +1 -1
- package/dist/db/schema.d.ts +0 -1
- package/dist/db/schema.d.ts.map +1 -1
- package/dist/db/task-crud.d.ts +13 -0
- package/dist/db/task-crud.d.ts.map +1 -0
- package/dist/db/task-graph.d.ts +27 -0
- package/dist/db/task-graph.d.ts.map +1 -0
- package/dist/db/task-lifecycle.d.ts +80 -0
- package/dist/db/task-lifecycle.d.ts.map +1 -0
- package/dist/db/task-relations.d.ts +86 -0
- package/dist/db/task-relations.d.ts.map +1 -0
- package/dist/db/task-status.d.ts +65 -0
- package/dist/db/task-status.d.ts.map +1 -0
- package/dist/db/tasks.d.ts +10 -255
- package/dist/db/tasks.d.ts.map +1 -1
- package/dist/db/webhooks.d.ts +6 -1
- package/dist/db/webhooks.d.ts.map +1 -1
- package/dist/index.js +2400 -1791
- package/dist/lib/github.d.ts +1 -1
- package/dist/lib/github.d.ts.map +1 -1
- package/dist/lib/logger.d.ts +17 -0
- package/dist/lib/logger.d.ts.map +1 -0
- package/dist/lib/north-star.d.ts +33 -0
- package/dist/lib/north-star.d.ts.map +1 -0
- package/dist/lib/task-runner.d.ts +101 -0
- package/dist/lib/task-runner.d.ts.map +1 -0
- package/dist/mcp/index.d.ts.map +1 -1
- package/dist/mcp/index.js +5423 -9138
- package/dist/mcp/tools/cloud.d.ts.map +1 -1
- package/dist/mcp/tools/code-tools.d.ts +15 -0
- package/dist/mcp/tools/code-tools.d.ts.map +1 -0
- package/dist/mcp/tools/machines.d.ts +8 -0
- package/dist/mcp/tools/machines.d.ts.map +1 -0
- package/dist/mcp/tools/task-adv-tools.d.ts +20 -0
- package/dist/mcp/tools/task-adv-tools.d.ts.map +1 -0
- package/dist/mcp/tools/task-auto-tools.d.ts +20 -0
- package/dist/mcp/tools/task-auto-tools.d.ts.map +1 -0
- package/dist/mcp/tools/task-crud.d.ts +20 -0
- package/dist/mcp/tools/task-crud.d.ts.map +1 -0
- package/dist/mcp/tools/task-meta-tools.d.ts +12 -0
- package/dist/mcp/tools/task-meta-tools.d.ts.map +1 -0
- package/dist/mcp/tools/task-project-tools.d.ts +20 -0
- package/dist/mcp/tools/task-project-tools.d.ts.map +1 -0
- package/dist/mcp/tools/task-rel-tools.d.ts +19 -0
- package/dist/mcp/tools/task-rel-tools.d.ts.map +1 -0
- package/dist/mcp/tools/task-resources.d.ts +13 -0
- package/dist/mcp/tools/task-resources.d.ts.map +1 -0
- package/dist/mcp/tools/task-workflow-tools.d.ts +20 -0
- package/dist/mcp/tools/task-workflow-tools.d.ts.map +1 -0
- package/dist/sdk/client.d.ts +361 -0
- package/dist/sdk/client.d.ts.map +1 -0
- package/dist/sdk/index.d.ts +14 -0
- package/dist/sdk/index.d.ts.map +1 -0
- package/dist/sdk/types.d.ts +167 -0
- package/dist/sdk/types.d.ts.map +1 -0
- package/dist/sdk.d.ts +15 -182
- package/dist/sdk.d.ts.map +1 -1
- package/dist/server/index.js +1968 -2804
- package/dist/server/routes.d.ts +85 -0
- package/dist/server/routes.d.ts.map +1 -0
- package/dist/server/serve.d.ts +29 -0
- package/dist/server/serve.d.ts.map +1 -1
- package/dist/types/index.d.ts +83 -0
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +3 -2
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import type { Database } from "bun:sqlite";
|
|
2
|
+
export interface Checkpoint {
|
|
3
|
+
id: string;
|
|
4
|
+
task_id: string;
|
|
5
|
+
agent_id: string | null;
|
|
6
|
+
step: string;
|
|
7
|
+
status: "pending" | "running" | "completed" | "failed" | "skipped";
|
|
8
|
+
data: Record<string, unknown>;
|
|
9
|
+
error: string | null;
|
|
10
|
+
attempt: number;
|
|
11
|
+
max_attempts: number;
|
|
12
|
+
started_at: string | null;
|
|
13
|
+
completed_at: string | null;
|
|
14
|
+
created_at: string;
|
|
15
|
+
updated_at: string;
|
|
16
|
+
}
|
|
17
|
+
export interface Heartbeat {
|
|
18
|
+
id: string;
|
|
19
|
+
task_id: string;
|
|
20
|
+
agent_id: string | null;
|
|
21
|
+
step: string | null;
|
|
22
|
+
message: string | null;
|
|
23
|
+
progress: number | null;
|
|
24
|
+
meta: Record<string, unknown>;
|
|
25
|
+
created_at: string;
|
|
26
|
+
}
|
|
27
|
+
export declare function upsertCheckpoint(task_id: string, step: string, updates: {
|
|
28
|
+
agent_id?: string;
|
|
29
|
+
status?: Checkpoint["status"];
|
|
30
|
+
data?: Record<string, unknown>;
|
|
31
|
+
error?: string | null;
|
|
32
|
+
attempt?: number;
|
|
33
|
+
max_attempts?: number;
|
|
34
|
+
started_at?: string | null;
|
|
35
|
+
completed_at?: string | null;
|
|
36
|
+
}, db?: Database): Checkpoint;
|
|
37
|
+
export declare function getCheckpoint(taskId: string, step: string, db?: Database): Checkpoint | null;
|
|
38
|
+
export declare function getTaskCheckpoints(taskId: string, db?: Database): Checkpoint[];
|
|
39
|
+
export declare function getTaskHeartbeats(taskId: string, limit?: number, db?: Database): Heartbeat[];
|
|
40
|
+
export declare function emitHeartbeat(task_id: string, opts?: {
|
|
41
|
+
agent_id?: string;
|
|
42
|
+
step?: string;
|
|
43
|
+
message?: string;
|
|
44
|
+
progress?: number;
|
|
45
|
+
meta?: Record<string, unknown>;
|
|
46
|
+
}, db?: Database): Heartbeat;
|
|
47
|
+
export declare function getLastHeartbeat(taskId: string, db?: Database): Heartbeat | null;
|
|
48
|
+
export declare function getTaskProgress(taskId: string, db?: Database): {
|
|
49
|
+
total_steps: number;
|
|
50
|
+
completed_steps: number;
|
|
51
|
+
failed_steps: number;
|
|
52
|
+
pending_steps: number;
|
|
53
|
+
last_heartbeat?: Heartbeat | null;
|
|
54
|
+
};
|
|
55
|
+
//# sourceMappingURL=checkpoints.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkpoints.d.ts","sourceRoot":"","sources":["../../src/db/checkpoints.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/db/database.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAMtC,eAAO,MAAM,mBAAmB,KAAK,CAAC;AA0EtC,wBAAgB,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,QAAQ,CAmBrD;AAED,wBAAgB,aAAa,IAAI,IAAI,CAKpC;AAED,wBAAgB,aAAa,IAAI,IAAI,CAEpC;AAED,wBAAgB,GAAG,IAAI,MAAM,CAE5B;AAED,wBAAgB,IAAI,IAAI,MAAM,CAE7B;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAK9D;AAED,wBAAgB,gBAAgB,CAAC,KAAK,SAAa,GAAG,MAAM,CAG3D;AAED,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAGpD;
|
|
1
|
+
{"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/db/database.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAMtC,eAAO,MAAM,mBAAmB,KAAK,CAAC;AA0EtC,wBAAgB,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,QAAQ,CAmBrD;AAED,wBAAgB,aAAa,IAAI,IAAI,CAKpC;AAED,wBAAgB,aAAa,IAAI,IAAI,CAEpC;AAED,wBAAgB,GAAG,IAAI,MAAM,CAE5B;AAED,wBAAgB,IAAI,IAAI,MAAM,CAE7B;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAK9D;AAED,wBAAgB,gBAAgB,CAAC,KAAK,SAAa,GAAG,MAAM,CAG3D;AAED,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAGpD;AAID,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAyC9F"}
|
package/dist/db/machines.d.ts
CHANGED
|
@@ -11,7 +11,36 @@ export declare function getMachineId(db?: Database): string;
|
|
|
11
11
|
export declare function resetMachineId(): void;
|
|
12
12
|
export declare function getMachine(id: string, db?: Database): Machine | null;
|
|
13
13
|
export declare function getMachineByName(name: string, db?: Database): Machine | null;
|
|
14
|
-
export declare function listMachines(db?: Database): Machine[];
|
|
14
|
+
export declare function listMachines(db?: Database, includeArchived?: boolean): Machine[];
|
|
15
|
+
/**
|
|
16
|
+
* Register a new machine or update an existing one.
|
|
17
|
+
*/
|
|
18
|
+
export declare function registerMachine(name: string, opts: {
|
|
19
|
+
hostname?: string;
|
|
20
|
+
ssh_address?: string;
|
|
21
|
+
primary?: boolean;
|
|
22
|
+
}, db?: Database): Machine;
|
|
23
|
+
/**
|
|
24
|
+
* Set a machine as the primary machine.
|
|
25
|
+
* Clears is_primary on all other machines.
|
|
26
|
+
*/
|
|
27
|
+
export declare function setPrimaryMachine(name: string, db?: Database): Machine;
|
|
28
|
+
/**
|
|
29
|
+
* Get the primary machine.
|
|
30
|
+
*/
|
|
31
|
+
export declare function getPrimaryMachine(db?: Database): Machine | null;
|
|
32
|
+
/**
|
|
33
|
+
* Archive (soft-delete) a machine.
|
|
34
|
+
* Cannot archive the primary machine or machines with active/pending tasks.
|
|
35
|
+
*/
|
|
36
|
+
export declare function archiveMachine(id: string, db?: Database): void;
|
|
37
|
+
/**
|
|
38
|
+
* Unarchive a machine.
|
|
39
|
+
*/
|
|
40
|
+
export declare function unarchiveMachine(id: string, db?: Database): Machine | null;
|
|
41
|
+
/**
|
|
42
|
+
* Delete a machine (hard delete). Only allowed if not primary and no tasks.
|
|
43
|
+
*/
|
|
15
44
|
export declare function deleteMachine(id: string, db?: Database): boolean;
|
|
16
45
|
export declare function backfillMachineId(db: Database, force?: boolean): void;
|
|
17
46
|
//# sourceMappingURL=machines.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"machines.d.ts","sourceRoot":"","sources":["../../src/db/machines.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,OAAO,EAAc,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"machines.d.ts","sourceRoot":"","sources":["../../src/db/machines.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,OAAO,EAAc,MAAM,mBAAmB,CAAC;AAY7D;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,EAAE,CAAC,EAAE,QAAQ,GAAG,OAAO,CAuB9D;AAMD,wBAAgB,YAAY,CAAC,EAAE,CAAC,EAAE,QAAQ,GAAG,MAAM,CAKlD;AAED,2CAA2C;AAC3C,wBAAgB,cAAc,IAAI,IAAI,CAErC;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,IAAI,CAIpE;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,IAAI,CAI5E;AAED,wBAAgB,YAAY,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,eAAe,UAAQ,GAAG,OAAO,EAAE,CAO9E;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,EACpE,EAAE,CAAC,EAAE,QAAQ,GACZ,OAAO,CA8BT;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,OAAO,CAUtE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,IAAI,CAI/D;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,IAAI,CAe9D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,IAAI,CAI1E;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,OAAO,CAehE;AAaD,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,UAAQ,GAAG,IAAI,CAgBnE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../src/db/migrations.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,UAmzBtB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pg-migrations.d.ts","sourceRoot":"","sources":["../../src/db/pg-migrations.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"pg-migrations.d.ts","sourceRoot":"","sources":["../../src/db/pg-migrations.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,EAyrBjC,CAAC"}
|
package/dist/db/schema.d.ts
CHANGED
package/dist/db/schema.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/db/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/db/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,wBAAgB,aAAa,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CA8BhD;AAED,wBAAgB,YAAY,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CA6Z/C;AAED,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CA4BnD"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Database } from "bun:sqlite";
|
|
2
|
+
import type { CreateTaskInput, Task, TaskFilter, TaskRow, TaskWithRelations, UpdateTaskInput } from "../types/index.js";
|
|
3
|
+
export declare function rowToTask(row: TaskRow): Task;
|
|
4
|
+
export declare function insertTaskTags(taskId: string, tags: string[], db: Database): void;
|
|
5
|
+
export declare function replaceTaskTags(taskId: string, tags: string[], db: Database): void;
|
|
6
|
+
export declare function createTask(input: CreateTaskInput, db?: Database): Task;
|
|
7
|
+
export declare function getTask(id: string, db?: Database): Task | null;
|
|
8
|
+
export declare function getTaskWithRelations(id: string, db?: Database): TaskWithRelations | null;
|
|
9
|
+
export declare function listTasks(filter?: TaskFilter, db?: Database): Task[];
|
|
10
|
+
export declare function countTasks(filter?: Omit<TaskFilter, 'limit' | 'offset'>, db?: Database): number;
|
|
11
|
+
export declare function updateTask(id: string, input: UpdateTaskInput, db?: Database): Task;
|
|
12
|
+
export declare function deleteTask(id: string, db?: Database): boolean;
|
|
13
|
+
//# sourceMappingURL=task-crud.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task-crud.d.ts","sourceRoot":"","sources":["../../src/db/task-crud.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAoB,MAAM,YAAY,CAAC;AAC7D,OAAO,KAAK,EACV,eAAe,EACf,IAAI,EACJ,UAAU,EACV,OAAO,EACP,iBAAiB,EACjB,eAAe,EAChB,MAAM,mBAAmB,CAAC;AAY3B,wBAAgB,SAAS,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,CAS5C;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,QAAQ,GAAG,IAAI,CAMjF;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,QAAQ,GAAG,IAAI,CAGlF;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,IAAI,CAqEtE;AAED,wBAAgB,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,IAAI,GAAG,IAAI,CAK9D;AAED,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,MAAM,EACV,EAAE,CAAC,EAAE,QAAQ,GACZ,iBAAiB,GAAG,IAAI,CAqD1B;AAED,wBAAgB,SAAS,CAAC,MAAM,GAAE,UAAe,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,IAAI,EAAE,CAsIxE;AAED,wBAAgB,UAAU,CAAC,MAAM,GAAE,IAAI,CAAC,UAAU,EAAE,OAAO,GAAG,QAAQ,CAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,MAAM,CAqFnG;AAED,wBAAgB,UAAU,CACxB,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,eAAe,EACtB,EAAE,CAAC,EAAE,QAAQ,GACZ,IAAI,CAqIN;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,OAAO,CAI7D"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { Database } from "bun:sqlite";
|
|
2
|
+
import type { CreateTaskInput, Task, TaskDependency } from "../types/index.js";
|
|
3
|
+
export declare function addDependency(taskId: string, dependsOn: string, db?: Database): void;
|
|
4
|
+
export declare function removeDependency(taskId: string, dependsOn: string, db?: Database): boolean;
|
|
5
|
+
export declare function getTaskDependencies(taskId: string, db?: Database): TaskDependency[];
|
|
6
|
+
export declare function getTaskDependents(taskId: string, db?: Database): TaskDependency[];
|
|
7
|
+
export declare function cloneTask(taskId: string, overrides?: Partial<CreateTaskInput>, db?: Database): Task;
|
|
8
|
+
export interface TaskGraphNode {
|
|
9
|
+
id: string;
|
|
10
|
+
short_id: string | null;
|
|
11
|
+
title: string;
|
|
12
|
+
status: string;
|
|
13
|
+
priority: string;
|
|
14
|
+
is_blocked: boolean;
|
|
15
|
+
}
|
|
16
|
+
export interface TaskGraph {
|
|
17
|
+
task: TaskGraphNode;
|
|
18
|
+
depends_on: TaskGraph[];
|
|
19
|
+
blocks: TaskGraph[];
|
|
20
|
+
}
|
|
21
|
+
export declare function getTaskGraph(taskId: string, direction?: "up" | "down" | "both", db?: Database): TaskGraph;
|
|
22
|
+
export declare function moveTask(taskId: string, target: {
|
|
23
|
+
task_list_id?: string | null;
|
|
24
|
+
project_id?: string | null;
|
|
25
|
+
plan_id?: string | null;
|
|
26
|
+
}, db?: Database): Task;
|
|
27
|
+
//# sourceMappingURL=task-graph.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task-graph.d.ts","sourceRoot":"","sources":["../../src/db/task-graph.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAoB,MAAM,YAAY,CAAC;AAC7D,OAAO,KAAK,EACV,eAAe,EACf,IAAI,EACJ,cAAc,EACf,MAAM,mBAAmB,CAAC;AAU3B,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,EAAE,CAAC,EAAE,QAAQ,GACZ,IAAI,CAgBN;AAED,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,EAAE,CAAC,EAAE,QAAQ,GACZ,OAAO,CAOT;AAED,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,EAAE,CAAC,EAAE,QAAQ,GACZ,cAAc,EAAE,CAKlB;AAED,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,EACd,EAAE,CAAC,EAAE,QAAQ,GACZ,cAAc,EAAE,CAKlB;AAED,wBAAgB,SAAS,CACvB,MAAM,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,EACpC,EAAE,CAAC,EAAE,QAAQ,GACZ,IAAI,CAuBN;AAID,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,aAAa,CAAC;IACpB,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,MAAM,EAAE,SAAS,EAAE,CAAC;CACrB;AAED,wBAAgB,YAAY,CAC1B,MAAM,EAAE,MAAM,EACd,SAAS,GAAE,IAAI,GAAG,MAAM,GAAG,MAAe,EAC1C,EAAE,CAAC,EAAE,QAAQ,GACZ,SAAS,CAyCX;AAED,wBAAgB,QAAQ,CACtB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE;IAAE,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EAC7F,EAAE,CAAC,EAAE,QAAQ,GACZ,IAAI,CAyBN"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import type { Database } from "bun:sqlite";
|
|
2
|
+
import type { LockResult, Task } from "../types/index.js";
|
|
3
|
+
export declare function getBlockingDeps(id: string, db?: Database): Task[];
|
|
4
|
+
export declare function startTask(id: string, agentId: string, db?: Database): Task;
|
|
5
|
+
export declare function completeTask(id: string, agentId?: string, db?: Database, options?: {
|
|
6
|
+
files_changed?: string[];
|
|
7
|
+
test_results?: string;
|
|
8
|
+
commit_hash?: string;
|
|
9
|
+
notes?: string;
|
|
10
|
+
attachment_ids?: string[];
|
|
11
|
+
skip_recurrence?: boolean;
|
|
12
|
+
confidence?: number;
|
|
13
|
+
}): Task;
|
|
14
|
+
export declare function lockTask(id: string, agentId: string, db?: Database): LockResult;
|
|
15
|
+
export declare function unlockTask(id: string, agentId?: string, db?: Database): boolean;
|
|
16
|
+
export declare function claimNextTask(agentId: string, filters?: {
|
|
17
|
+
project_id?: string;
|
|
18
|
+
task_list_id?: string;
|
|
19
|
+
plan_id?: string;
|
|
20
|
+
tags?: string[];
|
|
21
|
+
}, db?: Database): Task | null;
|
|
22
|
+
export declare function getNextTask(agentId?: string, filters?: {
|
|
23
|
+
project_id?: string;
|
|
24
|
+
task_list_id?: string;
|
|
25
|
+
plan_id?: string;
|
|
26
|
+
tags?: string[];
|
|
27
|
+
}, db?: Database): Task | null;
|
|
28
|
+
export interface ActiveWorkItem {
|
|
29
|
+
id: string;
|
|
30
|
+
short_id: string | null;
|
|
31
|
+
title: string;
|
|
32
|
+
priority: string;
|
|
33
|
+
assigned_to: string | null;
|
|
34
|
+
locked_by: string | null;
|
|
35
|
+
locked_at: string | null;
|
|
36
|
+
updated_at: string;
|
|
37
|
+
}
|
|
38
|
+
export declare function getActiveWork(filters?: {
|
|
39
|
+
project_id?: string;
|
|
40
|
+
task_list_id?: string;
|
|
41
|
+
}, db?: Database): ActiveWorkItem[];
|
|
42
|
+
export declare function getTasksChangedSince(since: string, filters?: {
|
|
43
|
+
project_id?: string;
|
|
44
|
+
task_list_id?: string;
|
|
45
|
+
}, db?: Database): Task[];
|
|
46
|
+
export declare function failTask(id: string, agentId?: string, reason?: string, options?: {
|
|
47
|
+
retry?: boolean;
|
|
48
|
+
retry_after?: string;
|
|
49
|
+
error_code?: string;
|
|
50
|
+
}, db?: Database): {
|
|
51
|
+
task: Task;
|
|
52
|
+
retryTask?: Task;
|
|
53
|
+
};
|
|
54
|
+
export declare function getStaleTasks(staleMinutes?: number, filters?: {
|
|
55
|
+
project_id?: string;
|
|
56
|
+
task_list_id?: string;
|
|
57
|
+
}, db?: Database): Task[];
|
|
58
|
+
/**
|
|
59
|
+
* Work-stealing: find the highest-priority stale in_progress task and reassign it to the given agent.
|
|
60
|
+
* A task is stealable if it's in_progress and its lock/update is older than staleMinutes.
|
|
61
|
+
*/
|
|
62
|
+
export declare function stealTask(agentId: string, opts?: {
|
|
63
|
+
stale_minutes?: number;
|
|
64
|
+
project_id?: string;
|
|
65
|
+
task_list_id?: string;
|
|
66
|
+
}, db?: Database): Task | null;
|
|
67
|
+
/**
|
|
68
|
+
* Enhanced claim: try pending queue first, then steal from stale agents if nothing pending.
|
|
69
|
+
*/
|
|
70
|
+
export declare function claimOrSteal(agentId: string, filters?: {
|
|
71
|
+
project_id?: string;
|
|
72
|
+
task_list_id?: string;
|
|
73
|
+
plan_id?: string;
|
|
74
|
+
tags?: string[];
|
|
75
|
+
stale_minutes?: number;
|
|
76
|
+
}, db?: Database): {
|
|
77
|
+
task: Task;
|
|
78
|
+
stolen: boolean;
|
|
79
|
+
} | null;
|
|
80
|
+
//# sourceMappingURL=task-lifecycle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task-lifecycle.d.ts","sourceRoot":"","sources":["../../src/db/task-lifecycle.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import type { Database } from "bun:sqlite";
|
|
2
|
+
import type { Task, TaskStatus, TaskTimeLog, TaskWatcher } from "../types/index.js";
|
|
3
|
+
export interface BulkCreateTaskInput {
|
|
4
|
+
temp_id?: string;
|
|
5
|
+
title: string;
|
|
6
|
+
description?: string;
|
|
7
|
+
priority?: "low" | "medium" | "high" | "critical";
|
|
8
|
+
status?: "pending" | "in_progress" | "completed" | "failed" | "cancelled";
|
|
9
|
+
project_id?: string;
|
|
10
|
+
parent_id?: string;
|
|
11
|
+
plan_id?: string;
|
|
12
|
+
task_list_id?: string;
|
|
13
|
+
agent_id?: string;
|
|
14
|
+
assigned_to?: string;
|
|
15
|
+
tags?: string[];
|
|
16
|
+
metadata?: Record<string, unknown>;
|
|
17
|
+
estimated_minutes?: number;
|
|
18
|
+
depends_on_temp_ids?: string[];
|
|
19
|
+
}
|
|
20
|
+
export declare function bulkCreateTasks(inputs: BulkCreateTaskInput[], db?: Database): {
|
|
21
|
+
created: {
|
|
22
|
+
temp_id: string | null;
|
|
23
|
+
id: string;
|
|
24
|
+
short_id: string | null;
|
|
25
|
+
title: string;
|
|
26
|
+
}[];
|
|
27
|
+
};
|
|
28
|
+
export declare function bulkUpdateTasks(taskIds: string[], updates: {
|
|
29
|
+
status?: Task["status"];
|
|
30
|
+
priority?: Task["priority"];
|
|
31
|
+
assigned_to?: string;
|
|
32
|
+
tags?: string[];
|
|
33
|
+
}, db?: Database): {
|
|
34
|
+
updated: number;
|
|
35
|
+
failed: {
|
|
36
|
+
id: string;
|
|
37
|
+
error: string;
|
|
38
|
+
}[];
|
|
39
|
+
};
|
|
40
|
+
/**
|
|
41
|
+
* Archive tasks matching the criteria. Archives completed/failed/cancelled tasks
|
|
42
|
+
* older than `olderThanDays` days. Returns count of archived tasks.
|
|
43
|
+
*/
|
|
44
|
+
export declare function archiveTasks(options: {
|
|
45
|
+
project_id?: string;
|
|
46
|
+
task_list_id?: string;
|
|
47
|
+
older_than_days?: number;
|
|
48
|
+
status?: TaskStatus[];
|
|
49
|
+
}, db?: Database): {
|
|
50
|
+
archived: number;
|
|
51
|
+
};
|
|
52
|
+
/**
|
|
53
|
+
* Unarchive (restore) a specific task.
|
|
54
|
+
*/
|
|
55
|
+
export declare function unarchiveTask(id: string, db?: Database): Task | null;
|
|
56
|
+
export declare function getOverdueTasks(projectId?: string, db?: Database): Task[];
|
|
57
|
+
export interface LogTimeInput {
|
|
58
|
+
task_id: string;
|
|
59
|
+
agent_id?: string;
|
|
60
|
+
minutes: number;
|
|
61
|
+
started_at?: string;
|
|
62
|
+
ended_at?: string;
|
|
63
|
+
notes?: string;
|
|
64
|
+
}
|
|
65
|
+
export declare function logTime(input: LogTimeInput, db?: Database): TaskTimeLog;
|
|
66
|
+
export declare function getTimeLogs(taskId: string, db?: Database): TaskTimeLog[];
|
|
67
|
+
export declare function getTimeReport(opts?: {
|
|
68
|
+
project_id?: string;
|
|
69
|
+
agent_id?: string;
|
|
70
|
+
since?: string;
|
|
71
|
+
}, db?: Database): {
|
|
72
|
+
task_id: string;
|
|
73
|
+
title: string;
|
|
74
|
+
estimated_minutes: number | null;
|
|
75
|
+
actual_minutes: number | null;
|
|
76
|
+
time_logs: TaskTimeLog[];
|
|
77
|
+
}[];
|
|
78
|
+
export declare function watchTask(taskId: string, agentId: string, db?: Database): TaskWatcher;
|
|
79
|
+
export declare function unwatchTask(taskId: string, agentId: string, db?: Database): boolean;
|
|
80
|
+
export declare function getTaskWatchers(taskId: string, db?: Database): TaskWatcher[];
|
|
81
|
+
export declare function notifyWatchers(taskId: string, event: string, data: Record<string, unknown>, db?: Database): void;
|
|
82
|
+
/**
|
|
83
|
+
* Log cost (tokens + USD) to a task. Accumulates — does not replace.
|
|
84
|
+
*/
|
|
85
|
+
export declare function logCost(taskId: string, tokens: number, usd: number, db?: Database): void;
|
|
86
|
+
//# sourceMappingURL=task-relations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task-relations.d.ts","sourceRoot":"","sources":["../../src/db/task-relations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAoB,MAAM,YAAY,CAAC;AAC7D,OAAO,KAAK,EACV,IAAI,EAEJ,UAAU,EACV,WAAW,EACX,WAAW,EACZ,MAAM,mBAAmB,CAAC;AAM3B,MAAM,WAAW,mBAAmB;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;IAClD,MAAM,CAAC,EAAE,SAAS,GAAG,aAAa,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;IAC1E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;CAChC;AAED,wBAAgB,eAAe,CAC7B,MAAM,EAAE,mBAAmB,EAAE,EAC7B,EAAE,CAAC,EAAE,QAAQ,GACZ;IAAE,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAAE,CA+B/F;AAED,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE;IAAE,MAAM,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,EACxG,EAAE,CAAC,EAAE,QAAQ,GACZ;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAAE,CAuB9D;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC;CACvB,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CA6BtC;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,IAAI,GAAG,IAAI,CAIpE;AAED,wBAAgB,eAAe,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,IAAI,EAAE,CASzE;AAID,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,WAAW,CAUvE;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,WAAW,EAAE,CAGxE;AAED,wBAAgB,aAAa,CAAC,IAAI,CAAC,EAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,SAAS,EAAE,WAAW,EAAE,CAAA;CAAE,EAAE,CAS/O;AAID,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,WAAW,CAUrF;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,OAAO,CAInF;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,WAAW,EAAE,CAG5E;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,IAAI,CAIhH;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,IAAI,CAMxF"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import type { Database } from "bun:sqlite";
|
|
2
|
+
import type { Task, TaskPriority, TaskStatus } from "../types/index.js";
|
|
3
|
+
export interface StatusSummary {
|
|
4
|
+
pending: number;
|
|
5
|
+
in_progress: number;
|
|
6
|
+
completed: number;
|
|
7
|
+
total: number;
|
|
8
|
+
active_work: import("./task-lifecycle.js").ActiveWorkItem[];
|
|
9
|
+
next_task: Task | null;
|
|
10
|
+
stale_count: number;
|
|
11
|
+
overdue_recurring: number;
|
|
12
|
+
blocked_tasks?: {
|
|
13
|
+
id: string;
|
|
14
|
+
short_id: string | null;
|
|
15
|
+
title: string;
|
|
16
|
+
blocked_by: {
|
|
17
|
+
id: string;
|
|
18
|
+
short_id: string | null;
|
|
19
|
+
title: string;
|
|
20
|
+
status: string;
|
|
21
|
+
}[];
|
|
22
|
+
}[];
|
|
23
|
+
}
|
|
24
|
+
export declare function getStatus(filters?: {
|
|
25
|
+
project_id?: string;
|
|
26
|
+
task_list_id?: string;
|
|
27
|
+
}, agentId?: string, options?: {
|
|
28
|
+
explain_blocked?: boolean;
|
|
29
|
+
}, db?: Database): StatusSummary;
|
|
30
|
+
export interface DecomposeSubtaskInput {
|
|
31
|
+
title: string;
|
|
32
|
+
description?: string;
|
|
33
|
+
priority?: Task["priority"];
|
|
34
|
+
assigned_to?: string;
|
|
35
|
+
estimated_minutes?: number;
|
|
36
|
+
tags?: string[];
|
|
37
|
+
}
|
|
38
|
+
export declare function decomposeTasks(parentId: string, subtasks: DecomposeSubtaskInput[], options?: {
|
|
39
|
+
depends_on_prev?: boolean;
|
|
40
|
+
}, db?: Database): {
|
|
41
|
+
parent: Task;
|
|
42
|
+
subtasks: Task[];
|
|
43
|
+
};
|
|
44
|
+
export declare function setTaskStatus(id: string, status: TaskStatus, _agentId?: string, db?: Database): Task;
|
|
45
|
+
export declare function setTaskPriority(id: string, priority: TaskPriority, _agentId?: string, db?: Database): Task;
|
|
46
|
+
export declare function redistributeStaleTasks(agentId: string, options?: {
|
|
47
|
+
max_age_minutes?: number;
|
|
48
|
+
project_id?: string;
|
|
49
|
+
limit?: number;
|
|
50
|
+
}, db?: Database): {
|
|
51
|
+
released: Task[];
|
|
52
|
+
claimed: Task | null;
|
|
53
|
+
};
|
|
54
|
+
export declare function getTaskStats(filters?: {
|
|
55
|
+
project_id?: string;
|
|
56
|
+
task_list_id?: string;
|
|
57
|
+
agent_id?: string;
|
|
58
|
+
}, db?: Database): {
|
|
59
|
+
total: number;
|
|
60
|
+
by_status: Record<string, number>;
|
|
61
|
+
by_priority: Record<string, number>;
|
|
62
|
+
completion_rate: number;
|
|
63
|
+
by_agent: Record<string, number>;
|
|
64
|
+
};
|
|
65
|
+
//# sourceMappingURL=task-status.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task-status.d.ts","sourceRoot":"","sources":["../../src/db/task-status.ts"],"names":[],"mappings":"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"}
|