Click the link below. It is an
<a href="workspaces://…"> element, but the click
is held for 6s before the navigation fires, so the transient user
activation expires first.
Launch Workspaces (link, 6s delay)
With the local-events.js bypass blocks commented out, the
launch goes to the surrogate (round trip) and comes back via
client_nav(reason="applink"). Because the 6s delay has
expired the user activation, assignOrReplace sees no
gesture → the “Application Launch Blocked” modal
appears; Allow launches. Backend also emits r=applink
events (logging preserved).
Sends you to an intermediate page that redirects to the
workspaces:// applink after a delay, with
no user gesture — the original customer scenario.
Expected: no activation → the “Application Launch Blocked” modal appears; Allow launches.