Project-2 baseline

This commit is contained in:
2026-10-04 21:19:23 -04:00
parent 0f04889edf
commit 213eb3c403
861 changed files with 1710 additions and 3363322 deletions

View File

@@ -652,6 +652,13 @@ if (gitRepo) {
git('read-tree HEAD', { env: indexEnv });
git('add -A', { env: indexEnv });
patch = git('diff --cached --binary --full-index HEAD', diffOpts);
if (patch) {
console.error(
'Warning: no turn checkpoint was found, so snapshot.patch holds every change in the ' +
'working tree, including edits the agent made during the captured turn. Check it ' +
'and remove those before converting the snapshot to a task.'
);
}
}
try {

View File

@@ -86,3 +86,14 @@ never a numeric magnitude, never points, never a cap or pinned score: the
grader sizes the subtraction itself. Always state the behavior that does NOT trip the penalty.
Never describe how criteria combine into an overall score.>
`;
/** The title names the task, not its author: a leading `<EUID>-` (the worker's 12-char id,
* which workers put on their task dir) is dropped. Anything else is used as given. */
export function rubricTitleSlug(slug: string): string {
return slug.replace(/^(?=[A-Z0-9]*\d)[A-Z0-9]{12}-(?=\S)/, '');
}
/** The scaffold with `<task-slug>` filled in for a task whose name is already known. */
export function holisticRubricScaffoldFor(slug: string): string {
return HOLISTIC_RUBRIC_SCAFFOLD.replace('<task-slug>', rubricTitleSlug(slug));
}

View File

@@ -2,4 +2,4 @@
* Plugin-side re-export, so snapshot-to-task.ts resolves `./lib/copy-tree`
* both here and in the toolkit's flat scripts/ dir.
*/
export * from '../../../../raccoon-worker-toolkit/static/scripts/lib/copy-tree';
export * from '../../../../static/scripts/lib/copy-tree';

View File

@@ -24,7 +24,7 @@ import { hideBin } from 'yargs/helpers';
import { stripAuthoringScaffolding, truncationIndex, turnsFromLines } from './harness-session.mjs';
// This script must not call cpSync — it fails EACCES on a macOS docker bind mount.
import { HOLISTIC_RUBRIC_SCAFFOLD } from './holistic-rubric-scaffold';
import { holisticRubricScaffoldFor } from './holistic-rubric-scaffold';
import { copyTree } from './lib/copy-tree';
import { collectCwds, sanitizeSessionJsonl } from './sanitize-session-jsonl';
@@ -234,6 +234,7 @@ mkdirSync(join(taskDir, 'reference-runs'), { recursive: true });
// task-shared/ are skipped by the existsSync guard below.
const sharedFiles = [
{ src: 'test.sh', dest: 'tests/test.sh' },
{ src: 'codex-grader.py', dest: 'tests/codex-grader.py' },
{
src: 'grader-system-prompt-consolidated.md',
dest: 'tests/grader-system-prompt-consolidated.md',
@@ -663,6 +664,7 @@ gpus = 0
allow_internet = true
[verifier.env]
GRADER_HARNESS = "codex"
ANTHROPIC_API_KEY = "\${ANTHROPIC_API_KEY}"
ANTHROPIC_BASE_URL = "\${ANTHROPIC_BASE_URL}"
@@ -764,7 +766,7 @@ const holisticRubricMd = `<!--
when you are done.
-->
${HOLISTIC_RUBRIC_SCAFFOLD}`;
${holisticRubricScaffoldFor(slug)}`;
writeFileSync(join(taskDir, 'tests', 'holistic-rubric.md'), holisticRubricMd);
log.info('Scaffolded tests/holistic-rubric.md (needs manual editing)');