From f1079574e3d438001baa6be466d7af83dbcaca95 Mon Sep 17 00:00:00 2001 From: Vinay Keerthi <11478411+stonecharioteer@users.noreply.github.com> Date: Wed, 26 Nov 2025 22:38:26 +0530 Subject: [PATCH] fix: Disable SSL verification for LINE webhooks in development (#12960) ## Summary - Fixes SSL certificate verification errors when testing LINE webhooks in development environments - Configures the LINE Bot API client to skip SSL verification only in development mode ## Background When testing LINE webhooks locally on macOS, the LINE Bot SDK was failing with: ``` OpenSSL::SSL::SSLError: SSL_connect returned=1 errno=0 state=error: certificate verify failed (unable to get certificate CRL) ``` This occurs because the LINE Bot SDK tries to fetch user profiles via HTTPS, and OpenSSL on macOS development environments may not have proper access to Certificate Revocation Lists (CRLs). ## Changes - Added `http_options` configuration to the LINE Bot client in `Channel::Line#client` - Sets `verify_mode: OpenSSL::SSL::VERIFY_NONE` only when `Rails.env.development?` is true - Production environments continue to use full SSL verification for security ## Test Plan - [x] Send a LINE message to trigger webhook in development - [x] Verify webhook is processed without SSL errors - [x] Confirm change only applies in development mode Co-authored-by: Muhsin Keloth --- app/models/channel/line.rb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/models/channel/line.rb b/app/models/channel/line.rb index 63b0924da..ad1d2a843 100644 --- a/app/models/channel/line.rb +++ b/app/models/channel/line.rb @@ -40,6 +40,8 @@ class Channel::Line < ApplicationRecord config.channel_id = line_channel_id config.channel_secret = line_channel_secret config.channel_token = line_channel_token + # Skip SSL verification in development to avoid certificate issues + config.http_options = { verify_mode: OpenSSL::SSL::VERIFY_NONE } if Rails.env.development? end end end