PaperNest pre-release review — September 7, 2026

This pass reviewed scanning, receipt correction and saving, scan settings, receipt browsing, and spending insights. Changes are in the working tree.

Improvements

  • Prefer explicit grand totals and payable amounts over incomplete tax arithmetic.
  • Recognize a total on the line immediately below its label, even when the number resembles a clock time. Keep actual clock-time rows excluded.
  • Exclude suggested tipping tables from payable-amount ranking.
  • Keep manually corrected dates and amounts when rescanning; retain previous values if a later scan returns no suggestion.
  • Ignore late scan callbacks without unlocking a newer scan in progress.
  • Reject nonfinite amounts before they can enter the receipt library.
  • Use shorter scan buttons, clear missing-field prompts, photo guidance, and explicit reminders to check suggestions before saving.
  • Distinguish removing an unsaved draft from deleting a saved receipt.
  • Simplify scan-mode names and fix clipped settings descriptions and switch.

These parsing improvements apply to Smart and the other scan modes. Execution strategies and the existing Accurate default remain unchanged.

Validation

  • 58 unit/regression tests pass, covering OCR, correction preservation, stale callbacks, amount validation, preview gestures, exports, and receipt actions.
  • Desktop Tesseract benchmark on the 10 images in tests/TestRecipts: totals 10/10, merchant candidates 10/10, dates 8/10, unchanged from the baseline. New synthetic regressions cover the additional total-reading failures.
  • Rendered the actual Kivy capture, settings, library, insights, and review/save screens, including review/save at 360 × 640.
  • ./build_android_quick.sh succeeds and verifies the APK signature. Test build: bin/papernest-quick.apk (local test signing key).
  • git diff --check passes.

Remaining release checks

No Android device was connected. Camera, document/PDF picker, Android ML Kit accuracy and Smart-mode timing, platform export permissions, keyboard behavior, and restart behavior need an on-device smoke test with the updated build. Desktop OCR results do not certify Android recognition accuracy.

The sample date misses are a missing date on the Triple O’s receipt and a September-versus-June reading on the Olly Fresco receipt. The latter includes the correct June date among its alternatives. Review remains necessary.

The quick APK is for device testing. A production-signed AAB and the existing Play Console release checklist are still required before publication. This pass did not publish an app or validate current store-policy declarations.