Resume incomplete strict teacher coverage - #26
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 03b4cacde6
ℹ️ 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".
| if not runner.dry_run: | ||
| for attempt in range(1, config.teacher.max_attempts + 1): |
There was a problem hiding this comment.
Gate teacher-attempt reuse on resume
In a non-resume run that reuses an existing run name or jobs directory, this new scan treats any prior attempt-* directory with a health file as completed and skips straight to later attempts, because collect_verified_teacher_rollouts has no resume flag and is called from the normal collection path as well as resume. That can silently build the new SFT data from stale teacher rollouts from an earlier recipe/task snapshot instead of recollecting attempt 1; the reuse should only happen when the pipeline is actually resuming.
Useful? React with 👍 / 👎.
What changed
jobs/teacher/attempt-*directories when strict teacher collection resumes.teacher.max_attempts. Decreasing it or changing dataset/model/reward/training semantics still fails closed.Why
The merged-main red-wine full run completed a healthy deterministic
8/14baseline and three strict 397B teacher attempts, then stopped at11/16eligible trajectories as configured. All existing baseline and teacher artifacts are valid and expensive, but the current resume path cannot continue them:collect_verified_teacher_rolloutsalways starts again at attempt 1._collect_and_convert_teacher_datatreats an insufficient manifest as a reusable completed stage, then rejects it.That makes strict all-task coverage non-resumable even though the next correct action is simply attempt 4 on the five missing task IDs.
Validation
222package contract tests pass.36focused teacher/pipeline tests pass.git diff --checkpass.