UniteLabs
Reference

Feature Metadata

The originator, category, version, and maturity level arguments of a SiLA feature.

Every feature passes its metadata to sila.Feature.__init__. Only originator and category should be set on a new feature.

class FileService(sila.Feature):
    """Read, write, and delete files on the connected file system."""

    def __init__(self, protocol: "FileSystemProtocol"):
        super().__init__(originator="io.unitelabs", category="filesystem")
        self.protocol = protocol
ArgumentSet it?DefaultFormatExample
originatorAlwaysorg.silastandardReverse domain notation; lowercase letters and digits, dot-separatedio.unitelabs
categoryAlways—Lowercase letters and digits, dot-separatedfilesystem, position.clamp.edgelock
versionOnly when bumping1.0Exactly major.minor1.1
maturity_levelNeverDraftDraft, Verified, or Normative—

originator

Use io.unitelabs for a UniteLabs connector, or <tld>.<vendorname> for a connector commissioned by an external vendor.

Never leave it unset. The default, org.silastandard, marks the feature as an official SiLA standard feature.

category

Name one functional domain. Check existing connectors for a category that already fits before inventing one. Only nest with dots when the feature genuinely belongs to a narrower sub-domain.

The SDK rejects uppercase letters, spaces, hyphens, and underscores in originator and category.

version

Leave it unset on a new feature; it defaults to 1.0. Set it only when the feature's interface changes, as exactly two numbers: 1.0, then 1.1, never 1.0.1. The SDK rejects patch or label segments.

The feature version is separate from the connector's package version.

maturity_level

Leave it unset. Verified and Normative are reserved for features that have passed the SiLA community review process.

Last updated