mirror of
https://github.com/anthropics/claude-code-action.git
synced 2026-01-23 15:04:13 +08:00
* feat: add base_branch input to specify source branch for new Claude branches - Add base_branch input parameter to action.yml allowing users to specify which branch to use as source - Update setupBranch function to accept and use the base branch parameter - Defaults to repository default branch if no base branch is specified - Addresses issue #62 for better branch control Co-authored-by: ashwin-ant <ashwin-ant@users.noreply.github.com> * perf: optimize setupBranch to avoid unnecessary default branch fetch Only fetch repository default branch when actually needed: - Skip initial fetch when baseBranch is provided - Fetch default branch at end only for return value and GitHub Actions output - Eliminates unnecessary API call when users specify base branch Co-authored-by: ashwin-ant <ashwin-ant@users.noreply.github.com> * fix: properly handle base branch throughout the action workflow - Fix TypeScript error where defaultBranch was used before being assigned - Replace DEFAULT_BRANCH with BASE_BRANCH in subsequent workflow steps - Update PR creation and branch comparison to use the actual base branch - Ensure custom base_branch input is respected in all operations 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> * refactor: move BASE_BRANCH env reading into parseGitHubContext - Move BASE_BRANCH environment variable reading into parseGitHubContext for consistency - Update setupBranch to use context.inputs.baseBranch instead of process.env - Fix test descriptions to correctly reference BASE_BRANCH instead of DEFAULT_BRANCH - Update test environment setup to use BASE_BRANCH 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> --------- Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com> Co-authored-by: ashwin-ant <ashwin-ant@users.noreply.github.com> Co-authored-by: Claude <noreply@anthropic.com>
94 lines
2.0 KiB
TypeScript
94 lines
2.0 KiB
TypeScript
export type CommonFields = {
|
|
repository: string;
|
|
claudeCommentId: string;
|
|
triggerPhrase: string;
|
|
triggerUsername?: string;
|
|
customInstructions?: string;
|
|
allowedTools?: string;
|
|
disallowedTools?: string;
|
|
directPrompt?: string;
|
|
};
|
|
|
|
type PullRequestReviewCommentEvent = {
|
|
eventName: "pull_request_review_comment";
|
|
isPR: true;
|
|
prNumber: string;
|
|
commentId?: string; // May be present for review comments
|
|
commentBody: string;
|
|
claudeBranch?: string;
|
|
baseBranch?: string;
|
|
};
|
|
|
|
type PullRequestReviewEvent = {
|
|
eventName: "pull_request_review";
|
|
isPR: true;
|
|
prNumber: string;
|
|
commentBody: string;
|
|
claudeBranch?: string;
|
|
baseBranch?: string;
|
|
};
|
|
|
|
type IssueCommentEvent = {
|
|
eventName: "issue_comment";
|
|
commentId: string;
|
|
issueNumber: string;
|
|
isPR: false;
|
|
baseBranch: string;
|
|
claudeBranch: string;
|
|
commentBody: string;
|
|
};
|
|
|
|
// Not actually a real github event, since issue comments and PR coments are both sent as issue_comment
|
|
type PullRequestCommentEvent = {
|
|
eventName: "issue_comment";
|
|
commentId: string;
|
|
prNumber: string;
|
|
isPR: true;
|
|
commentBody: string;
|
|
claudeBranch?: string;
|
|
baseBranch?: string;
|
|
};
|
|
|
|
type IssueOpenedEvent = {
|
|
eventName: "issues";
|
|
eventAction: "opened";
|
|
isPR: false;
|
|
issueNumber: string;
|
|
baseBranch: string;
|
|
claudeBranch: string;
|
|
};
|
|
|
|
type IssueAssignedEvent = {
|
|
eventName: "issues";
|
|
eventAction: "assigned";
|
|
isPR: false;
|
|
issueNumber: string;
|
|
baseBranch: string;
|
|
claudeBranch: string;
|
|
assigneeTrigger: string;
|
|
};
|
|
|
|
type PullRequestEvent = {
|
|
eventName: "pull_request";
|
|
eventAction?: string; // opened, synchronize, etc.
|
|
isPR: true;
|
|
prNumber: string;
|
|
claudeBranch?: string;
|
|
baseBranch?: string;
|
|
};
|
|
|
|
// Union type for all possible event types
|
|
export type EventData =
|
|
| PullRequestReviewCommentEvent
|
|
| PullRequestReviewEvent
|
|
| PullRequestCommentEvent
|
|
| IssueCommentEvent
|
|
| IssueOpenedEvent
|
|
| IssueAssignedEvent
|
|
| PullRequestEvent;
|
|
|
|
// Combined type with separate eventData field
|
|
export type PreparedContext = CommonFields & {
|
|
eventData: EventData;
|
|
};
|