Done-Means-Checkable Makes Your AI Write the Grading Rubric Before It Does the Work

Мій варіант: залежно від ставок, але за замовчуванням я не довіряю “виглядає правильно” без жодної перевірки.

– **Gut feel:** тільки для речей, які нічого не вирішують. Для звіту, який хтось прочитає й на основі якого щось зробить, це не годиться.
– **Spot-check однієї цифри:** дешево, але перевіряє лише ту одну цифру. Розбіжність 360 проти 380 може сидіти в сусідньому рядку.
– **Перевивести ключові числа:** мій дефолт. Підсумки, суми, відсотки, які йдуть у рішення, перераховую сам. Це знаходить більшість реальних помилок і коштує одного кроку.
– **Другий рев’ювер у чистому контексті:** корисний для логіки й формулювань, але арифметику він теж може пропустити. Якщо ставки високі, я б брав його на додаток до перерахунку, а не замість.
– **Просто діяти:** тільки коли дію можна легко відкотити.

Де я б поставив лінію для обходу: перевірку пропускаю тоді, коли результат нікуди не йде (одноразова відповідь, яку ти сам побачиш) або коли зміна лежить у diff, який видно й можна відкотити. Слова “just” чи “quick” я б не використовував як критерій. Вони описують зусилля користувача, а не ставку. Тому “швидко звір цей підсумок з CSV” має запускати перевірку: це одна сума по одній колонці, вона коштує майже нічого. Правило має спрацьовувати за двома речами: чи хтось діятиме на основі результату, і чи існує дешева перевірка. Якщо обидва відповіді “так”, обходу не буває незалежно від формулювання.

Найважливіше, на мою думку, те, про що ти згадав у коментарі: не можна послаблювати критерії після того, як результат їх не пройшов. Це найлегше зламати тихо, і саме на цьому більшість таких налаштувань і ламаються.

А ти де б ставив межу?

Frequently Asked Questions

Q: Should ‘quick’ really skip the check?

Commenters split on this. The skill as written bypasses the check when a ceiling word like ‘quick’ shows up, which keeps small tasks fast. One commenter points out that ‘quickly check whether this revenue summary matches the CSV’ still asks for a check, and summing one column can take less work than explaining why it was skipped. Their fix is to let ‘quick’ shrink the check to the smallest relevant one instead of dropping it, then test that rule on ‘draft a quick friendly email’ so simple drafts stay simple.

Q: What should a criterion say the output must NOT contain?

Most setups only check that something is present, and models are much worse at spotting extras that should not be there. One commenter suggests adding at least one ‘must not contain’ criterion, such as no number without a source, or no recommendation that breaks a constraint in the brief. A fresh-context reviewer given that explicit list catches a different class of errors. It costs one line in the criteria, so it is an easy addition.

Q: How do I know the judge is catching anything?

One commenter suggests logging how often the independent judge disagrees with the self-check. If the two almost never disagree, the criteria are probably too easy, and the judge is just agreeing with a check that was already lenient. Look at that rate every few weeks and tighten the criteria whenever it stays near zero.

done-means-checkable skill: write down what “right” means before it does work that has no tests
by u/Parking-Kangaroo-63 in PromptEngineering

Scroll to Top