[Mitigated] HTTP/2 Connection Failures with SSLV3_ALERT_HANDSHAKE_FAILURE, primary affecting users in Ukraine

У меня заработало HTTP/2 само по себе.

Good day!

I’ve been experiencing persistent connection issues with Cursor when using Ukrainian IP addresses. The Network Diagnostics tool reports critical SSL Handshake errors (SSLV3_ALERT_HANDSHAKE_FAILURE) for API, Ping, and Chat services. Everything works fine only when a VPN is active, which is not an acceptable long-term solution. I am not willing to downgrade to HTTP/1 as it negatively impacts performance. Paying $20/month for a product that doesn’t function properly in my region is frustrating. Could you please provide an ETA on when this connectivity issue will be resolved for Ukrainian users?

I should also clarify that the issue is intermittent: very rarely (about 5% of the time), it starts working spontaneously without a VPN, but 95% of the time it remains broken. This inconsistency makes it nearly impossible to use the editor for professional work.

Today the issue has returned. There were great few days when everything was working.

Version: 2.4.27 (user setup)
VSCode Version: 1.105.1
Commit: 4f2b772756b8f609e1354b3063de282ccbe7a690
Date: 2026-01-31T21:24:58.143Z
Build Type: Stable
Release Track: Default
Electron: 39.2.7
Chromium: 142.0.7444.235
Node.js: 22.21.1
V8: 14.2.231.21-electron.0
OS: Windows_NT x64 10.0.26200

Hey @lp1641

Last night, we fixed a broken cert that we thought was causing the issue and removed the flag that sent Ukraine traffic elsewhere. We may have caused the issue to come back. Following up with the team.

I am experiencing a similar issue to the user above (Ukrainian IP). For a period of several days (late January), HTTP/2 functioned correctly after a month of malfunctioning. However, the situation has now recurred

Version: 2.4.27 (user setup)
VSCode Version: 1.105.1
Commit: 4f2b772756b8f609e1354b3063de282ccbe7a690
Date: 2026-01-31T21:24:58.143Z
Build Type: Stable
Release Track: Default
Electron: 39.2.7
Chromium: 142.0.7444.235
Node.js: 22.21.1
V8: 14.2.231.21-electron.0
OS: Windows_NT x64 10.0.19045

Hey @lp1641 and @flx

Can you let us know how things are looking now? We implemented another fix and removed the mitigation.

Personally, I am currently encountering error 530. I cannot guarantee that this is true, as I saw this error two hours ago and am seeing it now as well

Ack. 530 is Cloudflare-specific, so definitely related. Letting the team know.

Now it works again.

Handshake Failure issue seems to be not more topical for me since upgrade to Version: 2.4.28 starting this morning. :raising_hands:

cc @condor

@timagixe was it fixed for you with latest version upgrade?

Yes, it was fixed once I have upgraded to 2.4.28 this morning.

HTTP/2 is working for me, according to Network, but when working with the agent, specifically when trying to implement the plan, I encounter an error: Request ID: 4127700f-00bd-4820-9fb8-bfd3a299db71

Спойлер

