chainlink-cosmos icon indicating copy to clipboard operation
chainlink-cosmos copied to clipboard

[BCI-1477] Implement cosmos specific txn type for generic txm

Open yongkangc opened this issue 2 years ago • 1 comments

This PR implements implements chain specific transaction type based on the generic Transaction manager transaction interface.

Context:

  • In order for cosmos to make use of generic txm logic, it requires to implement the TxRequest type and encoding/decoding methods are needed.
  • The EVM has a similar implementation here: https://github.com/smartcontractkit/chainlink/blob/7b57ad4c15a2286377ba8cb8775d6c7aa2796251/core/chains/evm/txmgr/models.go#L16-L17

Changes:

  • bumping chainlink-relay to make use of the generic Txn Types in the PR https://github.com/smartcontractkit/chainlink-relay/pull/154
  • implemented chain specific transaction types and encoding/decoding methods.
  • tests

Note:

  • Not sure if we would want to merge this, as this PR is dependent on Txn-types on chainlink-relay in the PR https://github.com/smartcontractkit/chainlink-relay/pull/154. However we are still in the middle of persistence layer proposal, and sqlx dependency has yet to be extracted out. See comment for the discussion.
    • Might have to consult @aalu1418 for path forward.

References:

  • Design docs
  • Tickets: https://smartcontract-it.atlassian.net/browse/BCI-1477

yongkangc avatar Aug 24 '23 03:08 yongkangc

The Staging branch has been changed to cosmos-generic-txm-staging

yongkangc avatar Aug 25 '23 05:08 yongkangc