class UpdateExternalIdsFromArchitecture < ActiveRecord::Migration[8.1] def change change_table :external_ids do |t| # Make source and value required t.change_null :source, false t.change_null :value, false end # Add indexes as specified in architecture # Ensure each source only appears once per work add_index :external_ids, [:work_id, :source], unique: true # Fast lookup by external ID (for "find work by IMDB ID" queries) add_index :external_ids, [:source, :value], unique: true end end