Skip to content

[PoI]: Define proof envelope and API surface #290

Description

@itsyaasir

Feature description

Parent epic: #289

PoI milestone: Milestone 1 - Proof contract

Define the first Proof of Inclusion proof envelope and public API surface.

The proof envelope should establish proof_format_version = 1 as the first durable verification contract. It should carry the target claim, chain or network identifier, checkpoint witness data, transaction witness data, optional object or event target data, and verification metadata needed to dispatch to the correct verifier rules.

Motivation

The rest of PoI depends on a stable proof contract. Starting with the envelope and API surface gives construction, verification, fixtures, and future compatibility work one shared shape to build against.

Requirements

  1. Add a versioned PoI proof envelope with proof_format_version = 1.
  2. Represent transaction, object, and event targets in the proof model.
  3. Include chain or network identity in the proof data.
  4. Include certified checkpoint summary, checkpoint contents, transaction data, transaction effects, and events when present.
  5. Include target object contents for object proofs and target event contents for event proofs.
  6. Keep proof-format versioning limited to compatibility and verifier dispatch, not broad product naming.
  7. Return a clear unsupported-version error for unknown proof versions.

Open questions

  • Which crate should expose the first public PoI types and constructors?
  • Should the proof envelope be serialized with an existing repository format or a new PoI-specific encoding?

Are you planning to do it yourself in a pull request?

Yes

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Fields

No fields configured for issues without a type.

Projects

Status
Product Backlog

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions