# Changelog of Autovit Romania Car Scraper (`devilscrapes/autovit-romania-cars`) Actor

- **URL**: https://apify.com/devilscrapes/autovit-romania-cars/changelog.md
- **Full Actor documentation**: https://apify.com/devilscrapes/autovit-romania-cars.md

## Autovit Romania Car Scraper — Changelog

### 0.3.0 — 2026-07-28

- Re-applied the residential-proxy guard to `main` — the CEO daily report
  flagged the live Actor as failing customer runs with HTTP 403 from
  autovit.ro. Investigation found `main` had never actually merged the
  `0.2.0` guard below: the Actor source only ever existed on the
  `fix/autovit-romania-cars-residential-guard` branch, so the live build
  on Apify Store was silently serving the pre-guard `0.1` behaviour
  (unforced proxy group, no hard-fail on missing RESIDENTIAL).
- No code changes beyond restoring the already-QA-passed `0.2.x` guard
  logic (`_resolve_proxy_url` / `_ensure_residential` in `src/main.py`)
  and its input-schema defaults onto the actor tree now committed to
  `main`. Full local suite (ruff, pyright, pytest, prefill verifier)
  re-verified green before this commit.

### 0.2.0 — 2026-06-10

- Residential proxy guard: `_resolve_proxy_url` now always forces
  `apifyProxyGroups=["RESIDENTIAL"]` and raises `RuntimeError` (instead of
  falling back to direct routing) when the proxy configuration is unavailable.
  autovit.ro is DataDome-protected — datacenter IPs are hard-blocked.
- `_ensure_residential` helper (pure function) handles the group injection;
  `apifyProxyCountry` is preserved across the rewrite.
- New `tests/test_proxy_guard.py`: 10 unit tests covering forced-group,
  country-code preservation, raises-on-None, raises-on-unavailable-proxy.
- README Limitations updated: residential is now required, not just recommended.
- Build 0.2.1 cloud QA PASS: runId=gvqoFLPJatNSlcQFb, 5/5 rows, EUR, enrichment OK.

### 0.1.0 — 2026-06-05

- First cloud publish (apify push v0.1).
- Adevinta/Next.js `__NEXT_DATA__` wire contract (`props.pageProps.urqlState` → `advertSearch.edges`) — byte-identical to otomoto-poland-cars.
- curl-cffi + RESIDENTIAL proxy DataDome bypass confirmed in cloud QA (5/5 rows, EUR currency, Romanian descriptions).
- 26-field ResultRow: listing\_id, listing\_url, title, make, model, version, year, price, currency, mileage\_km, fuel\_type, transmission, gearbox, engine\_power\_hp, engine\_size\_cc, body\_type, color, first\_registration, location, region, seller\_type, seller\_name, photo\_urls, description, posted\_date, scraped\_at.
- Detail enrichment (gearbox, transmission, body\_type, color, description) on by default; toggle off to halve request count.

### 0.1.0 — 2026-05-15

- Initial scaffolded release.
