{"id":14840,"plugin_id":"plugin_asdk_app_6aa2bcbd58c08191b12c01393c733f39","kind":"skill","collection_source":null,"comparison_source":null,"observed_at":"2026-09-30T23:10:16.719Z","digest":"21203dd2f8a84e6201607d85e91368c786099d7bd8536022b57bff4a30c312dd","against":null,"payload":{"description":"Use when the user asks what has changed, moved, or shifted in the 2026 US midterm race ratings or forecast — \"what's new in the forecast\", \"which races moved\", \"any rating changes lately\". Compares published revisions of the data with ratings_changed.","included_files":[],"name":"whatchanged","skill_md_contents":"---\nname: whatchanged\ndescription: Use when the user asks what has changed, moved, or shifted in the 2026 US midterm race ratings or forecast — \"what's new in the forecast\", \"which races moved\", \"any rating changes lately\". Compares published revisions of the data with ratings_changed.\n---\n\n# Show what moved in the forecast\n\nCall `ratings_changed`. With no arguments it compares the two most recent published\nrevisions. If the user names revisions, pass them as `fromRevision` and `toRevision`.\n\n## Reporting the result\n\n- Lead with the biggest moves. A Safe seat becoming a Toss-up is the news; a one-notch\n  drift is not. The tool already returns them in that order.\n- If nothing moved, say so plainly. That is a real answer, and a common one between\n  revisions.\n\nSay exactly what a change is: **a forecaster revised their view of a race that has not\nhappened.** Never write it as though something happened in that state or district.\n"},"changes":[],"summary":"First saved snapshot. No earlier version is available for comparison.","summary_kind":"deterministic","summary_metadata":{}}