GenieACS 1.2.9 Preset Add Tag

Hi.
Ho do I add tag in preset? All documentation or old post refer to older GUI.
I tried to select “tag” in “Provision” and then in “Arguments” I put:
UpToDate = "true"
but I get “Invalid arguments” in Faults page.
What should correct arguments look like?

You can find the answer here
https://docs.genieacs.com/en/latest/provisions.html#tags

Nope, I won’t find the answer there.
I know how to add tag in provision.
I am asking how to do that in PRESET.

To the best of my knowledge, that use case is no longer supported. As of v1.2, presets are used to kick off provision scripts only.

Looking through code at github there is a function in file default-provisions.ts:

export function tag(
  sessionContext: SessionContext,
  provision: (string | number | boolean)[],
  declarations: Declaration[],
): boolean {
  if (
    provision.length !== 3 ||
    typeof provision[1] !== "string" ||
    typeof provision[2] !== "boolean"
  )
    throw new Error("Invalid arguments");

  declarations.push({
    path: Path.parse(`Tags.${provision[1]}`),
    pathGet: 1,
    pathSet: null,
    attrGet: { value: 1 },
    attrSet: { value: [provision[2]] },
    defer: true,
  });

  return true;
}

Question is, how to type arguments in preset to be correctly seen here - one line, one argument? If so, how to do that when “Enter” key closes edit window?

DeviceID.Manufacturer = “MikroTik” AND Tags.UpgradeFirmware = true

That looks like precondition.
I did not find yet where and how function “tag” is called but what I understand from this code is that this function requires 3 arguments:

  • unknown
  • tag name
  • tag value
    I tried:
    “Upgrade”
    “Upgrade”=true
    0,“Upgrade”,true
    and similar variations, none worked - always “Invalid arguments”