Repository navigation
chore(developer-experience): commit the hand-rolled eval scenario sources - #10754
Conversation
…rces Adds the scenario spec, harness, fixture generators, held-out scenarios, judge rubric and scripts, run lists and labeled judge samples under plugins/developer-experience/evals/sources/. Fixtures are regenerated by the generator; results and judge run output stay out. Machine paths are replaced by required environment variables or placeholders. Closes #9936 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…sources Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
| GitGuardian id | GitGuardian status | Secret | Commit | Filename | |
|---|---|---|---|---|---|
| 39229828 | Triggered | Generic CLI Secret | 9400cb8 | plugins/developer-experience/evals/sources/harness/score-deterministic.py | View secret |
🛠 Guidelines to remediate hardcoded secrets
- Understand the implications of revoking this secret by investigating where it is used in your code.
- Replace and store your secret safely. Learn here the best practices.
- Revoke and rotate this secret.
- If possible, rewrite git history. Rewriting git history is not a trivial act. You might completely break other contributing developers' workflow and you risk accidentally deleting legitimate data.
To avoid such incidents in the future consider
- following these best practices for managing and storing secrets including API keys and other credentials
- install secret detection on pre-commit to catch secret before it leaves your machine and ease remediation.
🦉 GitGuardian detects secrets in your source code to help developers and security teams secure the modern development process. You are seeing this because you or someone else with access to this repository has authorized GitGuardian to scan your pull request.
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 7bc2c87374
ℹ️ 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".
|
claude-review reviewed Incremental review of The change adds a guard at lines 100-101 that rejects a relative The skip gate did not apply, because the file is a bash script under the evals tree and not a trivial or automated change. This lane's own criteria had nothing else to flag. I read the PR context file only for the closing-issue check and found no criterion this change affects. No security-lane scope, manifest, or cost items are hit. |
|
claude-security-review reviewed Incremental security review of The change adds one guard,
critical-findings: 0 |
…n probe The item-8 probe passes a value to --token only to see whether the CLI accepts the option; "probe-value" read as a credential to secret scanners. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A file under a plugin's evals/**/samples/ is a model's recorded answer about a fixture repository, so its path:line citations never describe this tree, and rewriting them would change what the judge grades. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…/9936-eval-scenario-sources
…val harness A relative scratch root never reaches / in the parent walk that looks for instruction files, so run-cell.sh hung, and the inside-the-worktree check compared against the wrong path. Refuse a relative path up front. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Post-merge mutation testingKilled 2, survived 0, timeout 0, no coverage 0, invalid 0, not run 0.
The run's summary has the full report. |
Closes #9936
Summary
Commits the hand-rolled developer-experience eval scenario sources to
plugins/developer-experience/evals/sources/, so the porting children of #6649 can read them. Thesources come from the harness of PR #6668, which until now existed only in one host's gitignored
workspace.
Included (520 files):
eval-scenarios-draft.md: the spec (S1-S7, T1-T4, N1, stays-quiet, rubrics, run matrix).harness/:scenarios.sh,run-cell.sh,run-batch.sh, the fixture generators(
build-fixtures.py,build-agentic-overlay.py), the scorers and report helpers.held-out/: the H-audit and H-build scenarios.judge/:items.json(the J-item rubric checklist),judge.py,build_inputs.py,score_j.py,briefs/variant-brief.md.labels/: 484 labeled judge calibration samples (452 samples, 32labels.jsonl).lists/: the run listsrun-batch.shreads.Left out: the 200 generated fixture files (the generator reproduces them), every
results*/tree,RUNS.md, and judge run output (judge/inputs/,judge/calibration/,judge/scores/,judge/status.json). A.gitignoreinsources/keeps regenerated fixtures and new run outputout of the tree.
Fix
build-fixtures.pyandrun-cell.shnowresolve the repository root four levels up.
that fail when unset (
EVAL_RUNS_DIR,EVAL_TEST_DIR,DX_JUDGE_SCRATCH). The judge inputscrub now strips
$DX_JUDGE_SCRATCH/sandboxes/<box>/instead of a fixed path.harness/score-deterministic.test.shis renamedscore-deterministic-check.sh: it needs a realrun's output, which is not committed, so the plugin test runner must not collect it as a suite.
Their typos and markdownlint exemptions landed first, in ci: exempt the developer-experience labeled eval samples from typos and markdownlint #10723.
#!are marked executable, as the exec-bit check requires.bump: none: no shipped skill, script or settingchanges.
Identifying-details review
The labeled samples are model output answering the synthetic scenario prompts on the fictional
tarnquillandbrackenfoldfixtures, not session or product transcripts, so the grader-samplecase of
.claude/rules/eval-case-transcripts.mdapplies once no machine-specific path or identifyingdetail remains. The review covered the whole committed set, plus the 11 files the issue counted:
harness/run-cell.shEVAL_RUNS_DIRrequiredharness/score-deterministic.test.shEVAL_TEST_DIRrequired; file renamedjudge/judge.pyDX_JUDGE_SCRATCHrequiredjudge/build_inputs.pyDX_JUDGE_SCRATCHrequired; scrub derives from itjudge/briefs/variant-brief.mdlabels/T4/2/samples/{real,var}-p6b-A2-run2.md,labels/T4/3/samples/{real,var}-p6b-A2-run2.md<plugin-root>/placeholderharness/build-fixtures.pyexample.org,example.netandexample.comdomainsRUNS.mdOther checks on the committed set:
/home/and/Users/paths, the sessionUID marker, and email addresses found nothing beyond the rows above. The remaining addresses are
@example.invalidand the@AGENTS.mdimport./tmp/accounts.jsonlinlabels/S4/9bis fixture task content, not a host path.gitleaks diron the committed set reported no leaks.Verification
python3 -I harness/build-fixtures.py, thenharness/build-agentic-overlay.py, from thecommitted location.
diff -ragainst the original 200 fixtures differs only in theproject GUIDs that
dotnet new slnwrites into the fourTarnquill.slnfiles. The output wasdeleted afterwards.
scripts/run-ruff.sh checkpasses.shellcheckandshfmt -dare clean onharness/*.sh.markdownlint-cli2is clean on the sources.typosis clean outsidelabels/.scripts/check-changelog-fragments.sh --check-required origin/mainexits 0.scripts/check-affected.sh --testson the merged head: 15 passed, 1 skipped (no changed skill file).dotnet build --nologonotes, all in judge samples. Since fix(guardrails): reference-verify skips recorded eval samples #10698, the hook skipsevals/**/samples/.clauderun was needed.Related
🤖 Generated with Claude Code