claude-teammate 0.1.113 → 0.1.114
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/package.json +1 -1
- package/src/commands/worker.js +16 -0
- package/src/jira.js +1 -0
package/package.json
CHANGED
package/src/commands/worker.js
CHANGED
|
@@ -68,6 +68,10 @@ function markClaudeUsageLimit() {
|
|
|
68
68
|
function isClaudeUsageLimited() {
|
|
69
69
|
return Date.now() < claudeUsageLimitUntil;
|
|
70
70
|
}
|
|
71
|
+
|
|
72
|
+
function isSubtask(issueType) {
|
|
73
|
+
return ["subtask", "sub-task"].includes(issueType.toLowerCase());
|
|
74
|
+
}
|
|
71
75
|
const REPO_REQUEST_COMMENT = "Please provide repo url";
|
|
72
76
|
const EPIC_MEMORY_MAX_CHARS = 3_500;
|
|
73
77
|
const ISSUE_SETTLE_TIME_MS = 2 * 60 * 1000;
|
|
@@ -642,6 +646,18 @@ async function processJiraIssue({ issue, jira, forgeRegistry, botUser, config, p
|
|
|
642
646
|
|
|
643
647
|
const issueMemoryRecord = await loadIssueMemory(projectRoot, config.JIRA_BASE_URL, detail);
|
|
644
648
|
|
|
649
|
+
if (!detail.epicId && !detail.epicKey) {
|
|
650
|
+
if (isSubtask(detail.issueType) && detail.parentKey) {
|
|
651
|
+
await logger.info("Subtask has no direct epic, checking parent for epic", { issue: detail.key, parent: detail.parentKey });
|
|
652
|
+
const parentDetail = await jira.fetchIssueDetails(detail.parentKey);
|
|
653
|
+
if (parentDetail.epicId || parentDetail.epicKey) {
|
|
654
|
+
detail.epicId = parentDetail.epicId;
|
|
655
|
+
detail.epicKey = parentDetail.epicKey;
|
|
656
|
+
detail.epicUrl = parentDetail.epicUrl;
|
|
657
|
+
}
|
|
658
|
+
}
|
|
659
|
+
}
|
|
660
|
+
|
|
645
661
|
if (!detail.epicId && !detail.epicKey) {
|
|
646
662
|
await logger.info("Issue has no epic, notifying user", { issue: detail.key });
|
|
647
663
|
await ensureJiraComment(detail, jira, botUser, "An epic is missing from this ticket, please add one and tell me when you are done.");
|
package/src/jira.js
CHANGED
|
@@ -204,6 +204,7 @@ function mapIssue(issue, baseUrl) {
|
|
|
204
204
|
epicId: epic?.id ?? null,
|
|
205
205
|
epicKey: epic?.key ?? null,
|
|
206
206
|
epicUrl: epic?.url ?? null,
|
|
207
|
+
parentKey: issue.fields?.parent?.key ?? null,
|
|
207
208
|
created: issue.fields?.created ?? null,
|
|
208
209
|
updated: issue.fields?.updated ?? null
|
|
209
210
|
};
|