Documentation for https://github.com/ConsenSys/Scribble
Scribble is a runtime verification tool for Solidity that transforms annotations in the Scribble specification language into concrete assertions that check the specification. In other words, Scribble transforms existing contracts into contracts with equivalent behaviour, except that they also check properties. With these instrumented contracts, you can use testing, fuzzing or symbolic execution (for example using Mythril or the MythX service) to check if your properties can be violated.
Scribble is currently in beta, and both the tool and the language are still changing and under active development.
To get started quickly check out our tutorials:
This documentation has two categories: Tool and Language.
Also be sure to check out the page on arming and disarming, which explains how to use Scribble to do "in place" instrumentation. For a deep dive into instrumentation, and to debug any issues, check out the Instrumented Code and Debugging pages.
If you encounter any issues feel free to find us in the #scribble-spec-langauge channel of the MythX Discord Server, or file an issue on GitHub.