openspec-mcp 0.3.0 → 0.3.1
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-parser.d.ts","sourceRoot":"","sources":["../../src/core/task-parser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEvE,qBAAa,UAAU;IACrB;;;;;;;;;;;OAWG;IACG,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAKpD;;OAEG;IACH,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,EAAE;
|
|
1
|
+
{"version":3,"file":"task-parser.d.ts","sourceRoot":"","sources":["../../src/core/task-parser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEvE,qBAAa,UAAU;IACrB;;;;;;;;;;;OAWG;IACG,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAKpD;;OAEG;IACH,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,EAAE;IA0E9C;;OAEG;IACH,OAAO,CAAC,WAAW;IAWnB;;OAEG;IACH,OAAO,CAAC,aAAa;IAWrB;;OAEG;IACH,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,QAAQ;IAe1C;;OAEG;IACG,gBAAgB,CACpB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,UAAU,GACpB,OAAO,CAAC,IAAI,CAAC;IA+ChB;;OAEG;IACG,qBAAqB,CACzB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,UAAU,CAAA;KAAE,EAAE,GAChD,OAAO,CAAC,IAAI,CAAC;CAwCjB"}
|
package/dist/core/task-parser.js
CHANGED
|
@@ -37,13 +37,24 @@ export class TaskParser {
|
|
|
37
37
|
continue;
|
|
38
38
|
}
|
|
39
39
|
// 检测任务项 - 支持多种格式
|
|
40
|
-
// 格式1: - [x] **1.1** 任务描述
|
|
41
|
-
// 格式2: - [
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
40
|
+
// 格式1: - [x] **1.1** 任务描述 (有 ** 包围)
|
|
41
|
+
// 格式2: - [x] 1.1 任务描述 (无 ** 包围)
|
|
42
|
+
const taskMatchWithStars = line.match(/^(\s*)-\s+\[([ x-])\]\s+\*\*(\d+(?:\.\d+)*)\*\*\s+(.+)/);
|
|
43
|
+
if (taskMatchWithStars) {
|
|
44
|
+
const [, indent, statusChar, id, title] = taskMatchWithStars;
|
|
45
|
+
tasks.push({
|
|
46
|
+
id,
|
|
47
|
+
section: currentSection,
|
|
48
|
+
title: title.trim(),
|
|
49
|
+
status: this.parseStatus(statusChar),
|
|
50
|
+
line: lineNum,
|
|
51
|
+
});
|
|
52
|
+
continue;
|
|
53
|
+
}
|
|
54
|
+
// 格式2: - [x] 1.1 任务描述 (无 ** 包围,但有数字 ID)
|
|
55
|
+
const taskMatchNoStars = line.match(/^(\s*)-\s+\[([ x-])\]\s+(\d+(?:\.\d+)*)\s+(.+)/);
|
|
56
|
+
if (taskMatchNoStars) {
|
|
57
|
+
const [, indent, statusChar, id, title] = taskMatchNoStars;
|
|
47
58
|
tasks.push({
|
|
48
59
|
id,
|
|
49
60
|
section: currentSection,
|
|
@@ -121,10 +132,17 @@ export class TaskParser {
|
|
|
121
132
|
const statusChar = this.getStatusChar(newStatus);
|
|
122
133
|
let found = false;
|
|
123
134
|
for (let i = 0; i < lines.length; i++) {
|
|
124
|
-
// 匹配带
|
|
125
|
-
const
|
|
126
|
-
if (
|
|
127
|
-
lines[i] = `${
|
|
135
|
+
// 匹配带 ** 的任务 ID
|
|
136
|
+
const taskMatchWithStars = lines[i].match(/^(\s*-\s+\[)([ x-])(\]\s+\*\*)(\d+(?:\.\d+)*)(\*\*.+)/);
|
|
137
|
+
if (taskMatchWithStars && taskMatchWithStars[4] === taskId) {
|
|
138
|
+
lines[i] = `${taskMatchWithStars[1]}${statusChar}${taskMatchWithStars[3]}${taskMatchWithStars[4]}${taskMatchWithStars[5]}`;
|
|
139
|
+
found = true;
|
|
140
|
+
break;
|
|
141
|
+
}
|
|
142
|
+
// 匹配无 ** 的任务 ID
|
|
143
|
+
const taskMatchNoStars = lines[i].match(/^(\s*-\s+\[)([ x-])(\]\s+)(\d+(?:\.\d+)*)(\s+.+)/);
|
|
144
|
+
if (taskMatchNoStars && taskMatchNoStars[4] === taskId) {
|
|
145
|
+
lines[i] = `${taskMatchNoStars[1]}${statusChar}${taskMatchNoStars[3]}${taskMatchNoStars[4]}${taskMatchNoStars[5]}`;
|
|
128
146
|
found = true;
|
|
129
147
|
break;
|
|
130
148
|
}
|
|
@@ -152,9 +170,16 @@ export class TaskParser {
|
|
|
152
170
|
for (const { taskId, status } of updates) {
|
|
153
171
|
const statusChar = this.getStatusChar(status);
|
|
154
172
|
for (let i = 0; i < lines.length; i++) {
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
173
|
+
// 匹配带 ** 的任务 ID
|
|
174
|
+
const taskMatchWithStars = lines[i].match(/^(\s*-\s+\[)([ x-])(\]\s+\*\*)(\d+(?:\.\d+)*)(\*\*.+)/);
|
|
175
|
+
if (taskMatchWithStars && taskMatchWithStars[4] === taskId) {
|
|
176
|
+
lines[i] = `${taskMatchWithStars[1]}${statusChar}${taskMatchWithStars[3]}${taskMatchWithStars[4]}${taskMatchWithStars[5]}`;
|
|
177
|
+
break;
|
|
178
|
+
}
|
|
179
|
+
// 匹配无 ** 的任务 ID
|
|
180
|
+
const taskMatchNoStars = lines[i].match(/^(\s*-\s+\[)([ x-])(\]\s+)(\d+(?:\.\d+)*)(\s+.+)/);
|
|
181
|
+
if (taskMatchNoStars && taskMatchNoStars[4] === taskId) {
|
|
182
|
+
lines[i] = `${taskMatchNoStars[1]}${statusChar}${taskMatchNoStars[3]}${taskMatchNoStars[4]}${taskMatchNoStars[5]}`;
|
|
158
183
|
break;
|
|
159
184
|
}
|
|
160
185
|
if (taskId === `line-${i + 1}`) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-parser.js","sourceRoot":"","sources":["../../src/core/task-parser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,MAAM,aAAa,CAAC;AAGlC,MAAM,OAAO,UAAU;IACrB;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,UAAU,CAAC,SAAiB;QAChC,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACtD,OAAO,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,qBAAqB,CAAC,OAAe;QACnC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,KAAK,GAAW,EAAE,CAAC;QACzB,IAAI,cAAc,GAAG,EAAE,CAAC;QAExB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACtB,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;YAEtB,oBAAoB;YACpB,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;YAClD,IAAI,YAAY,EAAE,CAAC;gBACjB,cAAc,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBACxC,SAAS;YACX,CAAC;YAED,iBAAiB;YACjB,
|
|
1
|
+
{"version":3,"file":"task-parser.js","sourceRoot":"","sources":["../../src/core/task-parser.ts"],"names":[],"mappings":"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"}
|