chore: fix formatting issues in main.ts file

This commit is contained in:
Will Hohyon Ryu 2024-03-07 19:06:50 -08:00
commit 977935fd5e

View file

@ -1,8 +1,8 @@
import { readFileSync } from "fs"; import {readFileSync} from "fs";
import * as core from "@actions/core"; import * as core from "@actions/core";
import OpenAI from "openai"; import OpenAI from "openai";
import { Octokit } from "@octokit/rest"; import {Octokit} from "@octokit/rest";
import parseDiff, { Chunk, File } from "parse-diff"; import parseDiff, {Chunk, File} from "parse-diff";
import minimatch from "minimatch"; import minimatch from "minimatch";
import {parseJsonForChatGPTResponse} from "./parseJsonForChatGPTResponse"; import {parseJsonForChatGPTResponse} from "./parseJsonForChatGPTResponse";
@ -10,11 +10,11 @@ const GITHUB_TOKEN: string = core.getInput("GITHUB_TOKEN");
const OPENAI_API_KEY: string = core.getInput("OPENAI_API_KEY"); const OPENAI_API_KEY: string = core.getInput("OPENAI_API_KEY");
const OPENAI_API_MODEL: string = core.getInput("OPENAI_API_MODEL"); const OPENAI_API_MODEL: string = core.getInput("OPENAI_API_MODEL");
const octokit = new Octokit({ auth: GITHUB_TOKEN }); const octokit = new Octokit({auth: GITHUB_TOKEN});
const openai = new OpenAI({ const openai = new OpenAI({
apiKey: OPENAI_API_KEY, apiKey: OPENAI_API_KEY,
}); });
interface PRDetails { interface PRDetails {
owner: string; owner: string;
@ -25,7 +25,7 @@ interface PRDetails {
} }
async function getPRDetails(): Promise<PRDetails> { async function getPRDetails(): Promise<PRDetails> {
const { repository, number } = JSON.parse( const {repository, number} = JSON.parse(
readFileSync(process.env.GITHUB_EVENT_PATH || "", "utf8") readFileSync(process.env.GITHUB_EVENT_PATH || "", "utf8")
); );
const prResponse = await octokit.pulls.get({ const prResponse = await octokit.pulls.get({
@ -51,7 +51,7 @@ async function getDiff(
owner, owner,
repo, repo,
pull_number, pull_number,
mediaType: { format: "diff" }, mediaType: {format: "diff"},
}); });
// @ts-expect-error - response.data is a string // @ts-expect-error - response.data is a string
return response.data; return response.data;
@ -128,12 +128,13 @@ async function getAIResponse(prompt: string): Promise<Array<{
presence_penalty: 0, presence_penalty: 0,
}; };
try { const response =
const response = await openai.chat.completions.create({ await openai.chat.completions.create(
{
...queryConfig, ...queryConfig,
// return JSON if the model supports it: // return JSON if the model supports it:
...(OPENAI_API_MODEL === "gpt-4-1106-preview" ...(OPENAI_API_MODEL === "gpt-4-1106-preview"
? { response_format: { type: "json_object" } } ? {response_format: {type: "json_object"}}
: {}), : {}),
messages: [ messages: [
{ {
@ -144,11 +145,9 @@ async function getAIResponse(prompt: string): Promise<Array<{
}); });
const res = response.choices[0].message?.content?.trim() || "{}"; const res = response.choices[0].message?.content?.trim() || "{}";
console.log("GPT response:")
console.log(res);
return parseJsonForChatGPTResponse(res).reviews; return parseJsonForChatGPTResponse(res).reviews;
} catch (error) {
console.error("Error:", error);
return null;
}
} }
function createComment( function createComment(