From f74c505b6988bc774d88425fb19a696fd4a02916 Mon Sep 17 00:00:00 2001 From: Christopher Tso Date: Sat, 10 Oct 2026 18:35:35 +1100 Subject: [PATCH] fix(release): use OpenRouter for contract evals --- .github/workflows/publish.yml | 12 +++++------- examples/contract/evals/release-gate.eval.yaml | 2 +- .../contract/evals/repo-materialization.eval.yaml | 2 +- .../contract/evals/script-grader-contract.eval.yaml | 2 +- scripts/run-contract-eval.ts | 6 +++--- 5 files changed, 11 insertions(+), 13 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index b7d73e94b..47e10ac9c 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -101,14 +101,13 @@ jobs: # Finalize/stable releases promote to latest, so block before any version # bump/tag if the live contract eval fails. The gate uses the configured - # Azure OpenAI deployment and does not override the workflow GITHUB_TOKEN. + # OpenRouter model and does not override the workflow GITHUB_TOKEN. - name: Contract eval gate if: inputs.channel == 'finalize' || inputs.channel == 'stable' run: bun run contract-eval env: - AZURE_OPENAI_API_KEY: ${{ secrets.AZURE_OPENAI_API_KEY }} - AZURE_OPENAI_ENDPOINT: ${{ vars.AZURE_OPENAI_ENDPOINT }} - AZURE_DEPLOYMENT_NAME: ${{ vars.AZURE_DEPLOYMENT_NAME }} + OPENROUTER_API_KEY: ${{ secrets.OPENROUTER_API_KEY }} + OPENROUTER_MODEL: ${{ vars.OPENROUTER_MODEL || 'openai/gpt-5.4-mini' }} - name: Bump version, commit, and tag if: inputs.channel != 'existing' @@ -229,9 +228,8 @@ jobs: if: needs.prepare.outputs.publish_action == 'publish-latest' && inputs.channel == 'existing' run: bun run contract-eval env: - AZURE_OPENAI_API_KEY: ${{ secrets.AZURE_OPENAI_API_KEY }} - AZURE_OPENAI_ENDPOINT: ${{ vars.AZURE_OPENAI_ENDPOINT }} - AZURE_DEPLOYMENT_NAME: ${{ vars.AZURE_DEPLOYMENT_NAME }} + OPENROUTER_API_KEY: ${{ secrets.OPENROUTER_API_KEY }} + OPENROUTER_MODEL: ${{ vars.OPENROUTER_MODEL || 'openai/gpt-5.4-mini' }} - name: Publish to npm run: | diff --git a/examples/contract/evals/release-gate.eval.yaml b/examples/contract/evals/release-gate.eval.yaml index ed5dcd6e6..a97fc7184 100644 --- a/examples/contract/evals/release-gate.eval.yaml +++ b/examples/contract/evals/release-gate.eval.yaml @@ -4,7 +4,7 @@ environment: type: host workdir: ../workspace-template providers: - - azure + - openrouter prompts: - "{{ input }}" tests: diff --git a/examples/contract/evals/repo-materialization.eval.yaml b/examples/contract/evals/repo-materialization.eval.yaml index 01f5c2873..1fb981d72 100644 --- a/examples/contract/evals/repo-materialization.eval.yaml +++ b/examples/contract/evals/repo-materialization.eval.yaml @@ -13,7 +13,7 @@ environment: - 21a34daed7ebcfe36cbed053607622a55e5e94cb cwd: "." providers: - - azure + - openrouter prompts: - "{{ input }}" tests: diff --git a/examples/contract/evals/script-grader-contract.eval.yaml b/examples/contract/evals/script-grader-contract.eval.yaml index 26a5b9b6b..1034f68fd 100644 --- a/examples/contract/evals/script-grader-contract.eval.yaml +++ b/examples/contract/evals/script-grader-contract.eval.yaml @@ -1,7 +1,7 @@ name: script-grader-contract description: Release gate verifying the script-grader stdin payload contract. providers: - - azure + - openrouter prompts: - "{{ input }}" tests: diff --git a/scripts/run-contract-eval.ts b/scripts/run-contract-eval.ts index 7416cbd3f..b5af3e1e9 100644 --- a/scripts/run-contract-eval.ts +++ b/scripts/run-contract-eval.ts @@ -7,7 +7,7 @@ * invoking this file directly. * * Local usage: - * Set AZURE_OPENAI_API_KEY, AZURE_OPENAI_ENDPOINT, and AZURE_DEPLOYMENT_NAME, + * Set OPENROUTER_API_KEY and OPENROUTER_MODEL, * then run `bun run contract-eval`. */ @@ -26,9 +26,9 @@ for (const evalFile of evalFiles) { 'eval', evalFile, '--provider', - 'azure', + 'openrouter', '--grader-provider', - 'azure', + 'openrouter', '--threshold', '1', ],