diff --git a/.github/workflows/genai-linters.yml b/.github/workflows/genai-linters.yml index 7b53ac3a8a..5f4d18c06c 100644 --- a/.github/workflows/genai-linters.yml +++ b/.github/workflows/genai-linters.yml @@ -12,11 +12,7 @@ concurrency: group: linters-${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true env: - GENAISCRIPT_DEFAULT_REASONING_MODEL: ${{ vars.GENAISCRIPT_DEFAULT_REASONING_MODEL }} - GENAISCRIPT_DEFAULT_REASONING_SMALL_MODEL: ${{ vars.GENAISCRIPT_DEFAULT_REASONING_SMALL_MODEL }} - GENAISCRIPT_DEFAULT_MODEL: ${{ vars.GENAISCRIPT_DEFAULT_MODEL }} - GENAISCRIPT_DEFAULT_SMALL_MODEL: ${{ vars.GENAISCRIPT_DEFAULT_SMALL_MODEL }} - GENAISCRIPT_DEFAULT_VISION_MODEL: ${{ vars.GENAISCRIPT_DEFAULT_VISION_MODEL }} + GENAISCRIPT_MODEL_LINTER: ${{ vars.GENAISCRIPT_MODEL_LINTER }} jobs: build: runs-on: ubuntu-latest @@ -38,7 +34,7 @@ jobs: - name: git stuff run: git fetch origin && git pull origin dev:dev - name: genaiscript - run: node packages/cli/built/genaiscript.cjs run linters --out ./temp/genai/linters -prc -m reasoning --out-trace $GITHUB_STEP_SUMMARY --vars defaultBranch=dev + run: node packages/cli/built/genaiscript.cjs run linters --out ./temp/genai/linters -prr -m linter --out-trace $GITHUB_STEP_SUMMARY --vars defaultBranch=dev continue-on-error: true env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/genai-pr-review.yml b/.github/workflows/genai-pr-review.yml index a97938624c..c962d0ff77 100644 --- a/.github/workflows/genai-pr-review.yml +++ b/.github/workflows/genai-pr-review.yml @@ -12,11 +12,7 @@ concurrency: group: pr-review-${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true env: - GENAISCRIPT_DEFAULT_REASONING_MODEL: ${{ vars.GENAISCRIPT_DEFAULT_REASONING_MODEL }} - GENAISCRIPT_DEFAULT_REASONING_SMALL_MODEL: ${{ vars.GENAISCRIPT_DEFAULT_REASONING_SMALL_MODEL }} - GENAISCRIPT_DEFAULT_MODEL: ${{ vars.GENAISCRIPT_DEFAULT_MODEL }} - GENAISCRIPT_DEFAULT_SMALL_MODEL: ${{ vars.GENAISCRIPT_DEFAULT_SMALL_MODEL }} - GENAISCRIPT_DEFAULT_VISION_MODEL: ${{ vars.GENAISCRIPT_DEFAULT_VISION_MODEL }} + GENAISCRIPT_MODEL_REVIEW: ${{ vars.GENAISCRIPT_MODEL_REVIEW }} jobs: build: runs-on: ubuntu-latest @@ -41,11 +37,11 @@ jobs: run: git fetch origin && git pull origin dev:dev - name: genaiscript pr-describe continue-on-error: true - run: node packages/cli/built/genaiscript.cjs run pr-describe --out ./temp/genai/pr-describe -prd -m reasoning --out-trace $GITHUB_STEP_SUMMARY --vars defaultBranch=dev + run: node packages/cli/built/genaiscript.cjs run pr-describe --out ./temp/genai/pr-describe -prd -m review --out-trace $GITHUB_STEP_SUMMARY --vars defaultBranch=dev env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: genaiscript pr-review - run: node packages/cli/built/genaiscript.cjs run pr-review --out ./temp/genai/pr-review -prc -m reasoning --out-trace $GITHUB_STEP_SUMMARY --vars defaultBranch=dev + run: node packages/cli/built/genaiscript.cjs run pr-review --out ./temp/genai/pr-review -prc -m review --out-trace $GITHUB_STEP_SUMMARY --vars defaultBranch=dev continue-on-error: true env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/packages/core/src/git.ts b/packages/core/src/git.ts index 67bb7d2678..726437345d 100644 --- a/packages/core/src/git.ts +++ b/packages/core/src/git.ts @@ -37,7 +37,6 @@ export class GitClient implements Git { readonly cwd: string readonly git = "git" // Git command identifier private _defaultBranch: string // Stores the default branch name - private _branch: string // Stores the current branch name constructor(cwd: string) { this.cwd = cwd || process.cwd() @@ -72,12 +71,14 @@ export class GitClient implements Git { * @returns {Promise} The default branch name. */ async defaultBranch(): Promise { - if (!this._defaultBranch) { + if (this._defaultBranch === undefined) { dbg(`fetching default branch from remote`) - const res = await this.exec(["remote", "show", "origin"], {}) - this._defaultBranch = /^\s*HEAD branch:\s+(?.+)\s*$/m.exec( - res - )?.groups?.name + const res = await this.exec(["remote", "show", "origin"], { + valueOnError: "", + }) + this._defaultBranch = + /^\s*HEAD branch:\s+(?.+)\s*$/m.exec(res)?.groups?.name || + "" } return this._defaultBranch } @@ -87,17 +88,16 @@ export class GitClient implements Git { * @returns */ async branch(): Promise { - if (!this._branch) { - dbg(`fetching current branch`) - const res = await this.exec(["branch", "--show-current"]) - this._branch = res.trim() - } - return this._branch + dbg(`fetching current branch`) + const res = await this.exec(["branch", "--show-current"], { + valueOnError: "", + }) + return res.trim() } async listBranches(): Promise { dbg(`listing all branches`) - const res = await this.exec(["branch", "--list"]) + const res = await this.exec(["branch", "--list"], { valueOnError: "" }) return res .split("\n") .map((b) => b.trim()) @@ -112,8 +112,9 @@ export class GitClient implements Git { */ async exec( args: string | string[], - options?: { label?: string } + options?: { label?: string; valueOnError?: string } ): Promise { + const { valueOnError } = options || {} const opts: ShellOptions = { ...(options || {}), cwd: this.cwd, @@ -128,6 +129,7 @@ export class GitClient implements Git { if (res.stdout) dbg(res.stdout) if (res.exitCode !== 0) { dbg(`error: ${res.stderr}`) + if (valueOnError !== undefined) return valueOnError throw new Error(res.stderr) } return res.stdout