Skip to content

wiard/pact-runtime

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PACT Runtime

Prove that a specific event_hash is included in a dataset whose Merkle root is anchored on Bitcoin—using only deterministic hashing and Bitcoin data.

Core statement

Verification succeeds only if:

  1. the event_hash recomputes into a Merkle root from local receipts, and
  2. that same root appears in the on-chain pact-anchor-v1 witness payload of the referenced transaction.

No dependency on this repository or its author.

Flow

event → hash → Merkle → anchor → Bitcoin → verify

Quick start

npm install npm run record npm run anchor:bitcoin npm run verify:onchain <event_hash>

Configuration

Two environment variables control how the runtime reaches external systems:

  • PACT_INSCRIBER_SCRIPT — required by anchor:bitcoin. Absolute path to your inscriber script. Example: export PACT_INSCRIBER_SCRIPT=/path/to/your/inscriber.mjs

  • PACT_BITCOIN_CLI_WRAP — optional. Defaults to bitcoin-cli. Set this if your node is reachable through a wrapper (SSH tunnel, custom binary, container exec). Example: export PACT_BITCOIN_CLI_WRAP="ssh mynode bitcoin-cli"

The runtime makes no other assumptions about your Bitcoin setup or your inscriber implementation.

Example output

VALID ON-CHAIN PROOF

What this proves

  • inclusion — the event hash is part of a Merkle tree with the given root
  • anchoring — that root is committed in a Bitcoin transaction witness
  • independence — verification uses deterministic hashing and Bitcoin RPC only

What this is NOT

  • no wallets
  • no indexers
  • no data storage (only hashes are anchored)
  • no claims about meaning or correctness of the data

Trust model

Bitcoin = source of truth
Everything else = reproducible

Repository

https://github.com/wiard/pact-runtime

License

ISC

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors