[SMTChecker] Add balance/block constraints between transactions
- Dominant language
- C++
- Stars
- 25.7k
- Forks
- 6.2k
- Avg merge
- 2d 19h
- Merged PRs (30d)
- 29
Description
Between the end of a tx and the beginning of the next tx run by a contract:
- it's balance needs to be >= the previous balance
- block.timestamp must be >=
- block.number must be >=
Currently the SMTChecker does not add those constraints.
Anything else?
Contributor guide
Research direction
Start by locating the SMTChecker transaction-state constraint handling. Check how state is modeled between the end of one contract transaction and the beginning of the next, then verify that balance, block.timestamp, and block.number are constrained as described. Done means the intended constraints are encoded and covered by appropriate SMTChecker tests; the issue does not name specific files or tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, solidity
- Domain
- blockchain, compilers
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100