Issue #3613944: The status vocabulary is administered under Structure, among the runtime rows, though it is configuration

A status is a configuration entity (orchestra_status, config_prefix: status), exported and deployed with the site exactly like a tenant, whose collection already lives at /admin/config/workflow/orchestra/tenants. Its UI hung off /admin/structure/orchestra/statuses instead, beside the runtime rows the engine produces.

What this does

  • OrchestraUiHooks::entityTypeAlter() attaches /admin/config/workflow/orchestra/statuses as the base path, so the collection, add, edit and delete routes all move with it. The form redirect and the action link go through toUrl() and the route name, so both follow unchanged.
  • The orchestra_ui.statuses menu link nests under the modeler_api-provided Orchestra item beside Tenants (weight 25), instead of under Structure > Orchestra.
  • Config Translation derives its mapper from the edit-form link template, so entity.orchestra_status.config_translation_overview moves to .../statuses/{orchestra_status}/translate with nothing declared. The test pins that.
  • Docs updated: concepts.md and roadmap.md now name Configuration > Workflow > Orchestra > Statuses.

Structure now holds only Instances and Delegations, both runtime data the engine produced.

No redirect from the vacated path. Pre-1.0, and the path was never a released stable URL.

Test coverage. The status admin UI had none. StatusAdminRouteTest (kernel) asserts the four link templates, the four generated routes and their admin-route flag, the Config Translation overview path, and that nothing answers under /admin/structure/orchestra/statuses any more. It fails on the pre-change code (verified locally), so it pins the move rather than restating it.

No behavioral change, no update hook: the routes and the menu link are rebuilt by a cache rebuild.

Merge request reports

Loading
Loading