@specship/specship-win32-arm64 0.21.2 → 0.22.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.
- package/lib/dist/bin/specship.js +302 -4
- package/lib/dist/bin/specship.js.map +1 -1
- package/lib/dist/commands/specship/jira.md +74 -0
- package/lib/dist/commands/specship/spec.md +61 -1
- package/lib/dist/extraction/index.d.ts +6 -0
- package/lib/dist/extraction/index.d.ts.map +1 -1
- package/lib/dist/extraction/index.js.map +1 -1
- package/lib/dist/extraction/specs/markdown-spec-extractor.d.ts.map +1 -1
- package/lib/dist/extraction/specs/markdown-spec-extractor.js +8 -1
- package/lib/dist/extraction/specs/markdown-spec-extractor.js.map +1 -1
- package/lib/dist/index.d.ts +7 -0
- package/lib/dist/index.d.ts.map +1 -1
- package/lib/dist/index.js +45 -18
- package/lib/dist/index.js.map +1 -1
- package/lib/dist/jira/auto-publish.d.ts +67 -0
- package/lib/dist/jira/auto-publish.d.ts.map +1 -0
- package/lib/dist/jira/auto-publish.js +232 -0
- package/lib/dist/jira/auto-publish.js.map +1 -0
- package/lib/dist/jira/board-first.d.ts +64 -0
- package/lib/dist/jira/board-first.d.ts.map +1 -0
- package/lib/dist/jira/board-first.js +91 -0
- package/lib/dist/jira/board-first.js.map +1 -0
- package/lib/dist/jira/client.d.ts +80 -1
- package/lib/dist/jira/client.d.ts.map +1 -1
- package/lib/dist/jira/client.js +213 -1
- package/lib/dist/jira/client.js.map +1 -1
- package/lib/dist/jira/config.d.ts +1 -1
- package/lib/dist/jira/config.d.ts.map +1 -1
- package/lib/dist/jira/config.js +14 -3
- package/lib/dist/jira/config.js.map +1 -1
- package/lib/dist/jira/coverage.d.ts +105 -0
- package/lib/dist/jira/coverage.d.ts.map +1 -0
- package/lib/dist/jira/coverage.js +160 -0
- package/lib/dist/jira/coverage.js.map +1 -0
- package/lib/dist/jira/index.d.ts +1 -0
- package/lib/dist/jira/index.d.ts.map +1 -1
- package/lib/dist/jira/index.js +1 -0
- package/lib/dist/jira/index.js.map +1 -1
- package/lib/dist/jira/milestone-comment.d.ts +95 -0
- package/lib/dist/jira/milestone-comment.d.ts.map +1 -0
- package/lib/dist/jira/milestone-comment.js +271 -0
- package/lib/dist/jira/milestone-comment.js.map +1 -0
- package/lib/dist/jira/publish.d.ts +69 -2
- package/lib/dist/jira/publish.d.ts.map +1 -1
- package/lib/dist/jira/publish.js +0 -0
- package/lib/dist/jira/publish.js.map +1 -1
- package/lib/dist/jira/published-specs.d.ts +23 -0
- package/lib/dist/jira/published-specs.d.ts.map +1 -0
- package/lib/dist/jira/published-specs.js +106 -0
- package/lib/dist/jira/published-specs.js.map +1 -0
- package/lib/dist/jira/reconcile.d.ts +81 -0
- package/lib/dist/jira/reconcile.d.ts.map +1 -0
- package/lib/dist/jira/reconcile.js +111 -0
- package/lib/dist/jira/reconcile.js.map +1 -0
- package/lib/dist/jira/regression-pack.d.ts +547 -0
- package/lib/dist/jira/regression-pack.d.ts.map +1 -0
- package/lib/dist/jira/regression-pack.js +986 -0
- package/lib/dist/jira/regression-pack.js.map +1 -0
- package/lib/dist/jira/repo-config.d.ts +59 -0
- package/lib/dist/jira/repo-config.d.ts.map +1 -0
- package/lib/dist/jira/repo-config.js +222 -0
- package/lib/dist/jira/repo-config.js.map +1 -0
- package/lib/dist/jira/spec-amend.d.ts +46 -0
- package/lib/dist/jira/spec-amend.d.ts.map +1 -0
- package/lib/dist/jira/spec-amend.js +232 -0
- package/lib/dist/jira/spec-amend.js.map +1 -0
- package/lib/dist/jira/spec-writer.d.ts +22 -0
- package/lib/dist/jira/spec-writer.d.ts.map +1 -1
- package/lib/dist/jira/spec-writer.js +113 -0
- package/lib/dist/jira/spec-writer.js.map +1 -1
- package/lib/dist/jira/types.d.ts +62 -0
- package/lib/dist/jira/types.d.ts.map +1 -1
- package/lib/dist/jira/types.js +15 -1
- package/lib/dist/jira/types.js.map +1 -1
- package/lib/dist/mcp/jira-tools.d.ts +102 -0
- package/lib/dist/mcp/jira-tools.d.ts.map +1 -1
- package/lib/dist/mcp/jira-tools.js +807 -50
- package/lib/dist/mcp/jira-tools.js.map +1 -1
- package/lib/dist/mcp/server-instructions.d.ts +1 -1
- package/lib/dist/mcp/server-instructions.d.ts.map +1 -1
- package/lib/dist/mcp/server-instructions.js +4 -0
- package/lib/dist/mcp/server-instructions.js.map +1 -1
- package/lib/dist/mcp/spec-tools.d.ts.map +1 -1
- package/lib/dist/mcp/spec-tools.js +7 -1
- package/lib/dist/mcp/spec-tools.js.map +1 -1
- package/lib/dist/mcp/tools.d.ts +3 -0
- package/lib/dist/mcp/tools.d.ts.map +1 -1
- package/lib/dist/mcp/tools.js +50 -0
- package/lib/dist/mcp/tools.js.map +1 -1
- package/lib/dist/resolution/spec-link-resolver.d.ts +2 -0
- package/lib/dist/resolution/spec-link-resolver.d.ts.map +1 -1
- package/lib/dist/resolution/spec-link-resolver.js +11 -3
- package/lib/dist/resolution/spec-link-resolver.js.map +1 -1
- package/lib/node_modules/.package-lock.json +1 -1
- package/lib/package.json +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Board-first anchor resolution (REQ-JIRATEAM-007).
|
|
4
|
+
*
|
|
5
|
+
* Every work-creating flow on a JIRA-bound repo MUST be anchored to a JIRA
|
|
6
|
+
* issue. This module answers ONE question for the CLI, MCP tool, and slash
|
|
7
|
+
* command that gate work: "given cwd + optional explicit/picked issueKey,
|
|
8
|
+
* do we have an anchor, refuse, or should we no-op (unbound)?"
|
|
9
|
+
*
|
|
10
|
+
* The return is a THREE-way discriminated union — `unbound` is first-class
|
|
11
|
+
* so callers on an unbound repo just proceed unchanged.
|
|
12
|
+
*
|
|
13
|
+
* When a bound repo refuses because no issue was picked, we ALSO surface the
|
|
14
|
+
* epic-scoped pickable work in the refusal payload so the pick can happen in
|
|
15
|
+
* the same round-trip (spec correction: A1 requires the refusal to LIST the
|
|
16
|
+
* pickable work, not just hint at it).
|
|
17
|
+
*/
|
|
18
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
+
exports.resolveWorkAnchor = resolveWorkAnchor;
|
|
20
|
+
exports.formatRefusal = formatRefusal;
|
|
21
|
+
const repo_config_1 = require("./repo-config");
|
|
22
|
+
const config_1 = require("./config");
|
|
23
|
+
const client_1 = require("./client");
|
|
24
|
+
function defaultMakeClient() {
|
|
25
|
+
const creds = (0, config_1.resolveJiraCredentials)();
|
|
26
|
+
return new client_1.JiraClient(creds);
|
|
27
|
+
}
|
|
28
|
+
async function resolveWorkAnchor(opts) {
|
|
29
|
+
const { binding } = (0, repo_config_1.loadRepoJiraBinding)(opts.cwd);
|
|
30
|
+
if (!binding)
|
|
31
|
+
return { status: 'unbound' };
|
|
32
|
+
const makeClient = opts.makeClient ?? defaultMakeClient;
|
|
33
|
+
const explicit = opts.explicitIssueKey?.trim();
|
|
34
|
+
const picked = opts.pickedIssueKey?.trim();
|
|
35
|
+
const key = explicit || picked;
|
|
36
|
+
if (key) {
|
|
37
|
+
const client = makeClient();
|
|
38
|
+
const res = await client.getIssue(key);
|
|
39
|
+
return {
|
|
40
|
+
status: 'anchored',
|
|
41
|
+
anchor: {
|
|
42
|
+
issueKey: res.issue.key,
|
|
43
|
+
summary: res.issue.summary,
|
|
44
|
+
source: explicit ? 'explicit' : 'picked',
|
|
45
|
+
},
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
if (!binding.epicKey) {
|
|
49
|
+
return {
|
|
50
|
+
status: 'refused',
|
|
51
|
+
reason: 'no-epic-no-pick',
|
|
52
|
+
fixHint: 'Set jira.epicKey in specship.config.json (or pick an issue with specship_jira_pick <KEY>).',
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
// Bound + epic + no pick → list the epic's open stories/tasks so the caller
|
|
56
|
+
// can render the pick in the same round-trip (A1).
|
|
57
|
+
let pickable = [];
|
|
58
|
+
try {
|
|
59
|
+
const client = makeClient();
|
|
60
|
+
const res = await client.listMyIssues({
|
|
61
|
+
project: binding.projectKey,
|
|
62
|
+
epicKey: binding.epicKey,
|
|
63
|
+
});
|
|
64
|
+
pickable = res.issues;
|
|
65
|
+
}
|
|
66
|
+
catch {
|
|
67
|
+
// Degrade to a refusal without pickable list — the fixHint still names
|
|
68
|
+
// the exact next step.
|
|
69
|
+
}
|
|
70
|
+
return {
|
|
71
|
+
status: 'refused',
|
|
72
|
+
reason: 'no-pick',
|
|
73
|
+
fixHint: 'Run specship_jira_issues to list the epic\'s open work, then specship_jira_pick <KEY> to anchor this run.',
|
|
74
|
+
pickable,
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
/** Canonical human-facing refusal message for CLI/MCP callers. */
|
|
78
|
+
function formatRefusal(res) {
|
|
79
|
+
const header = res.reason === 'no-epic-no-pick'
|
|
80
|
+
? 'Work refused: no JIRA anchor — no epic bound and no issue picked.'
|
|
81
|
+
: 'Work refused: no JIRA anchor — pick an issue under the bound epic.';
|
|
82
|
+
const lines = [header, res.fixHint];
|
|
83
|
+
if (res.pickable && res.pickable.length) {
|
|
84
|
+
lines.push('', 'Pickable issues:');
|
|
85
|
+
for (const i of res.pickable) {
|
|
86
|
+
lines.push(`- ${i.key} — ${i.summary} [${i.status}]`);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
return lines.join('\n');
|
|
90
|
+
}
|
|
91
|
+
//# sourceMappingURL=board-first.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"board-first.js","sourceRoot":"","sources":["../../src/jira/board-first.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* (or any) redirect is refused, not followed.
|
|
15
15
|
* - No thrown error or result field ever contains the credential.
|
|
16
16
|
*/
|
|
17
|
-
import { JiraCredentials, JiraConnectionResult, JiraIssueListResult, JiraIssueResult, JiraTransition, JiraTransitionResult } from './types';
|
|
17
|
+
import { JiraCredentials, JiraConnectionResult, JiraEpic, JiraIssueListResult, JiraIssueResult, JiraTransition, JiraTransitionResult } from './types';
|
|
18
18
|
/** Upper bound on issues fetched in one list call — never unbounded. */
|
|
19
19
|
export declare const MAX_ISSUE_RESULTS = 50;
|
|
20
20
|
export declare class JiraClient {
|
|
@@ -28,6 +28,9 @@ export declare class JiraClient {
|
|
|
28
28
|
* never process-global.
|
|
29
29
|
*/
|
|
30
30
|
private readonly tls;
|
|
31
|
+
/** Repo-binding provenance (REQ-JIRATEAM-001), used to enrich A4 errors. */
|
|
32
|
+
private readonly bindingSource?;
|
|
33
|
+
private readonly bindingPath?;
|
|
31
34
|
constructor(creds: JiraCredentials);
|
|
32
35
|
/**
|
|
33
36
|
* Probe the instance's `/myself` endpoint.
|
|
@@ -51,6 +54,26 @@ export declare class JiraClient {
|
|
|
51
54
|
listMyIssues(opts?: {
|
|
52
55
|
project?: string;
|
|
53
56
|
sprint?: 'active';
|
|
57
|
+
/**
|
|
58
|
+
* Board-first anchor scope (REQ-JIRATEAM-007.A1): narrow to open
|
|
59
|
+
* stories/tasks under this epic. Quote-escaped like `project`.
|
|
60
|
+
*/
|
|
61
|
+
epicKey?: string;
|
|
62
|
+
}): Promise<JiraIssueListResult>;
|
|
63
|
+
/**
|
|
64
|
+
* List issues in a project's active (or named) sprint (REQ-JIRATEAM-004).
|
|
65
|
+
* Read-only — no transitions, no edits. `project` is required; `sprint` is
|
|
66
|
+
* optional (omitted → `sprint in openSprints()`, the currently-open sprints
|
|
67
|
+
* of the board bound to the project). Both values are quote-escaped to
|
|
68
|
+
* prevent JQL injection. Bounded by `MAX_ISSUE_RESULTS`.
|
|
69
|
+
*
|
|
70
|
+
* - 200 → `{ ok: true, issues }`; an empty list is a valid success.
|
|
71
|
+
* - 401 / 403 → `JiraAuthError`; redirect / network / non-200 →
|
|
72
|
+
* `JiraConfigError`.
|
|
73
|
+
*/
|
|
74
|
+
listSprintIssues(opts: {
|
|
75
|
+
project: string;
|
|
76
|
+
sprint?: string;
|
|
54
77
|
}): Promise<JiraIssueListResult>;
|
|
55
78
|
/**
|
|
56
79
|
* Fetch a single issue by its key (REQ-JIRA-003). Identity/authorization
|
|
@@ -65,6 +88,28 @@ export declare class JiraClient {
|
|
|
65
88
|
* `JiraConfigError`. Never a partial or fabricated issue.
|
|
66
89
|
*/
|
|
67
90
|
getIssue(key: string): Promise<JiraIssueResult>;
|
|
91
|
+
/**
|
|
92
|
+
* List open epics for a project (REQ-JIRATEAM-006). Scoped to `Epic`s
|
|
93
|
+
* whose statusCategory is not `Done`, ordered most-actionable-first, and
|
|
94
|
+
* bounded by `MAX_ISSUE_RESULTS`. The project value is quote-escaped to
|
|
95
|
+
* prevent JQL injection.
|
|
96
|
+
*
|
|
97
|
+
* - 200 → the epic list (empty is a valid success).
|
|
98
|
+
* - 401 / 403 → `JiraAuthError`; redirect / network / non-200 →
|
|
99
|
+
* `JiraConfigError`.
|
|
100
|
+
*/
|
|
101
|
+
listEpics(projectKey: string): Promise<JiraEpic[]>;
|
|
102
|
+
/**
|
|
103
|
+
* List issues in `projectKey` that carry `label` (REQ-JIRAREG-001). Used
|
|
104
|
+
* by the regression-pack upsert to find its SpecShip-owned epic / stories /
|
|
105
|
+
* cases by watermark label — never for user-supplied JQL. The label is
|
|
106
|
+
* quote-escaped to defend against injection even though callers supply only
|
|
107
|
+
* the module's own hard-coded label prefixes.
|
|
108
|
+
*/
|
|
109
|
+
searchIssuesByLabel(projectKey: string, label: string): Promise<Array<{
|
|
110
|
+
key: string;
|
|
111
|
+
summary: string;
|
|
112
|
+
}>>;
|
|
68
113
|
/**
|
|
69
114
|
* List the transitions the issue's current workflow state offers
|
|
70
115
|
* (REQ-JIRA-007). `GET /issue/{key}/transitions`. Used to resolve a
|
|
@@ -106,6 +151,15 @@ export declare class JiraClient {
|
|
|
106
151
|
key: string;
|
|
107
152
|
name: string;
|
|
108
153
|
}>>;
|
|
154
|
+
/**
|
|
155
|
+
* Assert the authenticated user can see the given project
|
|
156
|
+
* (REQ-JIRATEAM-001.A4). `GET /rest/api/2/project/{key}` — a 401/403/404
|
|
157
|
+
* from the repo-bound project is re-thrown with the project, host, and
|
|
158
|
+
* the binding file's path, so the operator gets a directed message
|
|
159
|
+
* instead of a silent fallback to another project. Non-binding paths
|
|
160
|
+
* (user-level project) re-raise the original error unchanged.
|
|
161
|
+
*/
|
|
162
|
+
verifyProjectAccess(projectKey: string): Promise<void>;
|
|
109
163
|
/**
|
|
110
164
|
* Create an issue (REQ-JIRAPUB-001) — a Story (or configured type) when
|
|
111
165
|
* `parentKey` is absent, a Sub-task parented to `parentKey` when present.
|
|
@@ -135,6 +189,7 @@ export declare class JiraClient {
|
|
|
135
189
|
updateIssue(key: string, fields: {
|
|
136
190
|
summary?: string;
|
|
137
191
|
description?: string;
|
|
192
|
+
parentKey?: string;
|
|
138
193
|
}): Promise<void>;
|
|
139
194
|
/**
|
|
140
195
|
* List the plain-text bodies of an issue's comments (REQ-JIRAPUB-007's
|
|
@@ -143,6 +198,30 @@ export declare class JiraClient {
|
|
|
143
198
|
* contains-check, never used to mirror content.
|
|
144
199
|
*/
|
|
145
200
|
listComments(key: string): Promise<string[]>;
|
|
201
|
+
/**
|
|
202
|
+
* List comments with their JIRA-side ids (REQ-JIRATEAM-004.A3) so a caller
|
|
203
|
+
* can edit a specific comment in place instead of always appending. Same
|
|
204
|
+
* `GET /issue/{key}/comment` as `listComments`, but preserving each id.
|
|
205
|
+
*/
|
|
206
|
+
listCommentsDetailed(key: string): Promise<Array<{
|
|
207
|
+
id: string;
|
|
208
|
+
body: string;
|
|
209
|
+
}>>;
|
|
210
|
+
/**
|
|
211
|
+
* Edit an existing comment in place (REQ-JIRATEAM-004.A3).
|
|
212
|
+
* `PUT /issue/{key}/comment/{id}` with `{ body }`; used by the sprint
|
|
213
|
+
* coverage report so re-posting updates the single watermarked comment.
|
|
214
|
+
*/
|
|
215
|
+
updateComment(key: string, commentId: string, body: string): Promise<void>;
|
|
216
|
+
/**
|
|
217
|
+
* Add a label to an issue idempotently (REQ-JIRAREG-003). Reads the current
|
|
218
|
+
* labels first and issues the PUT only when the label is missing — a re-run
|
|
219
|
+
* with the label already present is a zero-write. Uses the additive
|
|
220
|
+
* `update.labels add` shape so other labels are preserved.
|
|
221
|
+
*/
|
|
222
|
+
addLabel(key: string, label: string): Promise<{
|
|
223
|
+
added: boolean;
|
|
224
|
+
}>;
|
|
146
225
|
/**
|
|
147
226
|
* Ensure a project version with `name` exists (REQ-JIRAPUB-007), creating
|
|
148
227
|
* it when missing. Returns whether this call created it — a re-run finds
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/jira/client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/jira/client.ts"],"names":[],"mappings":"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"}
|
package/lib/dist/jira/client.js
CHANGED
|
@@ -53,6 +53,7 @@ exports.JiraClient = exports.MAX_ISSUE_RESULTS = void 0;
|
|
|
53
53
|
const fs = __importStar(require("fs"));
|
|
54
54
|
const https = __importStar(require("https"));
|
|
55
55
|
const auth_1 = require("./auth");
|
|
56
|
+
const repo_config_1 = require("./repo-config");
|
|
56
57
|
const types_1 = require("./types");
|
|
57
58
|
/** Upper bound on issues fetched in one list call — never unbounded. */
|
|
58
59
|
exports.MAX_ISSUE_RESULTS = 50;
|
|
@@ -67,6 +68,9 @@ class JiraClient {
|
|
|
67
68
|
* never process-global.
|
|
68
69
|
*/
|
|
69
70
|
tls;
|
|
71
|
+
/** Repo-binding provenance (REQ-JIRATEAM-001), used to enrich A4 errors. */
|
|
72
|
+
bindingSource;
|
|
73
|
+
bindingPath;
|
|
70
74
|
constructor(creds) {
|
|
71
75
|
// Normalize: strip trailing slashes so path joins are clean.
|
|
72
76
|
this.baseUrl = creds.baseUrl.replace(/\/+$/, '');
|
|
@@ -78,6 +82,8 @@ class JiraClient {
|
|
|
78
82
|
}
|
|
79
83
|
this.authHeader = (0, auth_1.buildAuthHeader)(creds);
|
|
80
84
|
this.deployment = creds.deployment;
|
|
85
|
+
this.bindingSource = creds.bindingSource;
|
|
86
|
+
this.bindingPath = creds.bindingPath;
|
|
81
87
|
if (creds.caCertPath || creds.insecureTls) {
|
|
82
88
|
let ca;
|
|
83
89
|
if (creds.caCertPath) {
|
|
@@ -137,6 +143,10 @@ class JiraClient {
|
|
|
137
143
|
if (opts?.sprint === 'active') {
|
|
138
144
|
jql = `${jql} AND sprint in openSprints()`;
|
|
139
145
|
}
|
|
146
|
+
if (opts?.epicKey && opts.epicKey.trim()) {
|
|
147
|
+
const escapedEpic = opts.epicKey.trim().replace(/\\/g, '\\\\').replace(/"/g, '\\"');
|
|
148
|
+
jql = `${jql} AND parent = "${escapedEpic}"`;
|
|
149
|
+
}
|
|
140
150
|
jql += ' ORDER BY updated DESC';
|
|
141
151
|
const params = new URLSearchParams({
|
|
142
152
|
jql,
|
|
@@ -164,6 +174,51 @@ class JiraClient {
|
|
|
164
174
|
}));
|
|
165
175
|
return { ok: true, issues };
|
|
166
176
|
}
|
|
177
|
+
/**
|
|
178
|
+
* List issues in a project's active (or named) sprint (REQ-JIRATEAM-004).
|
|
179
|
+
* Read-only — no transitions, no edits. `project` is required; `sprint` is
|
|
180
|
+
* optional (omitted → `sprint in openSprints()`, the currently-open sprints
|
|
181
|
+
* of the board bound to the project). Both values are quote-escaped to
|
|
182
|
+
* prevent JQL injection. Bounded by `MAX_ISSUE_RESULTS`.
|
|
183
|
+
*
|
|
184
|
+
* - 200 → `{ ok: true, issues }`; an empty list is a valid success.
|
|
185
|
+
* - 401 / 403 → `JiraAuthError`; redirect / network / non-200 →
|
|
186
|
+
* `JiraConfigError`.
|
|
187
|
+
*/
|
|
188
|
+
async listSprintIssues(opts) {
|
|
189
|
+
const project = (opts.project ?? '').trim();
|
|
190
|
+
if (!project) {
|
|
191
|
+
throw new types_1.JiraConfigError('A JIRA project key is required to list sprint issues.');
|
|
192
|
+
}
|
|
193
|
+
const escProject = project.replace(/\\/g, '\\\\').replace(/"/g, '\\"');
|
|
194
|
+
let jql = `project = "${escProject}"`;
|
|
195
|
+
if (opts.sprint && opts.sprint.trim()) {
|
|
196
|
+
const escSprint = opts.sprint.trim().replace(/\\/g, '\\\\').replace(/"/g, '\\"');
|
|
197
|
+
jql += ` AND sprint = "${escSprint}"`;
|
|
198
|
+
}
|
|
199
|
+
else {
|
|
200
|
+
jql += ' AND sprint in openSprints()';
|
|
201
|
+
}
|
|
202
|
+
jql += ' ORDER BY updated DESC';
|
|
203
|
+
const params = new URLSearchParams({
|
|
204
|
+
jql,
|
|
205
|
+
fields: 'summary,status,issuetype',
|
|
206
|
+
maxResults: String(exports.MAX_ISSUE_RESULTS),
|
|
207
|
+
});
|
|
208
|
+
const searchPath = this.deployment === 'datacenter'
|
|
209
|
+
? `/rest/api/2/search?${params.toString()}`
|
|
210
|
+
: `/rest/api/2/search/jql?${params.toString()}`;
|
|
211
|
+
const body = await this.request(searchPath);
|
|
212
|
+
const rawIssues = Array.isArray(body?.issues) ? body.issues : [];
|
|
213
|
+
const issues = rawIssues.map(issue => ({
|
|
214
|
+
key: String(issue?.key ?? ''),
|
|
215
|
+
id: String(issue?.id ?? ''),
|
|
216
|
+
summary: String(issue?.fields?.summary ?? ''),
|
|
217
|
+
status: String(issue?.fields?.status?.name ?? ''),
|
|
218
|
+
issueType: String(issue?.fields?.issuetype?.name ?? ''),
|
|
219
|
+
}));
|
|
220
|
+
return { ok: true, issues };
|
|
221
|
+
}
|
|
167
222
|
/**
|
|
168
223
|
* Fetch a single issue by its key (REQ-JIRA-003). Identity/authorization
|
|
169
224
|
* ride the token — a key the user can't see is indistinguishable from a
|
|
@@ -184,7 +239,7 @@ class JiraClient {
|
|
|
184
239
|
// URL-encode the key: a slash or space in the key must not traverse the
|
|
185
240
|
// path or split the request — encode it into a single path segment.
|
|
186
241
|
const params = new URLSearchParams({
|
|
187
|
-
fields: 'summary,description,status,issuetype,subtasks',
|
|
242
|
+
fields: 'summary,description,status,issuetype,subtasks,parent',
|
|
188
243
|
});
|
|
189
244
|
const body = await this.request(`/rest/api/2/issue/${encodeURIComponent(trimmed)}?${params.toString()}`);
|
|
190
245
|
const fields = body?.fields ?? {};
|
|
@@ -200,6 +255,10 @@ class JiraClient {
|
|
|
200
255
|
summary: String(st?.fields?.summary ?? ''),
|
|
201
256
|
status: String(st?.fields?.status?.name ?? ''),
|
|
202
257
|
}));
|
|
258
|
+
const parentRaw = fields?.parent;
|
|
259
|
+
const parentKey = parentRaw && typeof parentRaw === 'object' && typeof parentRaw.key === 'string'
|
|
260
|
+
? String(parentRaw.key)
|
|
261
|
+
: undefined;
|
|
203
262
|
const issue = {
|
|
204
263
|
key: String(body?.key ?? trimmed),
|
|
205
264
|
id: String(body?.id ?? ''),
|
|
@@ -208,9 +267,76 @@ class JiraClient {
|
|
|
208
267
|
issueType: String(fields.issuetype?.name ?? ''),
|
|
209
268
|
description,
|
|
210
269
|
subtasks,
|
|
270
|
+
...(parentKey ? { parentKey } : {}),
|
|
211
271
|
};
|
|
212
272
|
return { ok: true, issue };
|
|
213
273
|
}
|
|
274
|
+
/**
|
|
275
|
+
* List open epics for a project (REQ-JIRATEAM-006). Scoped to `Epic`s
|
|
276
|
+
* whose statusCategory is not `Done`, ordered most-actionable-first, and
|
|
277
|
+
* bounded by `MAX_ISSUE_RESULTS`. The project value is quote-escaped to
|
|
278
|
+
* prevent JQL injection.
|
|
279
|
+
*
|
|
280
|
+
* - 200 → the epic list (empty is a valid success).
|
|
281
|
+
* - 401 / 403 → `JiraAuthError`; redirect / network / non-200 →
|
|
282
|
+
* `JiraConfigError`.
|
|
283
|
+
*/
|
|
284
|
+
async listEpics(projectKey) {
|
|
285
|
+
const project = (projectKey ?? '').trim();
|
|
286
|
+
if (!project) {
|
|
287
|
+
throw new types_1.JiraConfigError('A JIRA project key is required to list epics.');
|
|
288
|
+
}
|
|
289
|
+
const escProject = project.replace(/\\/g, '\\\\').replace(/"/g, '\\"');
|
|
290
|
+
const jql = `project = "${escProject}" AND issuetype = Epic ` +
|
|
291
|
+
`AND statusCategory != Done ORDER BY updated DESC`;
|
|
292
|
+
const params = new URLSearchParams({
|
|
293
|
+
jql,
|
|
294
|
+
fields: 'summary,status',
|
|
295
|
+
maxResults: String(exports.MAX_ISSUE_RESULTS),
|
|
296
|
+
});
|
|
297
|
+
const searchPath = this.deployment === 'datacenter'
|
|
298
|
+
? `/rest/api/2/search?${params.toString()}`
|
|
299
|
+
: `/rest/api/2/search/jql?${params.toString()}`;
|
|
300
|
+
const body = await this.request(searchPath);
|
|
301
|
+
const raw = Array.isArray(body?.issues) ? body.issues : [];
|
|
302
|
+
return raw.map((issue) => ({
|
|
303
|
+
key: String(issue?.key ?? ''),
|
|
304
|
+
summary: String(issue?.fields?.summary ?? ''),
|
|
305
|
+
status: String(issue?.fields?.status?.name ?? ''),
|
|
306
|
+
})).filter((e) => e.key.length > 0);
|
|
307
|
+
}
|
|
308
|
+
/**
|
|
309
|
+
* List issues in `projectKey` that carry `label` (REQ-JIRAREG-001). Used
|
|
310
|
+
* by the regression-pack upsert to find its SpecShip-owned epic / stories /
|
|
311
|
+
* cases by watermark label — never for user-supplied JQL. The label is
|
|
312
|
+
* quote-escaped to defend against injection even though callers supply only
|
|
313
|
+
* the module's own hard-coded label prefixes.
|
|
314
|
+
*/
|
|
315
|
+
async searchIssuesByLabel(projectKey, label) {
|
|
316
|
+
const project = (projectKey ?? '').trim();
|
|
317
|
+
const lab = (label ?? '').trim();
|
|
318
|
+
if (!project || !lab)
|
|
319
|
+
return [];
|
|
320
|
+
const escProject = project.replace(/\\/g, '\\\\').replace(/"/g, '\\"');
|
|
321
|
+
const escLabel = lab.replace(/\\/g, '\\\\').replace(/"/g, '\\"');
|
|
322
|
+
const jql = `project = "${escProject}" AND labels = "${escLabel}" ORDER BY created ASC`;
|
|
323
|
+
const params = new URLSearchParams({
|
|
324
|
+
jql,
|
|
325
|
+
fields: 'summary',
|
|
326
|
+
maxResults: String(exports.MAX_ISSUE_RESULTS),
|
|
327
|
+
});
|
|
328
|
+
const searchPath = this.deployment === 'datacenter'
|
|
329
|
+
? `/rest/api/2/search?${params.toString()}`
|
|
330
|
+
: `/rest/api/2/search/jql?${params.toString()}`;
|
|
331
|
+
const body = await this.request(searchPath);
|
|
332
|
+
const raw = Array.isArray(body?.issues) ? body.issues : [];
|
|
333
|
+
return raw
|
|
334
|
+
.map((issue) => ({
|
|
335
|
+
key: String(issue?.key ?? ''),
|
|
336
|
+
summary: String(issue?.fields?.summary ?? ''),
|
|
337
|
+
}))
|
|
338
|
+
.filter((e) => e.key.length > 0);
|
|
339
|
+
}
|
|
214
340
|
/**
|
|
215
341
|
* List the transitions the issue's current workflow state offers
|
|
216
342
|
* (REQ-JIRA-007). `GET /issue/{key}/transitions`. Used to resolve a
|
|
@@ -305,6 +431,33 @@ class JiraClient {
|
|
|
305
431
|
name: String(p?.name ?? ''),
|
|
306
432
|
})).filter(p => p.key.length > 0);
|
|
307
433
|
}
|
|
434
|
+
/**
|
|
435
|
+
* Assert the authenticated user can see the given project
|
|
436
|
+
* (REQ-JIRATEAM-001.A4). `GET /rest/api/2/project/{key}` — a 401/403/404
|
|
437
|
+
* from the repo-bound project is re-thrown with the project, host, and
|
|
438
|
+
* the binding file's path, so the operator gets a directed message
|
|
439
|
+
* instead of a silent fallback to another project. Non-binding paths
|
|
440
|
+
* (user-level project) re-raise the original error unchanged.
|
|
441
|
+
*/
|
|
442
|
+
async verifyProjectAccess(projectKey) {
|
|
443
|
+
const key = (projectKey ?? '').trim();
|
|
444
|
+
if (!key) {
|
|
445
|
+
throw new types_1.JiraConfigError('A JIRA project key is required.');
|
|
446
|
+
}
|
|
447
|
+
try {
|
|
448
|
+
await this.request(`/rest/api/2/project/${encodeURIComponent(key)}`);
|
|
449
|
+
}
|
|
450
|
+
catch (err) {
|
|
451
|
+
if (this.bindingSource === 'repo' && this.bindingPath) {
|
|
452
|
+
throw (0, repo_config_1.wrapRepoBindingProjectError)(err, {
|
|
453
|
+
projectKey: key,
|
|
454
|
+
host: this.host,
|
|
455
|
+
bindingPath: this.bindingPath,
|
|
456
|
+
});
|
|
457
|
+
}
|
|
458
|
+
throw err;
|
|
459
|
+
}
|
|
460
|
+
}
|
|
308
461
|
/**
|
|
309
462
|
* Create an issue (REQ-JIRAPUB-001) — a Story (or configured type) when
|
|
310
463
|
* `parentKey` is absent, a Sub-task parented to `parentKey` when present.
|
|
@@ -354,6 +507,12 @@ class JiraClient {
|
|
|
354
507
|
patch.summary = fields.summary;
|
|
355
508
|
if (fields.description !== undefined)
|
|
356
509
|
patch.description = fields.description;
|
|
510
|
+
// Parent reassignment (REQ-JIRAREG-002.A3) — a Sub-task or child issue can
|
|
511
|
+
// be moved to a new Story/Epic parent without touching its body. JIRA
|
|
512
|
+
// expects `fields.parent: { key: "PROJ-N" }`; caller is responsible for
|
|
513
|
+
// skipping the write when the parent hasn't changed.
|
|
514
|
+
if (fields.parentKey !== undefined)
|
|
515
|
+
patch.parent = { key: fields.parentKey };
|
|
357
516
|
if (Object.keys(patch).length === 0)
|
|
358
517
|
return;
|
|
359
518
|
await this.write(`/rest/api/2/issue/${encodeURIComponent(trimmed)}`, { fields: patch }, 'PUT');
|
|
@@ -375,6 +534,59 @@ class JiraClient {
|
|
|
375
534
|
.map(c => (typeof c?.body === 'string' ? c.body : ''))
|
|
376
535
|
.filter(b => b.length > 0);
|
|
377
536
|
}
|
|
537
|
+
/**
|
|
538
|
+
* List comments with their JIRA-side ids (REQ-JIRATEAM-004.A3) so a caller
|
|
539
|
+
* can edit a specific comment in place instead of always appending. Same
|
|
540
|
+
* `GET /issue/{key}/comment` as `listComments`, but preserving each id.
|
|
541
|
+
*/
|
|
542
|
+
async listCommentsDetailed(key) {
|
|
543
|
+
const trimmed = (key ?? '').trim();
|
|
544
|
+
if (!trimmed) {
|
|
545
|
+
throw new types_1.JiraConfigError('An issue key is required (e.g., "PROJ-123").');
|
|
546
|
+
}
|
|
547
|
+
const body = await this.request(`/rest/api/2/issue/${encodeURIComponent(trimmed)}/comment`);
|
|
548
|
+
const raw = Array.isArray(body?.comments) ? body.comments : [];
|
|
549
|
+
return raw
|
|
550
|
+
.map(c => ({
|
|
551
|
+
id: String(c?.id ?? ''),
|
|
552
|
+
body: typeof c?.body === 'string' ? c.body : '',
|
|
553
|
+
}))
|
|
554
|
+
.filter(c => c.id.length > 0 && c.body.length > 0);
|
|
555
|
+
}
|
|
556
|
+
/**
|
|
557
|
+
* Edit an existing comment in place (REQ-JIRATEAM-004.A3).
|
|
558
|
+
* `PUT /issue/{key}/comment/{id}` with `{ body }`; used by the sprint
|
|
559
|
+
* coverage report so re-posting updates the single watermarked comment.
|
|
560
|
+
*/
|
|
561
|
+
async updateComment(key, commentId, body) {
|
|
562
|
+
const trimmed = (key ?? '').trim();
|
|
563
|
+
const id = (commentId ?? '').trim();
|
|
564
|
+
if (!trimmed || !id) {
|
|
565
|
+
throw new types_1.JiraConfigError('An issue key and comment id are required to update a comment.');
|
|
566
|
+
}
|
|
567
|
+
await this.write(`/rest/api/2/issue/${encodeURIComponent(trimmed)}/comment/${encodeURIComponent(id)}`, { body }, 'PUT');
|
|
568
|
+
}
|
|
569
|
+
/**
|
|
570
|
+
* Add a label to an issue idempotently (REQ-JIRAREG-003). Reads the current
|
|
571
|
+
* labels first and issues the PUT only when the label is missing — a re-run
|
|
572
|
+
* with the label already present is a zero-write. Uses the additive
|
|
573
|
+
* `update.labels add` shape so other labels are preserved.
|
|
574
|
+
*/
|
|
575
|
+
async addLabel(key, label) {
|
|
576
|
+
const trimmed = (key ?? '').trim();
|
|
577
|
+
const lab = (label ?? '').trim();
|
|
578
|
+
if (!trimmed || !lab) {
|
|
579
|
+
throw new types_1.JiraConfigError('An issue key and a label are required to add a label.');
|
|
580
|
+
}
|
|
581
|
+
const issue = await this.request(`/rest/api/2/issue/${encodeURIComponent(trimmed)}?fields=labels`);
|
|
582
|
+
const current = Array.isArray(issue?.fields?.labels)
|
|
583
|
+
? issue.fields.labels.map((v) => String(v))
|
|
584
|
+
: [];
|
|
585
|
+
if (current.includes(lab))
|
|
586
|
+
return { added: false };
|
|
587
|
+
await this.write(`/rest/api/2/issue/${encodeURIComponent(trimmed)}`, { update: { labels: [{ add: lab }] } }, 'PUT');
|
|
588
|
+
return { added: true };
|
|
589
|
+
}
|
|
378
590
|
/**
|
|
379
591
|
* Ensure a project version with `name` exists (REQ-JIRAPUB-007), creating
|
|
380
592
|
* it when missing. Returns whether this call created it — a re-run finds
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/jira/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/jira/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,7 +36,7 @@ export declare function inferDeployment(creds: {
|
|
|
36
36
|
*
|
|
37
37
|
* SECURITY: the thrown messages never include a token or PAT value.
|
|
38
38
|
*/
|
|
39
|
-
export declare function resolveJiraCredentials(): JiraCredentials;
|
|
39
|
+
export declare function resolveJiraCredentials(cwd?: string): JiraCredentials;
|
|
40
40
|
/**
|
|
41
41
|
* Persist config to `~/.specship/jira.json` with `0600` permissions —
|
|
42
42
|
* it holds a secret, so it must not be group/world readable.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/jira/config.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,OAAO,EACL,UAAU,EACV,eAAe,EAEf,cAAc,EACf,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/jira/config.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,OAAO,EACL,UAAU,EACV,eAAe,EAEf,cAAc,EACf,MAAM,SAAS,CAAC;AAGjB;;;GAGG;AACH,wBAAgB,cAAc,IAAI,MAAM,CAKvC;AAED;;;;GAIG;AACH,wBAAgB,cAAc,IAAI,UAAU,GAAG,IAAI,CAsBlD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE;IACrC,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,GAAG,cAAc,CAWjB;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,GAAE,MAAsB,GAAG,eAAe,CAmFnF;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAQvD"}
|