Dropdowns pre-populated from NHTSA decode, with NHTSA reference hints for unmatched fields
Removed "Edit Manually" button -- fields are directly editable in the modal
Cascade behavior works: changing Make reloads Models, changing Model reloads Trims, etc.
Engine and Transmission follow the same editable dropdown pattern
Changes
File
Change
vehicles.types.ts
Added VinReviewSelections interface
VinOcrReviewModal.tsx
Major rewrite: OCR confidence + editable cascade dropdowns
VehicleForm.tsx
Updated to receive modal selections via VinReviewSelections
Acceptance Criteria
Confidence score reflects OCR accuracy of the VIN string only
Confidence does NOT factor in Make/Model/Trim matching success
Make/Model/Trim are presented as editable dropdown selectors after VIN decode
Dropdowns are pre-populated with decoded values but immediately changeable
Cascade behavior works (changing Make reloads Models, etc.)
Engine and Transmission follow the same editable dropdown pattern
No "Edit" button required to change Make/Model/Trim values
Works on both mobile and desktop viewports
Existing VIN camera capture flow is not regressed
Test Plan
Verify VIN camera capture still works end-to-end
Verify confidence shows OCR percentage (not per-field match quality)
Verify decoded fields appear as editable dropdowns in review modal
Verify cascade behavior: change Make -> Models reload
Verify NHTSA hints appear for unmatched fields
Verify Accept passes selected values to form correctly
Test on mobile (320px, 768px) and desktop (1920px) viewports
Verify manual VIN decode button still works separately
Fixes #125
## Summary
- VIN OCR confidence now reflects recognition accuracy only (percentage), not per-field matching quality
- VIN review modal replaces read-only decoded fields with editable cascade dropdown selectors
- Dropdowns pre-populated from NHTSA decode, with NHTSA reference hints for unmatched fields
- Removed "Edit Manually" button -- fields are directly editable in the modal
- Cascade behavior works: changing Make reloads Models, changing Model reloads Trims, etc.
- Engine and Transmission follow the same editable dropdown pattern
## Changes
| File | Change |
|------|--------|
| `vehicles.types.ts` | Added `VinReviewSelections` interface |
| `VinOcrReviewModal.tsx` | Major rewrite: OCR confidence + editable cascade dropdowns |
| `VehicleForm.tsx` | Updated to receive modal selections via `VinReviewSelections` |
## Acceptance Criteria
- [x] Confidence score reflects OCR accuracy of the VIN string only
- [x] Confidence does NOT factor in Make/Model/Trim matching success
- [x] Make/Model/Trim are presented as editable dropdown selectors after VIN decode
- [x] Dropdowns are pre-populated with decoded values but immediately changeable
- [x] Cascade behavior works (changing Make reloads Models, etc.)
- [x] Engine and Transmission follow the same editable dropdown pattern
- [x] No "Edit" button required to change Make/Model/Trim values
- [x] Works on both mobile and desktop viewports
- [x] Existing VIN camera capture flow is not regressed
## Test Plan
- [ ] Verify VIN camera capture still works end-to-end
- [ ] Verify confidence shows OCR percentage (not per-field match quality)
- [ ] Verify decoded fields appear as editable dropdowns in review modal
- [ ] Verify cascade behavior: change Make -> Models reload
- [ ] Verify NHTSA hints appear for unmatched fields
- [ ] Verify Accept passes selected values to form correctly
- [ ] Test on mobile (320px, 768px) and desktop (1920px) viewports
- [ ] Verify manual VIN decode button still works separately
VIN OCR confidence now reflects recognition accuracy only (not match quality).
Review modal replaces read-only fields with editable cascade dropdowns
pre-populated from NHTSA decode, with NHTSA reference hints for unmatched fields.
Co-Authored-By: Claude Opus 4.6 <[email protected]>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Fixes #125
Summary
Changes
vehicles.types.tsVinReviewSelectionsinterfaceVinOcrReviewModal.tsxVehicleForm.tsxVinReviewSelectionsAcceptance Criteria
Test Plan