digital-tasks 2.1.3 → 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 (59) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +18 -0
  3. package/README.md +560 -0
  4. package/dist/client.d.ts +202 -0
  5. package/dist/client.d.ts.map +1 -0
  6. package/dist/client.js +85 -0
  7. package/dist/client.js.map +1 -0
  8. package/dist/index.d.ts +9 -7
  9. package/dist/index.d.ts.map +1 -1
  10. package/dist/index.js +8 -6
  11. package/dist/index.js.map +1 -1
  12. package/dist/markdown.d.ts.map +1 -1
  13. package/dist/markdown.js +48 -27
  14. package/dist/markdown.js.map +1 -1
  15. package/dist/project.d.ts.map +1 -1
  16. package/dist/project.js +48 -30
  17. package/dist/project.js.map +1 -1
  18. package/dist/queue.d.ts.map +1 -1
  19. package/dist/queue.js +70 -31
  20. package/dist/queue.js.map +1 -1
  21. package/dist/task.d.ts +1 -1
  22. package/dist/task.d.ts.map +1 -1
  23. package/dist/task.js +122 -60
  24. package/dist/task.js.map +1 -1
  25. package/dist/types.d.ts +135 -22
  26. package/dist/types.d.ts.map +1 -1
  27. package/dist/types.js +10 -2
  28. package/dist/types.js.map +1 -1
  29. package/dist/worker.d.ts +264 -0
  30. package/dist/worker.d.ts.map +1 -0
  31. package/dist/worker.js +656 -0
  32. package/dist/worker.js.map +1 -0
  33. package/package.json +29 -14
  34. package/src/client.ts +268 -0
  35. package/src/index.ts +12 -10
  36. package/src/markdown.ts +63 -48
  37. package/src/project.ts +57 -42
  38. package/src/queue.ts +76 -37
  39. package/src/task.ts +132 -75
  40. package/src/types.ts +177 -40
  41. package/src/worker.ts +959 -0
  42. package/test/project.test.ts +28 -84
  43. package/test/queue.test.ts +51 -24
  44. package/test/task.test.ts +80 -27
  45. package/test/worker.test.ts +1158 -0
  46. package/tsconfig.json +2 -13
  47. package/vitest.config.ts +48 -0
  48. package/wrangler.jsonc +44 -0
  49. package/LICENSE +0 -21
  50. package/dist/function-task.d.ts +0 -319
  51. package/dist/function-task.d.ts.map +0 -1
  52. package/dist/function-task.js +0 -286
  53. package/dist/function-task.js.map +0 -1
  54. package/src/index.js +0 -73
  55. package/src/markdown.js +0 -509
  56. package/src/project.js +0 -396
  57. package/src/queue.js +0 -346
  58. package/src/task.js +0 -320
  59. package/src/types.js +0 -14
