From 7bfde9eb5ac3da6762d78bff4e827dbec3b55902 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A2u=20Cao?= Date: Tue, 3 Nov 2026 11:42:06 +0400 Subject: [PATCH] Store the remoteStorage user agent as text, not varchar(255) Real-world user agents (in-app browsers, Android WebView variants) commonly exceed 255 characters. On PostgreSQL that would raise and 500 the consent POST and token exchange; SQLite dev/test does not enforce the limit, so it went unnoticed. Use text columns for user_agent on both tables. Part of #254 --- .../20261102130000_add_user_agent_to_rs_authorizations.rb | 4 ++-- db/schema.rb | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/db/migrate/20261102130000_add_user_agent_to_rs_authorizations.rb b/db/migrate/20261102130000_add_user_agent_to_rs_authorizations.rb index 841369e..d310450 100644 --- a/db/migrate/20261102130000_add_user_agent_to_rs_authorizations.rb +++ b/db/migrate/20261102130000_add_user_agent_to_rs_authorizations.rb @@ -1,6 +1,6 @@ class AddUserAgentToRsAuthorizations < ActiveRecord::Migration[8.1] def change - add_column :remote_storage_authorizations, :user_agent, :string - add_column :rs_authorization_codes, :user_agent, :string + add_column :remote_storage_authorizations, :user_agent, :text + add_column :rs_authorization_codes, :user_agent, :text end end diff --git a/db/schema.rb b/db/schema.rb index 524de14..4518582 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -110,7 +110,7 @@ ActiveRecord::Schema[8.1].define(version: 2026_11_02_130000) do t.string "redirect_uri" t.string "token" t.datetime "updated_at", null: false - t.string "user_agent" + t.text "user_agent" t.integer "user_id", null: false t.integer "web_app_id" t.index ["permissions"], name: "index_remote_storage_authorizations_on_permissions" @@ -129,7 +129,7 @@ ActiveRecord::Schema[8.1].define(version: 2026_11_02_130000) do t.text "permissions", default: "[]" t.string "redirect_uri", null: false t.datetime "updated_at", null: false - t.string "user_agent" + t.text "user_agent" t.integer "user_id", null: false t.index ["code_digest"], name: "index_rs_authorization_codes_on_code_digest", unique: true t.index ["user_id"], name: "index_rs_authorization_codes_on_user_id"