argustack 0.1.4 → 0.1.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/README.md +1 -1
- package/dist/adapters/csv/mapper.d.ts.map +1 -1
- package/dist/adapters/csv/mapper.js +53 -21
- package/dist/adapters/csv/mapper.js.map +1 -1
- package/dist/adapters/git/provider.d.ts.map +1 -1
- package/dist/adapters/git/provider.js +1 -3
- package/dist/adapters/git/provider.js.map +1 -1
- package/dist/adapters/jira/mapper.d.ts.map +1 -1
- package/dist/adapters/jira/mapper.js +19 -2
- package/dist/adapters/jira/mapper.js.map +1 -1
- package/dist/adapters/jira/provider.d.ts.map +1 -1
- package/dist/adapters/jira/provider.js +0 -4
- package/dist/adapters/jira/provider.js.map +1 -1
- package/dist/adapters/postgres/schema.d.ts.map +1 -1
- package/dist/adapters/postgres/schema.js +14 -5
- package/dist/adapters/postgres/schema.js.map +1 -1
- package/dist/adapters/postgres/storage.d.ts.map +1 -1
- package/dist/adapters/postgres/storage.js +15 -14
- package/dist/adapters/postgres/storage.js.map +1 -1
- package/dist/cli/index.js +4 -7
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/init.d.ts.map +1 -1
- package/dist/cli/init.js +29 -38
- package/dist/cli/init.js.map +1 -1
- package/dist/cli/mcp-install.d.ts.map +1 -1
- package/dist/cli/mcp-install.js +0 -21
- package/dist/cli/mcp-install.js.map +1 -1
- package/dist/cli/sources.d.ts.map +1 -1
- package/dist/cli/sources.js +0 -5
- package/dist/cli/sources.js.map +1 -1
- package/dist/cli/status.d.ts.map +1 -1
- package/dist/cli/status.js +1 -4
- package/dist/cli/status.js.map +1 -1
- package/dist/cli/sync.d.ts.map +1 -1
- package/dist/cli/sync.js +0 -3
- package/dist/cli/sync.js.map +1 -1
- package/dist/core/types/issue.d.ts +5 -0
- package/dist/core/types/issue.d.ts.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +269 -101
- package/dist/mcp/server.js.map +1 -1
- package/dist/use-cases/embed.d.ts.map +1 -1
- package/dist/use-cases/embed.js +1 -3
- package/dist/use-cases/embed.js.map +1 -1
- package/dist/use-cases/pull-git.d.ts.map +1 -1
- package/dist/use-cases/pull-git.js +2 -6
- package/dist/use-cases/pull-git.js.map +1 -1
- package/dist/use-cases/pull-github.d.ts.map +1 -1
- package/dist/use-cases/pull-github.js +2 -6
- package/dist/use-cases/pull-github.js.map +1 -1
- package/dist/use-cases/pull.d.ts.map +1 -1
- package/dist/use-cases/pull.js +2 -13
- package/dist/use-cases/pull.js.map +1 -1
- package/dist/workspace/config.d.ts.map +1 -1
- package/dist/workspace/config.js +0 -3
- package/dist/workspace/config.js.map +1 -1
- package/dist/workspace/resolver.d.ts.map +1 -1
- package/dist/workspace/resolver.js +0 -1
- package/dist/workspace/resolver.js.map +1 -1
- package/package.json +1 -1
- package/templates/init.sql +5 -0
package/README.md
CHANGED
|
@@ -271,7 +271,7 @@ When connected to Claude, these tools are available:
|
|
|
271
271
|
|------|-------------|
|
|
272
272
|
| `issue_timeline` | Chronological timeline — changelogs + commits + PRs for one issue |
|
|
273
273
|
| `semantic_search` | Find similar issues by meaning (pgvector embeddings) |
|
|
274
|
-
| `estimate` | Predict
|
|
274
|
+
| `estimate` | Predict how long a task will take for a specific developer — "without bugs" (pure dev time) and "with bugs" (real cost), personal coefficient from full history |
|
|
275
275
|
|
|
276
276
|
### System tools
|
|
277
277
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapper.d.ts","sourceRoot":"","sources":["../../../src/adapters/csv/mapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,KAAK,EACL,YAAY,EACZ,YAAY,EACZ,SAAS,EACV,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,KAAK,EAAE,SAAS,EAAE,CAAC;CACpB;
|
|
1
|
+
{"version":3,"file":"mapper.d.ts","sourceRoot":"","sources":["../../../src/adapters/csv/mapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,KAAK,EACL,YAAY,EACZ,YAAY,EACZ,SAAS,EACV,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,KAAK,EAAE,SAAS,EAAE,CAAC;CACpB;AAsBD,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,SAAS,GAAG,YAAY,CA2CxE"}
|
|
@@ -9,6 +9,13 @@ function cell(row, index) {
|
|
|
9
9
|
function cellStr(row, index) {
|
|
10
10
|
return cell(row, index) ?? '';
|
|
11
11
|
}
|
|
12
|
+
function parseIntOrNull(value) {
|
|
13
|
+
if (value === null) {
|
|
14
|
+
return null;
|
|
15
|
+
}
|
|
16
|
+
const parsed = parseInt(value, 10);
|
|
17
|
+
return isNaN(parsed) ? null : parsed;
|
|
18
|
+
}
|
|
12
19
|
export function mapCsvRow(row, schema) {
|
|
13
20
|
const sf = schema.standardFields;
|
|
14
21
|
const issueKey = cellStr(row, sf.get('Issue key'));
|
|
@@ -25,7 +32,9 @@ export function mapCsvRow(row, schema) {
|
|
|
25
32
|
priority: cell(row, sf.get('Priority')),
|
|
26
33
|
resolution: cell(row, sf.get('Resolution')),
|
|
27
34
|
assignee: cell(row, sf.get('Assignee')),
|
|
35
|
+
assigneeId: cell(row, sf.get('Assignee Id')),
|
|
28
36
|
reporter: cell(row, sf.get('Reporter')),
|
|
37
|
+
reporterId: cell(row, sf.get('Reporter Id')),
|
|
29
38
|
created: parseJiraDate(cell(row, sf.get('Created'))),
|
|
30
39
|
updated: parseJiraDate(cell(row, sf.get('Updated'))),
|
|
31
40
|
resolved: parseJiraDate(cell(row, sf.get('Resolved'))),
|
|
@@ -34,8 +43,11 @@ export function mapCsvRow(row, schema) {
|
|
|
34
43
|
components: extractRepeated(row, schema, 'Components'),
|
|
35
44
|
fixVersions: extractRepeated(row, schema, 'Fix versions'),
|
|
36
45
|
parentKey: cell(row, sf.get('Parent key')),
|
|
37
|
-
sprint:
|
|
38
|
-
storyPoints:
|
|
46
|
+
sprint: cell(row, sf.get('Sprint')),
|
|
47
|
+
storyPoints: extractStoryPoints(row, schema),
|
|
48
|
+
originalEstimate: parseIntOrNull(cell(row, sf.get('Original estimate'))),
|
|
49
|
+
remainingEstimate: parseIntOrNull(cell(row, sf.get('Remaining Estimate'))),
|
|
50
|
+
timeSpent: parseIntOrNull(cell(row, sf.get('Time Spent'))),
|
|
39
51
|
customFields: extractCustomFields(row, schema),
|
|
40
52
|
rawJson: buildRawJson(row, schema),
|
|
41
53
|
};
|
|
@@ -44,6 +56,17 @@ export function mapCsvRow(row, schema) {
|
|
|
44
56
|
const links = extractLinks(issueKey, row, schema);
|
|
45
57
|
return { issue, comments, worklogs, links };
|
|
46
58
|
}
|
|
59
|
+
function extractStoryPoints(row, schema) {
|
|
60
|
+
for (const cf of schema.customFields) {
|
|
61
|
+
if (cf.name === 'Story Points' || cf.name === 'Story point estimate') {
|
|
62
|
+
const val = parseFloat(cell(row, cf.columnIndex) ?? '');
|
|
63
|
+
if (!isNaN(val)) {
|
|
64
|
+
return val;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
return null;
|
|
69
|
+
}
|
|
47
70
|
function extractRepeated(row, schema, name) {
|
|
48
71
|
const group = schema.repeatedGroups.get(name);
|
|
49
72
|
if (!group) {
|
|
@@ -137,42 +160,51 @@ function extractWorklogs(issueKey, row, schema) {
|
|
|
137
160
|
const description = parts[0] ?? '';
|
|
138
161
|
const timestamp = parts[1] ?? '';
|
|
139
162
|
const author = parts[2] ?? '';
|
|
140
|
-
const
|
|
141
|
-
const
|
|
163
|
+
const secondsStr = parts[parts.length - 1] ?? '0';
|
|
164
|
+
const seconds = parseInt(secondsStr, 10);
|
|
142
165
|
result.push({
|
|
143
166
|
issueKey,
|
|
144
167
|
author: author || null,
|
|
145
|
-
timeSpent: isNaN(
|
|
146
|
-
timeSpentSeconds: isNaN(
|
|
168
|
+
timeSpent: isNaN(seconds) ? null : formatTimeSpent(seconds),
|
|
169
|
+
timeSpentSeconds: isNaN(seconds) ? null : seconds,
|
|
147
170
|
comment: description || null,
|
|
148
171
|
started: parseJiraDate(timestamp),
|
|
149
172
|
});
|
|
150
173
|
}
|
|
151
174
|
return result;
|
|
152
175
|
}
|
|
176
|
+
function formatTimeSpent(seconds) {
|
|
177
|
+
const hours = Math.floor(seconds / 3600);
|
|
178
|
+
const minutes = Math.floor((seconds % 3600) / 60);
|
|
179
|
+
if (hours > 0 && minutes > 0) {
|
|
180
|
+
return `${hours}h ${minutes}m`;
|
|
181
|
+
}
|
|
182
|
+
if (hours > 0) {
|
|
183
|
+
return `${hours}h`;
|
|
184
|
+
}
|
|
185
|
+
return `${minutes}m`;
|
|
186
|
+
}
|
|
153
187
|
function extractLinks(issueKey, row, schema) {
|
|
154
188
|
const result = [];
|
|
189
|
+
const seen = new Set();
|
|
155
190
|
for (const link of schema.issueLinks) {
|
|
156
191
|
const targetKey = row[link.columnIndex]?.trim();
|
|
157
192
|
if (!targetKey) {
|
|
158
193
|
continue;
|
|
159
194
|
}
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
direction: 'outward',
|
|
166
|
-
});
|
|
167
|
-
}
|
|
168
|
-
else {
|
|
169
|
-
result.push({
|
|
170
|
-
sourceKey: targetKey,
|
|
171
|
-
targetKey: issueKey,
|
|
172
|
-
linkType: link.linkType,
|
|
173
|
-
direction: 'inward',
|
|
174
|
-
});
|
|
195
|
+
const sourceKey = link.direction === 'outward' ? issueKey : targetKey;
|
|
196
|
+
const destKey = link.direction === 'outward' ? targetKey : issueKey;
|
|
197
|
+
const dedupeKey = `${sourceKey}|${destKey}|${link.linkType}|${link.direction}`;
|
|
198
|
+
if (seen.has(dedupeKey)) {
|
|
199
|
+
continue;
|
|
175
200
|
}
|
|
201
|
+
seen.add(dedupeKey);
|
|
202
|
+
result.push({
|
|
203
|
+
sourceKey,
|
|
204
|
+
targetKey: destKey,
|
|
205
|
+
linkType: link.linkType,
|
|
206
|
+
direction: link.direction,
|
|
207
|
+
});
|
|
176
208
|
}
|
|
177
209
|
return result;
|
|
178
210
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapper.js","sourceRoot":"","sources":["../../../src/adapters/csv/mapper.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAS5C,SAAS,IAAI,CAAC,GAAa,EAAE,KAAyB;IACpD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACvC,OAAO,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;AACrC,CAAC;AAED,SAAS,OAAO,CAAC,GAAa,EAAE,KAAyB;IACvD,OAAO,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,GAAa,EAAE,MAAiB;IACxD,MAAM,EAAE,GAAG,MAAM,CAAC,cAAc,CAAC;IAEjC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAEhD,MAAM,KAAK,GAAU;QACnB,GAAG,EAAE,QAAQ;QACb,EAAE,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACpC,UAAU;QACV,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACxC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC7C,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACnC,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QACpD,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACvC,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC3C,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACvC,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACvC,OAAO,EAAE,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;QACpD,OAAO,EAAE,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;QACpD,QAAQ,EAAE,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;QACtD,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACtC,MAAM,EAAE,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC;QAC9C,UAAU,EAAE,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,CAAC;QACtD,WAAW,EAAE,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,cAAc,CAAC;QACzD,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,MAAM,EAAE,IAAI;
|
|
1
|
+
{"version":3,"file":"mapper.js","sourceRoot":"","sources":["../../../src/adapters/csv/mapper.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/adapters/git/provider.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAuBnE,qBAAa,WAAY,YAAW,YAAY;IAGlC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAFrC,QAAQ,CAAC,IAAI,iBAAiB;gBAED,QAAQ,EAAE,MAAM;IAEvC,cAAc,CAAC,KAAK,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC;IAoB5C,WAAW,CAAC,KAAK,CAAC,EAAE,IAAI,GAAG,cAAc,CAAC,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/adapters/git/provider.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAuBnE,qBAAa,WAAY,YAAW,YAAY;IAGlC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAFrC,QAAQ,CAAC,IAAI,iBAAiB;gBAED,QAAQ,EAAE,MAAM;IAEvC,cAAc,CAAC,KAAK,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC;IAoB5C,WAAW,CAAC,KAAK,CAAC,EAAE,IAAI,GAAG,cAAc,CAAC,WAAW,CAAC;IAyDvD,WAAW,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAkBhC,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;CAenC"}
|
|
@@ -68,9 +68,7 @@ export class GitProvider {
|
|
|
68
68
|
deltaResult = deltas.next();
|
|
69
69
|
}
|
|
70
70
|
}
|
|
71
|
-
catch {
|
|
72
|
-
// diff failed — skip
|
|
73
|
-
}
|
|
71
|
+
catch { /* diff unavailable */ }
|
|
74
72
|
const refs = extractIssueRefs(sha, commit.message);
|
|
75
73
|
batch.issueRefs.push(...refs);
|
|
76
74
|
if (batch.commits.length >= BATCH_SIZE) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../src/adapters/git/provider.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../src/adapters/git/provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapper.d.ts","sourceRoot":"","sources":["../../../src/adapters/jira/mapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,KAAK,EACV,KAAK,EACL,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,SAAS,EACV,MAAM,2BAA2B,CAAC;AAEnC,KAAK,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"mapper.d.ts","sourceRoot":"","sources":["../../../src/adapters/jira/mapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,KAAK,EACV,KAAK,EACL,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,SAAS,EACV,MAAM,2BAA2B,CAAC;AAEnC,KAAK,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC;AAgBtC;;;GAGG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,SAAS,GAAG,KAAK,CAiDlD;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,GAAG,YAAY,EAAE,CAWhF;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,GAAG,cAAc,EAAE,CAkBpF;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,GAAG,YAAY,EAAE,CAWhF;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,GAAG,SAAS,EAAE,CAyB1E"}
|
|
@@ -4,12 +4,12 @@
|
|
|
4
4
|
*/
|
|
5
5
|
export function mapJiraIssue(raw) {
|
|
6
6
|
const fields = raw.fields;
|
|
7
|
-
// Separate standard fields from custom fields
|
|
8
7
|
const standardFieldKeys = new Set([
|
|
9
8
|
'summary', 'description', 'issuetype', 'status', 'priority',
|
|
10
9
|
'resolution', 'assignee', 'reporter', 'created', 'updated',
|
|
11
10
|
'resolutiondate', 'duedate', 'labels', 'components', 'fixVersions',
|
|
12
11
|
'parent', 'sprint', 'story_points', 'customfield_10016',
|
|
12
|
+
'timeoriginalestimate', 'timeestimate', 'timespent',
|
|
13
13
|
]);
|
|
14
14
|
const customFields = {};
|
|
15
15
|
for (const [key, value] of Object.entries(fields)) {
|
|
@@ -29,7 +29,9 @@ export function mapJiraIssue(raw) {
|
|
|
29
29
|
priority: fields.priority?.name ?? null,
|
|
30
30
|
resolution: fields.resolution?.name ?? null,
|
|
31
31
|
assignee: fields.assignee?.displayName ?? null,
|
|
32
|
+
assigneeId: fields.assignee?.accountId ?? null,
|
|
32
33
|
reporter: fields.reporter?.displayName ?? null,
|
|
34
|
+
reporterId: fields.reporter?.accountId ?? null,
|
|
33
35
|
created: fields.created,
|
|
34
36
|
updated: fields.updated,
|
|
35
37
|
resolved: fields.resolutiondate ?? null,
|
|
@@ -40,6 +42,9 @@ export function mapJiraIssue(raw) {
|
|
|
40
42
|
parentKey: fields.parent?.key ?? null,
|
|
41
43
|
sprint: extractSprint(fields),
|
|
42
44
|
storyPoints: extractStoryPoints(fields),
|
|
45
|
+
originalEstimate: extractTimeField(fields, 'timeoriginalestimate'),
|
|
46
|
+
remainingEstimate: extractTimeField(fields, 'timeestimate'),
|
|
47
|
+
timeSpent: extractTimeField(fields, 'timespent'),
|
|
43
48
|
customFields,
|
|
44
49
|
rawJson: raw,
|
|
45
50
|
};
|
|
@@ -119,7 +124,6 @@ function extractText(value) {
|
|
|
119
124
|
if (typeof value === 'string') {
|
|
120
125
|
return value;
|
|
121
126
|
}
|
|
122
|
-
// ADF format — extract text recursively
|
|
123
127
|
if (isAdfNode(value)) {
|
|
124
128
|
return extractAdfText(value);
|
|
125
129
|
}
|
|
@@ -159,6 +163,19 @@ function extractSprint(fields) {
|
|
|
159
163
|
/**
|
|
160
164
|
* Extract story points from standard or custom field.
|
|
161
165
|
*/
|
|
166
|
+
function extractSeconds(value) {
|
|
167
|
+
if (typeof value === 'number') {
|
|
168
|
+
return value;
|
|
169
|
+
}
|
|
170
|
+
if (typeof value === 'string') {
|
|
171
|
+
const parsed = parseInt(value, 10);
|
|
172
|
+
return isNaN(parsed) ? null : parsed;
|
|
173
|
+
}
|
|
174
|
+
return null;
|
|
175
|
+
}
|
|
176
|
+
function extractTimeField(fields, key) {
|
|
177
|
+
return extractSeconds(fields[key]);
|
|
178
|
+
}
|
|
162
179
|
function extractStoryPoints(fields) {
|
|
163
180
|
const storyPoints = fields['story_points'] ?? fields['customfield_10016'];
|
|
164
181
|
if (typeof storyPoints === 'number') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapper.js","sourceRoot":"","sources":["../../../src/adapters/jira/mapper.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mapper.js","sourceRoot":"","sources":["../../../src/adapters/jira/mapper.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/adapters/jira/provider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAoB,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAWrE;;;;;;;;GAQG;AACH,qBAAa,YAAa,YAAW,eAAe;IAClD,QAAQ,CAAC,IAAI,UAAU;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;gBAE5B,KAAK,EAAE,eAAe;IAI5B,WAAW,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IASjC,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IASjE,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,cAAc,CAAC,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/adapters/jira/provider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAoB,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAWrE;;;;;;;;GAQG;AACH,qBAAa,YAAa,YAAW,eAAe;IAClD,QAAQ,CAAC,IAAI,UAAU;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;gBAE5B,KAAK,EAAE,eAAe;IAI5B,WAAW,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IASjC,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IASjE,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,cAAc,CAAC,UAAU,CAAC;CAgDlF"}
|
|
@@ -33,14 +33,12 @@ export class JiraProvider {
|
|
|
33
33
|
return result.count ?? 0;
|
|
34
34
|
}
|
|
35
35
|
async *pullIssues(projectKey, since) {
|
|
36
|
-
// Build JQL
|
|
37
36
|
let jql = `project = "${projectKey}" ORDER BY updated ASC`;
|
|
38
37
|
if (since) {
|
|
39
38
|
jql = `project = "${projectKey}" AND updated >= "${since}" ORDER BY updated ASC`;
|
|
40
39
|
}
|
|
41
40
|
let pageToken = undefined;
|
|
42
41
|
do {
|
|
43
|
-
// jira.js v5: Enhanced Search with token-based pagination
|
|
44
42
|
const searchParams = {
|
|
45
43
|
jql,
|
|
46
44
|
maxResults: PAGE_SIZE,
|
|
@@ -55,7 +53,6 @@ export class JiraProvider {
|
|
|
55
53
|
if (issues.length === 0) {
|
|
56
54
|
break;
|
|
57
55
|
}
|
|
58
|
-
// Map each issue to core types
|
|
59
56
|
const batch = {
|
|
60
57
|
issues: [],
|
|
61
58
|
comments: [],
|
|
@@ -71,7 +68,6 @@ export class JiraProvider {
|
|
|
71
68
|
batch.links.push(...mapJiraLinks(raw.key, raw));
|
|
72
69
|
}
|
|
73
70
|
yield batch;
|
|
74
|
-
// Move to next page via token
|
|
75
71
|
pageToken = response.nextPageToken ?? undefined;
|
|
76
72
|
} while (pageToken);
|
|
77
73
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../src/adapters/jira/provider.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAwB,MAAM,aAAa,CAAC;AACrE,OAAO,EACL,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,YAAY,GACb,MAAM,aAAa,CAAC;AAErB,MAAM,SAAS,GAAG,EAAE,CAAC;AAErB;;;;;;;;GAQG;AACH,MAAM,OAAO,YAAY;IACd,IAAI,GAAG,MAAM,CAAC;IACN,MAAM,CAAiB;IAExC,YAAY,KAAsB;QAChC,IAAI,CAAC,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,WAAW;QACf,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;QAC9E,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC/B,GAAG,EAAE,CAAC,CAAC,GAAG;YACV,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,EAAE,EAAE,CAAC,CAAC,EAAE;SACT,CAAC,CAAC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,UAAkB,EAAE,KAAc;QACpD,IAAI,GAAG,GAAG,cAAc,UAAU,GAAG,CAAC;QACtC,IAAI,KAAK,EAAE,CAAC;YACV,GAAG,IAAI,oBAAoB,KAAK,GAAG,CAAC;QACtC,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;QAClE,OAAO,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,CAAC,UAAU,CAAC,UAAkB,EAAE,KAAc;QAClD,
|
|
1
|
+
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../src/adapters/jira/provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/adapters/postgres/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAEzB;;GAEG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/adapters/postgres/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAEzB;;GAEG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CA2Q/D"}
|
|
@@ -17,7 +17,9 @@ export async function ensureSchema(pool) {
|
|
|
17
17
|
priority TEXT,
|
|
18
18
|
resolution VARCHAR(50),
|
|
19
19
|
assignee VARCHAR(100),
|
|
20
|
+
assignee_id TEXT,
|
|
20
21
|
reporter VARCHAR(100),
|
|
22
|
+
reporter_id TEXT,
|
|
21
23
|
created TIMESTAMP,
|
|
22
24
|
updated TIMESTAMP,
|
|
23
25
|
resolved TIMESTAMP,
|
|
@@ -28,6 +30,9 @@ export async function ensureSchema(pool) {
|
|
|
28
30
|
parent_key TEXT,
|
|
29
31
|
sprint VARCHAR(200),
|
|
30
32
|
story_points NUMERIC,
|
|
33
|
+
original_estimate INTEGER,
|
|
34
|
+
remaining_estimate INTEGER,
|
|
35
|
+
time_spent INTEGER,
|
|
31
36
|
custom_fields JSONB,
|
|
32
37
|
raw_json JSONB,
|
|
33
38
|
embedding vector(1536),
|
|
@@ -77,7 +82,6 @@ export async function ensureSchema(pool) {
|
|
|
77
82
|
direction VARCHAR(10)
|
|
78
83
|
)
|
|
79
84
|
`);
|
|
80
|
-
// ─── Git tables ───────────────────────────────────────────────────────
|
|
81
85
|
await pool.query(`
|
|
82
86
|
CREATE TABLE IF NOT EXISTS commits (
|
|
83
87
|
hash VARCHAR(40) PRIMARY KEY,
|
|
@@ -108,7 +112,6 @@ export async function ensureSchema(pool) {
|
|
|
108
112
|
PRIMARY KEY (commit_hash, issue_key)
|
|
109
113
|
)
|
|
110
114
|
`);
|
|
111
|
-
// ─── GitHub tables ──────────────────────────────────────────────────────
|
|
112
115
|
await pool.query(`
|
|
113
116
|
CREATE TABLE IF NOT EXISTS pull_requests (
|
|
114
117
|
number INTEGER NOT NULL,
|
|
@@ -198,7 +201,15 @@ export async function ensureSchema(pool) {
|
|
|
198
201
|
PRIMARY KEY (repo_full_name, id)
|
|
199
202
|
)
|
|
200
203
|
`);
|
|
201
|
-
|
|
204
|
+
await pool.query(`ALTER TABLE issues ADD COLUMN IF NOT EXISTS original_estimate INTEGER`);
|
|
205
|
+
await pool.query(`ALTER TABLE issues ADD COLUMN IF NOT EXISTS remaining_estimate INTEGER`);
|
|
206
|
+
await pool.query(`ALTER TABLE issues ADD COLUMN IF NOT EXISTS time_spent INTEGER`);
|
|
207
|
+
await pool.query(`ALTER TABLE issues ADD COLUMN IF NOT EXISTS assignee_id TEXT`);
|
|
208
|
+
await pool.query(`ALTER TABLE issues ADD COLUMN IF NOT EXISTS reporter_id TEXT`);
|
|
209
|
+
await pool.query(`ALTER TABLE issues ADD COLUMN IF NOT EXISTS search_vector tsvector`);
|
|
210
|
+
await pool.query(`ALTER TABLE commits ADD COLUMN IF NOT EXISTS search_vector tsvector`);
|
|
211
|
+
await pool.query(`ALTER TABLE pull_requests ADD COLUMN IF NOT EXISTS search_vector tsvector`);
|
|
212
|
+
await pool.query(`ALTER TABLE releases ADD COLUMN IF NOT EXISTS search_vector tsvector`);
|
|
202
213
|
const indexes = [
|
|
203
214
|
'CREATE INDEX IF NOT EXISTS idx_issues_project ON issues(project_key)',
|
|
204
215
|
'CREATE INDEX IF NOT EXISTS idx_issues_status ON issues(status)',
|
|
@@ -214,7 +225,6 @@ export async function ensureSchema(pool) {
|
|
|
214
225
|
'CREATE INDEX IF NOT EXISTS idx_worklogs_key ON issue_worklogs(issue_key)',
|
|
215
226
|
'CREATE INDEX IF NOT EXISTS idx_links_source ON issue_links(source_key)',
|
|
216
227
|
'CREATE INDEX IF NOT EXISTS idx_links_target ON issue_links(target_key)',
|
|
217
|
-
// Git indexes
|
|
218
228
|
'CREATE INDEX IF NOT EXISTS idx_commits_author ON commits(author)',
|
|
219
229
|
'CREATE INDEX IF NOT EXISTS idx_commits_date ON commits(committed_at)',
|
|
220
230
|
'CREATE INDEX IF NOT EXISTS idx_commits_repo ON commits(repo_path)',
|
|
@@ -222,7 +232,6 @@ export async function ensureSchema(pool) {
|
|
|
222
232
|
'CREATE INDEX IF NOT EXISTS idx_commit_files_hash ON commit_files(commit_hash)',
|
|
223
233
|
'CREATE INDEX IF NOT EXISTS idx_commit_files_path ON commit_files(file_path)',
|
|
224
234
|
'CREATE INDEX IF NOT EXISTS idx_commit_refs_issue ON commit_issue_refs(issue_key)',
|
|
225
|
-
// GitHub indexes
|
|
226
235
|
'CREATE INDEX IF NOT EXISTS idx_prs_repo ON pull_requests(repo_full_name)',
|
|
227
236
|
'CREATE INDEX IF NOT EXISTS idx_prs_state ON pull_requests(state)',
|
|
228
237
|
'CREATE INDEX IF NOT EXISTS idx_prs_author ON pull_requests(author)',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/adapters/postgres/schema.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAa;IAC9C,MAAM,IAAI,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAE1D,MAAM,IAAI,CAAC,KAAK,CAAC
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/adapters/postgres/schema.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAa;IAC9C,MAAM,IAAI,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAE1D,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoChB,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;;;;;GAUhB,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;;;;;GAUhB,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;;;;;GAUhB,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;;;GAQhB,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;;;;;;;GAYhB,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;;;;GAShB,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;GAMhB,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;GAyBhB,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;;;;;;GAWhB,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;;;;;;;;GAahB,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;;;;;GAUhB,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;;GAOhB,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;;GAiBhB,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,KAAK,CAAC,uEAAuE,CAAC,CAAC;IAC1F,MAAM,IAAI,CAAC,KAAK,CAAC,wEAAwE,CAAC,CAAC;IAC3F,MAAM,IAAI,CAAC,KAAK,CAAC,gEAAgE,CAAC,CAAC;IACnF,MAAM,IAAI,CAAC,KAAK,CAAC,8DAA8D,CAAC,CAAC;IACjF,MAAM,IAAI,CAAC,KAAK,CAAC,8DAA8D,CAAC,CAAC;IACjF,MAAM,IAAI,CAAC,KAAK,CAAC,oEAAoE,CAAC,CAAC;IACvF,MAAM,IAAI,CAAC,KAAK,CAAC,qEAAqE,CAAC,CAAC;IACxF,MAAM,IAAI,CAAC,KAAK,CAAC,2EAA2E,CAAC,CAAC;IAC9F,MAAM,IAAI,CAAC,KAAK,CAAC,sEAAsE,CAAC,CAAC;IAEzF,MAAM,OAAO,GAAG;QACd,sEAAsE;QACtE,gEAAgE;QAChE,kEAAkE;QAClE,oEAAoE;QACpE,kEAAkE;QAClE,kEAAkE;QAClE,iFAAiF;QACjF,iFAAiF;QACjF,yEAAyE;QACzE,0EAA0E;QAC1E,8EAA8E;QAC9E,0EAA0E;QAC1E,wEAAwE;QACxE,wEAAwE;QACxE,kEAAkE;QAClE,sEAAsE;QACtE,mEAAmE;QACnE,mFAAmF;QACnF,+EAA+E;QAC/E,6EAA6E;QAC7E,kFAAkF;QAClF,0EAA0E;QAC1E,kEAAkE;QAClE,oEAAoE;QACpE,uEAAuE;QACvE,yEAAyE;QACzE,iFAAiF;QACjF,qFAAqF;QACrF,uFAAuF;QACvF,yFAAyF;QACzF,mFAAmF;QACnF,qEAAqE;QACrE,0EAA0E;QAC1E,0EAA0E;QAC1E,mEAAmE;QACnE,qFAAqF;KACtF,CAAC;IAEF,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../src/adapters/postgres/storage.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAc,KAAK,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAG5D;;;;GAIG;AACH,qBAAa,eAAgB,YAAW,QAAQ;IAC9C,QAAQ,CAAC,IAAI,gBAAgB;IAC7B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAU;gBAEnB,MAAM,EAAE,QAAQ;IAItB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../src/adapters/postgres/storage.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAc,KAAK,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAG5D;;;;GAIG;AACH,qBAAa,eAAgB,YAAW,QAAQ;IAC9C,QAAQ,CAAC,IAAI,gBAAgB;IAC7B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAU;gBAEnB,MAAM,EAAE,QAAQ;IAItB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAsH3C,eAAe,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAyDlD,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAWzD,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAW1D,eAAe,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAmHlD,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IA8ChD,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAW5D,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAWxD,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAOhE,cAAc,CAClB,MAAM,EAAE,MAAM,EAAE,EAChB,KAAK,EAAE,MAAM,EACb,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAyBhD,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC;IAK3D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7B"}
|
|
@@ -18,21 +18,22 @@ export class PostgresStorage {
|
|
|
18
18
|
const client = await this.pool.connect();
|
|
19
19
|
try {
|
|
20
20
|
await client.query('BEGIN');
|
|
21
|
-
// Upsert issues
|
|
22
21
|
for (const issue of batch.issues) {
|
|
23
22
|
await client.query(`INSERT INTO issues (
|
|
24
23
|
issue_key, issue_id, project_key, summary, description,
|
|
25
24
|
issue_type, status, status_category, priority, resolution,
|
|
26
|
-
assignee, reporter, created, updated, resolved,
|
|
25
|
+
assignee, assignee_id, reporter, reporter_id, created, updated, resolved,
|
|
27
26
|
due_date, labels, components, fix_versions, parent_key,
|
|
28
|
-
sprint, story_points,
|
|
27
|
+
sprint, story_points, original_estimate, remaining_estimate, time_spent,
|
|
28
|
+
custom_fields, raw_json, pulled_at,
|
|
29
29
|
search_vector
|
|
30
30
|
) VALUES (
|
|
31
31
|
$1, $2, $3, $4, $5,
|
|
32
32
|
$6, $7, $8, $9, $10,
|
|
33
|
-
$11, $12, $13, $14, $15,
|
|
34
|
-
$
|
|
35
|
-
$
|
|
33
|
+
$11, $12, $13, $14, $15, $16, $17,
|
|
34
|
+
$18, $19, $20, $21, $22,
|
|
35
|
+
$23, $24, $25, $26, $27,
|
|
36
|
+
$28, $29, NOW(),
|
|
36
37
|
to_tsvector('english', coalesce($4, '') || ' ' || coalesce($5, ''))
|
|
37
38
|
)
|
|
38
39
|
ON CONFLICT (issue_key) DO UPDATE SET
|
|
@@ -46,7 +47,9 @@ export class PostgresStorage {
|
|
|
46
47
|
priority = EXCLUDED.priority,
|
|
47
48
|
resolution = EXCLUDED.resolution,
|
|
48
49
|
assignee = EXCLUDED.assignee,
|
|
50
|
+
assignee_id = EXCLUDED.assignee_id,
|
|
49
51
|
reporter = EXCLUDED.reporter,
|
|
52
|
+
reporter_id = EXCLUDED.reporter_id,
|
|
50
53
|
created = EXCLUDED.created,
|
|
51
54
|
updated = EXCLUDED.updated,
|
|
52
55
|
resolved = EXCLUDED.resolved,
|
|
@@ -57,6 +60,9 @@ export class PostgresStorage {
|
|
|
57
60
|
parent_key = EXCLUDED.parent_key,
|
|
58
61
|
sprint = EXCLUDED.sprint,
|
|
59
62
|
story_points = EXCLUDED.story_points,
|
|
63
|
+
original_estimate = EXCLUDED.original_estimate,
|
|
64
|
+
remaining_estimate = EXCLUDED.remaining_estimate,
|
|
65
|
+
time_spent = EXCLUDED.time_spent,
|
|
60
66
|
custom_fields = EXCLUDED.custom_fields,
|
|
61
67
|
raw_json = EXCLUDED.raw_json,
|
|
62
68
|
pulled_at = NOW(),
|
|
@@ -64,12 +70,12 @@ export class PostgresStorage {
|
|
|
64
70
|
`, [
|
|
65
71
|
issue.key, issue.id, issue.projectKey, issue.summary, issue.description,
|
|
66
72
|
issue.issueType, issue.status, issue.statusCategory, issue.priority, issue.resolution,
|
|
67
|
-
issue.assignee, issue.reporter, issue.created, issue.updated, issue.resolved,
|
|
73
|
+
issue.assignee, issue.assigneeId, issue.reporter, issue.reporterId, issue.created, issue.updated, issue.resolved,
|
|
68
74
|
issue.dueDate, issue.labels, issue.components, issue.fixVersions, issue.parentKey,
|
|
69
|
-
issue.sprint, issue.storyPoints,
|
|
75
|
+
issue.sprint, issue.storyPoints, issue.originalEstimate, issue.remainingEstimate, issue.timeSpent,
|
|
76
|
+
JSON.stringify(issue.customFields), JSON.stringify(issue.rawJson),
|
|
70
77
|
]);
|
|
71
78
|
}
|
|
72
|
-
// Delete old comments/changelogs/worklogs/links for these issues, then re-insert
|
|
73
79
|
const issueKeys = batch.issues.map((i) => i.key);
|
|
74
80
|
if (issueKeys.length > 0) {
|
|
75
81
|
const keysParam = issueKeys.map((_, i) => `$${i + 1}`).join(',');
|
|
@@ -78,22 +84,18 @@ export class PostgresStorage {
|
|
|
78
84
|
await client.query(`DELETE FROM issue_worklogs WHERE issue_key IN (${keysParam})`, issueKeys);
|
|
79
85
|
await client.query(`DELETE FROM issue_links WHERE source_key IN (${keysParam})`, issueKeys);
|
|
80
86
|
}
|
|
81
|
-
// Insert comments
|
|
82
87
|
for (const c of batch.comments) {
|
|
83
88
|
await client.query(`INSERT INTO issue_comments (issue_key, comment_id, author, body, created, updated)
|
|
84
89
|
VALUES ($1, $2, $3, $4, $5, $6)`, [c.issueKey, c.commentId, c.author, c.body, c.created, c.updated]);
|
|
85
90
|
}
|
|
86
|
-
// Insert changelogs
|
|
87
91
|
for (const ch of batch.changelogs) {
|
|
88
92
|
await client.query(`INSERT INTO issue_changelogs (issue_key, author, field, from_value, to_value, changed_at)
|
|
89
93
|
VALUES ($1, $2, $3, $4, $5, $6)`, [ch.issueKey, ch.author, ch.field, ch.fromValue, ch.toValue, ch.changedAt]);
|
|
90
94
|
}
|
|
91
|
-
// Insert worklogs
|
|
92
95
|
for (const w of batch.worklogs) {
|
|
93
96
|
await client.query(`INSERT INTO issue_worklogs (issue_key, author, time_spent, time_spent_seconds, comment, started)
|
|
94
97
|
VALUES ($1, $2, $3, $4, $5, $6)`, [w.issueKey, w.author, w.timeSpent, w.timeSpentSeconds, w.comment, w.started]);
|
|
95
98
|
}
|
|
96
|
-
// Insert links
|
|
97
99
|
for (const l of batch.links) {
|
|
98
100
|
await client.query(`INSERT INTO issue_links (source_key, target_key, link_type, direction)
|
|
99
101
|
VALUES ($1, $2, $3, $4)`, [l.sourceKey, l.targetKey, l.linkType, l.direction]);
|
|
@@ -288,7 +290,6 @@ export class PostgresStorage {
|
|
|
288
290
|
const result = await this.pool.query(`SELECT MAX(updated_at) as last_updated FROM pull_requests WHERE repo_full_name = $1`, [repoFullName]);
|
|
289
291
|
return result.rows[0]?.last_updated ?? null;
|
|
290
292
|
}
|
|
291
|
-
// ─── Embedding methods ──────────────────────────────────────────────────
|
|
292
293
|
async getUnembeddedIssueKeys(limit) {
|
|
293
294
|
const result = await this.pool.query(`SELECT issue_key FROM issues WHERE embedding IS NULL ORDER BY updated DESC NULLS LAST LIMIT $1`, [limit]);
|
|
294
295
|
return result.rows.map((r) => r.issue_key);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/adapters/postgres/storage.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,UAAU,EAAiB,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C;;;;GAIG;AACH,MAAM,OAAO,eAAe;IACjB,IAAI,GAAG,YAAY,CAAC;IACZ,IAAI,CAAU;IAE/B,YAAY,MAAgB;QAC1B,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,KAAiB;QAC/B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QACzC,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAE5B,
|
|
1
|
+
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/adapters/postgres/storage.ts"],"names":[],"mappings":"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"}
|