@@ -0,0 +1,202 @@
1
+ /**
2
+ * RPC Client for digital-tasks
3
+ *
4
+ * Connects to a deployed digital-tasks worker via rpc.do,
5
+ * providing a fully typed client for remote task management.
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * import { createTaskClient } from 'digital-tasks/client'
10
+ *
11
+ * const tasks = createTaskClient('https://digital-tasks.workers.dev')
12
+ * const task = await tasks.create({ name: 'My Task', description: 'Do something', priority: 'high' })
13
+ * await tasks.execute(task.id)
14
+ * await tasks.complete(task.id, { result: 'done' })
15
+ * ```
16
+ *
17
+ * @packageDocumentation
18
+ */
19
+ export type TaskStatus = 'pending' | 'scheduled' | 'queued' | 'blocked' | 'in_progress' | 'completed' | 'failed' | 'cancelled';
20
+ export type TaskPriority = 'low' | 'normal' | 'high' | 'urgent' | 'critical';
21
+ export interface WorkerRef {
22
+ type: 'agent' | 'human' | 'team' | 'any';
23
+ id: string;
24
+ name?: string;
25
+ }
26
+ export interface TaskDependency {
27
+ type: 'blocked_by';
28
+ taskId: string;
29
+ satisfied: boolean;
30
+ }
31
+ export interface TaskProgress {
32
+ percent: number;
33
+ step?: string;
34
+ updatedAt: Date;
35
+ }
36
+ export interface TaskAssignment {
37
+ worker: WorkerRef;
38
+ assignedAt: Date;
39
+ }
40
+ export interface TaskData<TInput = unknown, TOutput = unknown> {
41
+ id: string;
42
+ name: string;
43
+ description: string;
44
+ status: TaskStatus;
45
+ priority: TaskPriority;
46
+ input?: TInput;
47
+ output?: TOutput;
48
+ error?: string;
49
+ scheduledFor?: Date;
50
+ deadline?: Date;
51
+ createdAt: Date;
52
+ startedAt?: Date;
53
+ completedAt?: Date;
54
+ progress?: TaskProgress;
55
+ dependencies?: TaskDependency[];
56
+ assignment?: TaskAssignment;
57
+ metadata?: Record<string, unknown>;
58
+ }
59
+ export interface CreateTaskOptions<TInput = unknown> {
60
+ id?: string;
61
+ name: string;
62
+ description: string;
63
+ priority?: TaskPriority;
64
+ input?: TInput;
65
+ scheduledFor?: Date;
66
+ deadline?: Date;
67
+ tags?: string[];
68
+ metadata?: Record<string, unknown>;
69
+ dependencies?: string[];
70
+ }
71
+ export interface ScheduleOptions {
72
+ priority?: TaskPriority;
73
+ }
74
+ export interface ExecuteOptions {
75
+ worker?: WorkerRef;
76
+ }
77
+ export interface ListOptions {
78
+ status?: TaskStatus | TaskStatus[];
79
+ priority?: TaskPriority;
80
+ tags?: string[];
81
+ search?: string;
82
+ sortBy?: 'createdAt' | 'priority';
83
+ sortOrder?: 'asc' | 'desc';
84
+ limit?: number;
85
+ offset?: number;
86
+ }
87
+ export interface EnqueueOptions {
88
+ delaySeconds?: number;
89
+ }
90
+ export interface TaskStats {
91
+ total: number;
92
+ byStatus: Record<string, number>;
93
+ byPriority: Record<string, number>;
94
+ }
95
+ /**
96
+ * The RPC API surface exposed by the digital-tasks worker.
97
+ *
98
+ * This interface mirrors the methods on TaskServiceCore (worker.ts)
99
+ * and is used to type the RPC client proxy.
100
+ */
101
+ export interface TaskServiceAPI {
102
+ /** Create a new task */
103
+ create(options: CreateTaskOptions): Promise<TaskData>;
104
+ /** Schedule a task for future execution */
105
+ schedule(taskId: string, scheduledFor: Date, options?: ScheduleOptions): Promise<TaskData>;
106
+ /** Start task execution */
107
+ execute(taskId: string, options?: ExecuteOptions): Promise<TaskData>;
108
+ /** Complete a task with output */
109
+ complete(taskId: string, output: unknown): Promise<TaskData>;
110
+ /** Fail a task with error */
111
+ fail(taskId: string, error: string | Error): Promise<TaskData>;
112
+ /** Get task status */
113
+ getStatus(taskId: string): Promise<TaskData | null>;
114
+ /** Update task progress */
115
+ updateProgress(taskId: string, percent: number, step?: string): Promise<TaskData>;
116
+ /** Cancel a task */
117
+ cancel(taskId: string, reason?: string): Promise<boolean>;
118
+ /** List tasks with optional filtering */
119
+ list(options?: ListOptions): Promise<TaskData[]>;
120
+ /** Get task statistics */
121
+ getStats(): Promise<TaskStats>;
122
+ /** Retry a failed task */
123
+ retry(taskId: string): Promise<TaskData>;
124
+ /** Get tasks that are ready for execution */
125
+ getReadyTasks(): Promise<TaskData[]>;
126
+ /** Get tasks that depend on a given task */
127
+ getDependants(taskId: string): Promise<TaskData[]>;
128
+ /** Enqueue a task for background processing */
129
+ enqueue(taskId: string, options?: EnqueueOptions): Promise<TaskData>;
130
+ /** Dequeue and start the next task */
131
+ dequeue(): Promise<TaskData | null>;
132
+ /** Execute a task with AI */
133
+ executeWithAI(taskId: string): Promise<TaskData>;
134
+ }
135
+ /**
136
+ * Options for creating a task client
137
+ */
138
+ export interface TaskClientOptions {
139
+ /** Authentication token or API key */
140
+ token?: string;
141
+ /** Custom headers to include with requests */
142
+ headers?: Record<string, string>;
143
+ }
144
+ /**
145
+ * Create a typed RPC client for the digital-tasks worker.
146
+ *
147
+ * @param url - The URL of the deployed digital-tasks worker
148
+ * @param options - Optional configuration (auth token, custom headers)
149
+ * @returns A fully typed RPC client proxy
150
+ *
151
+ * @example
152
+ * ```ts
153
+ * import { createTaskClient } from 'digital-tasks/client'
154
+ *
155
+ * // Connect to a deployed worker
156
+ * const tasks = createTaskClient('https://digital-tasks.workers.dev')
157
+ *
158
+ * // Create and manage tasks
159
+ * const task = await tasks.create({
160
+ * name: 'Analyze data',
161
+ * description: 'Run data analysis pipeline',
162
+ * priority: 'high',
163
+ * })
164
+ *
165
+ * // Execute the task
166
+ * await tasks.execute(task.id)
167
+ *
168
+ * // Track progress
169
+ * await tasks.updateProgress(task.id, 50, 'Processing...')
170
+ *
171
+ * // Complete with output
172
+ * await tasks.complete(task.id, { results: [1, 2, 3] })
173
+ *
174
+ * // List all completed tasks
175
+ * const completed = await tasks.list({ status: 'completed' })
176
+ * ```
177
+ *
178
+ * @example
179
+ * ```ts
180
+ * // With authentication
181
+ * const tasks = createTaskClient('https://digital-tasks.workers.dev', {
182
+ * token: 'my-api-key',
183
+ * })
184
+ * ```
185
+ */
186
+ export declare function createTaskClient(url?: string, options?: TaskClientOptions): TaskServiceAPI;
187
+ /**
188
+ * Default task client connected to digital-tasks.workers.dev
189
+ *
190
+ * @example
191
+ * ```ts
192
+ * import client from 'digital-tasks/client'
193
+ *
194
+ * const task = await client.create({
195
+ * name: 'Quick task',
196
+ * description: 'A task using the default client',
197
+ * })
198
+ * ```
199
+ */
200
+ declare const client: TaskServiceAPI;
201
+ export default client;
202
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/client.js ADDED
@@ -0,0 +1,85 @@
1
+ /**
2
+ * RPC Client for digital-tasks
3
+ *
4
+ * Connects to a deployed digital-tasks worker via rpc.do,
5
+ * providing a fully typed client for remote task management.
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * import { createTaskClient } from 'digital-tasks/client'
10
+ *
11
+ * const tasks = createTaskClient('https://digital-tasks.workers.dev')
12
+ * const task = await tasks.create({ name: 'My Task', description: 'Do something', priority: 'high' })
13
+ * await tasks.execute(task.id)
14
+ * await tasks.complete(task.id, { result: 'done' })
15
+ * ```
16
+ *
17
+ * @packageDocumentation
18
+ */
19
+ import { RPC, http } from 'rpc.do';
20
+ // ============================================================================
21
+ // Client Factory
22
+ // ============================================================================
23
+ /** Default worker URL for digital-tasks */
24
+ const DEFAULT_URL = 'https://digital-tasks.workers.dev';
25
+ /**
26
+ * Create a typed RPC client for the digital-tasks worker.
27
+ *
28
+ * @param url - The URL of the deployed digital-tasks worker
29
+ * @param options - Optional configuration (auth token, custom headers)
30
+ * @returns A fully typed RPC client proxy
31
+ *
32
+ * @example
33
+ * ```ts
34
+ * import { createTaskClient } from 'digital-tasks/client'
35
+ *
36
+ * // Connect to a deployed worker
37
+ * const tasks = createTaskClient('https://digital-tasks.workers.dev')
38
+ *
39
+ * // Create and manage tasks
40
+ * const task = await tasks.create({
41
+ * name: 'Analyze data',
42
+ * description: 'Run data analysis pipeline',
43
+ * priority: 'high',
44
+ * })
45
+ *
46
+ * // Execute the task
47
+ * await tasks.execute(task.id)
48
+ *
49
+ * // Track progress
50
+ * await tasks.updateProgress(task.id, 50, 'Processing...')
51
+ *
52
+ * // Complete with output
53
+ * await tasks.complete(task.id, { results: [1, 2, 3] })
54
+ *
55
+ * // List all completed tasks
56
+ * const completed = await tasks.list({ status: 'completed' })
57
+ * ```
58
+ *
59
+ * @example
60
+ * ```ts
61
+ * // With authentication
62
+ * const tasks = createTaskClient('https://digital-tasks.workers.dev', {
63
+ * token: 'my-api-key',
64
+ * })
65
+ * ```
66
+ */
67
+ export function createTaskClient(url = DEFAULT_URL, options) {
68
+ return RPC(http(url, options?.token));
69
+ }
70
+ /**
71
+ * Default task client connected to digital-tasks.workers.dev
72
+ *
73
+ * @example
74
+ * ```ts
75
+ * import client from 'digital-tasks/client'
76
+ *
77
+ * const task = await client.create({
78
+ * name: 'Quick task',
79
+ * description: 'A task using the default client',
80
+ * })
81
+ * ```
82
+ */
83
+ const client = createTaskClient();
84
+ export default client;
85
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAiLlC,+EAA+E;AAC/E,iBAAiB;AACjB,+EAA+E;AAE/E,2CAA2C;AAC3C,MAAM,WAAW,GAAG,mCAAmC,CAAA;AAEvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,MAAM,UAAU,gBAAgB,CAC9B,MAAc,WAAW,EACzB,OAA2B;IAE3B,OAAO,GAAG,CAAiB,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAA;AACvD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,GAAmB,gBAAgB,EAAE,CAAA;AAEjD,eAAe,MAAM,CAAA"}
package/dist/index.d.ts CHANGED
@@ -1,19 +1,21 @@
1
1
  /**
2
2
  * digital-tasks - Task management primitives for digital workers
3
3
  *
4
- * Task = Function + metadata (status, progress, assignment, dependencies)
4
+ * Task = Tool + metadata (status, progress, assignment, dependencies)
5
5
  *
6
- * Every task wraps a function (code, generative, agentic, or human)
7
- * with lifecycle management, worker assignment, and dependency tracking.
6
+ * Every task wraps a Tool (a callable Verb of type code, generative,
7
+ * agentic, or human) with lifecycle management, worker assignment, and
8
+ * dependency tracking. The `function` field is a deprecated alias for
9
+ * `tool` retained for backward compatibility.
8
10
  *
9
11
  * ## Quick Start
10
12
  *
11
13
  * ```ts
12
14
  * import { Task, createTask, taskQueue } from 'digital-tasks'
13
15
  *
14
- * // Create a task from a function
16
+ * // Create a task from a Tool
15
17
  * const task = await createTask({
16
- * function: {
18
+ * tool: {
17
19
  * type: 'generative',
18
20
  * name: 'summarize',
19
21
  * args: { text: 'The text to summarize' },
@@ -62,11 +64,11 @@
62
64
  * @packageDocumentation
63
65
  */
