Skip to content

feat(routes-f): VIN validator and decoder #786

@davedumto

Description

@davedumto

Summary

Validate a vehicle VIN checksum and decode basic info (year, region).

Requirements

  • POST { vin }
  • Validate 17-char format + check digit (position 9)
  • Decode model year from position 10, region from WMI first char
  • Return { valid, year?, region?, normalized }
  • Tests with known valid/invalid VINs

Scope Constraint - READ BEFORE STARTING

All files for this task must live inside app/api/routes-f/. This includes the route handler, helpers/utilities, types, and tests. Do NOT modify, import from, or add files to lib/, utils/, types/, components/, or anywhere else outside app/api/routes-f/. If you need shared logic, duplicate it inside your subfolder. Keeping everything scoped to this folder is intentional - it keeps these tasks independent and mergeable in any order.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions