Commit Graph
5 Commits
Author SHA1 Message Date
andrew 6c5b1c8b30 feat(manual-batch): canonical plate + manual mode as default
ci / smoke (push) Canceled after 0s
- canonical_plate (uppercase alnum, strips space/dot/hyphen) at all plate
  write sites; pretty_plate for render (history, XLSX, operator tile) so
  B 1234 XYZ and B1234XYZ are one plate everywhere
- group_dos_by_plate compares canonical plates -> no false mixed_plates
- warn-only (never blocking) plate format hint in operator + monitoring modals
- batch.default_mode: manual (auto merged truck loads when a sack sat in the
  counting ROI); operator banner explains plate -> start -> stop
- docs + AGENTS known-limitation note; 85 tests pass
2026-10-05 09:36:32 +07:00
andrew 7ad995d8d1 feat(manual-batch): require plate number at manual mode start
ci / smoke (push) Canceled after 0s
Legacy manual batch start locked until plate entered:
- POST /api/batch/start manual branch returns 400 missing_plate when
  plate empty (strip + uppercase, no format regex)
- operator + monitoring start modals gain required plate input,
  confirm button disabled until filled
- operator plate tile also shows for manual batches (was do_manual only)
- do_manual unchanged (plate from DOs)
2026-10-02 15:10:13 +07:00
andrew d3357fccef fix: gross-based batch discard, direction-correct event logs, wire CSV logger
ci / smoke (push) Canceled after 0s
2026-09-28 12:08:37 +07:00
andrew fbba169507 feat: RapidOCR default OCR engine, office-only ocr_engine, drop operator toggle
ci / smoke (push) Canceled after 0s
2026-09-25 16:18:41 +07:00
andrew 0efcfa45b8 feat: DO-gated manual batch mode (auto default, office-only switches)
ci / smoke (push) Canceled after 0s
2026-09-24 15:45:12 +07:00