Closed h5law closed 11 months ago
Note: This PR is based ontop of #843 (inturn also on #756), #842 and #845 but the main logic for the mempool interactions, ICS-23 proof generation/verification and ICS-24 stores is in place
Patch coverage: 18.91
% and project coverage change: -0.54
:warning:
Comparison is base (
89cc3b0
) 31.44% compared to head (0a0a067
) 30.91%.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.
If these secrets were true positive and are still valid, we highly recommend you to revoke them. Once a secret has been leaked into a git repository, you should consider it compromised, even if it was deleted immediately. Find here more information about risks.
🦉 GitGuardian detects secrets in your source code to help developers and security teams secure the modern development process. You are seeing this because you or someone else with access to this repository has authorized GitGuardian to scan your pull request.
Our GitHub checks need improvements? Share your feedbacks!
🚨 I REWROTE HISTORY 🚨
This PR was based off of numerous other branches which have now been merged into main. Because of this I have rebased entirely off of ibc/ics23_integration
and this the commit history has changed.
Can you please merge with main before we take another look at this?
@Olshansk Dunno why it did this, I merged with main earlier today o-o did again should be fine now
@h5law Replied to some of the lingering comments. Re-request a review once done / replied to and I'll take a final look.
Description
Summary generated by Reviewpad on 12 Jul 23 20:45 UTC
This pull request includes the following changes:
The file
main_test.go
was newly added to the repository and includes various changes such as package definition, imports, variable declaration, and function definitions related to IBC modules testing.The file
proofs_ics23.go
includes changes in error handling for the functionscreateMembershipProof
andcreateNonMembershipProof
, replacing the errorcoreTypes.ErrCreatingProof
withcoreTypes.ErrIBCCreatingProof
for more specific error messages.The file
keys_ics03.go
was renamed from theibc/host
directory to theibc/path
directory. Additionally, the package declaration was changed fromhost
topath
. These changes seem related to the organization of the file within the codebase.The
config.validator2.json
file includes changes in theibc
section, adding two new keys:private_key
andstores_dir
. Theenabled
key remains unchanged. Theprivate_key
key has been assigned a long string value, and thestores_dir
key has been assigned the value "/var/ibc".The file
internal/testutil/ibc/mock.go
includes renaming of the functionsBaseIbcMock
toBaseIBCMock
andIbcMockWithHost
toIBCMockWithHost
. These changes update the function names to follow proper naming conventions.The file includes the implementation of a store manager for IBC (Inter-Blockchain Communication), responsible for managing provable stores, caching, pruning, and restoring data.
The addition of a new function,
GetIBCStoreUpdates
, which retrieves the set of key-value pairs updated at the current height for the IBC store.Changes in the state hashes used in the tests in the file
state_test.go
.The file
runtime/manager_test.go
includes the addition of new fieldsPrivateKey
andStoresDir
to theIBC
struct in theNewManagerFromReaders
function.Changes in the
config.validator4.json
file include modifications in theibc
section, adding two new properties:private_key
andstores_dir
. Theenabled
property remains unchanged.The file
prefix.go
was renamed from theibc/host
package to theibc/path
package. The similarity index indicates that most of the content remains unchanged.There was a change in error handling logic in a file involving the renaming of the error variable and addressing the error during the creation of a new public key.
The file
gov.go
includes changes in import statements, variable declarations, and function modifications related to new IBC store transaction fees.The file
persistence/types/ibc.go
is a new file added to the codebase, containing functions and constants related to IBC.The file
persistence/types/ibc.go
in thepersistence
package includes changes, introducing methods for setting and retrieving key-value pairs in the IBC store table.The file
persistence/trees.go
includes changes related to the addition of a new tree and corresponding functions to handle updates for the tree.The file
utils_test.go
includes changes in the casing of a function call fromibcUtils.IbcMockWithHost
toibcUtils.IBCMockWithHost
.The file
ibc/host/path_test.go
was renamed toibc/path/path_test.go
with no other changes in the file.Changes in default variable values related to IBC functionality.
The file
db.go
includes a new function,initialiseIBCTables
, responsible for initializing an IBC store table in a PostgreSQL database.A new file,
ibc.feature.wip
, was added, containing integration and end-to-end tests for various scenarios related to IBC functionality.Changes in the
PROTOCOL_STATE_HASH.md
file include additions and modifications related to the IBC state tree and the handling of IBCMessage objects.The file
ibc/host.go
includes changes in comments, import statements, and the addition of fields and methods related to the host's interaction with the IBC store.A new file,
convert.go
, was added in theibc/types
directory, containing functions and imports to work with IBC messages.Changes in the
utils_test.go
file include modifications in the casing of a function call fromibcUtils.IbcMockWithHost
toibcUtils.IBCMockWithHost
.The file
ibc/host/path_test.go
was renamed toibc/path/path_test.go
with no other changes in the file.Changes in default variable values related to IBC functionality.
A new file,
db.go
, was added, containing a functionIssue
Fixes #840
Type of change
Please mark the relevant option(s):
List of changes
IbcMessage
protobuf with 2 typesUpdateIbcStore
andPruneIbcStore
Testing
make develop_test
; if any code changes were mademake test_e2e
on k8s LocalNet; if any code changes were madee2e-devnet-test
passes tests on DevNet; if any code was changedRequired Checklist
godoc
format comments on touched members (see: tip.golang.org/doc/comment)If Applicable Checklist
shared/docs/*
if I updatedshared/*
README(s)