When building dynamic pipelines and other artifacts in Microsoft Fabric we are currently forced to reference everything using the underlying item IDs, rather than the more useful names (display names).
In the UI, setting a item value is fine when selecting items from the respective drop down lists. But they will of course be static and can’t be changed at runtime. However, as soon as an expression is required (which in the real world, always is) those UI labels change to be the ID values. AKA the item GUIDs in the context of the workspace and wider solution.
Paul has an answer, though it’s not pretty.