Attempt to make this work

This commit is contained in:
Mark Wylde
2025-05-30 20:10:31 +01:00
parent e474962b0d
commit f598608bb4
5 changed files with 163 additions and 34 deletions

View File

@@ -14,6 +14,14 @@ export async function checkWritePermissions(
): Promise<boolean> {
const { repository, actor } = context;
// For Gitea compatibility, check if we're in a non-GitHub environment
const isGitea = process.env.GITHUB_API_URL && !process.env.GITHUB_API_URL.includes('api.github.com');
if (isGitea) {
core.info(`Detected Gitea environment, assuming actor has permissions`);
return true;
}
try {
core.info(`Checking permissions for actor: ${actor}`);

View File

@@ -15,6 +15,8 @@ export function checkContainsTrigger(context: ParsedGitHubContext): boolean {
inputs: { assigneeTrigger, triggerPhrase, directPrompt },
} = context;
console.log(`Checking trigger: event=${context.eventName}, action=${context.eventAction}, phrase='${triggerPhrase}', assignee='${assigneeTrigger}', direct='${directPrompt}'`);
// If direct prompt is provided, always trigger
if (directPrompt) {
console.log(`Direct prompt provided, triggering action`);
@@ -24,9 +26,11 @@ export function checkContainsTrigger(context: ParsedGitHubContext): boolean {
// Check for assignee trigger
if (isIssuesEvent(context) && context.eventAction === "assigned") {
// Remove @ symbol from assignee_trigger if present
let triggerUser = assigneeTrigger.replace(/^@/, "");
let triggerUser = assigneeTrigger?.replace(/^@/, "") || "";
const assigneeUsername = context.payload.issue.assignee?.login || "";
console.log(`Checking assignee trigger: user='${triggerUser}', assignee='${assigneeUsername}'`);
if (triggerUser && assigneeUsername === triggerUser) {
console.log(`Issue assigned to trigger user '${triggerUser}'`);
return true;