64
66
  export type * from './types.js';
65
- export type { Task, AnyTask, TaskStatus, TaskPriority, TaskQueue, TaskQueueOptions, TaskResult, WorkerRef, WorkerType, TaskDependency, DependencyType, TaskProgress, TaskEvent, CreateTaskOptions, UpdateTaskOptions, TaskQuery, TaskQueueStats, FunctionDefinition, CodeFunctionDefinition, GenerativeFunctionDefinition, AgenticFunctionDefinition, HumanFunctionDefinition, } from './types.js';
67
+ export type { Task, AnyTask, TaskStatus, TaskPriority, TaskQueue, TaskQueueOptions, TaskResult, WorkerRef, WorkerType, TaskDependency, TaskDep, DependencyType, TaskProgress, TaskEvent, Comment, CreateTaskOptions, UpdateTaskOptions, TaskQuery, TaskQueueStats, Action, FunctionDefinition, CodeFunctionDefinition, GenerativeFunctionDefinition, AgenticFunctionDefinition, HumanFunctionDefinition, } from './types.js';
66
68
  export { taskQueue, createTaskQueue } from './queue.js';
67
69
  export { createTask, getTask, startTask, updateProgress, completeTask, failTask, cancelTask, addComment, createSubtask, getSubtasks, waitForTask, } from './task.js';
