A link that updates one or more variables before traversing to another Passage is commonly known as either a "Setter Link" or a "Link with Setter"
@Piply: Your solution is the easiest way to create a "Setter Link" within Harlowe 1.x or 2.x
...get those neat little grey arrows that connects passages...
Unfortunately the Twine 2 Passage Map's "Determine Links Between Passages" and Passage Editor's "Automatic Create Missing Passage(s)" features only support the standard forms of markup based links no matter which story format you have chosen to use.
eg. standard markup based links:
[[Link Text and Target Passage is the same]], [[Link Text->Target Passage]], [[Link Text|Target Passage]], etc...
There are a number of methods/hacks you can use to trick the above mentioned two features into supporting both advance markup based links (**) as well as macro based links but each method relies on unintended/undocumented behaviours of both the Passage Map and the Passage Editor components, and the main issue with using unintended / undocumented behaviours is that they can change or be removed without warning.
eg. Using a HTML comment element to fool the above mentioned components.
<!-- [[Next->Second]] -->
(link: "Next")[(go-to: "Second")]
... the above will both create the missing Passage as well as connect the two Passages but if changed only one of the Target Passage Name (Second) references and not the other then you would end up with the Map referencing one Passage and the run-time (during Playing) link referring another, and this could result in an error if the Passage that the run-time link references doesn't exist.
(**) like any of the SugarCube's Setter Link forms:
eg. [[Link Text|Target Passage][$variable to "value"]], etc...