# Changelog of NHTSA VIN Decoder: Bulk Make, Model, Year & Specs (vPIC) (`fecklesspleb/nhtsa-vin-decoder`) Actor

- **URL**: https://apify.com/fecklesspleb/nhtsa-vin-decoder/changelog.md
- **Full Actor documentation**: https://apify.com/fecklesspleb/nhtsa-vin-decoder.md

## Changelog

### 2026-10-30, later the same evening (actor.json version unchanged: 0.1)

- `tests/test_pricing.py::test_readme_price` now matches the publisher's reviewed README.md as it is (README.md not
  edited). It checks only facts the README must state, derived from the code and `pricing.json`: the
  per-VIN price ($0.001), the per-1,000 price ($1), "no start fee", and what `{}` decodes and costs
  (`len(SAMPLE_VINS)` = 6 sample VIN patterns, $0.006). Markdown emphasis is ignored, the word "ESTIMATED" is no longer required, and any other per-unit price
  in the README fails the test. The suite passes fully again (the test had failed since the publisher's README of
  2026-10-30 21:46 ET).
- Files changed: `tests/test_pricing.py` (that test, a `_plain()` helper, module docstring), `CHANGELOG.md`.

### 2026-10-30 (actor.json version unchanged: 0.1)

- Corrected the spec-count claim: the `main.py` docstring said "~140 other vPIC variables", but vPIC leaves most of
  its ~140 variables empty and real runs return about 5-15 non-empty spec fields per VIN (local test datasets in
  `storage-tests/`: `specCount` 1-35, median 3, 130 rows). No code or output change.
- Files changed:
  - `my_actor/main.py`: module docstring.
  - `.actor/input_schema.json`: `includeSpecs` title "Include all specs" -> "Include other non-empty specs" and
    description now says most VINs have about 5-15 such fields.
  - `CHANGELOG.md`: this entry.
- Checked, no change needed: `.actor/actor.json` (says "other non-empty vPIC specs", no count), the 0.1 entry below.
  README.md not touched.

### 0.1 (2026-10-29, not published)

- First version: batch VIN decoding (50 per request) via the keyless NHTSA vPIC API, partial-VIN patterns, model-year
  hints, typed core fields, `specs` object, clean/partial/failed status, input validation, PPE per decoded VIN.
