0.2.2: судья отличает правки воркера от грязи, которая была до него #2

Merged
anton merged 2 commits from fix/dirty-tree-evidence into main 2026-09-20 17:46:08 +03:00

2 Commits

Author SHA1 Message Date
Claude Code (Gitea Agent) 4cc6a3fb7a 0.2.2: судья отличает правки воркера от грязи, которая была до него
Коммит нашёлся неотправленным в старом чекауте ~/pro/claude-plugins-root/foreman-supervisor
(локальный c831b1c, в origin его не было — версии 0.2.0/0.2.1 ушли из другого чекаута мимо него).
Перенесён сюда cherry-pick'ом, чтобы знание не потерялось вместе с тем каталогом.

Суть правки автора: на первом реальном задании дерево держало 19 чужих незакоммиченных файлов,
судья принял их за свидетельства этого прогона и на 20-й секунде дал off track 85 % / needs human
80 % — политика остановила воркера, который ещё ничего не сделал. Прогрев не спасал: грязное
дерево считалось свидетельством.

Прогон: 19 passed.
2026-09-20 17:45:50 +03:00
Dreamcore 1b3b050919 judge: tell the worker's changes from dirt that was already there
Found on the first real job (the investigation dataset): its tree held 19 unrelated
uncommitted files — someone else's webfetch cache and an edit in progress. The judge
was shown them as the evidence of this run, so at 20 seconds it reported work off
track 85% / needs human 80% and the policy stopped a worker that had done nothing
wrong yet. Warm-up did not save it either, because a dirty tree counted as evidence.

Now the first assessment records the tree's baseline, and only files appearing after
it count as this run's work. The prompt states both sets separately, so the judge can
see what the worker did and what it merely inherited.

Also renames the evidence field to changed_by_this_run — the old name invited exactly
the reading that caused the false stop.

14 offline tests pass, including the two new ones for this case.

Refs kotkan/dreamcore-mp#179

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-20 17:45:31 +03:00