credible-std is the Solidity standard library for writing and testing Credible Layer assertions. It provides the base assertion contract, the ph interface for PhEVM cheatcodes, trigger registration helpers, snapshot-read helpers, typed state-change helpers, and Forge test utilities.
For individual cheatcode signatures, see the Cheatcodes API Reference. For local assertion tests, see Testing Assertions.
Package and Configuration
credible-std is distributed as a Foundry library.
Core Contracts
Assertion Helpers
Assertion.sol provides internal helpers for registering when assertion functions run.
Legacy Trigger Helpers
Use these helpers for the pre-Reshiram trigger APIs:Reshiram Trigger Helpers
Use these helpers for newer trigger types:registerFnCallTrigger pairs with ph.context() so an assertion can inspect the matched call’s selector and call range.
Fork and Snapshot Helpers
Reshiram assertions should prefer explicit snapshot IDs over deprecated fork-switching cheatcodes. ConstructForkId values explicitly:
ph.loadStateAt to read storage at those snapshots:
loadStateAt.
ERC20 Delta Helpers
ForkUtils.sol also includes ERC20 transfer-delta helpers:
State Change Helpers
StateChanges.sol converts ph.getStateChanges(...) from bytes32[] into typed arrays:
Address, Bool, and Bytes32.
Call Matching Helpers
Assertion.sol includes helpers for querying successful calls through the Reshiram call-matching precompile:
_matchingCalls when an assertion needs a bounded list of successful calls to a target selector.
Assertion Spec Helper
Register the desired assertion spec in the constructor:Testing Contracts
CredibleTest is the base contract for local Forge tests. It exposes cl.assertion(...), which registers an assertion against a target contract for the next transaction in a test.
Related Pages
Cheatcodes API Reference
Full PhEVM cheatcode signatures
Testing Assertions
How to test assertions locally
Review Backtesting Results
Review the automatic backtest attached to a platform release
Write Your First Assertion
Build a first assertion with credible-std

