From 820e4ac828d2e83bc9c0993b7898eb043128d47f Mon Sep 17 00:00:00 2001 From: Codex Night Worker Date: Sun, 15 Nov 2026 13:46:32 +0900 Subject: [PATCH] WIP: preserve failed Codex job issue-242-hhdxc839 --- .../20261115000000_add_post_count_index_to_tags.rb | 5 +++++ backend/db/schema.rb | 3 ++- backend/spec/models/tag_spec.rb | 13 +++++++++++++ 3 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 backend/db/migrate/20261115000000_add_post_count_index_to_tags.rb diff --git a/backend/db/migrate/20261115000000_add_post_count_index_to_tags.rb b/backend/db/migrate/20261115000000_add_post_count_index_to_tags.rb new file mode 100644 index 0000000..4aa781e --- /dev/null +++ b/backend/db/migrate/20261115000000_add_post_count_index_to_tags.rb @@ -0,0 +1,5 @@ +class AddPostCountIndexToTags < ActiveRecord::Migration[8.0] + def change + add_index :tags, :post_count + end +end diff --git a/backend/db/schema.rb b/backend/db/schema.rb index bf72236..fa8382f 100644 --- a/backend/db/schema.rb +++ b/backend/db/schema.rb @@ -10,7 +10,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema[8.0].define(version: 2026_10_15_010000) do +ActiveRecord::Schema[8.0].define(version: 2026_11_15_000000) do create_table "active_storage_attachments", charset: "utf8mb4", collation: "utf8mb4_0900_ai_ci", force: :cascade do |t| t.string "name", null: false t.string "record_type", null: false @@ -630,6 +630,7 @@ ActiveRecord::Schema[8.0].define(version: 2026_10_15_010000) do t.integer "post_count", default: 0, null: false t.integer "version_no", null: false t.index ["deprecated_at"], name: "index_tags_on_deprecated_at" + t.index ["post_count"], name: "index_tags_on_post_count" t.check_constraint "(`deprecated_at` is null) or (`category` <> _utf8mb4'nico')", name: "chk_tags_deprecated_at_not_nico" t.check_constraint "`version_no` > 0", name: "chk_tags_version_no_positive" end diff --git a/backend/spec/models/tag_spec.rb b/backend/spec/models/tag_spec.rb index a247f93..1e2438b 100644 --- a/backend/spec/models/tag_spec.rb +++ b/backend/spec/models/tag_spec.rb @@ -2,6 +2,19 @@ require 'rails_helper' RSpec.describe Tag, type: :model do include WikiRecords + + describe 'post_count index' do + it 'has a non-unique index on post_count alone' do + indexes = described_class.connection.indexes(described_class.table_name) + + expect(indexes).to include( + have_attributes( + name: 'index_tags_on_post_count', + columns: ['post_count'], + unique: false)) + end + end + describe '#has_description?' do let(:tag) { create(:tag) }