Spectre.Prompt.Receipt (Spectre v0.3.0)

Copy Markdown View Source

Privacy-safe evidence for one effective governed prompt fragment.

A receipt binds the exact Definition, source fragment, resolved input evidence and rendered bytes without exposing prompt or input content.

Summary

Functions

Restores and verifies a receipt from portable data.

Returns the portable receipt representation.

Types

t()

@type t() :: %Spectre.Prompt.Receipt{
  bytes: non_neg_integer(),
  definition_ref: String.t(),
  digest: String.t(),
  estimated_tokens: non_neg_integer(),
  fragment_digest: String.t(),
  generator_id: String.t(),
  generator_version: pos_integer(),
  input_evidence_digest: String.t(),
  placement: map(),
  prompt_ref: term(),
  provenance_digest: String.t(),
  rendered_digest: String.t(),
  schema_version: pos_integer()
}

Functions

from_data(receipt)

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

Restores and verifies a receipt from portable data.

to_data(receipt)

@spec to_data(t()) :: map()

Returns the portable receipt representation.