Return only new or changed records for the same state key. Compared: every output field (price, rating, review count, availability, title, location, hotel rates and so on). Excluded by default (kept in the output, never make a row UPDATED): detailStatus, sourceMode, operation, booked, image URL lists, and scraped_at; the snake_case twin fields (activity_id, activity_url, sell_price, price_from, price_to, city_name, country_name, image_url, review_count, booked_count) because the source fields they copy (price, marketPrice, reviewCount, url, location, country) are compared; and latitude, longitude and cityId as derived or volatile values. UPDATED rows list the differing fields in changedFields.