Obscura.Capabilities (obscura v0.1.0)

Copy Markdown View Source

Machine-readable optional dependency and model asset contracts.

The manifests are shipped in priv/obscura and contain no credentials, machine-specific absolute paths, or bundled model weights.

Summary

Functions

Returns model asset rows associated with a product or implementation profile.

Fetches one capability by its string or atom ID.

Returns capability rows associated with a product or implementation profile.

Loads and validates the capability manifest.

Loads and validates the model asset manifest.

Returns the package path to a manifest.

Functions

assets_for_profile(profile)

@spec assets_for_profile(atom() | String.t()) :: {:ok, [map()]} | {:error, term()}

Returns model asset rows associated with a product or implementation profile.

fetch(id)

@spec fetch(String.t() | atom()) :: {:ok, map()} | {:error, term()}

Fetches one capability by its string or atom ID.

for_profile(profile)

@spec for_profile(atom() | String.t()) :: {:ok, [map()]} | {:error, term()}

Returns capability rows associated with a product or implementation profile.

load()

@spec load() :: {:ok, map()} | {:error, term()}

Loads and validates the capability manifest.

load_assets()

@spec load_assets() :: {:ok, map()} | {:error, term()}

Loads and validates the model asset manifest.

path(atom)

@spec path(:capabilities | :assets) :: Path.t()

Returns the package path to a manifest.