{"event":"EU_DST_SPRING_2026","transition_utc":"2026-03-29T01:00:00Z","expires_at":"2026-03-29T02:00:00Z","description":"European clocks spring forward on Sunday March 29, 2026. XLON, XPAR, XSWX, XMIL, XHEL, XSTO, XIST shift +1h. Agents using hardcoded UTC offsets will compute incorrect market hours starting Monday March 30.","affected_exchanges":[{"mic":"XLON","name":"London Stock Exchange","timezone":"Europe/London","shift":"GMT → BST","naive_agent_open_utc":"08:00","actual_open_utc_after_dst":"07:00","error_minutes":60,"risk":"Agent using hardcoded UTC+0 will believe market opens at 08:00 UTC. It actually opens at 07:00 UTC after DST. 60-minute window of incorrect state."},{"mic":"XPAR","name":"Euronext Paris","timezone":"Europe/Paris","shift":"CET → CEST","naive_agent_open_utc":"09:00","actual_open_utc_after_dst":"08:00","error_minutes":60,"risk":"Same 60-minute error window."},{"mic":"XSWX","name":"SIX Swiss Exchange","timezone":"Europe/Zurich","shift":"CET → CEST","naive_agent_open_utc":"09:00","actual_open_utc_after_dst":"08:00","error_minutes":60,"risk":"Same 60-minute error window."},{"mic":"XMIL","name":"Borsa Italiana","timezone":"Europe/Rome","shift":"CET → CEST","naive_agent_open_utc":"09:00","actual_open_utc_after_dst":"08:00","error_minutes":60,"risk":"Same 60-minute error window."},{"mic":"XHEL","name":"Nasdaq Helsinki","timezone":"Europe/Helsinki","shift":"EET → EEST","naive_agent_open_utc":"10:00","actual_open_utc_after_dst":"09:00","error_minutes":60,"risk":"Same 60-minute error window."},{"mic":"XSTO","name":"Nasdaq Stockholm","timezone":"Europe/Stockholm","shift":"CET → CEST","naive_agent_open_utc":"09:00","actual_open_utc_after_dst":"08:00","error_minutes":60,"risk":"Same 60-minute error window."},{"mic":"XIST","name":"Borsa Istanbul","timezone":"Europe/Istanbul","shift":"TRT (no DST)","naive_agent_open_utc":"07:00","actual_open_utc_after_dst":"07:00","error_minutes":0,"risk":"Turkey does not observe DST. No change. Included for completeness."}],"risk_window_minutes":60,"us_europe_dst_gap_note":"The US transitioned to DST on March 8. Europe transitions March 29. During the 21-day gap (March 8-29), NY/London offset compressed from 5 hours to 4 hours. Cross-market agents using hardcoded offsets had incorrect overlap windows for 21 days.","verified_schedule":null,"sma_protocol_note":"Headless Oracle receipts use IANA timezone identifiers (Europe/London, not UTC+0). DST is handled automatically. Agents using SMA receipts are immune to this vulnerability.","note":"SMA = Signed Market Attestation. Not to be confused with Simple Moving Average."}