Implement FEP 7888: Part 1 - publish conversation context (#35959)

This commit is contained in:
Jesse Karmani
2025-09-05 12:28:29 -07:00
committed by GitHub
parent 9463a31107
commit 65b4a0a6f1
15 changed files with 309 additions and 12 deletions

View File

@@ -0,0 +1,8 @@
# frozen_string_literal: true
class AddParentStatusAndParentAccountToConversations < ActiveRecord::Migration[8.0]
def change
add_column :conversations, :parent_status_id, :bigint, null: true, default: nil
add_column :conversations, :parent_account_id, :bigint, null: true, default: nil
end
end

View File

@@ -0,0 +1,9 @@
# frozen_string_literal: true
class AddIndexOnConversationToStatuses < ActiveRecord::Migration[8.0]
disable_ddl_transaction!
def change
add_index :statuses, :conversation_id, algorithm: :concurrently
end
end

View File

@@ -10,7 +10,7 @@
#
# It's strongly recommended that you check this file into your version control system.
ActiveRecord::Schema[8.0].define(version: 2025_08_20_084312) do
ActiveRecord::Schema[8.0].define(version: 2025_09_02_221600) do
# These are extensions that must be enabled in order to support this database
enable_extension "pg_catalog.plpgsql"
@@ -359,6 +359,8 @@ ActiveRecord::Schema[8.0].define(version: 2025_08_20_084312) do
t.string "uri"
t.datetime "created_at", precision: nil, null: false
t.datetime "updated_at", precision: nil, null: false
t.bigint "parent_status_id"
t.bigint "parent_account_id"
t.index ["uri"], name: "index_conversations_on_uri", unique: true, opclass: :text_pattern_ops, where: "(uri IS NOT NULL)"
end
@@ -1145,6 +1147,7 @@ ActiveRecord::Schema[8.0].define(version: 2025_08_20_084312) do
t.integer "quote_approval_policy", default: 0, null: false
t.index ["account_id", "id", "visibility", "updated_at"], name: "index_statuses_20190820", order: { id: :desc }, where: "(deleted_at IS NULL)"
t.index ["account_id"], name: "index_statuses_on_account_id"
t.index ["conversation_id"], name: "index_statuses_on_conversation_id"
t.index ["deleted_at"], name: "index_statuses_on_deleted_at", where: "(deleted_at IS NOT NULL)"
t.index ["id", "account_id"], name: "index_statuses_local_20190824", order: { id: :desc }, where: "((local OR (uri IS NULL)) AND (deleted_at IS NULL) AND (visibility = 0) AND (reblog_of_id IS NULL) AND ((NOT reply) OR (in_reply_to_account_id = account_id)))"
t.index ["id", "language", "account_id"], name: "index_statuses_public_20250129", order: { id: :desc }, where: "((deleted_at IS NULL) AND (visibility = 0) AND (reblog_of_id IS NULL) AND ((NOT reply) OR (in_reply_to_account_id = account_id)))"