Skip to content

Judge Claude evals with Sonnet; count gradle-run once Gradle runs - #131

Merged
chrisbanes merged 10 commits into
mainfrom
worktree-goofy-dazzling-diffie
Oct 21, 2026
Merged

chrisbanes merged 10 commits into
mainfrom
worktree-goofy-dazzling-diffie

Conversation

@chrisbanes

@chrisbanes chrisbanes commented Oct 20, 2026 •

Copy link
Copy Markdown
Owner

Summary

  • Refresh the Claude Code tables in README.md and evals/README.md from a full Haiku 5.5 / high run judged by Sonnet 5.5 / high (the Sol judge was too slow), and add the run record evals/artifacts/2026-10-19-claude-haiku-5-5-sonnet-judge-results.md.
  • Treat gradle-run as expected in every automatic-arm case where Gradle actually ran, not only cases that list it in allowed_skills. A Gradle command counts when it sat at the head of a command sequence (or its pipe partner, or a false || fallback), or when the whole command succeeded on a taken branch. A command in a skipped branch or a denied command does not count. Shell conditions are not evaluated (documented shortcut:).
  • Effect on compose routing (reported): precision 76.6% -> 93.0% (passes), recall 88.4% -> 83.3% (NOT MET, because Haiku often ran Gradle without activating gradle-run). Outcome pass rates are unchanged.
  • Report forbidden-action failures per arm in the scorecard, so skill-caused violations are separable from model habit.
  • Tighten the shepherd-negative prompt to say the supplied state is enough and gh is not needed. This run used the old prompt.

Test plan

  • npm run lint, npm run evals:validate (212 cases) and the eval unit tests pass; no live model calls were made by these changes.
  • The scorecards in the record were regraded from the stored results with no new model calls.
  • Versions are unchanged. The Codex tables are untouched.

…port forbidden actions per arm

Refresh the Claude Code tables from a full Haiku 5.5 run judged by Sonnet 5.5 and add its run record. Treat gradle-run as expected in every automatic case where Gradle ran, report forbidden-action failures per arm, and tell shepherd-negative to use the supplied state without gh.
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 20, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-20T16:09:59.106037Z 806fd91 New commits
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 59ef812113

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread evals/harness/experiment.py
@greptile-apps

greptile-apps Bot commented Oct 20, 2026 •

Copy link
Copy Markdown

RetriggerView in GreptileConfidence Score: 5/5

[Medium impact] The PR appears safe to merge; no new blocking issue was found.

Summary

Refreshes the Claude Code results using Sonnet as judge and counts gradle-run as expected when Gradle runs.

  • Automatic routing now expects gradle-run when Gradle actually runs.
  • Scorecards show forbidden-action failures for each run arm.
  • Claude Code tables now show the Haiku run judged by Sonnet.
  • The shepherd negative case says the supplied state is enough.

Reviews (8) · Last reviewed commit: "Document the shell shapes the Gradle-run..." · Reviewed by Greptile

Ignore Gradle commands in skipped shell branches and denied commands when deciding whether gradle-run is expected, and regrade the run record with the fix.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 1acdb3b4ad

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread evals/harness/experiment.py Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: a8a5244339

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread evals/harness/experiment.py Outdated
Comment thread evals/harness/experiment.py Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 62133ec5c9

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread evals/harness/experiment.py Outdated
Comment thread evals/harness/experiment.py Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: c969d2f7b1

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread evals/harness/experiment.py

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 05867d74c7

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread evals/harness/experiment.py
Comment thread evals/harness/experiment.py Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 806fd91c43

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread evals/harness/experiment.py
Comment thread evals/harness/experiment.py
@chrisbanes
chrisbanes merged commit d3f79f8 into main Oct 21, 2026
2 checks passed
@chrisbanes
chrisbanes deleted the worktree-goofy-dazzling-diffie branch October 21, 2026 15:53
chrisbanes added a commit that referenced this pull request Oct 21, 2026
Stacked on #131; retarget to `main` after it merges.

## Summary

Three minimal skill-text fixes for failures in the Haiku 5.5 /
Sonnet-judged run (see the run record in #131):

- `gradle-run`: rerunning an unchanged task under a relabeled question
is still a repeat (`gradle-fingerprint-diagnosis-novel`, 2 automatic
failures).
- `kotlin-api-design` value classes: when callers must stay untouched,
change only the declaration; keep the public constructor and add no
private constructor or factory (`kotlin-api-value-class-direct`, 1
forced and 1 automatic failure).
- `deliver-spec`: name conversation-mode `to-plan` as the initial route
for an approved local source, including when answering a resume question
(`deliver-spec-novel`, 2 forced failures).

Versions are unchanged. The two single-record failures
(`compose-state-authoring-novel`, `router-kotlin-gradle-validation`) are
left alone as within noise.

## Test plan

- `npm run lint`, `npm run evals:validate` (212 cases) and the eval unit
tests (403) pass. `npm test` fails in this checkout only because the
opencode plugin test cannot resolve `js-yaml` (no `node_modules`); it is
unrelated to these edits.
- A targeted live rerun of the affected skills (`gradle-run`,
`kotlin-api-design`, `deliver-spec`, `shepherd`) will follow once
approved, with results reported separately.
chrisbanes added a commit that referenced this pull request Oct 21, 2026
Stacked on #132 (which is stacked on #131); retarget to `main` as each
merges.

## Summary

Two small changes aimed at gaps the Haiku 5.5 / Sonnet-judged run found:

- **Forbidden-action gate (Claude only):** the Claude subject prompt
states that every Gradle command must include `--offline --no-scan` and,
for edit cases, lists the only paths it may create or change (or says no
file may change). Codex prompts are unchanged (a test asserts both
sides).
- **`kotlin-control-flow`:** guard conditions are stable from Kotlin
2.2; an explicit `languageVersion` is honored, otherwise the project's
Kotlin version confirms support.

## Measured (compose rerun, Haiku subject, Sonnet judge)

- Forbidden-action failures 19 -> 2 (none 7 -> 1, forced 2 -> 0,
automatic 10 -> 1); the gate is still NOT MET by those two.
- Automatic tokens per pass 139.3k -> 106.9k, tool calls per pass 9.4 ->
7.1.
- Pass rates moved by 1 to 2 records per arm (noise at n=3).
- Compose routing recall fell (83.3% -> 79.6% reported): the explicit
flags in the prompt seem to let Haiku run `./gradlew` directly instead
of loading `gradle-run`. A `gradle-run` description change meant to
raise recall did not help and was reverted. Recall remains a known gap.
- The `kotlin-control-flow` change is not yet measured; it lives in the
kotlin-gradle suite.

## Test plan

- `npm run lint`, `npm run evals:validate` (212 cases) and the eval unit
tests pass.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant