This commit is contained in:
Adal 2026-09-16 13:11:22 -07:00
parent c9054e34b3
commit b09120189e

View file

@ -1,23 +1,3 @@
# Invoice Parser (desktop)
Windows desktop replacement for the `invoiceProject` Classic ASP web app.
One exe: WPF window hosting WebView2, an embedded local web server (loopback
only), and a single background worker that parses queued invoices with the
configured LLM. No IIS, no browser needed for parsing.
## What changed vs the web app
- Upload -> prep -> parse is fully automatic. Drop files on the dashboard;
the server extracts the PDF text layer (PdfPig) or renders pages (PDFium),
queues the invoice, and the in-process worker calls the LLM. The UI gets
live updates over SSE - no polling, no "open it and press Scan Invoice".
- Scanned PDFs no longer dead-end: pages are rendered server-side on demand.
- One worker owns the queue (replaces pending_process.asp, parse_queue.ps1
and the browser-side parser), so the claim/steal/stale logic is gone.
- All SQL is parameterized.
- `pending/{id}/state.json` keeps the same format - existing drafts can be
migrated by copying `invoiceProject\pending\*` into this app's `pending\`.
## Configuration (appsettings.json next to the exe)
Secrets live in `appsettings.local.json` (same shape, git-ignored, loaded on