{“error”:“ERROR_CUSTOM”,“details”:{“title”:“Agent Execution Timed Out”,“detail”:“The agent execution provider did not respond within 16 seconds. This may indicate the extension host is not running or is unresponsive.”,“isRetryable”:false,“shouldShowImmediateError”:true,“additionalInfo”:{},“buttons”:[{“label”:“Reload Window”,“reloadWindow”:{}}],“planChoices”:}}
Agent Execution Timed Out [deadline_exceeded]
ConnectError: [deadline_exceeded] Agent Execution Timed Out
at vscode-file://vscode-app/c:/Users/Admin/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:11431:8256
at async sWf.createExecInstance (vscode-file://vscode-app/c:/Users/Admin/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:11431:6308)
at async dMg (vscode-file://vscode-app/c:/Users/Admin/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:529:549852)
at async _W.execute (vscode-file://vscode-app/c:/Users/Admin/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:9095:16084)
at async l1a.execute (vscode-file://vscode-app/c:/Users/Admin/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:11431:1205)
at async Pcb.execute (vscode-file://vscode-app/c:/Users/Admin/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:34235:14275)
at async jpc.buildComposerRequestContext (vscode-file://vscode-app/c:/Users/Admin/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:34245:3573)
at async jpc.streamFromAgentBackend (vscode-file://vscode-app/c:/Users/Admin/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:34245:5171)
at async jpc.getAgentStreamResponse (vscode-file://vscode-app/c:/Users/Admin/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:34245:8436)
at async FTe.submitChatMaybeAbortCurrent (vscode-file://vscode-app/c:/Users/Admin/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:9170:14623)
at async ips.acceptPlan (vscode-file://vscode-app/c:/Users/Admin/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:731:1916)
at async ips.acceptPlanByUri (vscode-file://vscode-app/c:/Users/Admin/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:731:3003)
at async R (vscode-file://vscode-app/c:/Users/Admin/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:34745:1443)

Thanks, its working good for me now! :handshake:

still doesn’t work from last night…

Request ID: c5f85fc4-6537-449f-bc06-ad38c5960569
{“error”:“ERROR_PROVIDER_ERROR”,“details”:{“title”:“Provider Error”,“detail”:“We’re having trouble connecting to the model provider. This might be temporary - please try again in a moment.”,“isRetryable”:false,“additionalInfo”:{},“buttons”:,“planChoices”:},“isExpected”:true}

Quite different error but same result, Cursor is not usable for me.

  • Switched HTTP Compatibility Mode to HTTP/1.1 - not working
  • Removed Cursor data and reinstalled - not working

Version: 2.5.20 (Universal)
VSCode Version: 1.105.1
Commit: 511523af765daeb1fa69500ab0df5b6524424610
Date: 2026-02-19T20:41:31.942Z
Build Type: Stable
Release Track: Default
Electron: 39.4.0
Chromium: 142.0.7444.265
Node.js: 22.22.0
V8: 14.2.231.22-electron.0
OS: Darwin x64 24.6.0

Cursor Network Diagnostic Results

FAILED (4): API, Ping, Chat, Agent

DNS: Success
Logs:
[2026-02-20T10:47:17.232Z] Host: (removed link due to form rules)
[2026-02-20T10:47:17.232Z] Servers: 8.8.8.8
[2026-02-20T10:47:17.232Z] Resolved to 54.83.52.120 in 5ms
[2026-02-20T10:47:17.261Z] Resolved to 54.83.52.120 in 27ms
[2026-02-20T10:47:17.264Z] Resolved to 54.83.52.120 in 1ms
[2026-02-20T10:47:17.265Z] Resolved to 54.83.52.120 in 1ms
[2026-02-20T10:47:17.268Z] Host: api2.cursor.sh
[2026-02-20T10:47:17.268Z] Servers: system
[2026-02-20T10:47:17.268Z] Resolved to 54.83.52.120, 100.49.30.225, 52.87.23.173, 18.204.58.110, 52.2.163.142, 3.228.77.168, 35.172.204.30, 34.206.218.242 in 2ms
[2026-02-20T10:47:17.268Z] Resolved to 54.83.52.120, 100.49.30.225, 52.87.23.173, 18.204.58.110, 52.2.163.142, 3.228.77.168, 35.172.204.30, 34.206.218.242 in 0ms
[2026-02-20T10:47:17.269Z] Resolved to 54.83.52.120, 100.49.30.225, 52.87.23.173, 18.204.58.110, 52.2.163.142, 3.228.77.168, 35.172.204.30, 34.206.218.242 in 0ms
[2026-02-20T10:47:17.269Z] Resolved to 54.83.52.120, 100.49.30.225, 52.87.23.173, 18.204.58.110, 52.2.163.142, 3.228.77.168, 35.172.204.30, 34.206.218.242 in 0ms
[2026-02-20T10:47:17.269Z] Result: true

SSL: Success
Logs:
[2026-02-20T10:47:17.200Z] Start
[2026-02-20T10:47:17.530Z] URL: (removed link due to form rules)
[2026-02-20T10:47:17.530Z] Status: 200
[2026-02-20T10:47:17.530Z] IP: 54.83.52.120
[2026-02-20T10:47:17.530Z] Issuer: C=US; O=Amazon; CN=Amazon RSA 2048 M01
[2026-02-20T10:47:17.530Z] Name: api2.cursor.sh
[2026-02-20T10:47:17.530Z] AltName: DNS:api2.cursor.sh, DNS:prod.authentication.cursor.sh, DNS:*.api2.cursor.sh
[2026-02-20T10:47:17.530Z] DNS Time: 5ms
[2026-02-20T10:47:17.530Z] Connect Time: 107ms
[2026-02-20T10:47:17.530Z] TLS Time: 106ms
[2026-02-20T10:47:17.530Z] Result: true in 330ms

API: Error: [internal] unable to get issuer certificate
Logs:
[2026-02-20T10:47:17.201Z] Start
[2026-02-20T10:47:17.490Z] Error: ConnectError: [internal] unable to get issuer certificate

Ping: Error: [internal] unable to get issuer certificate
Logs:
[2026-02-20T10:47:17.202Z] Sending ping 1
[2026-02-20T10:47:17.469Z] Error: ConnectError: [internal] unable to get issuer certificate

Chat: Error: [internal] unable to get issuer certificate
Logs:
[2026-02-20T10:47:17.203Z] Starting streamSSE
[2026-02-20T10:47:17.467Z] Error: ConnectError: [internal] unable to get issuer certificate

Agent: Error: [internal] unable to get issuer certificate
Logs:
[2026-02-20T10:47:17.206Z] Starting stream
[2026-02-20T10:47:17.206Z] Pushing first message
[2026-02-20T10:47:17.491Z] Error: ConnectError: [internal] unable to get issuer certificate

Marketplace: Success
Logs:
[2026-02-20T10:47:17.194Z] Host: (removed link due to form rules)
[2026-02-20T10:47:17.372Z] Response in 178ms
[2026-02-20T10:47:17.372Z] Response: 200
[2026-02-20T10:47:17.372Z] Response Type: cors
[2026-02-20T10:47:17.372Z] Server: null
[2026-02-20T10:47:17.372Z] Result: OK in 178ms

Authentication: Success
Logs:
[2026-02-20T10:47:17.195Z] Host: prod.authentication.cursor.sh
[2026-02-20T10:47:17.547Z] Response: 200 in 352ms

Authentication UI: Success
Logs:
[2026-02-20T10:47:17.200Z] DNS lookup: authenticator.cursor.sh
[2026-02-20T10:47:17.233Z] Resolved authenticator.cursor.sh to 104.18.35.233 in 21ms

Cursor Tab: Success
Logs:
[2026-02-20T10:47:17.200Z] DNS lookup: api3.cursor.sh
[2026-02-20T10:47:17.234Z] Resolved api3.cursor.sh to 104.18.19.125 in 21ms

Agent Endpoint: Success
Logs:
[2026-02-20T10:47:17.200Z] DNS lookup: agent.api5.cursor.sh
[2026-02-20T10:47:17.260Z] Resolved agent.api5.cursor.sh to 3.210.163.251 in 53ms

Codebase Indexing: Success
Logs:
[2026-02-20T10:47:17.200Z] DNS lookup: repo42.cursor.sh
[2026-02-20T10:47:17.262Z] Resolved repo42.cursor.sh to 54.82.144.232 in 53ms

Downloads: Success
Logs:
[2026-02-20T10:47:17.199Z] Host: (removed link due to form rules)
[2026-02-20T10:47:17.757Z] Response: 403 in 558ms

CDN: Success
Logs:
[2026-02-20T10:47:17.200Z] Host: (removed link due to form rules)
[2026-02-20T10:47:17.489Z] Response: 404 in 289ms

Going to close this thread since the initial issue is solved. If you’re facing other connectivity issues, please start a new thread!