f987e94fed
chore: verify notification bell functionality and improve empty state (refs #180)
Eric Gullickson
2026-02-13 20:02:56 -06:00
da4cd858fa
chore: use display name instead of email in header greeting (refs #177)
Eric Gullickson
2026-02-13 20:01:56 -06:00
553877bfc6
chore: add upload date and file type icon to document cards (refs #172)
Eric Gullickson
2026-02-13 20:00:49 -06:00
daa0cd072e
chore: remove Insurance default bias from Add Document modal (refs #175)
Eric Gullickson
2026-02-13 19:56:34 -06:00
afd4583450
chore: show service type in maintenance schedule names for differentiation (refs #174)
Eric Gullickson
2026-02-13 19:55:25 -06:00
f03cd420ef
chore: add Maintenance page title and remove duplicate vehicle dropdown (refs #169)
Eric Gullickson
2026-02-13 19:53:13 -06:00
e4be744643
chore: restructure Fuel Logs to list-first with add dialog (refs #168)
Eric Gullickson
2026-02-13 19:49:46 -06:00
f2b20aab1a
feat: add recent activity feed to dashboard (refs #166)
Eric Gullickson
2026-02-13 19:48:06 -06:00
accb0533c6
feat: add call-to-action links in zero-state dashboard stats cards (refs #179)
Eric Gullickson
2026-02-13 19:45:14 -06:00
0dc273d238
chore: remove dashboard auto-refresh footer text (refs #178)
Eric Gullickson
2026-02-13 19:43:57 -06:00
56be3ed348
chore: add Year Make Model subtitle to vehicle cards and hide empty VIN (refs #167)
Eric Gullickson
2026-02-13 19:41:23 -06:00
bc9c386300
chore: differentiate Stations icon from Fuel Logs in bottom nav (refs #181)
Eric Gullickson
2026-02-13 19:40:09 -06:00
7a74c7f81f
chore: remove redundant Stations from mobile More menu (refs #173)
Eric Gullickson
2026-02-13 19:39:16 -06:00
73976a7356
fix: add Maintenance to mobile More menu (refs #164)
Eric Gullickson
2026-02-13 19:38:21 -06:00
0e8c6070ef
fix: sync mobile routing with browser URL for direct navigation (refs #163)
Eric Gullickson
2026-02-13 19:35:53 -06:00
325cf08df0
fix: promote vehicle display utils to core with null safety (refs #165)
Eric Gullickson
2026-02-13 19:32:40 -06:00
75e4660c58
Merge branch 'main' of 172.30.1.72:egullickson/motovaultpro
Eric Gullickson
2026-02-13 16:28:52 -06:00
ff8b04f146
chore: claude updates
Eric Gullickson
2026-02-13 16:28:49 -06:00
f0b1e57089
Merge pull request 'feat: Maintenance Receipt Upload with OCR Auto-populate (#16)' (#161) from issue-16-maintenance-receipt-upload-ocr into main
egullickson2026-02-13 22:19:44 +00:00
1bf550ae9b
feat: add pending vehicle association resolution UI (refs #160)
Eric Gullickson
2026-02-13 09:39:03 -06:00
8bcac80818
feat: add email ingestion notification handler with logging (refs #159)
Eric Gullickson
2026-02-13 09:27:37 -06:00
fce60759cf
feat: add vehicle association and record creation (refs #158)
Eric Gullickson
2026-02-13 08:53:08 -06:00
d9a40f7d37
feat: add receipt classifier and OCR integration (refs #157)
Eric Gullickson
2026-02-13 08:44:03 -06:00
e7f3728771
feat: add email ingestion processing service and repository (refs #156)
Eric Gullickson
2026-02-13 08:32:10 -06:00
2462fff34d
feat: add Resend inbound webhook endpoint and client (refs #155)
Eric Gullickson
2026-02-13 08:22:25 -06:00
877f844be6
feat: add email ingestion database schema and types (refs #154)
Eric Gullickson
2026-02-12 22:01:17 -06:00
06ff8101dc
feat: add form integration, tier gating, and receipt display (refs #153)
Eric Gullickson
2026-02-12 21:40:27 -06:00
91166b021c
feat: add maintenance receipt OCR hook and review modal (refs #152)
Eric Gullickson
2026-02-12 21:31:48 -06:00
88d23d2745
feat: add backend migration and API for maintenance receipt linking (refs #151)
Eric Gullickson
2026-02-12 21:24:24 -06:00
90401dc1ba
feat: add maintenance receipt extraction pipeline with Gemini + regex (refs #150)
Eric Gullickson
2026-02-12 21:14:13 -06:00
0e97128a31
Merge pull request 'feat: Expand OCR with fuel receipt scanning and maintenance extraction (#129)' (#147) from issue-129-expand-ocr-fuel-receipt-maintenance into main
egullickson2026-02-13 02:25:54 +00:00
80ee2faed8
fix: Replace circle toggle with MUI Switch pill style (refs #148)
Eric Gullickson
2026-02-12 20:14:01 -06:00
6bb2c575b4
fix: Wire vehicleId into maintenance page to display schedules (refs #148)
Eric Gullickson
2026-02-12 20:01:42 -06:00
59e7f4053a
fix: Data validation for scheduled maintenance
Eric Gullickson
2026-02-11 20:47:46 -06:00
33b489d526
fix: Update auto schedule creation
Eric Gullickson
2026-02-11 20:29:33 -06:00
55a7bcc874
fix: Manual polling typo
Eric Gullickson
2026-02-11 20:06:03 -06:00
a078962d3f
fix: Manual scanning
Eric Gullickson
2026-02-11 19:57:32 -06:00
b97d226d44
fix: Variables
Eric Gullickson
2026-02-11 19:42:42 -06:00
48993eb311
docs: fix receipt tier gating and add feature tier refs to core docs (refs #146)
Eric Gullickson
2026-02-11 15:22:38 -06:00
11f52258db
feat: add 410 error handling, progress messages, touch targets, and tests (refs #145)
Eric Gullickson
2026-02-11 15:12:29 -06:00
ca33f8ad9d
feat: add PDF magic bytes validation, 410 Gone, and manual extraction tests (refs #144)
Eric Gullickson
2026-02-11 14:55:06 -06:00
209425a908
feat: rewrite ManualExtractor progress to spec-aligned 10/50/95/100 pattern (refs #143)
Eric Gullickson
2026-02-11 14:40:11 -06:00
f9a650a4d7
feat: add traceback logging and spec-aligned error message to GeminiEngine (refs #142)
Eric Gullickson
2026-02-11 14:35:06 -06:00
4e5da4782f
feat: add 5s timeout and warning log for station name search (refs #141)
Eric Gullickson
2026-02-11 13:03:35 -06:00
c79b610145
feat: enforce 44px minimum touch targets for receipt OCR components (refs #140)
Eric Gullickson
2026-02-11 11:33:57 -06:00
88c2d7fbcd
feat: add receipt proxy tier guard, 422 forwarding, and tests (refs #139)
Eric Gullickson
2026-02-11 11:20:58 -06:00
e98b45eb3a
Merge pull request 'feat: Google Vision primary OCR with Auth0 WIF and monthly usage cap (#127)' (#128) from issue-127-google-vision-primary-ocr into main
egullickson2026-02-11 01:46:20 +00:00
91dc847f56
fix: use correct Auth0 US region domain in WIF token script (refs #127)
Eric Gullickson
2026-02-10 18:44:30 -06:00
7bba28154d
fix: capture Auth0 error response in WIF token script (refs #127)
Eric Gullickson
2026-02-10 18:41:34 -06:00
a416f76c21
fix: copy WIF config to deploy path in CI/CD workflows (refs #127)
Eric Gullickson
2026-02-10 18:34:41 -06:00
e6dd7492a1
test: add monthly limit, counter, and cloud-primary engine tests (refs #127)
Eric Gullickson
2026-02-09 20:56:51 -06:00
f4a28d009f
feat: update all Docker Compose files for Vision primary with WIF auth (refs #127)
Eric Gullickson
2026-02-09 20:53:44 -06:00
5e4848c4e2
feat: add Auth0 OCR secrets to injection script and CI/CD workflows (refs #127)
Eric Gullickson
2026-02-09 20:52:29 -06:00
9209739e75
feat: add Auth0 WIF token script and update Dockerfile (refs #127)
Eric Gullickson
2026-02-09 20:51:30 -06:00
4abd7d8d5b
feat: add Vision monthly cap, WIF auth, and cloud-primary hybrid engine (refs #127)
Eric Gullickson
2026-02-09 20:50:02 -06:00
4412700e12
fix: use valid Redis log levels and add log level comments to all containers
Eric Gullickson
2026-02-08 21:27:33 -06:00
c6b99ab29a
fix: Postgres Fixes for Prod
Eric Gullickson
2026-02-08 20:57:49 -06:00
8248b1a732
Merge pull request 'feat: Improve VIN decode confidence reporting and make/model/trim editability (#125)' (#126) from issue-125-improve-vin-confidence-editability into main
egullickson2026-02-09 01:40:14 +00:00
e9020dbb2f
feat: improve VIN confidence reporting and editable review dropdowns (refs #125)
Eric Gullickson
2026-02-08 19:24:27 -06:00
e7471d5c27
fix: Python Image Pinning
Eric Gullickson
2026-02-08 19:11:13 -06:00
2c3e432fcf
fix: Build errors with python3.13
Eric Gullickson
2026-02-08 18:54:49 -06:00
ee123a2ffd
Merge pull request 'feat: Improve VIN photo capture camera crop (#123)' (#124) from issue-123-improve-vin-camera-crop into main
egullickson2026-02-09 00:36:43 +00:00
1ff1931864
fix: re-request camera stream on retake when tracks are inactive (refs #123)
Eric Gullickson
2026-02-07 20:26:37 -06:00
efc55cd3db
feat: improve VIN camera crop overlay-to-crop alignment and touch targets (refs #123)
Eric Gullickson
2026-02-07 20:05:40 -06:00
dd77cb3836
Merge pull request 'feat: Improve OCR process - replace Tesseract with PaddleOCR (#115)' (#122) from issue-115-improve-ocr-paddleocr into main
egullickson2026-02-08 01:13:33 +00:00
9a2b12c5dc
fix: No matches
Eric Gullickson
2026-02-07 16:35:28 -06:00
3adbb10ff6
fix: OCR Timout still
Eric Gullickson
2026-02-07 16:26:10 -06:00
fcffb0bb43
fix: PaddleOCR timeout
Eric Gullickson
2026-02-07 16:18:14 -06:00
9d2d4e57b7
fix: PaddleOCR error
Eric Gullickson
2026-02-07 16:12:07 -06:00
0499c902a8
fix: Crop box broken
Eric Gullickson
2026-02-07 16:00:23 -06:00
dab4a3bdf3
fix: PaddleOCR error
Eric Gullickson
2026-02-07 15:51:04 -06:00
639ca117f1
fix: Update PaddleOCR API
Eric Gullickson
2026-02-07 14:44:06 -06:00
b9fe222f12
fix: Build errors and tesseract removal
Eric Gullickson
2026-02-07 12:12:04 -06:00
cf114fad3c
fix: build errors for OpenCV
Eric Gullickson
2026-02-07 11:58:00 -06:00
47c5676498
chore: update OCR tests and documentation (refs #121)
Eric Gullickson
2026-02-07 11:42:51 -06:00
1e96baca6f
fix: workflow contract
Eric Gullickson
2026-02-07 11:32:36 -06:00
3c1a090ae3
fix: resolve crop tool regression with stale ref and aspect ratio minSize (refs #120)
Eric Gullickson
2026-02-07 11:29:16 -06:00
9b6417379b
chore: update Docker and compose files for PaddleOCR engine (refs #119)
Eric Gullickson
2026-02-07 11:17:44 -06:00
4ef942cb9d
feat: add optional Google Vision cloud fallback engine (refs #118)
Eric Gullickson
2026-02-07 11:12:08 -06:00
013fb0c67a
feat: migrate VIN/receipt extractors and OCR service to engine abstraction (refs #117)
Eric Gullickson
2026-02-07 10:56:27 -06:00
6b0c18a41c
Merge pull request 'fix: VIN OCR scanning fails with "No VIN Pattern found" on all images (#113)' (#114) from issue-113-fix-vin-ocr-scanning into main
egullickson2026-02-07 15:47:35 +00:00
75ce316aa5
chore: Change crop to remove locked aspect ratio
Eric Gullickson
2026-02-06 22:15:39 -06:00
e4336ce9da
fix: extract VIN from noisy OCR via sliding window + char deletion (refs #113)
Eric Gullickson
2026-02-06 22:00:07 -06:00
432b3bda36
fix: remove char whitelist incompatible with Tesseract LSTM (refs #113)
Eric Gullickson
2026-02-06 21:52:08 -06:00
ae5221c759
fix: invert min-channel so Tesseract gets dark-on-light text (refs #113)
Eric Gullickson
2026-02-06 21:39:48 -06:00
63c027a454
fix: always use min-channel and add grayscale-only OCR path (refs #113)
Eric Gullickson
2026-02-06 21:32:52 -06:00
a07ec324fe
fix: use min-channel grayscale and morphological cleanup for VIN OCR (refs #113)
Eric Gullickson
2026-02-06 21:23:43 -06:00
0de34983bb
fix: use best-contrast color channel for VIN preprocessing (refs #113)
Eric Gullickson
2026-02-06 21:14:56 -06:00