Drop the dead file_store column from work_item_agent_plans and catalog_bundled_resource_versions

Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.

The file_store column is now dead on two tables: work_item_agent_plans and catalog_bundled_resource_versions. It used to hold the object storage backend (local or remote) for a single combined JSON document per row. That document was split into one document per field in !251354, and each payload now carries its own store column: content_file_store and readiness_score_feedback_file_store on work_item_agent_plans, and readme_file_store on catalog_bundled_resource_versions.

GitLab's process for dropping a column is to ignore it in one milestone, drop it in the next, then remove the ignore rule. The ignore step was done in that merge request: both WorkItems::AgentPlan (ee/app/models/work_items/agent_plan.rb) and Ci::Catalog::BundledResources::Version (app/models/ci/catalog/bundled_resources/version.rb) declare ignore_columns :file_store, remove_with: '19.7', remove_after: '2026-11-15'. This issue is the drop step. Do not start it before milestone 19.7 and 2026-11-15.

Steps

  1. Add a post-deployment migration that drops file_store from work_item_agent_plans and catalog_bundled_resource_versions.
  2. Remove the ignore_columns :file_store declaration from WorkItems::AgentPlan.
  3. Remove the ignore_columns :file_store declaration from Ci::Catalog::BundledResources::Version.

Ci::Catalog::BundledResources::Version also has an earlier, separate ignore_columns %i[readme readme_html], remove_with: '19.6', remove_after: '2026-10-15'. Depending on when this is picked up, those columns may be droppable in the same migration.

References

Edited by 🤖 GitLab Bot 🤖