in src/github/junie/prepare-junie.ts [87:112]
async function shouldHandle(context: JunieExecutionContext, octokit: Octokits): Promise<boolean> {
if (isTriggeredByUserInteraction(context)) {
const hasWritePermissions = await verifyRepositoryAccess(
octokit.rest,
context,
);
if (!hasWritePermissions) {
console.log("No write permissions, skipping junie");
return false;
}
}
if (context.inputs.prompt) {
return true;
}
if (context.inputs.resolveConflicts) {
return await shouldResolveConflicts(context, octokit)
}
if (isJiraWorkflowDispatchEvent(context)) {
return true;
}
return isTriggeredByUserInteraction(context) && detectJunieTriggerPhrase(context) && checkHumanActor(octokit.rest, context);
}