Issue #3611023: Standardize inline-signal guarding across interaction tasks and operations

Interaction tasks hard-disabled inline signalling (handler returned NULL); interaction operations already guard per-outcome via requires_ui + guardedOutcomes(). Lift requires_ui into the shared InteractionPluginConfigTrait, have both families use it, and return the real signal route from the task handler. Guarding stays enforced by the signal controller. Verified by InteractionTaskTest (new requires_ui guard test) + InteractionOperationTest. Docs + fr.po updated.

Merge request reports

Loading