68
70
  export type { ExecutionMode, FunctionType, TaskNode, TaskDefinition, ParallelGroup, SequentialGroup, Project, ProjectStatus, CreateProjectOptions, } from './project.js';
69
71
  export { task, parallel, sequential, createProject, workflow, materializeProject, getDependants, getDependencies, getReadyTasks, hasCycles, sortTasks, } from './project.js';
70
72
  export type { SerializeOptions } from './markdown.js';
71
- export { parseMarkdown, toMarkdown, syncStatusFromMarkdown, } from './markdown.js';
73
+ export { parseMarkdown, toMarkdown, syncStatusFromMarkdown } from './markdown.js';
72
74
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8DG;AAMH,mBAAmB,YAAY,CAAA;AAE/B,YAAY,EACV,IAAI,EACJ,OAAO,EACP,UAAU,EACV,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,UAAU,EACV,SAAS,EACT,UAAU,EACV,cAAc,EACd,cAAc,EACd,YAAY,EACZ,SAAS,EACT,iBAAiB,EACjB,iBAAiB,EACjB,SAAS,EACT,cAAc,EAEd,kBAAkB,EAClB,sBAAsB,EACtB,4BAA4B,EAC5B,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,YAAY,CAAA;AAMnB,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAMvD,OAAO,EACL,UAAU,EACV,OAAO,EACP,SAAS,EACT,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,UAAU,EACV,UAAU,EACV,aAAa,EACb,WAAW,EACX,WAAW,GACZ,MAAM,WAAW,CAAA;AAMlB,YAAY,EACV,aAAa,EACb,YAAY,EACZ,QAAQ,EACR,cAAc,EACd,aAAa,EACb,eAAe,EACf,OAAO,EACP,aAAa,EACb,oBAAoB,GACrB,MAAM,cAAc,CAAA;AAErB,OAAO,EACL,IAAI,EACJ,QAAQ,EACR,UAAU,EACV,aAAa,EACb,QAAQ,EACR,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,aAAa,EACb,SAAS,EACT,SAAS,GACV,MAAM,cAAc,CAAA;AAMrB,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAErD,OAAO,EACL,aAAa,EACb,UAAU,EACV,sBAAsB,GACvB,MAAM,eAAe,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgEG;AAMH,mBAAmB,YAAY,CAAA;AAE/B,YAAY,EACV,IAAI,EACJ,OAAO,EACP,UAAU,EACV,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,UAAU,EACV,SAAS,EACT,UAAU,EACV,cAAc,EACd,OAAO,EACP,cAAc,EACd,YAAY,EACZ,SAAS,EACT,OAAO,EACP,iBAAiB,EACjB,iBAAiB,EACjB,SAAS,EACT,cAAc,EAEd,MAAM,EAEN,kBAAkB,EAClB,sBAAsB,EACtB,4BAA4B,EAC5B,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,YAAY,CAAA;AAMnB,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAMvD,OAAO,EACL,UAAU,EACV,OAAO,EACP,SAAS,EACT,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,UAAU,EACV,UAAU,EACV,aAAa,EACb,WAAW,EACX,WAAW,GACZ,MAAM,WAAW,CAAA;AAMlB,YAAY,EACV,aAAa,EACb,YAAY,EACZ,QAAQ,EACR,cAAc,EACd,aAAa,EACb,eAAe,EACf,OAAO,EACP,aAAa,EACb,oBAAoB,GACrB,MAAM,cAAc,CAAA;AAErB,OAAO,EACL,IAAI,EACJ,QAAQ,EACR,UAAU,EACV,aAAa,EACb,QAAQ,EACR,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,aAAa,EACb,SAAS,EACT,SAAS,GACV,MAAM,cAAc,CAAA;AAMrB,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAErD,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA"}
package/dist/index.js CHANGED
@@ -1,19 +1,21 @@
1
1
  /**
2
2
  * digital-tasks - Task management primitives for digital workers
3
3
  *
4
- * Task = Function + metadata (status, progress, assignment, dependencies)
4
+ * Task = Tool + metadata (status, progress, assignment, dependencies)
5
5
  *
6
- * Every task wraps a function (code, generative, agentic, or human)
7
- * with lifecycle management, worker assignment, and dependency tracking.
6
+ * Every task wraps a Tool (a callable Verb of type code, generative,
7
+ * agentic, or human) with lifecycle management, worker assignment, and
8
+ * dependency tracking. The `function` field is a deprecated alias for
9
+ * `tool` retained for backward compatibility.
8
10
  *
9
11
  * ## Quick Start
10
12
  *
11
13
  * ```ts
12
14
  * import { Task, createTask, taskQueue } from 'digital-tasks'
13
15
  *
14
- * // Create a task from a function
16
+ * // Create a task from a Tool
15
17
  * const task = await createTask({
16
- * function: {
18
+ * tool: {
17
19
  * type: 'generative',
18
20
  * name: 'summarize',
19
21
  * args: { text: 'The text to summarize' },
@@ -70,5 +72,5 @@ export { taskQueue, createTaskQueue } from './queue.js';
70
72
  // ============================================================================
71
73
  export { createTask, getTask, startTask, updateProgress, completeTask, failTask, cancelTask, addComment, createSubtask, getSubtasks, waitForTask, } from './task.js';
72
74
  export { task, parallel, sequential, createProject, workflow, materializeProject, getDependants, getDependencies, getReadyTasks, hasCycles, sortTasks, } from './project.js';
73
- export { parseMarkdown, toMarkdown, syncStatusFromMarkdown, } from './markdown.js';
75
+ export { parseMarkdown, toMarkdown, syncStatusFromMarkdown } from './markdown.js';
74
76
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8DG;AAkCH,+EAA+E;AAC/E,aAAa;AACb,+EAA+E;AAE/E,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAEvD,+EAA+E;AAC/E,kBAAkB;AAClB,+EAA+E;AAE/E,OAAO,EACL,UAAU,EACV,OAAO,EACP,SAAS,EACT,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,UAAU,EACV,UAAU,EACV,aAAa,EACb,WAAW,EACX,WAAW,GACZ,MAAM,WAAW,CAAA;AAkBlB,OAAO,EACL,IAAI,EACJ,QAAQ,EACR,UAAU,EACV,aAAa,EACb,QAAQ,EACR,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,aAAa,EACb,SAAS,EACT,SAAS,GACV,MAAM,cAAc,CAAA;AAQrB,OAAO,EACL,aAAa,EACb,UAAU,EACV,sBAAsB,GACvB,MAAM,eAAe,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgEG;AAsCH,+EAA+E;AAC/E,aAAa;AACb,+EAA+E;AAE/E,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAEvD,+EAA+E;AAC/E,kBAAkB;AAClB,+EAA+E;AAE/E,OAAO,EACL,UAAU,EACV,OAAO,EACP,SAAS,EACT,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,UAAU,EACV,UAAU,EACV,aAAa,EACb,WAAW,EACX,WAAW,GACZ,MAAM,WAAW,CAAA;AAkBlB,OAAO,EACL,IAAI,EACJ,QAAQ,EACR,UAAU,EACV,aAAa,EACb,QAAQ,EACR,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,aAAa,EACb,SAAS,EACT,SAAS,GACV,MAAM,cAAc,CAAA;AAQrB,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../src/markdown.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAGH,OAAO,KAAK,EACV,OAAO,EAMR,MAAM,cAAc,CAAA;AAqPrB;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAwFvD;AAMD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,6CAA6C;IAC7C,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,gDAAgD;IAChD,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,yCAAyC;IACzC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,+CAA+C;IAC/C,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B;AA4ED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,GAAE,gBAAqB,GAAG,MAAM,CAwBnF;AAMD;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,MAAM,GACf,OAAO,CA0DT"}
1
+ {"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../src/markdown.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAGH,OAAO,KAAK,EACV,OAAO,EAOR,MAAM,cAAc,CAAA;AA0PrB;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CA4FvD;AAMD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,6CAA6C;IAC7C,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,gDAAgD;IAChD,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,yCAAyC;IACzC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,+CAA+C;IAC/C,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B;AAiFD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,GAAE,gBAAqB,GAAG,MAAM,CAwBnF;AAMD;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CA6DlF"}
package/dist/markdown.js CHANGED
@@ -49,8 +49,8 @@ import { task, parallel, sequential, createProject } from './project.js';
49
49
  */
