mirror of
https://github.com/markwylde/claude-code-gitea-action.git
synced 2026-02-19 10:02:50 +08:00
fix: allow issue triggers without prepared branch
This commit is contained in:
@@ -277,8 +277,6 @@ export function prepareContext(
|
||||
throw new Error(
|
||||
"ISSUE_NUMBER is required for issue_comment event for issues",
|
||||
);
|
||||
} else if (!claudeBranch) {
|
||||
throw new Error("CLAUDE_BRANCH is required for issue_comment event");
|
||||
}
|
||||
|
||||
eventData = {
|
||||
@@ -288,7 +286,7 @@ export function prepareContext(
|
||||
baseBranch,
|
||||
issueNumber,
|
||||
commentBody,
|
||||
claudeBranch,
|
||||
...(claudeBranch && { claudeBranch }),
|
||||
};
|
||||
break;
|
||||
|
||||
@@ -305,10 +303,6 @@ export function prepareContext(
|
||||
if (!baseBranch) {
|
||||
throw new Error("BASE_BRANCH is required for issues event");
|
||||
}
|
||||
if (!claudeBranch) {
|
||||
throw new Error("CLAUDE_BRANCH is required for issues event");
|
||||
}
|
||||
|
||||
if (eventAction === "assigned") {
|
||||
if (!assigneeTrigger && !directPrompt) {
|
||||
throw new Error(
|
||||
@@ -322,7 +316,7 @@ export function prepareContext(
|
||||
issueNumber,
|
||||
baseBranch,
|
||||
...(assigneeTrigger && { assigneeTrigger }),
|
||||
claudeBranch,
|
||||
...(claudeBranch && { claudeBranch }),
|
||||
};
|
||||
} else if (eventAction === "labeled") {
|
||||
if (!labelTrigger) {
|
||||
@@ -334,7 +328,7 @@ export function prepareContext(
|
||||
isPR: false,
|
||||
issueNumber,
|
||||
baseBranch,
|
||||
claudeBranch,
|
||||
...(claudeBranch && { claudeBranch }),
|
||||
labelTrigger,
|
||||
};
|
||||
} else if (eventAction === "opened") {
|
||||
|
||||
@@ -69,10 +69,19 @@ describe("parseEnvVarsWithContext", () => {
|
||||
}
|
||||
});
|
||||
|
||||
test("should throw error when CLAUDE_BRANCH is missing", () => {
|
||||
expect(() =>
|
||||
prepareContext(mockIssueCommentContext, "12345", "main"),
|
||||
).toThrow("CLAUDE_BRANCH is required for issue_comment event");
|
||||
test("should allow missing CLAUDE_BRANCH and omit it from event data", () => {
|
||||
const result = prepareContext(
|
||||
mockIssueCommentContext,
|
||||
"12345",
|
||||
"main",
|
||||
);
|
||||
|
||||
if (
|
||||
result.eventData.eventName === "issue_comment" &&
|
||||
!result.eventData.isPR
|
||||
) {
|
||||
expect(result.eventData.claudeBranch).toBeUndefined();
|
||||
}
|
||||
});
|
||||
|
||||
test("should throw error when BASE_BRANCH is missing", () => {
|
||||
@@ -203,10 +212,12 @@ describe("parseEnvVarsWithContext", () => {
|
||||
}
|
||||
});
|
||||
|
||||
test("should throw error when CLAUDE_BRANCH is missing for issues", () => {
|
||||
expect(() =>
|
||||
prepareContext(mockIssueOpenedContext, "12345", "main"),
|
||||
).toThrow("CLAUDE_BRANCH is required for issues event");
|
||||
test("should allow issues event without CLAUDE_BRANCH", () => {
|
||||
const result = prepareContext(mockIssueOpenedContext, "12345", "main");
|
||||
|
||||
if (result.eventData.eventName === "issues") {
|
||||
expect(result.eventData.claudeBranch).toBeUndefined();
|
||||
}
|
||||
});
|
||||
|
||||
test("should throw error when BASE_BRANCH is missing for issues", () => {
|
||||
|
||||
Reference in New Issue
Block a user