Latch checkpoints whose visual criteria are all reported met by a judge verdict
(keyed by criterion text). Call after each judge evaluation in checkpoint mode.
Mutates and returns latches.
Scalar fallback: when the verdict carries NO per-criterion breakdown, the
verdict's Done decides. LLMJudge.applyRubric leaves CriteriaVerdicts
undefined whenever the model omits or malforms the criteria array — a real LLM
failure mode — and without this fallback a judge that plainly said "done" would
latch nothing and fail the tour. In checkpoint mode the judge is only ever asked
about the PENDING visual criteria, so Done is precisely an assertion that
those are met. This also matches the trust the scalar-rubric replay path already
places in Done; the per-criterion breakdown is still preferred when present.
onlyCheckpoint narrows the pass to a single section — required whenever the
judge call itself was narrowed, so a scalar Done cannot vouch for sections
the judge was never shown.
Latch checkpoints whose visual criteria are all reported met by a judge verdict (keyed by criterion text). Call after each judge evaluation in checkpoint mode. Mutates and returns
latches.Scalar fallback: when the verdict carries NO per-criterion breakdown, the verdict's
Donedecides.LLMJudge.applyRubricleavesCriteriaVerdictsundefined whenever the model omits or malforms thecriteriaarray — a real LLM failure mode — and without this fallback a judge that plainly said "done" would latch nothing and fail the tour. In checkpoint mode the judge is only ever asked about the PENDING visual criteria, soDoneis precisely an assertion that those are met. This also matches the trust the scalar-rubric replay path already places inDone; the per-criterion breakdown is still preferred when present.onlyCheckpointnarrows the pass to a single section — required whenever the judge call itself was narrowed, so a scalarDonecannot vouch for sections the judge was never shown.