Skip to content

docs: roadmap — simplify each component before the job loop - #294

Merged
luca-belli merged 1 commit into
mainfrom
docs/component-simplification-plan
Oct 27, 2026
Merged

luca-belli merged 1 commit into
mainfrom
docs/component-simplification-plan

Conversation

@luca-belli

Copy link
Copy Markdown
Collaborator

Summary

Docs only: records in docs/roadmap.md the plan to simplify generation and judging. The work waits for the step-3 stack (#289, #290, #291, #293) to merge, because it rewrites the same files.

The problem. Each component reaches its work through layers that existed for the legacy scripts:

  • Generation: vera_cli → run_for_user_models → run_generation → ConversationRunner → its pool → one conversation
  • Judging: vera_cli → run_judging → judge_conversations → batch_evaluate_with_individual_judges → its pool → one evaluation

Scoring is already one layer (run_scoring) and is the model.

The target comes from #266 and is the same everywhere: <component>/run.py holds one run_<verb>(config) entry point, a module holds one unit of work, plus utils.py and viz.py.

Two phases:

  1. Before the loop, three PRs that leave behavior unchanged:

    • (a) Delete legacy leftovers that have no callers.
    • (b) Generation takes GenerationConfig directly. This is the Model spec boundary phase.
    • (c) Judging takes JudgingConfig directly.

    None of these depend on the loop design, and they shrink step 4.

  2. With the loop (step 4): splitting out "one conversation" and "one evaluation" is the same work as defining docs: design draft — one job loop for generate and judge #266's jobs, so it happens in the loop PRs. Judge goes first, then generate, then the pipeline, and each PR deletes that component's runner.py.

Why not all at once: one PR that changes structure and concurrency together would be the hardest to review, and the hardest to bisect if scores moved.

I didn't renumber the step table, so this won't conflict with #289's edits to those rows on release/2.1.

🤖 Generated with Claude Code

Records the plan: three behavior-preserving PRs before step 4 (delete
legacy leftovers; generation takes GenerationConfig; judging takes
JudgingConfig), then split out each unit of work as part of the loop
PRs, one command at a time. Waits for the step-3 stack (#289-#293).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@luca-belli
luca-belli requested a review from a team as a code owner October 27, 2026 17:54
@luca-belli
luca-belli merged commit 57ca327 into main Oct 27, 2026
3 checks passed
@luca-belli
luca-belli deleted the docs/component-simplification-plan branch October 27, 2026 18:37
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