Issue #3584775: Remove AiContextItemType and make ai_context_item bundleless

Removes the single hardcoded ai_context_item bundle and converts the entity to bundleless, now that Scheduler 2.3.0 stores settings for entity types without bundles (#3355087).

What changed

  • Entity: drop the bundle from AiContextItem; delete AiContextItemType and its form.
  • Publishing defaults: default_status/new_revision move to ai_context.settings, edited on a new AiContextItemSettingsForm at /admin/ai/context/settings/items that links out to Scheduler's own no-bundle settings form.
  • Scheduler: settings live in scheduler.no_bundle_entity_type_settings.ai_context_item (seeded in hook_install, removed on uninstall). Requires drupal/scheduler:^2.3.
  • Content moderation / config: workflow bundle, form/view displays, and language content settings repointed from default to the ai_context_item bundle.
  • Update path: ai_context_update_10007 migrates publishing defaults, Scheduler settings, the workflow, and displays, then drops the type column.

Verification

  • phpcs (Drupal, DrupalPractice): clean
  • phpstan (module config): clean
  • Unit: 127 pass
  • Kernel: 281 pass

Functional tests require a live web server (not run locally). The update hook's entity-conversion step (dropping the bundle key + type column) should be exercised with drush updatedb against a populated database before release.

Refs #3586250 (bundle discussion).

🤖 Generated with Claude Code

Merge request reports

Loading