50
50
  const STATUS_MARKERS = {
51
51
  ' ': 'pending',
52
- 'x': 'completed',
53
- 'X': 'completed',
52
+ x: 'completed',
53
+ X: 'completed',
54
54
  '-': 'in_progress',
55
55
  '~': 'blocked',
56
56
  '!': 'failed',
@@ -79,7 +79,7 @@ const PRIORITY_MARKERS = {
79
79
  '!': 'urgent',
80
80
  '^': 'high',
81
81
  '': 'normal',
82
- 'v': 'low',
82
+ v: 'low',
83
83
  };
84
84
  // ============================================================================
85
85
  // Parser
@@ -90,19 +90,22 @@ const PRIORITY_MARKERS = {
90
90
  function parseLine(line) {
91
91
  const raw = line;
92
92
  // Count leading spaces for indent (2 spaces = 1 level)
93
- const leadingSpaces = line.match(/^(\s*)/)?.[1].length || 0;
93
+ const leadingSpacesMatch = line.match(/^(\s*)/);
94
+ const leadingSpaces = leadingSpacesMatch?.[1]?.length ?? 0;
94
95
  const indent = Math.floor(leadingSpaces / 2);
95
96
  const trimmed = line.slice(leadingSpaces);
96
97
  // Check for heading
97
98
  const headingMatch = trimmed.match(/^(#{1,6})\s+(.+)$/);
98
99
  if (headingMatch) {
100
+ const matchedHashes = headingMatch[1];
101
+ const matchedTitle = headingMatch[2];
99
102
  return {
100
103
  indent,
101
104
  isTask: false,
102
105
  isOrdered: false,
103
- title: headingMatch[2].trim(),
106
+ title: matchedTitle.trim(),
104
107
  isHeading: true,
105
- headingLevel: headingMatch[1].length,
108
+ headingLevel: matchedHashes.length,
106
109
  raw,
107
110
  };
108
111
  }
@@ -133,7 +136,7 @@ function parseLine(line) {
133
136
  indent,
134
137
  isTask: true,
135
138
  isOrdered: false,
136
- status: STATUS_MARKERS[marker] || 'pending',
139
+ status: STATUS_MARKERS[marker] ?? 'pending',
137
140
  priority,
138
141
  title,
139
142
  isHeading: false,
@@ -143,6 +146,7 @@ function parseLine(line) {
143
146
  // Check for ordered task: 1. [ ] or 1. [x] etc.
144
147
  const orderedMatch = trimmed.match(/^(\d+)\.\s+\[([^\]]*)\]\s*(.*)$/);
145
148
  if (orderedMatch) {
149
+ const orderNum = orderedMatch[1];
146
150
  const marker = orderedMatch[2];
147
151
  let title = orderedMatch[3].trim();
148
152
  let priority = 'normal';
@@ -167,8 +171,8 @@ function parseLine(line) {
167
171
  indent,
168
172
  isTask: true,
169
173
  isOrdered: true,
170
- orderNumber: parseInt(orderedMatch[1], 10),
171
- status: STATUS_MARKERS[marker] || 'pending',
174
+ orderNumber: parseInt(orderNum, 10),
175
+ status: STATUS_MARKERS[marker] ?? 'pending',
172
176
  priority,
173
177
  title,
174
178
  isHeading: false,
@@ -213,14 +217,19 @@ function parseTasksAtIndent(lines, startIndex, baseIndent) {
213
217
  }
214
218
  // Parse subtasks
215
219
  const { tasks: subtasks, nextIndex } = parseTasksAtIndent(lines, index + 1, baseIndent + 1);
216
- const taskDef = task(line.title, {
217
- priority: line.priority,
218
- subtasks: subtasks.length > 0 ? subtasks : undefined,
220
+ const taskOptions = {
219
221
  metadata: {
220
222
  _originalStatus: line.status,
221
223
  _lineNumber: index,
222
224
  },
223
- });
225
+ };
226
+ if (line.priority !== undefined) {
227
+ taskOptions.priority = line.priority;
228
+ }
229
+ if (subtasks.length > 0) {
230
+ taskOptions.subtasks = subtasks;
231
+ }
232
+ const taskDef = task(line.title, taskOptions);
224
233
  tasks.push(taskDef);
225
234
  index = nextIndex;
226
235
  }
@@ -258,7 +267,7 @@ export function parseMarkdown(markdown) {
258
267
  let projectDescription;
259
268
  const allTasks = [];
260
269
  // Find project name from first h1
261
- const h1Index = lines.findIndex(l => l.isHeading && l.headingLevel === 1);
270
+ const h1Index = lines.findIndex((l) => l.isHeading && l.headingLevel === 1);
262
271
  if (h1Index !== -1) {
263
272
  projectName = lines[h1Index].title;
264
273
  }
@@ -323,11 +332,14 @@ export function parseMarkdown(markdown) {
323
332
  allTasks.push(parallel(...currentSection.tasks));
324
333
  }
325
334
  }
326
- return createProject({
335
+ const projectOptions = {
327
336
  name: projectName,
328
- description: projectDescription,
329
337
  tasks: allTasks,
330
- });
338
+ };
339
+ if (projectDescription !== undefined) {
340
+ projectOptions.description = projectDescription;
341
+ }
342
+ return createProject(projectOptions);
331
343
  }
332
344
  /**
333
345
  * Serialize a task node to markdown lines
@@ -337,12 +349,12 @@ function serializeTaskNode(node, indent, options, isSequential) {
337
349
  const indentStr = ' '.repeat(indent * (options.indentSize || 2));
338
350
  if (node.__type === 'task') {
339
351
  const taskDef = node;
340
- const status = taskDef.metadata?._originalStatus || 'pending';
352
+ const status = taskDef.metadata?.['_originalStatus'] || 'pending';
341
353
  const marker = options.includeStatus !== false ? STATUS_TO_MARKER[status] : ' ';
342
354
  let prefix;
343
355
  if (isSequential) {
344
356
  // Use numbered list for sequential
345
- const num = taskDef.metadata?._sequenceNumber || 1;
357
+ const num = taskDef.metadata?.['_sequenceNumber'] || 1;
346
358
  prefix = `${num}. [${marker}]`;
347
359
  }
348
360
  else {
@@ -351,10 +363,14 @@ function serializeTaskNode(node, indent, options, isSequential) {
351
363
  }
352
364
  let title = taskDef.title;
353
365
  if (options.includePriority && taskDef.priority && taskDef.priority !== 'normal') {
354
- const priorityMarker = taskDef.priority === 'critical' ? '!!'
355
- : taskDef.priority === 'urgent' ? '!'
356
- : taskDef.priority === 'high' ? '^'
357
- : taskDef.priority === 'low' ? 'v'
366
+ const priorityMarker = taskDef.priority === 'critical'
367
+ ? '!!'
368
+ : taskDef.priority === 'urgent'
369
+ ? '!'
370
+ : taskDef.priority === 'high'
371
+ ? '^'
372
+ : taskDef.priority === 'low'
373
+ ? 'v'
358
374
  : '';
359
375
  title = `${priorityMarker}${title}`;
360
376
  }
@@ -371,6 +387,7 @@ function serializeTaskNode(node, indent, options, isSequential) {
371
387
  let seqNum = 1;
372
388
  for (const child of group.tasks) {
373
389
  if (child.__type === 'task') {
390
+ ;
374
391
  child.metadata = {
375
392
  ...child.metadata,
376
393
  _sequenceNumber: seqNum++,
@@ -384,6 +401,7 @@ function serializeTaskNode(node, indent, options, isSequential) {
384
401
  let seqNum = 1;
385
402
  for (const child of group.tasks) {
386
403
  if (child.__type === 'task') {
404
+ ;
387
405
  child.metadata = {
388
406
  ...child.metadata,
389
407
  _sequenceNumber: seqNum++,
@@ -457,7 +475,7 @@ export function syncStatusFromMarkdown(project, markdown) {
457
475
  function collectStatuses(node) {
458
476
  if (node.__type === 'task') {
459
477
  const taskDef = node;
460
- const status = taskDef.metadata?._originalStatus;
478
+ const status = taskDef.metadata?.['_originalStatus'];
461
479
  if (status) {
462
480
  statusMap.set(taskDef.title, status);
463
481
  }
@@ -476,14 +494,17 @@ export function syncStatusFromMarkdown(project, markdown) {
476
494
  if (node.__type === 'task') {
477
495
  const taskDef = node;
478
496
  const newStatus = statusMap.get(taskDef.title);
479
- return {
497
+ const result = {
480
498
  ...taskDef,
481
499
  metadata: {
482
500
  ...taskDef.metadata,
483
- _originalStatus: newStatus || taskDef.metadata?._originalStatus,
501
+ _originalStatus: newStatus || taskDef.metadata?.['_originalStatus'],
484
502
  },
485
- subtasks: taskDef.subtasks?.map(updateStatuses),
486
503
  };
504
+ if (taskDef.subtasks) {
505
+ result.subtasks = taskDef.subtasks.map(updateStatuses);
506
+ }
507
+ return result;
487
508
  }
488
509
  else if (node.__type === 'parallel') {
489
510
  const group = node;
@@ -1 +1 @@
1
- {"version":3,"file":"markdown.js","sourceRoot":"","sources":["../src/markdown.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"markdown.js","sourceRoot":"","sources":["../src/markdown.ts"],"names":[],"mappings":"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"}