Labels
Some SDK objects expose a labels field together with the client LabelableObjectMixin.
Current examples include:
ProjectTimeIndexMetaTableMetaTablecommand_center.Workspace
What Labels Are For
Labels are organizational metadata only.
Use them to:
- group related objects
- annotate ownership or workflow state
- make browsing and manual discovery easier
What Labels Do Not Do
Labels do not change:
- runtime behavior
- execution semantics
- storage identity
- hashing
- permissions
- scheduling
- functionality of the underlying object
They are helpers for humans, not runtime configuration.
SDK Usage
Objects that inherit LabelableObjectMixin expose:
add_label(...)remove_label(...)
Example:
from mainsequence.client.models_foundry import Project
project = Project.get(123)
project.add_label(["rates", "research"])
project.remove_label("archive")
CLI Usage
The CLI exposes the same verbs on the object groups that support labels:
mainsequence project add-label 123 --label rates --label research
mainsequence project remove-label 123 --label archive
mainsequence data-node add-label <DATA_NODE_STORAGE_UID> --label curated
mainsequence data-node remove-label <DATA_NODE_STORAGE_UID> --label archive
mainsequence cc workspace add-label 11111111-1111-4111-8111-111111111111 --label trading --label desk
mainsequence cc workspace remove-label 11111111-1111-4111-8111-111111111111 --label old-layout
Each command calls the SDK model method for that object. The label mutation updates organizational metadata only.