@task-mcp/shared 1.0.3 → 1.0.6
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/algorithms/critical-path.d.ts.map +1 -1
- package/dist/algorithms/critical-path.js +50 -26
- package/dist/algorithms/critical-path.js.map +1 -1
- package/dist/algorithms/dependency-integrity.d.ts +73 -0
- package/dist/algorithms/dependency-integrity.d.ts.map +1 -0
- package/dist/algorithms/dependency-integrity.js +189 -0
- package/dist/algorithms/dependency-integrity.js.map +1 -0
- package/dist/algorithms/index.d.ts +2 -0
- package/dist/algorithms/index.d.ts.map +1 -1
- package/dist/algorithms/index.js +2 -0
- package/dist/algorithms/index.js.map +1 -1
- package/dist/algorithms/tech-analysis.d.ts +106 -0
- package/dist/algorithms/tech-analysis.d.ts.map +1 -0
- package/dist/algorithms/tech-analysis.js +296 -0
- package/dist/algorithms/tech-analysis.js.map +1 -0
- package/dist/algorithms/tech-analysis.test.d.ts +2 -0
- package/dist/algorithms/tech-analysis.test.d.ts.map +1 -0
- package/dist/algorithms/tech-analysis.test.js +338 -0
- package/dist/algorithms/tech-analysis.test.js.map +1 -0
- package/dist/algorithms/topological-sort.d.ts.map +1 -1
- package/dist/algorithms/topological-sort.js +60 -8
- package/dist/algorithms/topological-sort.js.map +1 -1
- package/dist/schemas/inbox.d.ts +24 -0
- package/dist/schemas/inbox.d.ts.map +1 -0
- package/dist/schemas/inbox.js +25 -0
- package/dist/schemas/inbox.js.map +1 -0
- package/dist/schemas/index.d.ts +3 -1
- package/dist/schemas/index.d.ts.map +1 -1
- package/dist/schemas/index.js +9 -1
- package/dist/schemas/index.js.map +1 -1
- package/dist/schemas/response-format.d.ts +79 -0
- package/dist/schemas/response-format.d.ts.map +1 -0
- package/dist/schemas/response-format.js +17 -0
- package/dist/schemas/response-format.js.map +1 -0
- package/dist/schemas/task.d.ts +57 -0
- package/dist/schemas/task.d.ts.map +1 -1
- package/dist/schemas/task.js +34 -0
- package/dist/schemas/task.js.map +1 -1
- package/dist/utils/date.d.ts.map +1 -1
- package/dist/utils/date.js +17 -2
- package/dist/utils/date.js.map +1 -1
- package/dist/utils/hierarchy.d.ts +75 -0
- package/dist/utils/hierarchy.d.ts.map +1 -0
- package/dist/utils/hierarchy.js +179 -0
- package/dist/utils/hierarchy.js.map +1 -0
- package/dist/utils/id.d.ts +51 -1
- package/dist/utils/id.d.ts.map +1 -1
- package/dist/utils/id.js +124 -4
- package/dist/utils/id.js.map +1 -1
- package/dist/utils/id.test.d.ts +2 -0
- package/dist/utils/id.test.d.ts.map +1 -0
- package/dist/utils/id.test.js +228 -0
- package/dist/utils/id.test.js.map +1 -0
- package/dist/utils/index.d.ts +4 -2
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +7 -2
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/natural-language.d.ts +45 -0
- package/dist/utils/natural-language.d.ts.map +1 -1
- package/dist/utils/natural-language.js +86 -0
- package/dist/utils/natural-language.js.map +1 -1
- package/dist/utils/projection.d.ts +65 -0
- package/dist/utils/projection.d.ts.map +1 -0
- package/dist/utils/projection.js +181 -0
- package/dist/utils/projection.js.map +1 -0
- package/dist/utils/projection.test.d.ts +2 -0
- package/dist/utils/projection.test.d.ts.map +1 -0
- package/dist/utils/projection.test.js +400 -0
- package/dist/utils/projection.test.js.map +1 -0
- package/package.json +1 -1
- package/src/algorithms/critical-path.ts +56 -24
- package/src/algorithms/dependency-integrity.ts +270 -0
- package/src/algorithms/index.ts +28 -0
- package/src/algorithms/tech-analysis.test.ts +413 -0
- package/src/algorithms/tech-analysis.ts +412 -0
- package/src/algorithms/topological-sort.ts +66 -9
- package/src/schemas/inbox.ts +32 -0
- package/src/schemas/index.ts +31 -0
- package/src/schemas/response-format.ts +108 -0
- package/src/schemas/task.ts +50 -0
- package/src/utils/date.ts +18 -2
- package/src/utils/hierarchy.ts +224 -0
- package/src/utils/id.test.ts +281 -0
- package/src/utils/id.ts +139 -4
- package/src/utils/index.ts +46 -2
- package/src/utils/natural-language.ts +113 -0
- package/src/utils/projection.test.ts +505 -0
- package/src/utils/projection.ts +251 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tech-analysis.test.js","sourceRoot":"","sources":["../../src/algorithms/tech-analysis.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"topological-sort.d.ts","sourceRoot":"","sources":["../../src/algorithms/topological-sort.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE/C;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;
|
|
1
|
+
{"version":3,"file":"topological-sort.d.ts","sourceRoot":"","sources":["../../src/algorithms/topological-sort.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE/C;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AA+DD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAQzD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,QAAQ,CAS/C;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,CA+DrD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,IAAI,EAAE,EACb,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,GACX,OAAO,CAqBT;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,EAAE,CAqBpE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,EAAE,CA2BtE"}
|
|
@@ -1,3 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Max-heap implementation for priority queue (higher priority = higher value comes first)
|
|
3
|
+
* O(log n) insert and extract operations vs O(n log n) for sort-based approach
|
|
4
|
+
*/
|
|
5
|
+
class PriorityQueue {
|
|
6
|
+
heap = [];
|
|
7
|
+
compare;
|
|
8
|
+
constructor(compare) {
|
|
9
|
+
this.compare = compare;
|
|
10
|
+
}
|
|
11
|
+
get length() {
|
|
12
|
+
return this.heap.length;
|
|
13
|
+
}
|
|
14
|
+
push(item) {
|
|
15
|
+
this.heap.push(item);
|
|
16
|
+
this.bubbleUp(this.heap.length - 1);
|
|
17
|
+
}
|
|
18
|
+
pop() {
|
|
19
|
+
if (this.heap.length === 0)
|
|
20
|
+
return undefined;
|
|
21
|
+
if (this.heap.length === 1)
|
|
22
|
+
return this.heap.pop();
|
|
23
|
+
const result = this.heap[0];
|
|
24
|
+
this.heap[0] = this.heap.pop();
|
|
25
|
+
this.bubbleDown(0);
|
|
26
|
+
return result;
|
|
27
|
+
}
|
|
28
|
+
bubbleUp(index) {
|
|
29
|
+
while (index > 0) {
|
|
30
|
+
const parentIndex = Math.floor((index - 1) / 2);
|
|
31
|
+
if (this.compare(this.heap[index], this.heap[parentIndex]) <= 0)
|
|
32
|
+
break;
|
|
33
|
+
[this.heap[index], this.heap[parentIndex]] = [this.heap[parentIndex], this.heap[index]];
|
|
34
|
+
index = parentIndex;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
bubbleDown(index) {
|
|
38
|
+
const length = this.heap.length;
|
|
39
|
+
while (true) {
|
|
40
|
+
const leftChild = 2 * index + 1;
|
|
41
|
+
const rightChild = 2 * index + 2;
|
|
42
|
+
let largest = index;
|
|
43
|
+
if (leftChild < length && this.compare(this.heap[leftChild], this.heap[largest]) > 0) {
|
|
44
|
+
largest = leftChild;
|
|
45
|
+
}
|
|
46
|
+
if (rightChild < length && this.compare(this.heap[rightChild], this.heap[largest]) > 0) {
|
|
47
|
+
largest = rightChild;
|
|
48
|
+
}
|
|
49
|
+
if (largest === index)
|
|
50
|
+
break;
|
|
51
|
+
[this.heap[index], this.heap[largest]] = [this.heap[largest], this.heap[index]];
|
|
52
|
+
index = largest;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
1
56
|
/**
|
|
2
57
|
* Convert priority string to numeric value
|
|
3
58
|
*/
|
|
@@ -54,18 +109,17 @@ export function topologicalSort(tasks) {
|
|
|
54
109
|
}
|
|
55
110
|
}
|
|
56
111
|
}
|
|
57
|
-
// Initialize queue with nodes that have no dependencies
|
|
58
|
-
|
|
112
|
+
// Initialize priority queue with nodes that have no dependencies
|
|
113
|
+
// Using max-heap: higher priority comes out first
|
|
114
|
+
const queue = new PriorityQueue((a, b) => a.priority - b.priority);
|
|
59
115
|
for (const node of nodes) {
|
|
60
116
|
if (inDegree.get(node.id) === 0) {
|
|
61
117
|
queue.push(node);
|
|
62
118
|
}
|
|
63
119
|
}
|
|
64
|
-
// Sort by priority (higher first)
|
|
65
|
-
queue.sort((a, b) => b.priority - a.priority);
|
|
66
120
|
const result = [];
|
|
67
121
|
while (queue.length > 0) {
|
|
68
|
-
const current = queue.
|
|
122
|
+
const current = queue.pop();
|
|
69
123
|
const task = taskMap.get(current.id);
|
|
70
124
|
if (task) {
|
|
71
125
|
result.push(task);
|
|
@@ -76,9 +130,7 @@ export function topologicalSort(tasks) {
|
|
|
76
130
|
inDegree.set(neighborId, newDegree);
|
|
77
131
|
if (newDegree === 0) {
|
|
78
132
|
const neighborNode = nodeMap.get(neighborId);
|
|
79
|
-
queue.push(neighborNode);
|
|
80
|
-
// Re-sort to maintain priority order
|
|
81
|
-
queue.sort((a, b) => b.priority - a.priority);
|
|
133
|
+
queue.push(neighborNode); // O(log n) insertion maintains heap property
|
|
82
134
|
}
|
|
83
135
|
}
|
|
84
136
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"topological-sort.js","sourceRoot":"","sources":["../../src/algorithms/topological-sort.ts"],"names":[],"mappings":"AAYA;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAgB;IAC/C,MAAM,GAAG,GAA2B;QAClC,QAAQ,EAAE,CAAC;QACX,IAAI,EAAE,CAAC;QACP,MAAM,EAAE,CAAC;QACT,GAAG,EAAE,CAAC;KACP,CAAC;IACF,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,IAAU;IACnC,OAAO;QACL,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,YAAY,EAAE,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC;aACpC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC;aACtC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;QACvB,QAAQ,EAAE,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC;QACzC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,IAAI,CAAC;KACvC,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa;IAC3C,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACpC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACrD,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAErD,oCAAoC;IACpC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC3C,MAAM,SAAS,GAAG,IAAI,GAAG,EAAoB,CAAC;IAE9C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACzB,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED,wEAAwE;IACxE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtC,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBACvB,MAAM,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBACjC,IAAI,GAAG;oBAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC3B,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC;IACH,CAAC;IAED,
|
|
1
|
+
{"version":3,"file":"topological-sort.js","sourceRoot":"","sources":["../../src/algorithms/topological-sort.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export declare const InboxStatus: import("arktype/internal/methods/string.ts").StringType<"pending" | "promoted" | "discarded", {}>;
|
|
2
|
+
export type InboxStatus = typeof InboxStatus.infer;
|
|
3
|
+
export declare const InboxItem: import("arktype/internal/methods/object.ts").ObjectType<{
|
|
4
|
+
id: string;
|
|
5
|
+
content: string;
|
|
6
|
+
capturedAt: string;
|
|
7
|
+
status: "pending" | "promoted" | "discarded";
|
|
8
|
+
source?: string;
|
|
9
|
+
tags?: string[];
|
|
10
|
+
promotedToTaskId?: string;
|
|
11
|
+
}, {}>;
|
|
12
|
+
export type InboxItem = typeof InboxItem.infer;
|
|
13
|
+
export declare const InboxCreateInput: import("arktype/internal/methods/object.ts").ObjectType<{
|
|
14
|
+
content: string;
|
|
15
|
+
source?: string;
|
|
16
|
+
tags?: string[];
|
|
17
|
+
}, {}>;
|
|
18
|
+
export type InboxCreateInput = typeof InboxCreateInput.infer;
|
|
19
|
+
export declare const InboxUpdateInput: import("arktype/internal/methods/object.ts").ObjectType<{
|
|
20
|
+
content?: string;
|
|
21
|
+
tags?: string[];
|
|
22
|
+
}, {}>;
|
|
23
|
+
export type InboxUpdateInput = typeof InboxUpdateInput.infer;
|
|
24
|
+
//# sourceMappingURL=inbox.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inbox.d.ts","sourceRoot":"","sources":["../../src/schemas/inbox.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,WAAW,mGAA+C,CAAC;AACxE,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC,KAAK,CAAC;AAGnD,eAAO,MAAM,SAAS;;;;;;;;MAQpB,CAAC;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC,KAAK,CAAC;AAG/C,eAAO,MAAM,gBAAgB;;;;MAI3B,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,OAAO,gBAAgB,CAAC,KAAK,CAAC;AAG7D,eAAO,MAAM,gBAAgB;;;MAG3B,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,OAAO,gBAAgB,CAAC,KAAK,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { type } from "arktype";
|
|
2
|
+
// Inbox item status
|
|
3
|
+
export const InboxStatus = type("'pending' | 'promoted' | 'discarded'");
|
|
4
|
+
// Inbox item schema - lightweight idea/memo capture
|
|
5
|
+
export const InboxItem = type({
|
|
6
|
+
id: "string",
|
|
7
|
+
content: "string", // The memo/idea content
|
|
8
|
+
capturedAt: "string", // ISO timestamp
|
|
9
|
+
"source?": "string", // Origin: 'cli', 'mcp', 'api', etc.
|
|
10
|
+
"tags?": "string[]", // Simple tags for organization
|
|
11
|
+
"promotedToTaskId?": "string", // Task ID if promoted
|
|
12
|
+
status: InboxStatus,
|
|
13
|
+
});
|
|
14
|
+
// Inbox item creation input (minimal)
|
|
15
|
+
export const InboxCreateInput = type({
|
|
16
|
+
content: "string",
|
|
17
|
+
"source?": "string",
|
|
18
|
+
"tags?": "string[]",
|
|
19
|
+
});
|
|
20
|
+
// Inbox item update input
|
|
21
|
+
export const InboxUpdateInput = type({
|
|
22
|
+
"content?": "string",
|
|
23
|
+
"tags?": "string[]",
|
|
24
|
+
});
|
|
25
|
+
//# sourceMappingURL=inbox.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inbox.js","sourceRoot":"","sources":["../../src/schemas/inbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,oBAAoB;AACpB,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC,sCAAsC,CAAC,CAAC;AAGxE,oDAAoD;AACpD,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,CAAC;IAC5B,EAAE,EAAE,QAAQ;IACZ,OAAO,EAAE,QAAQ,EAAE,wBAAwB;IAC3C,UAAU,EAAE,QAAQ,EAAE,gBAAgB;IACtC,SAAS,EAAE,QAAQ,EAAE,oCAAoC;IACzD,OAAO,EAAE,UAAU,EAAE,+BAA+B;IACpD,mBAAmB,EAAE,QAAQ,EAAE,sBAAsB;IACrD,MAAM,EAAE,WAAW;CACpB,CAAC,CAAC;AAGH,sCAAsC;AACtC,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC;IACnC,OAAO,EAAE,QAAQ;IACjB,SAAS,EAAE,QAAQ;IACnB,OAAO,EAAE,UAAU;CACpB,CAAC,CAAC;AAGH,0BAA0B;AAC1B,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC;IACnC,UAAU,EAAE,QAAQ;IACpB,OAAO,EAAE,UAAU;CACpB,CAAC,CAAC"}
|
package/dist/schemas/index.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
export { Priority, TaskStatus, DependencyType, Dependency, TimeEstimate, Recurrence, Task, TaskCreateInput, TaskUpdateInput, } from "./task.js";
|
|
1
|
+
export { Priority, TaskStatus, DependencyType, Dependency, TimeEstimate, Recurrence, ComplexityFactor, ComplexityAnalysis, TechArea, RiskLevel, TechStackAnalysis, Task, TaskCreateInput, TaskUpdateInput, } from "./task.js";
|
|
2
2
|
export { ProjectStatus, Context, Project, ProjectCreateInput, ProjectUpdateInput, } from "./project.js";
|
|
3
3
|
export { SmartViewFilter, SortField, SortOrder, SmartView, BuiltInView, } from "./view.js";
|
|
4
|
+
export { InboxStatus, InboxItem, InboxCreateInput, InboxUpdateInput, } from "./inbox.js";
|
|
5
|
+
export { ResponseFormat, DEFAULT_LIMIT, MAX_LIMIT, type PaginatedResponse, type TaskSummary, type TaskPreview, type ProjectSummary, type ProjectPreview, type InboxSummary, type InboxPreview, type CriticalPathSummary, type BottleneckSummary, } from "./response-format.js";
|
|
4
6
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schemas/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,QAAQ,EACR,UAAU,EACV,cAAc,EACd,UAAU,EACV,YAAY,EACZ,UAAU,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schemas/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,QAAQ,EACR,UAAU,EACV,cAAc,EACd,UAAU,EACV,YAAY,EACZ,UAAU,EAEV,gBAAgB,EAChB,kBAAkB,EAClB,QAAQ,EACR,SAAS,EACT,iBAAiB,EAEjB,IAAI,EACJ,eAAe,EACf,eAAe,GAChB,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,aAAa,EACb,OAAO,EACP,OAAO,EACP,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,eAAe,EACf,SAAS,EACT,SAAS,EACT,SAAS,EACT,WAAW,GACZ,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,WAAW,EACX,SAAS,EACT,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,cAAc,EACd,aAAa,EACb,SAAS,EACT,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,GACvB,MAAM,sBAAsB,CAAC"}
|
package/dist/schemas/index.js
CHANGED
|
@@ -1,7 +1,15 @@
|
|
|
1
1
|
// Task schemas
|
|
2
|
-
export { Priority, TaskStatus, DependencyType, Dependency, TimeEstimate, Recurrence,
|
|
2
|
+
export { Priority, TaskStatus, DependencyType, Dependency, TimeEstimate, Recurrence,
|
|
3
|
+
// Analysis schemas
|
|
4
|
+
ComplexityFactor, ComplexityAnalysis, TechArea, RiskLevel, TechStackAnalysis,
|
|
5
|
+
// Core schemas
|
|
6
|
+
Task, TaskCreateInput, TaskUpdateInput, } from "./task.js";
|
|
3
7
|
// Project schemas
|
|
4
8
|
export { ProjectStatus, Context, Project, ProjectCreateInput, ProjectUpdateInput, } from "./project.js";
|
|
5
9
|
// View schemas
|
|
6
10
|
export { SmartViewFilter, SortField, SortOrder, SmartView, BuiltInView, } from "./view.js";
|
|
11
|
+
// Inbox schemas
|
|
12
|
+
export { InboxStatus, InboxItem, InboxCreateInput, InboxUpdateInput, } from "./inbox.js";
|
|
13
|
+
// Response format schemas (token optimization)
|
|
14
|
+
export { ResponseFormat, DEFAULT_LIMIT, MAX_LIMIT, } from "./response-format.js";
|
|
7
15
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schemas/index.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EACL,QAAQ,EACR,UAAU,EACV,cAAc,EACd,UAAU,EACV,YAAY,EACZ,UAAU,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schemas/index.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EACL,QAAQ,EACR,UAAU,EACV,cAAc,EACd,UAAU,EACV,YAAY,EACZ,UAAU;AACV,mBAAmB;AACnB,gBAAgB,EAChB,kBAAkB,EAClB,QAAQ,EACR,SAAS,EACT,iBAAiB;AACjB,eAAe;AACf,IAAI,EACJ,eAAe,EACf,eAAe,GAChB,MAAM,WAAW,CAAC;AAEnB,kBAAkB;AAClB,OAAO,EACL,aAAa,EACb,OAAO,EACP,OAAO,EACP,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,cAAc,CAAC;AAEtB,eAAe;AACf,OAAO,EACL,eAAe,EACf,SAAS,EACT,SAAS,EACT,SAAS,EACT,WAAW,GACZ,MAAM,WAAW,CAAC;AAEnB,gBAAgB;AAChB,OAAO,EACL,WAAW,EACX,SAAS,EACT,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAEpB,+CAA+C;AAC/C,OAAO,EACL,cAAc,EACd,aAAa,EACb,SAAS,GAUV,MAAM,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Response Format Schema
|
|
3
|
+
*
|
|
4
|
+
* Token-efficient response formats for MCP tools.
|
|
5
|
+
* Based on Anthropic's recommended patterns for reducing token usage.
|
|
6
|
+
*
|
|
7
|
+
* - concise: Minimal fields (4-6), JSON format for machine processing
|
|
8
|
+
* - standard: Common fields (7-10), balanced for most use cases
|
|
9
|
+
* - detailed: Full object, human-readable format
|
|
10
|
+
*/
|
|
11
|
+
export declare const ResponseFormat: import("arktype/internal/methods/string.ts").StringType<"concise" | "standard" | "detailed", {}>;
|
|
12
|
+
export type ResponseFormat = typeof ResponseFormat.infer;
|
|
13
|
+
export declare const DEFAULT_LIMIT = 20;
|
|
14
|
+
export declare const MAX_LIMIT = 100;
|
|
15
|
+
/**
|
|
16
|
+
* Paginated response wrapper
|
|
17
|
+
*/
|
|
18
|
+
export interface PaginatedResponse<T> {
|
|
19
|
+
items: T[];
|
|
20
|
+
total: number;
|
|
21
|
+
limit: number;
|
|
22
|
+
offset: number;
|
|
23
|
+
hasMore: boolean;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Task projection types - progressively more detailed
|
|
27
|
+
*/
|
|
28
|
+
export interface TaskSummary {
|
|
29
|
+
id: string;
|
|
30
|
+
title: string;
|
|
31
|
+
status: string;
|
|
32
|
+
priority: string;
|
|
33
|
+
}
|
|
34
|
+
export interface TaskPreview extends TaskSummary {
|
|
35
|
+
dueDate?: string;
|
|
36
|
+
tags?: string[];
|
|
37
|
+
contexts?: string[];
|
|
38
|
+
parentId?: string;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Project projection types
|
|
42
|
+
*/
|
|
43
|
+
export interface ProjectSummary {
|
|
44
|
+
id: string;
|
|
45
|
+
name: string;
|
|
46
|
+
status: string;
|
|
47
|
+
completionPercentage?: number;
|
|
48
|
+
}
|
|
49
|
+
export interface ProjectPreview extends ProjectSummary {
|
|
50
|
+
description?: string;
|
|
51
|
+
totalTasks?: number;
|
|
52
|
+
completedTasks?: number;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Inbox projection types
|
|
56
|
+
*/
|
|
57
|
+
export interface InboxSummary {
|
|
58
|
+
id: string;
|
|
59
|
+
content: string;
|
|
60
|
+
status: string;
|
|
61
|
+
}
|
|
62
|
+
export interface InboxPreview extends InboxSummary {
|
|
63
|
+
capturedAt: string;
|
|
64
|
+
tags?: string[];
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Analysis result types - optimized for token efficiency
|
|
68
|
+
*/
|
|
69
|
+
export interface CriticalPathSummary {
|
|
70
|
+
totalDuration: number;
|
|
71
|
+
taskCount: number;
|
|
72
|
+
taskIds: string[];
|
|
73
|
+
}
|
|
74
|
+
export interface BottleneckSummary {
|
|
75
|
+
taskId: string;
|
|
76
|
+
title: string;
|
|
77
|
+
blockedCount: number;
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=response-format.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"response-format.d.ts","sourceRoot":"","sources":["../../src/schemas/response-format.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AAGH,eAAO,MAAM,cAAc,kGAA8C,CAAC;AAC1E,MAAM,MAAM,cAAc,GAAG,OAAO,cAAc,CAAC,KAAK,CAAC;AAGzD,eAAO,MAAM,aAAa,KAAK,CAAC;AAChC,eAAO,MAAM,SAAS,MAAM,CAAC;AAE7B;;GAEG;AACH,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAClC,KAAK,EAAE,CAAC,EAAE,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AAGH,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAGD,MAAM,WAAW,WAAY,SAAQ,WAAW;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAKD;;GAEG;AAGH,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAGD,MAAM,WAAW,cAAe,SAAQ,cAAc;IACpD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AAGH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAGD,MAAM,WAAW,YAAa,SAAQ,YAAY;IAChD,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;GAEG;AAGH,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAGD,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;CACtB"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { type } from "arktype";
|
|
2
|
+
/**
|
|
3
|
+
* Response Format Schema
|
|
4
|
+
*
|
|
5
|
+
* Token-efficient response formats for MCP tools.
|
|
6
|
+
* Based on Anthropic's recommended patterns for reducing token usage.
|
|
7
|
+
*
|
|
8
|
+
* - concise: Minimal fields (4-6), JSON format for machine processing
|
|
9
|
+
* - standard: Common fields (7-10), balanced for most use cases
|
|
10
|
+
* - detailed: Full object, human-readable format
|
|
11
|
+
*/
|
|
12
|
+
// Response format options
|
|
13
|
+
export const ResponseFormat = type("'concise' | 'standard' | 'detailed'");
|
|
14
|
+
// Default limits for pagination
|
|
15
|
+
export const DEFAULT_LIMIT = 20;
|
|
16
|
+
export const MAX_LIMIT = 100;
|
|
17
|
+
//# sourceMappingURL=response-format.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"response-format.js","sourceRoot":"","sources":["../../src/schemas/response-format.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B;;;;;;;;;GASG;AAEH,0BAA0B;AAC1B,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC,qCAAqC,CAAC,CAAC;AAG1E,gCAAgC;AAChC,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,CAAC;AAChC,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,CAAC"}
|
package/dist/schemas/task.d.ts
CHANGED
|
@@ -24,6 +24,29 @@ export declare const Recurrence: import("arktype/internal/methods/object.ts").Ob
|
|
|
24
24
|
endDate?: string;
|
|
25
25
|
}, {}>;
|
|
26
26
|
export type Recurrence = typeof Recurrence.infer;
|
|
27
|
+
export declare const ComplexityFactor: import("arktype/internal/methods/string.ts").StringType<"cross_cutting" | "state_management" | "error_handling" | "performance" | "security" | "external_dependency" | "data_migration" | "breaking_change" | "unclear_requirements" | "coordination", {}>;
|
|
28
|
+
export type ComplexityFactor = typeof ComplexityFactor.infer;
|
|
29
|
+
export declare const ComplexityAnalysis: import("arktype/internal/methods/object.ts").ObjectType<{
|
|
30
|
+
score?: number;
|
|
31
|
+
factors?: ("cross_cutting" | "state_management" | "error_handling" | "performance" | "security" | "external_dependency" | "data_migration" | "breaking_change" | "unclear_requirements" | "coordination")[];
|
|
32
|
+
suggestedSubtasks?: number;
|
|
33
|
+
rationale?: string;
|
|
34
|
+
analyzedAt?: string;
|
|
35
|
+
}, {}>;
|
|
36
|
+
export type ComplexityAnalysis = typeof ComplexityAnalysis.infer;
|
|
37
|
+
export declare const TechArea: import("arktype/internal/methods/string.ts").StringType<"schema" | "backend" | "frontend" | "infra" | "devops" | "test" | "docs" | "refactor", {}>;
|
|
38
|
+
export type TechArea = typeof TechArea.infer;
|
|
39
|
+
export declare const RiskLevel: import("arktype/internal/methods/string.ts").StringType<"critical" | "high" | "medium" | "low", {}>;
|
|
40
|
+
export type RiskLevel = typeof RiskLevel.infer;
|
|
41
|
+
export declare const TechStackAnalysis: import("arktype/internal/methods/object.ts").ObjectType<{
|
|
42
|
+
areas?: ("schema" | "backend" | "frontend" | "infra" | "devops" | "test" | "docs" | "refactor")[];
|
|
43
|
+
hasBreakingChange?: boolean;
|
|
44
|
+
riskLevel?: "critical" | "high" | "medium" | "low";
|
|
45
|
+
affectedComponents?: string[];
|
|
46
|
+
rationale?: string;
|
|
47
|
+
analyzedAt?: string;
|
|
48
|
+
}, {}>;
|
|
49
|
+
export type TechStackAnalysis = typeof TechStackAnalysis.infer;
|
|
27
50
|
export declare const Task: import("arktype/internal/methods/object.ts").ObjectType<{
|
|
28
51
|
id: string;
|
|
29
52
|
title: string;
|
|
@@ -33,6 +56,8 @@ export declare const Task: import("arktype/internal/methods/object.ts").ObjectTy
|
|
|
33
56
|
createdAt: string;
|
|
34
57
|
updatedAt: string;
|
|
35
58
|
description?: string;
|
|
59
|
+
parentId?: string;
|
|
60
|
+
level?: number;
|
|
36
61
|
dependencies?: {
|
|
37
62
|
taskId: string;
|
|
38
63
|
type: "blocks" | "blocked_by" | "related";
|
|
@@ -61,6 +86,21 @@ export declare const Task: import("arktype/internal/methods/object.ts").ObjectTy
|
|
|
61
86
|
slack?: number;
|
|
62
87
|
earliestStart?: number;
|
|
63
88
|
latestStart?: number;
|
|
89
|
+
complexity?: {
|
|
90
|
+
score?: number;
|
|
91
|
+
factors?: ("cross_cutting" | "state_management" | "error_handling" | "performance" | "security" | "external_dependency" | "data_migration" | "breaking_change" | "unclear_requirements" | "coordination")[];
|
|
92
|
+
suggestedSubtasks?: number;
|
|
93
|
+
rationale?: string;
|
|
94
|
+
analyzedAt?: string;
|
|
95
|
+
};
|
|
96
|
+
techStack?: {
|
|
97
|
+
areas?: ("schema" | "backend" | "frontend" | "infra" | "devops" | "test" | "docs" | "refactor")[];
|
|
98
|
+
hasBreakingChange?: boolean;
|
|
99
|
+
riskLevel?: "critical" | "high" | "medium" | "low";
|
|
100
|
+
affectedComponents?: string[];
|
|
101
|
+
rationale?: string;
|
|
102
|
+
analyzedAt?: string;
|
|
103
|
+
};
|
|
64
104
|
}, {}>;
|
|
65
105
|
export type Task = typeof Task.infer;
|
|
66
106
|
export declare const TaskCreateInput: import("arktype/internal/methods/object.ts").ObjectType<{
|
|
@@ -68,6 +108,7 @@ export declare const TaskCreateInput: import("arktype/internal/methods/object.ts
|
|
|
68
108
|
description?: string;
|
|
69
109
|
projectId?: string;
|
|
70
110
|
priority?: "critical" | "high" | "medium" | "low";
|
|
111
|
+
parentId?: string;
|
|
71
112
|
dependencies?: {
|
|
72
113
|
taskId: string;
|
|
73
114
|
type: "blocks" | "blocked_by" | "related";
|
|
@@ -97,6 +138,7 @@ export declare const TaskUpdateInput: import("arktype/internal/methods/object.ts
|
|
|
97
138
|
status?: "pending" | "in_progress" | "blocked" | "completed" | "cancelled";
|
|
98
139
|
priority?: "critical" | "high" | "medium" | "low";
|
|
99
140
|
projectId?: string;
|
|
141
|
+
parentId?: string;
|
|
100
142
|
dependencies?: {
|
|
101
143
|
taskId: string;
|
|
102
144
|
type: "blocks" | "blocked_by" | "related";
|
|
@@ -119,6 +161,21 @@ export declare const TaskUpdateInput: import("arktype/internal/methods/object.ts
|
|
|
119
161
|
daysOfWeek?: number[];
|
|
120
162
|
endDate?: string;
|
|
121
163
|
};
|
|
164
|
+
complexity?: {
|
|
165
|
+
score?: number;
|
|
166
|
+
factors?: ("cross_cutting" | "state_management" | "error_handling" | "performance" | "security" | "external_dependency" | "data_migration" | "breaking_change" | "unclear_requirements" | "coordination")[];
|
|
167
|
+
suggestedSubtasks?: number;
|
|
168
|
+
rationale?: string;
|
|
169
|
+
analyzedAt?: string;
|
|
170
|
+
};
|
|
171
|
+
techStack?: {
|
|
172
|
+
areas?: ("schema" | "backend" | "frontend" | "infra" | "devops" | "test" | "docs" | "refactor")[];
|
|
173
|
+
hasBreakingChange?: boolean;
|
|
174
|
+
riskLevel?: "critical" | "high" | "medium" | "low";
|
|
175
|
+
affectedComponents?: string[];
|
|
176
|
+
rationale?: string;
|
|
177
|
+
analyzedAt?: string;
|
|
178
|
+
};
|
|
122
179
|
}, {}>;
|
|
123
180
|
export type TaskUpdateInput = typeof TaskUpdateInput.infer;
|
|
124
181
|
//# sourceMappingURL=task.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../src/schemas/task.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,QAAQ,qGAAiD,CAAC;AACvE,MAAM,MAAM,QAAQ,GAAG,OAAO,QAAQ,CAAC,KAAK,CAAC;AAG7C,eAAO,MAAM,UAAU,gIAEtB,CAAC;AACF,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAC,KAAK,CAAC;AAGjD,eAAO,MAAM,cAAc,kGAE1B,CAAC;AACF,MAAM,MAAM,cAAc,GAAG,OAAO,cAAc,CAAC,KAAK,CAAC;AAGzD,eAAO,MAAM,UAAU;;;;MAIrB,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAC,KAAK,CAAC;AAGjD,eAAO,MAAM,YAAY;;;;;MAKvB,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,OAAO,YAAY,CAAC,KAAK,CAAC;AAGrD,eAAO,MAAM,UAAU;;;;;MAKrB,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAC,KAAK,CAAC;AAGjD,eAAO,MAAM,IAAI
|
|
1
|
+
{"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../src/schemas/task.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,QAAQ,qGAAiD,CAAC;AACvE,MAAM,MAAM,QAAQ,GAAG,OAAO,QAAQ,CAAC,KAAK,CAAC;AAG7C,eAAO,MAAM,UAAU,gIAEtB,CAAC;AACF,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAC,KAAK,CAAC;AAGjD,eAAO,MAAM,cAAc,kGAE1B,CAAC;AACF,MAAM,MAAM,cAAc,GAAG,OAAO,cAAc,CAAC,KAAK,CAAC;AAGzD,eAAO,MAAM,UAAU;;;;MAIrB,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAC,KAAK,CAAC;AAGjD,eAAO,MAAM,YAAY;;;;;MAKvB,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,OAAO,YAAY,CAAC,KAAK,CAAC;AAGrD,eAAO,MAAM,UAAU;;;;;MAKrB,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAC,KAAK,CAAC;AAGjD,eAAO,MAAM,gBAAgB,4PAE5B,CAAC;AACF,MAAM,MAAM,gBAAgB,GAAG,OAAO,gBAAgB,CAAC,KAAK,CAAC;AAG7D,eAAO,MAAM,kBAAkB;;;;;;MAM7B,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,OAAO,kBAAkB,CAAC,KAAK,CAAC;AAGjE,eAAO,MAAM,QAAQ,oJAEpB,CAAC;AACF,MAAM,MAAM,QAAQ,GAAG,OAAO,QAAQ,CAAC,KAAK,CAAC;AAG7C,eAAO,MAAM,SAAS,qGAAiD,CAAC;AACxE,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC,KAAK,CAAC;AAG/C,eAAO,MAAM,iBAAiB;;;;;;;MAO5B,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAC,KAAK,CAAC;AAG/D,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MA2Cf,CAAC;AACH,MAAM,MAAM,IAAI,GAAG,OAAO,IAAI,CAAC,KAAK,CAAC;AAGrC,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;MAa1B,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,OAAO,eAAe,CAAC,KAAK,CAAC;AAG3D,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAkB1B,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,OAAO,eAAe,CAAC,KAAK,CAAC"}
|
package/dist/schemas/task.js
CHANGED
|
@@ -25,6 +25,29 @@ export const Recurrence = type({
|
|
|
25
25
|
"daysOfWeek?": "number[]", // 0-6 for weekly
|
|
26
26
|
"endDate?": "string",
|
|
27
27
|
});
|
|
28
|
+
// Complexity factors that contribute to task difficulty
|
|
29
|
+
export const ComplexityFactor = type("'cross_cutting' | 'state_management' | 'error_handling' | 'performance' | 'security' | 'external_dependency' | 'data_migration' | 'breaking_change' | 'unclear_requirements' | 'coordination'");
|
|
30
|
+
// Complexity analysis result (populated by Claude)
|
|
31
|
+
export const ComplexityAnalysis = type({
|
|
32
|
+
"score?": "number", // 1-10 complexity score
|
|
33
|
+
"factors?": ComplexityFactor.array(),
|
|
34
|
+
"suggestedSubtasks?": "number", // 0-10 recommended subtask count
|
|
35
|
+
"rationale?": "string",
|
|
36
|
+
"analyzedAt?": "string",
|
|
37
|
+
});
|
|
38
|
+
// Tech area categories for ordering
|
|
39
|
+
export const TechArea = type("'schema' | 'backend' | 'frontend' | 'infra' | 'devops' | 'test' | 'docs' | 'refactor'");
|
|
40
|
+
// Risk level for changes
|
|
41
|
+
export const RiskLevel = type("'low' | 'medium' | 'high' | 'critical'");
|
|
42
|
+
// Tech stack analysis result (populated by Claude)
|
|
43
|
+
export const TechStackAnalysis = type({
|
|
44
|
+
"areas?": TechArea.array(),
|
|
45
|
+
"hasBreakingChange?": "boolean",
|
|
46
|
+
"riskLevel?": RiskLevel,
|
|
47
|
+
"affectedComponents?": "string[]",
|
|
48
|
+
"rationale?": "string",
|
|
49
|
+
"analyzedAt?": "string",
|
|
50
|
+
});
|
|
28
51
|
// Core Task schema
|
|
29
52
|
export const Task = type({
|
|
30
53
|
id: "string",
|
|
@@ -33,6 +56,9 @@ export const Task = type({
|
|
|
33
56
|
status: TaskStatus,
|
|
34
57
|
priority: Priority,
|
|
35
58
|
projectId: "string",
|
|
59
|
+
// Hierarchy (subtask support)
|
|
60
|
+
"parentId?": "string", // Parent task ID for subtasks
|
|
61
|
+
"level?": "number", // Hierarchy depth (0=root, 1=subtask, 2=sub-subtask, max 3)
|
|
36
62
|
// Dependencies
|
|
37
63
|
"dependencies?": Dependency.array(),
|
|
38
64
|
// Time tracking
|
|
@@ -55,6 +81,9 @@ export const Task = type({
|
|
|
55
81
|
"slack?": "number", // Minutes of slack time
|
|
56
82
|
"earliestStart?": "number", // Minutes from project start
|
|
57
83
|
"latestStart?": "number",
|
|
84
|
+
// Analysis fields (populated by Claude)
|
|
85
|
+
"complexity?": ComplexityAnalysis,
|
|
86
|
+
"techStack?": TechStackAnalysis,
|
|
58
87
|
});
|
|
59
88
|
// Task creation input (minimal required fields)
|
|
60
89
|
export const TaskCreateInput = type({
|
|
@@ -62,6 +91,7 @@ export const TaskCreateInput = type({
|
|
|
62
91
|
"description?": "string",
|
|
63
92
|
"projectId?": "string",
|
|
64
93
|
"priority?": Priority,
|
|
94
|
+
"parentId?": "string", // Parent task ID for creating subtasks
|
|
65
95
|
"dependencies?": Dependency.array(),
|
|
66
96
|
"estimate?": TimeEstimate,
|
|
67
97
|
"dueDate?": "string",
|
|
@@ -77,6 +107,7 @@ export const TaskUpdateInput = type({
|
|
|
77
107
|
"status?": TaskStatus,
|
|
78
108
|
"priority?": Priority,
|
|
79
109
|
"projectId?": "string",
|
|
110
|
+
"parentId?": "string", // Parent task ID for moving task in hierarchy
|
|
80
111
|
"dependencies?": Dependency.array(),
|
|
81
112
|
"estimate?": TimeEstimate,
|
|
82
113
|
"actualMinutes?": "number",
|
|
@@ -85,5 +116,8 @@ export const TaskUpdateInput = type({
|
|
|
85
116
|
"contexts?": "string[]",
|
|
86
117
|
"tags?": "string[]",
|
|
87
118
|
"recurrence?": Recurrence,
|
|
119
|
+
// Analysis fields
|
|
120
|
+
"complexity?": ComplexityAnalysis,
|
|
121
|
+
"techStack?": TechStackAnalysis,
|
|
88
122
|
});
|
|
89
123
|
//# sourceMappingURL=task.js.map
|
package/dist/schemas/task.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/schemas/task.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,kBAAkB;AAClB,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAAC,wCAAwC,CAAC,CAAC;AAGvE,uCAAuC;AACvC,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,CAC5B,mEAAmE,CACpE,CAAC;AAGF,gCAAgC;AAChC,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAChC,qCAAqC,CACtC,CAAC;AAGF,2BAA2B;AAC3B,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,CAAC;IAC7B,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,cAAc;IACpB,SAAS,EAAE,QAAQ;CACpB,CAAC,CAAC;AAGH,kBAAkB;AAClB,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,CAAC;IAC/B,aAAa,EAAE,QAAQ,EAAE,UAAU;IACnC,WAAW,EAAE,QAAQ,EAAE,UAAU;IACjC,cAAc,EAAE,QAAQ,EAAE,UAAU;IACpC,aAAa,EAAE,2BAA2B;CAC3C,CAAC,CAAC;AAGH,qBAAqB;AACrB,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,CAAC;IAC7B,OAAO,EAAE,qDAAqD;IAC9D,WAAW,EAAE,QAAQ,EAAE,4BAA4B;IACnD,aAAa,EAAE,UAAU,EAAE,iBAAiB;IAC5C,UAAU,EAAE,QAAQ;CACrB,CAAC,CAAC;AAGH,mBAAmB;AACnB,MAAM,CAAC,MAAM,IAAI,GAAG,IAAI,CAAC;IACvB,EAAE,EAAE,QAAQ;IACZ,KAAK,EAAE,QAAQ;IACf,cAAc,EAAE,QAAQ;IACxB,MAAM,EAAE,UAAU;IAClB,QAAQ,EAAE,QAAQ;IAClB,SAAS,EAAE,QAAQ;IAEnB,eAAe;IACf,eAAe,EAAE,UAAU,CAAC,KAAK,EAAE;IAEnC,gBAAgB;IAChB,WAAW,EAAE,YAAY;IACzB,gBAAgB,EAAE,QAAQ;IAC1B,UAAU,EAAE,QAAQ,EAAE,kBAAkB;IACxC,YAAY,EAAE,QAAQ,EAAE,sBAAsB;IAC9C,YAAY,EAAE,QAAQ;IACtB,cAAc,EAAE,QAAQ;IAExB,eAAe;IACf,WAAW,EAAE,UAAU,EAAE,4BAA4B;IACrD,OAAO,EAAE,UAAU;IAEnB,aAAa;IACb,aAAa,EAAE,UAAU;IAEzB,WAAW;IACX,SAAS,EAAE,QAAQ;IACnB,SAAS,EAAE,QAAQ;IAEnB,yCAAyC;IACzC,eAAe,EAAE,SAAS;IAC1B,QAAQ,EAAE,QAAQ,EAAE,wBAAwB;IAC5C,gBAAgB,EAAE,QAAQ,EAAE,6BAA6B;IACzD,cAAc,EAAE,QAAQ;
|
|
1
|
+
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/schemas/task.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/date.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date.d.ts","sourceRoot":"","sources":["../../src/utils/date.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,GAAG,IAAI,MAAM,CAE5B;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"date.d.ts","sourceRoot":"","sources":["../../src/utils/date.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,GAAG,IAAI,MAAM,CAE5B;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAkF5D;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAK7C;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAY7D;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,OAAO,CAQpD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,OAAO,CAKtD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAOvE"}
|
package/dist/utils/date.js
CHANGED
|
@@ -57,10 +57,25 @@ export function parseRelativeDate(input) {
|
|
|
57
57
|
d.setDate(d.getDate() + daysUntil);
|
|
58
58
|
return d;
|
|
59
59
|
}
|
|
60
|
-
// Try parsing as
|
|
60
|
+
// Try parsing as YYYY-MM-DD format (local timezone, no UTC shift)
|
|
61
|
+
const isoDateMatch = input.match(/^(\d{4})-(\d{2})-(\d{2})$/);
|
|
62
|
+
if (isoDateMatch) {
|
|
63
|
+
const [, yearStr, monthStr, dayStr] = isoDateMatch;
|
|
64
|
+
const year = parseInt(yearStr, 10);
|
|
65
|
+
const month = parseInt(monthStr, 10) - 1; // 0-indexed
|
|
66
|
+
const day = parseInt(dayStr, 10);
|
|
67
|
+
const d = new Date(year, month, day);
|
|
68
|
+
// Validate the date is valid (e.g., not Feb 30)
|
|
69
|
+
if (d.getFullYear() === year && d.getMonth() === month && d.getDate() === day) {
|
|
70
|
+
return d;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
// Try parsing other date formats (fallback)
|
|
61
74
|
const parsed = new Date(input);
|
|
62
75
|
if (!isNaN(parsed.getTime())) {
|
|
63
|
-
|
|
76
|
+
// For non-YYYY-MM-DD formats, normalize to local midnight
|
|
77
|
+
const d = new Date(parsed.getFullYear(), parsed.getMonth(), parsed.getDate());
|
|
78
|
+
return d;
|
|
64
79
|
}
|
|
65
80
|
return null;
|
|
66
81
|
}
|