SmolBox.Manifest (SmolBox v0.1.0)

Copy Markdown View Source

Exact input/output file declarations using opaque host artifact-store references.

Inputs use string keys source, path, size, sha256, and mode. The only supported mode is runtime_default; the pinned HTTP API cannot set permissions. Outputs use destination, path, and max_bytes. References are identifiers, never URLs or host paths. Each direction allows at most 32 unique paths and references. Collection takes a byte snapshot of each file; a multi-file atomic snapshot is not promised. Neither archives nor recursive globs are interpreted.

Summary

Types

input()

@type input() :: %{required(String.t()) => String.t() | non_neg_integer()}

output()

@type output() :: %{required(String.t()) => String.t() | pos_integer()}

Functions

validate(inputs, outputs, profile)

@spec validate(term(), term(), SmolBox.Profile.t()) ::
  :ok | {:error, SmolBox.Error.t()}