Vibe.Files.Artifacts (vibe v0.2.3)

Copy Markdown View Source

Stores large tool artifacts outside inline session JSON payloads.

Summary

Functions

default_inline_image_bytes()

@spec default_inline_image_bytes() :: pos_integer()

maybe_store_image(image, opts \\ [])

@spec maybe_store_image(
  Vibe.Image.t(),
  keyword()
) :: {:ok, Vibe.Image.t() | Vibe.Files.ImageRef.t()} | {:error, term()}

prune_orphans(live_session_ids \\ nil)

@spec prune_orphans([String.t()] | nil) :: [Path.t()]

public_path(ref)

@spec public_path(Vibe.Files.ImageRef.t()) :: String.t() | nil

resolve_session_artifact(session_id, relative_path)

@spec resolve_session_artifact(String.t(), Path.t()) ::
  {:ok, Path.t()} | {:error, term()}

session_artifact_dir(session_id)

@spec session_artifact_dir(String.t()) :: Path.t()

session_artifact_summary(session_id)

@spec session_artifact_summary(String.t()) :: %{
  count: non_neg_integer(),
  bytes: non_neg_integer()
}

store_image(image, opts \\ [])

@spec store_image(
  Vibe.Image.t(),
  keyword()
) :: {:ok, Vibe.Files.ImageRef.t()} | {:error, term()}