Mistake Bank
Use this subskill when a recognized result must become canonical local data.
Core contract:
- Persist one JSON file per subject under the mistake bank.
- Keep
SourceDocumentstate separate from subject mistake records. - Keep
is_wrong=falserecords for audit, but exclude them from final stats and practice by default. - Generate review reports from canonical data; do not persist separate long-lived review tables.
- Allocate ids and write JSON only through
scripts/allocate_id.pyandscripts/json_store.py; seereferences/schema.md. - After every successful
scripts/intake_recognition.py ingest, present the returnedreview_reportas the next skill step for user review. Focus the user onneeds_review=true, low-confidence answers, ambiguous teacher marks, and crop screenshots. If the user does not review, leave the source status asprocessed; onlyapply-review --confirmmoves it toconfirmed. - Use
scripts/intake_recognition.py review-reportto regenerate the same derived report,apply-reviewfor user corrections/confirmation, andrepair-cropsfor script-owned screenshot bbox fixes.