kourin
c5dbcd0d15
Remove redundant code and Add Safe check in bulding committed seals ( #53 )
...
* Remove redundant local variables in validateProposal
* Add safe check in ExtractCommittedSeals
* Fix lint error
2 years ago
kourin
d055e2b151
Fix wrong selection of proposed block from previous round in non-zero… ( #52 )
...
* Fix wrong selection of proposed block from previous round in non-zero round
* Fix lint error
* Fix lint error
* Fix fetching of extendedRCC
* Fix lint error
* Update maxRound in buildProposal for round > 0
* Add early continue to skip useless message validity check in GetExtendedRCC
2 years ago
Vuk Gavrilovic
503b703b40
Suggestion 4: Add Fault Tests ( #58 )
...
* Drop tests
2 years ago
Vuk Gavrilovic
d6431af3ac
Byzantine tests ( #56 )
...
* Byzantine tests
2 years ago
Vuk Gavrilovic
730c09c2a8
Audit improvements ( #50 )
...
* Audit improvements
2 years ago
kourin
eea78df818
Fix Wrong Round Value in Validation of roundsAndPreparedBlockHashes ( #51 )
...
Fix round in roundsAndP reparedBlockHashes
2 years ago
Vuk Gavrilovic
e2b5fd3bd5
Remove redundant changeState ( #49 )
2 years ago
Roman Behma
50da8f5c4e
Added per round event-based setup in rapid tests ( #47 )
2 years ago
Igor Crevar
8b1e3f20c4
EVM-220 TestClusterBlockSync/BLS fails in voting power branch ( #48 )
2 years ago
Roman Behma
2ac556e04f
Implement event generator for rapid testing ( #46 )
2 years ago
Roman Behma
70fa07d86c
Add rapid test with bad proposal coming from byzantine node ( #44 )
2 years ago
Roman Behma
21b620873b
Minor fixes in ibft and tests ( #45 )
2 years ago
Evgeny Danilenko
12435ef98c
update linters ( #40 )
...
* updated
* run all
* Update .github/workflows/lint.yml
Co-authored-by: Victor Castell <victor@victorcastell.com>
* count parallel code
* cr
* linters
* linters
* linters
* linters
* linters
* linters
* linters
* use io.copy
* linters
* linters
* linters
Co-authored-by: Victor Castell <victor@victorcastell.com>
2 years ago
Victor Castell
ee4d8a0bb2
Move logic for quorum check to the backend ( #39 )
...
* Move logic for quorum check to the backend
* Checking quorum with abstracted HasQuorum
* Refactor MaxFaultyNodes func
* Remove MinNumMessages usage
* Remove backend Quorum and move test to use HasQuorumFn
* Remove MaxFaulty, is not being used at all
2 years ago
Stefan Negovanović
49b0ca1c3b
Expand `BuildProposal` with current round information ( #43 )
...
Expand BuildProposal with current round information
2 years ago
Evgeny Danilenko
0acf0db7c9
reproducible builds ( #42 )
...
* initial
* fix
* fix
* fix
* fix
* fix
2 years ago
Evgeny Danilenko
805919c413
Use shuffle in all go test ( #37 )
...
use shuffle in all go test
2 years ago
Evgeny Danilenko
d9166abecd
bump golang to 1.19 ( #41 )
...
initial
2 years ago
Epikichi
856fb298ad
Github Actions Workflow Refactor ( #33 )
...
* initial workflow rework
* adding appropriate branches
* refactoring to fit go-ibft
* name update
* removing unneeded braces. creating diff
* offloading Main workflow Snyk scans to Github integration.
* adding missing golangci configuration
* fixed branch
* adding needed codecov CI
2 years ago
dependabot[bot]
602237fdeb
Bump github.com/stretchr/testify from 1.8.0 to 1.8.1 ( #34 )
...
Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify ) from 1.8.0 to 1.8.1.
- [Release notes](https://github.com/stretchr/testify/releases )
- [Commits](https://github.com/stretchr/testify/compare/v1.8.0...v1.8.1 )
---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2 years ago
Dusan Brajovic
130e9cb55b
Introduce drop property tests ( #31 )
...
* introduce drop property tests
2 years ago
Roman Behma
3e9fecd21d
Integrate goleak to tests ( #32 )
...
* Integrated goleak
* Added goleak.IgnoreCurrent() in order to ignore existing goroutines
* Implementation
2 years ago
Evgeny Danilenko
faaae0a8ff
Add golang vulnerabilities checker ( #30 )
2 years ago
Miloš Živković
20516d0371
Resolve data races in tests utilizing go routines ( #29 )
...
* Remove parallel execution for rapid tests
* Resolve data races in tests
* Add race test to workflow
* Resolve faulty path in test dir
* Remove double context cancels
* Add newline to the workflow file
2 years ago
Miloš Živković
d583c51e66
Introduce property based tests with Rapid + bump go version ( #27 )
...
* Introduce the Rapid framework, add base rapid cluster test
* Bump the go version in the workflow files
* Add TestProperty_MajorityHonestNodes
* Resolve linting errors
* Minor cleanup
* Simplify the quorum method
* Remove pointer manipulation for mockNodeContext
2 years ago
kourin
e43142f8d2
Fix type of CommittedSeal in IsValidCommittedSeal and InsertBlock ( #24 )
...
* Change type of CommittedSeal
* Downgrade golangci in actions
* Fix version format of golangcli in actions
2 years ago
dependabot[bot]
09f8c3c345
Bump google.golang.org/protobuf from 1.28.0 to 1.28.1 ( #22 )
...
Bumps [google.golang.org/protobuf](https://github.com/protocolbuffers/protobuf-go ) from 1.28.0 to 1.28.1.
- [Release notes](https://github.com/protocolbuffers/protobuf-go/releases )
- [Changelog](https://github.com/protocolbuffers/protobuf-go/blob/master/release.bash )
- [Commits](https://github.com/protocolbuffers/protobuf-go/compare/v1.28.0...v1.28.1 )
---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2 years ago
Miloš Živković
0f95a9c3a0
Final Feedback ( #21 )
...
* Empty branch
* Simplify loop conditional
* Add quorum optimal helper to test
* Remove newlines
* Expand abbreviation:
* Change SubscriptionDetails field
* add common proposal validation method
* Change variable name in log
* Change variable name in log
* Add syntax sugar for transport multicasts
* Add simple start method for state
* Add log for invalid proposal
* Change naming of routine method
* Simplify block preprepare acceptance
* Add explainer for loop iteration
* Add to barrier before starting the routine
* Have the barrier increase right before the go routines
* Make the conditional for subscription pushes more clear
* Fix conditional for higher rounds
2 years ago
Milos Zivkovic
f0abb68d33
Increase coverage of base IBFT tests
2 years ago
Milos Zivkovic
16fac25c96
Add coverage for message helpers
2 years ago
Milos Zivkovic
2b86d60ff7
Cleanup the subscription interface
2 years ago
Milos Zivkovic
1cdc547b2a
Resolve linting error
2 years ago
Milos Zivkovic
afbc7335b3
Add support for future RCC tests
2 years ago
ZeljkoBenovic
863e0c0340
added codecov badge
2 years ago
ZeljkoBenovic
f728986655
added codecov
2 years ago
Milos Zivkovic
3548770705
Update the go.mod
2 years ago
dbrajovic
6333668242
fix log
2 years ago
Milos Zivkovic
bf0784c640
Update readme link
2 years ago
Milos Zivkovic
e85b10f1b1
IBFT 2.0
2 years ago
dbrajovic
596adcc211
fix log
2 years ago
dbrajovic
ba4ae17b6a
improve logs
2 years ago
dbrajovic
fe1444bba8
fix export error
2 years ago
dbrajovic
f88ceb6c90
export runSequence
2 years ago
dbrajovic
6e3261a923
Add documentation ( #15 )
...
* add documentation
2 years ago
dbrajovic
74809c1331
Cleanup ( #14 )
...
* add method description
* refactor code (doRoundHop)
* simplify runNewRound
* simplify runPrepapre
* rename symbol
* simplify runCommit
* simplify statement
* remove todo
* simplify runRound
* improve logs
* Resolve minor linting errors
* Remove logs from the tests
Co-authored-by: Milos Zivkovic <milos.zivkovic@mvpworkshop.co>
2 years ago
Milos Zivkovic
e1f7e512ae
Export the interface names so they can be inspected better
2 years ago
Miloš Živković
d997a1ba45
Simplify round flow ( #13 )
...
* change runSequence select flow
* change error handling flow on bad proposal
* Add Dependabot support
* simplify runRound flow
* remove todo
* simplify error return
* Add todo
* Fix TestRunNewRound_Proposer
* Fix TestRunPrepare
* Fix TestRunCommit
* Message subscriptions (#12 )
* Add base support for message subscriptions
* Add additional backend method explainers
* merge main
* simplify runSequence/implement startRoundTimer
* simplify runRound
* rewrite runNewRound
* rewrite runPrepare
* rewrite runCommit
* add todo/remove clutter
* remove unused code
* implement watchForRoundHop
* close quit channel on roundDone
* finish runNewRound
* add proposer logic in runRound
* finish runPrepare
* finish runCommit
* error cheching runFin
* remove obsolete code
* remove obsolete tests
* add runRoundChange
* wrap up/todo
* Add further documentation
* Add missing error catches
* Clean up the messages interface
* Fix failing messages tests
* Fix TestRunNewRound_Proposer tests
* Fix TestRunNewRound_Validator
* Fix TestRunPrepare tests
* Fix TestIBFT_IsAcceptableMessage tests
* Fix TestRunCommit tests
* Remove redundant test
* Improve TestIBFT_IsAcceptableMessage tests
* Add round timer tests
* Add tests for watchForRoundHop
* Add moveToNewRound tests
* Make the cluster tests use sequences instead of rounds
* Add additional logs
* rewrite GetMostRoundChangeMessages
* Remove commented dummy test
* statename String()
* Add message race test
* fix blocking
* Change quit flow for test
* revert commits
* add todo
* atommicaly change state
* conditional signal round change
* Add proper wg waits
* Fix eventManager tests
* Fix bug in GetMostRoundChangeMessages
* Remove dummy test code
* Make sure the state is referenced atomically
* Additional cleanup
* Resolve linting errors
* Cleanup, add individual message type locks
Co-authored-by: dbrajovic <dbrajovic3@gmail.com>
2 years ago
Miloš Živković
835116ff22
Create LICENSE
2 years ago
dependabot[bot]
657ebd092b
Bump github.com/stretchr/testify from 1.7.2 to 1.8.0 ( #11 )
...
Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify ) from 1.7.2 to 1.8.0.
- [Release notes](https://github.com/stretchr/testify/releases )
- [Commits](https://github.com/stretchr/testify/compare/v1.7.2...v1.8.0 )
---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2 years ago
Miloš Živković
eb15f1e499
Add Dependabot support ( #10 )
2 years ago