Version: 1


There are two types of tag:

Coverage (scopable)

Coverage tags are propagated to the Switch, where they can be used for coverage, and ultimately to the Device table in the Tachyon Master database.

The maxiumum length of the Coverage tag list including separators is 511 characters. Any tag operation that would exceed this length results in an error.

Freeform (non-scopable).

Freeform tags exist purely on the Agent, where they can be set, their values fetched, and checked for existence.

The Freeform tag list does not have a maximum length.

Tags are arbitrary values assigned to Agents and stored in the persistent store on the Agents. 

All tags persist until explicitly deleted.

Assigning a value to a tag will create the tag if it does not already exist or overwrite the tag's value if it was already there.

A coverage and freeform tag can share the same name and they are distinct.

Tags values are stored as strings (i.e. even a number would be represented as a string such as "99"), and can be empty if the mere presence or absence of a tag is enough.

Tag names are case-insensitive but store internally in upper-case. Case is preserved for tag values.

Each tag is stored as NAME=Value with a separator | at the start and end. Examples: |DEPT=Sales|LOCATION=London| and || is an empty list.