Spectre.Instance.CheckpointStore.ErasureConformance (Spectre v0.3.3)

Copy Markdown View Source

Executable conformance gate for Checkpoint Store erasure adapters.

The runner proves present and absent erasure, marker read-back, idempotency, post-erasure write rejection, and an erase-versus-CAS race with one authoritative outcome. It has no ExUnit dependency and leaves private markers under three derived, isolated Instance references.

Summary

Functions

Returns the Checkpoint Store erasure contract version.

Runs the complete erasure contract using a fresh Instance Ref.

Types

report()

@type report() :: %{
  contract_version: pos_integer(),
  present_erasure: :verified,
  absent_erasure: :verified,
  idempotency: :verified,
  neighbor_isolation: :verified,
  post_erasure_write: :rejected,
  race: :erase_won | :write_won,
  marker_digest: String.t()
}

Functions

contract_version()

@spec contract_version() :: pos_integer()

Returns the Checkpoint Store erasure contract version.

run(store, ref, opts \\ [])

@spec run(
  Spectre.Instance.CheckpointStore.config(),
  Spectre.Instance.Ref.t(),
  keyword()
) ::
  {:ok, report()} | {:error, term()}

Runs the complete erasure contract using a fresh Instance Ref.