Request form
Chronicle / Scribe
  • Oracle
  • Finance
  • Protocol
Docs
Source
ChefGPT

Powering MakerDAO. Redefining cost-efficient & verifiable data.

Auth.sol
IAuth.sol
IChronicle.sol
IToll.sol
Toll.sol
test.sol
Base.sol
console.sol
console2.sol
IMulticall3.sol
safeconsole.sol
StdAssertions.sol
StdChains.sol
StdCheats.sol
StdError.sol
StdInvariant.sol
StdJson.sol
StdMath.sol
StdStorage.sol
StdStyle.sol
StdUtils.sol
Test.sol
Vm.sol
LibDissig.sol
LibFeed.sol
LibOracleSuite.sol
LibSchnorrExtended.sol
LibSecp256k1Extended.sol
IScribe.sol
IScribeOptimistic.sol
LibSchnorr.sol
LibSecp256k1.sol
Scribe.sol
ScribeOptimistic.sol
EVMTest.sol
ScribeInspectable.sol
FeedSet.sol
IScribeInvariantTest.sol
ScribeHandler.sol
IScribeOptimisticTest.sol
IScribeTest.sol
LibSchnorrTest.sol
LibSecp256k1Test.sol
Runner.t.sol

1 downloads

Chains

Authors

Chronicle / Scribe
  • Oracle
  • Finance
  • Protocol
Info
Source
ChefGPT
Expand
Share

Get Cookin'

1 downloads

Authors

Unit Tests

Scribe is an efficient Schnorr multi-signature based Oracle. For more info, see docs/Scribe.md.

Installation

Install module via Foundry:

$ forge install chronicleprotocol/scribe

Contributing

The project uses the Foundry toolchain. You can find installation instructions here.

Setup:

$ git clone https://github.com/chronicleprotocol/scribe
$ cd scribe/
$ forge install
$ yarn install # Installs dependencies for vector-based tests

Run tests:

$ forge test # Run all tests, including differential fuzzing tests
$ forge test -vvvv # Run all tests with full stack traces
$ FOUNDRY_PROFILE=intense forge test # Run all tests in intense mode
$ forge test --nmt "FuzzDifferentialOracleSuite" # Run only non-differential fuzz tests

Note that in order to run the whole test suite, i.e. including differential fuzz tests, the oracle-suite's musig schnorr binary needs to be present inside the bin/ directory.

Lint:

$ forge fmt [--check]

Update gas snapshots:

$ forge snapshot --nmt "Fuzz" [--check]

Dependencies

Deployment via:

Licensing

The primary license for Scribe is the Business Source License 1.1 (BUSL-1.1), see LICENSE. However, some files are dual licensed under MIT:

  • All files in src/libs/ may also be licensed under MIT (as indicated in their SPDX headers), see src/libs/LICENSE
  • Several Solidity interface files may also be licensed under MIT (as indicated in their SPDX headers)
  • Several files in script/ may also be licensed under MIT (as indicated in their SPDX headers)
Powering MakerDAO. Redefining cost-efficient & verifiable data.
Auth.sol
IAuth.sol
IChronicle.sol
IToll.sol
Toll.sol
test.sol
Base.sol
console.sol
console2.sol
IMulticall3.sol
safeconsole.sol
StdAssertions.sol
StdChains.sol
StdCheats.sol
StdError.sol
StdInvariant.sol
StdJson.sol
StdMath.sol
StdStorage.sol
StdStyle.sol
StdUtils.sol
Test.sol
Vm.sol
LibDissig.sol
LibFeed.sol
LibOracleSuite.sol
LibSchnorrExtended.sol
LibSecp256k1Extended.sol
IScribe.sol
IScribeOptimistic.sol
LibSchnorr.sol
LibSecp256k1.sol
Scribe.sol
ScribeOptimistic.sol
EVMTest.sol
ScribeInspectable.sol
FeedSet.sol
IScribeInvariantTest.sol
ScribeHandler.sol
IScribeOptimisticTest.sol
IScribeTest.sol
LibSchnorrTest.sol
LibSecp256k1Test.sol
Runner.t.sol