mirror of
https://github.com/opf/openproject.git
synced 2026-06-14 03:30:14 +00:00
a88698c230
Both :work_package_id (single-WP routes) and :ids (bulk routes) come from URLs or HTML forms and may carry semantic identifiers, so the prior numeric-only assumption on :ids was wrong. Route both inputs through WorkPackage.where_display_id_in, which returns a chainable scope that matches numeric, current-identifier, and historical-alias forms in a single query — no per-id round trip and no controller-side coupling to WorkPackageSemanticAlias. Tighten the post-move controller spec to assert the redirect URL contains the destination project's semantic prefix when follow: 1 is set, which is the path that exercises the moved WP's display_id.