argustack 0.1.23 → 0.1.25
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":"push.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/push.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"push.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/push.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA4CzE,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAuOzD"}
|
package/dist/mcp/tools/push.js
CHANGED
|
@@ -5,6 +5,25 @@ import { JiraProvider } from '../../adapters/jira/index.js';
|
|
|
5
5
|
import { PostgresStorage } from '../../adapters/postgres/index.js';
|
|
6
6
|
import { PushUseCase } from '../../use-cases/push.js';
|
|
7
7
|
import { updateMdFrontmatter } from '../../adapters/board/md-parser.js';
|
|
8
|
+
function hasMarkdownFormatting(text) {
|
|
9
|
+
if (text.length < 30) {
|
|
10
|
+
return true;
|
|
11
|
+
}
|
|
12
|
+
const markers = [
|
|
13
|
+
/^#{1,6}\s/m,
|
|
14
|
+
/^[-*]\s/m,
|
|
15
|
+
/^\d+\.\s/m,
|
|
16
|
+
/\*\*.+?\*\*/,
|
|
17
|
+
/\*.+?\*/,
|
|
18
|
+
/`.+?`/,
|
|
19
|
+
/^>/m,
|
|
20
|
+
/\[.+?\]\(.+?\)/,
|
|
21
|
+
/^\|.+\|$/m,
|
|
22
|
+
/^```/m,
|
|
23
|
+
/^---+$/m,
|
|
24
|
+
];
|
|
25
|
+
return markers.some((r) => r.test(text));
|
|
26
|
+
}
|
|
8
27
|
function createStorage() {
|
|
9
28
|
return new PostgresStorage({
|
|
10
29
|
host: process.env['DB_HOST'] ?? 'localhost',
|
|
@@ -19,7 +38,7 @@ export function registerPushTools(server) {
|
|
|
19
38
|
description: 'Create a NEW issue in local Argustack database (source=local). Only summary is required, all other fields optional. Returns local key. NEXT STEP: call push(mode=create) to send to Jira and get real Jira key. All changes LOCAL ONLY until pushed. Related: update_issue (for existing), push.',
|
|
20
39
|
inputSchema: {
|
|
21
40
|
summary: z.string().describe('Issue title (required)'),
|
|
22
|
-
description: z.string().optional().describe('
|
|
41
|
+
description: z.string().optional().describe('description — MUST use MARKDOWN formatting, never plain text. Converted to rich Jira ADF automatically. ALWAYS structure with: ## headings for sections, - bullet lists for items, 1. numbered lists for steps, **bold** for key terms, `code` for technical names. Also supports: *italic*, ```code blocks```, > blockquotes, [links](url), | tables |, --- rules. Think of it as writing a mini-README for each issue.'),
|
|
23
42
|
project_key: z.string().optional().describe('Jira project key (e.g. PAP). Defaults to first project in JIRA_PROJECTS env'),
|
|
24
43
|
issue_type: z.string().optional().describe('Issue type (Story, Bug, Task, or localized name)'),
|
|
25
44
|
status: z.string().optional().describe('Status name'),
|
|
@@ -29,7 +48,12 @@ export function registerPushTools(server) {
|
|
|
29
48
|
labels: z.array(z.string()).optional().describe('Labels'),
|
|
30
49
|
components: z.array(z.string()).optional().describe('Component names'),
|
|
31
50
|
},
|
|
32
|
-
}, async ({ summary, description, project_key: projectKeyParam, issue_type: issueType, status, priority, assignee, parent_key: parentKey, labels, components }) => {
|
|
51
|
+
}, async ({ summary, description: rawDesc, project_key: projectKeyParam, issue_type: issueType, status, priority, assignee, parent_key: parentKey, labels, components }) => {
|
|
52
|
+
const description = rawDesc?.replaceAll('\\n', '\n');
|
|
53
|
+
if (description !== undefined && !hasMarkdownFormatting(description)) {
|
|
54
|
+
return errorResponse(`REJECTED: description must use MARKDOWN formatting, not plain text.\n\n` +
|
|
55
|
+
`Rewrite with: ## headings, - bullet lists, **bold**, \`code\`. See update_issue tool description for full format guide.`);
|
|
56
|
+
}
|
|
33
57
|
const ws = loadWorkspace();
|
|
34
58
|
if (!ws.ok) {
|
|
35
59
|
return errorResponse(`Workspace not found: ${ws.reason}`);
|
|
@@ -154,7 +178,7 @@ export function registerPushTools(server) {
|
|
|
154
178
|
inputSchema: {
|
|
155
179
|
issue_key: z.string().describe('Issue key (e.g. "ORG-123")'),
|
|
156
180
|
summary: z.string().optional().describe('New summary/title'),
|
|
157
|
-
description: z.string().optional().describe('New description
|
|
181
|
+
description: z.string().optional().describe('New description — MUST use MARKDOWN formatting, never plain text. Converted to rich Jira ADF automatically. ALWAYS structure with: ## headings for sections, - bullet lists for items, 1. numbered lists for steps, **bold** for key terms, `code` for technical names. Also supports: *italic*, ```code blocks```, > blockquotes, [links](url), | tables |, --- rules. Think of it as writing a mini-README for each issue.'),
|
|
158
182
|
status: z.string().optional().describe('New status'),
|
|
159
183
|
priority: z.string().optional().describe('New priority'),
|
|
160
184
|
assignee: z.string().optional().describe('New assignee display name'),
|
|
@@ -162,7 +186,17 @@ export function registerPushTools(server) {
|
|
|
162
186
|
components: z.array(z.string()).optional().describe('New components (replaces existing)'),
|
|
163
187
|
story_points: z.number().optional().describe('New story points'),
|
|
164
188
|
},
|
|
165
|
-
}, async ({ issue_key: issueKey, summary, description, status, priority, assignee, labels, components, story_points: storyPoints }) => {
|
|
189
|
+
}, async ({ issue_key: issueKey, summary, description: rawDescription, status, priority, assignee, labels, components, story_points: storyPoints }) => {
|
|
190
|
+
const description = rawDescription?.replaceAll('\\n', '\n');
|
|
191
|
+
if (description !== undefined && !hasMarkdownFormatting(description)) {
|
|
192
|
+
return errorResponse(`REJECTED: description must use MARKDOWN formatting, not plain text.\n\n` +
|
|
193
|
+
`Your description has no markdown elements (no headings, lists, bold, or code).\n\n` +
|
|
194
|
+
`Rewrite using this structure:\n` +
|
|
195
|
+
`## Overview\nBrief summary with **key terms** in bold.\n\n` +
|
|
196
|
+
`## Requirements\n- Bullet point 1\n- Bullet point 2\n\n` +
|
|
197
|
+
`## Technical Details\n1. Step one\n2. Step two\n\n` +
|
|
198
|
+
`Use \`code\` for technical names, **bold** for emphasis.`);
|
|
199
|
+
}
|
|
166
200
|
const ws = loadWorkspace();
|
|
167
201
|
if (!ws.ok) {
|
|
168
202
|
return errorResponse(`Workspace not found: ${ws.reason}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"push.js","sourceRoot":"","sources":["../../../src/mcp/tools/push.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EACL,aAAa,EACb,YAAY,EACZ,aAAa,EACb,eAAe,GAChB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAExE,SAAS,aAAa;IACpB,OAAO,IAAI,eAAe,CAAC;QACzB,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,WAAW;QAC3C,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,MAAM,EAAE,EAAE,CAAC;QACpD,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,WAAW;QAC/C,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,WAAW;QAC3C,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,iBAAiB;KAC1D,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,MAAiB;IACjD,MAAM,CAAC,YAAY,CACjB,cAAc,EACd;QACE,WAAW,EAAE,kSAAkS;QAC/S,WAAW,EAAE;YACX,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;YACtD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"push.js","sourceRoot":"","sources":["../../../src/mcp/tools/push.ts"],"names":[],"mappings":"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"}
|