When a product no longer appears in a successful scrape for its retailer+caliber, mark it out of stock. After each scrape cycle, hard delete any product whose last_seen_at is older than 30 days (snapshots cascade via FK). A zero-result scrape leaves existing listings alone so a parse failure or transient site glitch can't nuke the catalog. |
||
|---|---|---|
| .. | ||
| scraping | ||
| catalog_test.exs | ||
| prices_test.exs | ||