Open a Ui5 artifact — the one primitive for "make this artifact happen". Keyed by the
artifact's namespace (its stable identity, the registry's key), never a DB id — so the
same intent serves both shell producers (the CmdK collector, nav) and app-authored
dispatches, and the client contract mirrors LaravelUi5.call(namespace, …).
{@see Ui5ArtifactOpenIntentHandler} resolves the artifact and switches on its type (Dialog →
open the dialog, Application → redirect, …). Authorized by
{@see Ui5ArtifactOpenIntentAuthorizer} against the artifact's own #[Access].
Wire: { "name": "ui5-artifact.open", "parameters": { "namespace": "<artifact namespace>" } }
— hydrated as new self(...$parameters), so the constructor parameter name MUST stay namespace.