Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: msg types for fee middleware #1572

Merged
merged 14 commits into from
Jun 27, 2022
Merged

docs: msg types for fee middleware #1572

merged 14 commits into from
Jun 27, 2022

Conversation

charleenfei
Copy link
Contributor

Description

closes: #1409


Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

  • Targeted PR against correct branch (see CONTRIBUTING.md)
  • Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
  • Code follows the module structure standards.
  • Wrote unit and integration tests
  • Updated relevant documentation (docs/) or specification (x/<module>/spec/)
  • Added relevant godoc comments.
  • Added a relevant changelog entry to the Unreleased section in CHANGELOG.md
  • Re-reviewed Files changed in the Github PR explorer
  • Review Codecov Report in the comment section below once CI passes

Copy link
Contributor

@chatton chatton left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

really concise nice job! 🥇


In the case of a successful transaction, `RecvFee` will be paid out to the designated counterparty payee address which has been registered on the receiver chain and sent back with the `Acknowledgement`, `AckFee` will be paid out to the relayer address which has submitted the `Acknowledgement` on the sending chain (or the registered payee in case one has been registered for the relayer address), and `TimeoutFee` will be reimbursed to the account which escrowed the fee. In cases of timeout transactions, `RecvFee` and `AckFee` will be reimbursed.

Please note that fee payments are built on the assumption that sender chains are the source of incentives — the chain that sends the packets is the same chain where fee payments will occur -- please see <relayer operater> section to understand the flow for registering fee-receiving addresses.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

note: i'll update the relayer operator section link once the pr from @damiannolan is in

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've opened #1577 for docs about fee distribution and relayer operators.
What do you think about this? #1577 (comment)


1. `MsgPayPacketFee`, which enables the escrowing of fees for a packet at the next sequence send and should be combined into one `MultiMsgTx` with the message that will be paid for.

Note that the `Relayers` field has been set up to allow for an optional whitelist of relayers permitted to the receive this fee, however, this feature has not yet been enabled at this time.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Note that the `Relayers` field has been set up to allow for an optional whitelist of relayers permitted to the receive this fee, however, this feature has not yet been enabled at this time.
Note that the `Relayers` field has been set up to allow for an optional whitelist of relayers permitted to receive this fee, however, this feature has not yet been enabled at this time.

2. `MsgPayPacketFeeAsync`, which enables the asynchronous escrowing of fees for a specified packet:

```
MsgPayPacketFeeAsync{
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The alignment is a bit off here.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it's on purpose, otherwise the generated HackMD doesnt look right

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe worth doing a make view docs and see how it looks there? If you look at the github readme version it seems a bit off too :)

}
```

where the PacketFee also specifies the `Fee` to be paid as well as the refund address for fees which are not paid out
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
where the PacketFee also specifies the `Fee` to be paid as well as the refund address for fees which are not paid out
where the `PacketFee` also specifies the `Fee` to be paid as well as the refund address for fees which are not paid out:

}
```

The `Fee` message contained in this synchronous fee payment method configures different fees which will be paid out for `RecvPackets`, `Acknowledgements`, and `Timeouts`.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The `Fee` message contained in this synchronous fee payment method configures different fees which will be paid out for `RecvPackets`, `Acknowledgements`, and `Timeouts`.
The `Fee` message contained in this synchronous fee payment method configures different fees which will be paid out for `MsgRecvPacket`, `MsgAcknowledgement`, and `MsgTimeout`/`MsgTimeoutOnClose`.


# Paying out the escrowed fees

In the case of a successful transaction, `RecvFee` will be paid out to the designated counterparty payee address which has been registered on the receiver chain and sent back with the `Acknowledgement`, `AckFee` will be paid out to the relayer address which has submitted the `Acknowledgement` on the sending chain (or the registered payee in case one has been registered for the relayer address), and `TimeoutFee` will be reimbursed to the account which escrowed the fee. In cases of timeout transactions, `RecvFee` and `AckFee` will be reimbursed.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
In the case of a successful transaction, `RecvFee` will be paid out to the designated counterparty payee address which has been registered on the receiver chain and sent back with the `Acknowledgement`, `AckFee` will be paid out to the relayer address which has submitted the `Acknowledgement` on the sending chain (or the registered payee in case one has been registered for the relayer address), and `TimeoutFee` will be reimbursed to the account which escrowed the fee. In cases of timeout transactions, `RecvFee` and `AckFee` will be reimbursed.
In the case of a successful transaction, `RecvFee` will be paid out to the designated counterparty payee address which has been registered on the receiver chain and sent back with the `MsgAcknowledgement`, `AckFee` will be paid out to the relayer address which has submitted the `MsgAcknowledgement` on the sending chain (or the registered payee in case one has been registered for the relayer address), and `TimeoutFee` will be reimbursed to the account which escrowed the fee. In cases of timeout transactions, `RecvFee` and `AckFee` will be reimbursed.


```
MsgPayPacketFeeAsync{
PacketId channeltypes.PacketId,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should you explain a bit what PacketId is?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i thought it was kind of self explanatory....the ID of the packet?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In my opinion we should add the Go type definitions with the in line comments. We can probably omit the protobuf and json tags within the back ticks.

type MsgPayPacketFeeAsync struct {
	// unique packet identifier comprised of the channel ID, port ID and sequence
	PacketId types.PacketId `protobuf:"bytes,1,opt,name=packet_id,json=packetId,proto3" json:"packet_id" yaml:"packet_id"`
	// the packet fee associated with a particular IBC packet
	PacketFee PacketFee `protobuf:"bytes,2,opt,name=packet_fee,json=packetFee,proto3" json:"packet_fee" yaml:"packet_fee"`
}

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I thought that maybe explaining that packet ID consists of port ID, channel ID and sequence would be helpful, but feel free to keep it like this if you think that mentioning this is just too obvious...

docs/middleware/ics29-fee/msgs.md Show resolved Hide resolved
Copy link
Member

@damiannolan damiannolan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great so far, left a couple of small suggestions!

Comment on lines 13 to 21
```
MsgPayPacketFee{
Fee Fee,
SourcePortId string,
SourceChannelId string,
Signer string,
Relayers []string,
}
```
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we maybe use Go type definitions here instead? Alternatively we could use proto but I think Go is more fitting considering.Eg. remove trailing commas and add type declaration

Suggested change
```
MsgPayPacketFee{
Fee Fee,
SourcePortId string,
SourceChannelId string,
Signer string,
Relayers []string,
}
```
```
type MsgPayPacketFee struct {
Fee Fee
SourcePortId string
SourceChannelId string
Signer string
Relayers []string
}
```


where the PacketFee also specifies the `Fee` to be paid as well as the refund address for fees which are not paid out
```
PacketFee {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ditto! for all types :)


# A locked fee middleware module

The fee middleware module can become locked if the situation arises that the escrow account for the fees does not have sufficient funds to pay out the fees which have been registered for each packet. This situation indicates a severe bug. In this case, the fee module will be locked until manual intervention fixes the issue.
Copy link
Member

@damiannolan damiannolan Jun 24, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: feel free to ignore

Suggested change
The fee middleware module can become locked if the situation arises that the escrow account for the fees does not have sufficient funds to pay out the fees which have been registered for each packet. This situation indicates a severe bug. In this case, the fee module will be locked until manual intervention fixes the issue.
The fee middleware module can become locked if the situation arises that the escrow account for the fees does not have sufficient funds to pay out the fees which have been escrowed for each packet. This situation indicates a severe bug. In this case, the fee module will be locked until manual intervention fixes the issue.


In the case of a successful transaction, `RecvFee` will be paid out to the designated counterparty payee address which has been registered on the receiver chain and sent back with the `Acknowledgement`, `AckFee` will be paid out to the relayer address which has submitted the `Acknowledgement` on the sending chain (or the registered payee in case one has been registered for the relayer address), and `TimeoutFee` will be reimbursed to the account which escrowed the fee. In cases of timeout transactions, `RecvFee` and `AckFee` will be reimbursed.

Please note that fee payments are built on the assumption that sender chains are the source of incentives — the chain that sends the packets is the same chain where fee payments will occur -- please see <relayer operater> section to understand the flow for registering fee-receiving addresses.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we consider using the "payee" terminology here?

Suggested change
Please note that fee payments are built on the assumption that sender chains are the source of incentives — the chain that sends the packets is the same chain where fee payments will occur -- please see <relayer operater> section to understand the flow for registering fee-receiving addresses.
Please note that fee payments are built on the assumption that sender chains are the source of incentives — the chain that sends the packets is the same chain where fee payments will occur -- please see <relayer operater> section to understand the flow for registering fee payee addresses.

@@ -182,7 +182,7 @@ module.exports = {
title: "IBC Middleware Modules",
children: [
{
title: "ICS29 Fee Middleware",
title: "Fee Middleware",
Copy link
Member

@damiannolan damiannolan Jun 24, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should add this new page to the children array! I think you'll need to merge main first

RecvFee types.Coins
AckFee types.Coins
TimeoutFee types.Coins

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change

order: 3
-->

# Escrowing and paying out fees
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this section be titled just Escrowing fees? Since I think there is only a reference to the messages to escrow fees here and the part about paying out fees is talked about in the next section.

Copy link
Contributor

@seantking seantking left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice work! I pushed a commit just to satisfy the final nits and link to @damiannolan docs that were just merged.

@seantking seantking merged commit 1d94aad into main Jun 27, 2022
@seantking seantking deleted the charly/docs_fee_middleware branch June 27, 2022 15:34
damiannolan added a commit that referenced this pull request Jul 27, 2022
* docs: msg types for fee middleware (#1572)

* fix broken link

* fix: rm AllowUpdateAfter... check (#1118)

* update code & test

* update proto and adr026

* update CHANGELOG

* update cli docs

* update broken milestone link

* updated docs

* update re: comments

* nits: adding inline comments

Co-authored-by: Sean King <sean@seking.dev>

* chore: adding module name to incentivized packet events (#1580)

* docs: adding events to fee middleware docs (#1578)

* adding fee distribution docs for relayer operators

* adding validation information and basic cli examples

* removing unnecessary whitespace

* updating definitions

* adding ics29 fee middleware events docs

* cleanup

Co-authored-by: Sean King <seantking@users.noreply.github.com>

* docs: adding End Users section to ics29 docs (#1579)

* docs: adding End Users section to ics29 docs

* Update docs/middleware/ics29-fee/end-users.md

Co-authored-by: Carlos Rodriguez <carlos@interchain.io>

* Update docs/middleware/ics29-fee/end-users.md

Co-authored-by: Carlos Rodriguez <carlos@interchain.io>

* Update docs/middleware/ics29-fee/end-users.md

Co-authored-by: Carlos Rodriguez <carlos@interchain.io>

* Update docs/middleware/ics29-fee/end-users.md

Co-authored-by: Carlos Rodriguez <carlos@interchain.io>

* Update docs/middleware/ics29-fee/end-users.md

Co-authored-by: Carlos Rodriguez <carlos@interchain.io>

* Update docs/middleware/ics29-fee/end-users.md

Co-authored-by: Carlos Rodriguez <carlos@interchain.io>

* Update docs/middleware/ics29-fee/end-users.md

Co-authored-by: Carlos Rodriguez <carlos@interchain.io>

* Update docs/middleware/ics29-fee/end-users.md

Co-authored-by: Carlos Rodriguez <carlos@interchain.io>

* Update docs/middleware/ics29-fee/end-users.md

Co-authored-by: Damian Nolan <damiannolan@gmail.com>

* chore: add link

Co-authored-by: Carlos Rodriguez <carlos@interchain.io>
Co-authored-by: Damian Nolan <damiannolan@gmail.com>

* feat: emitting an event when handling a client upgrade proposal (#1570)

* feat: emitting an event when handling a client upgrade proposal

* refactor: only emit event if err is nil

* refactor: idiotmatic go:

* docs: nits (#1595)

* docs: document that version string can be empty as argument of RegisterInterchainAccount (#1582)

Co-authored-by: Carlos Rodriguez <crodveg@gmail.com>

* docs: add upgrade client proposal event (#1596)

* Consolidate usage of NewErrorAcknowledgement (#1565)

* docs: adding line about module accounts / invariants (#1597)

* docs: adding line about module accounts / invariants

* Update docs/middleware/ics29-fee/fee-distribution.md

Co-authored-by: Damian Nolan <damiannolan@gmail.com>

* Update docs/middleware/ics29-fee/fee-distribution.md

Co-authored-by: Damian Nolan <damiannolan@gmail.com>

Co-authored-by: Damian Nolan <damiannolan@gmail.com>

* follow up nits to #1565 (#1598)

* delete test files and add error to transfer types

* review comments

* build(deps): bump github.com/stretchr/testify from 1.7.5 to 1.8.0 (#1616)

Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.7.5 to 1.8.0.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](stretchr/testify@v1.7.5...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>

* chore: bump go package version to v4 (#1564)

* chore: bump go package version to v4

* update go.mod

* fix alignment

* fix build

* review comments

* build fixes

* deps: bumping go version 1.18 (#1627)

* bumping go version 1.18

* updating broken workflow setup

* add backport to v4.0.x and remove backports to v1 (EoL) (#1629)

* delete unused 04-channel version functions (#1636)

* delete unused code and associated tests

* Update CHANGELOG.md

* build(deps): bump github.com/cosmos/cosmos-sdk from 0.45.5 to 0.45.6 (#1615)

* build(deps): bump github.com/cosmos/cosmos-sdk from 0.45.5 to 0.45.6

Bumps [github.com/cosmos/cosmos-sdk](https://github.com/cosmos/cosmos-sdk) from 0.45.5 to 0.45.6.
- [Release notes](https://github.com/cosmos/cosmos-sdk/releases)
- [Changelog](https://github.com/cosmos/cosmos-sdk/blob/main/CHANGELOG.md)
- [Commits](cosmos/cosmos-sdk@v0.45.5...v0.45.6)

---
updated-dependencies:
- dependency-name: github.com/cosmos/cosmos-sdk
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update CHANGELOG.md

* copying part of codeql workflow to try to make it pass

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Carlos Rodriguez <carlos@interchain.io>
Co-authored-by: Carlos Rodriguez <crodveg@gmail.com>

* update mergify.yml with new release branches (#1654)

* Script to dynamically generate list of e2e tests (E2E #1) (#1644)

* Add GitHub actions for e2e tests (E2E #2) (#1646)

* Remove crossings hello (#1317)

* remove crossing hellos from ChanOpenTry

* remove crossing hellos testcase

* revert single connectionHops check

* add comment in MsgChannelOpenTry tx proto about deprecate field

* Update proto/ibc/core/channel/v1/tx.proto

Co-authored-by: Aditya <adityasripal@gmail.com>

* minor fixes && UPDATE CHANGELOG.md

* Update proto/ibc/core/channel/v1/tx.proto

Co-authored-by: Carlos Rodriguez <carlos@interchain.io>

* Update proto/ibc/core/channel/v1/tx.proto

Co-authored-by: Damian Nolan <damiannolan@gmail.com>

* apply remaining changes for crossing hello removal

Deprecate previous channel id with proto tag
Remove unnecessary test cases from 04-channel
Remove crossing hello check in transfer application and the associated test case

* remove previous channel check in WriteChannelOpenTry

* regenerate proto files

* update documentation

* add migration documentation

* remove unnecessary doc

* remove crossing hello notion from ChanOpenAck

* apply review suggestions

Co-authored-by: Aditya <adityasripal@gmail.com>
Co-authored-by: Carlos Rodriguez <carlos@interchain.io>
Co-authored-by: Damian Nolan <damiannolan@gmail.com>
Co-authored-by: Jacob Gadikian <jacobgadikian@gmail.com>
Co-authored-by: Colin Axnér <25233464+colin-axner@users.noreply.github.com>

* docs: update roadmap (#1678)

* update roadmap

* update roadmap

* Update roadmap.md

Co-authored-by: Carlos Rodriguez <crodveg@gmail.com>

* refactor: remove crossing hellos from 03-connection (#1672)

* remove crossing hello check from ConnOpenTry and ConnOpenAck

* remove unnecessary test cases and fix build

* fix tests and add migration docs

* fix connection version check in conn open ack

* add changelog entry

* Update modules/core/03-connection/keeper/handshake.go

Co-authored-by: Aditya <adityasripal@gmail.com>

* remove unnecessary testing function

* improve migration documentation as per review suggestion

Co-authored-by: Aditya <adityasripal@gmail.com>

* (core/23-commitment/types) doc: fix typo (#1694)

* remove spurious `TestABCICodeDeterminism` tests (#1695)

## Description

Thanks @colin-axner for noticing this.

closes: #XXXX

---

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

- [x] Targeted PR against correct branch (see [CONTRIBUTING.md](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#pr-targeting))
- [ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
- [ ] Code follows the [module structure standards](https://github.com/cosmos/cosmos-sdk/blob/master/docs/building-modules/structure.md).
- [ ] Wrote unit and integration [tests](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#testing)
- [ ] Updated relevant documentation (`docs/`) or specification (`x/<module>/spec/`)
- [ ] Added relevant `godoc` [comments](https://blog.golang.org/godoc-documenting-go-code).
- [ ] Added a relevant changelog entry to the `Unreleased` section in `CHANGELOG.md`
- [x] Re-reviewed `Files changed` in the Github PR explorer
- [ ] Review `Codecov Report` in the comment section below once CI passes

* update bug report issue template (#1693)

* fix codeowners for 02-client (#1696)

## Description

Thanks again @colin-axner for signaling this!

closes: #XXXX

---

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

- [x] Targeted PR against correct branch (see [CONTRIBUTING.md](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#pr-targeting))
- [ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
- [ ] Code follows the [module structure standards](https://github.com/cosmos/cosmos-sdk/blob/master/docs/building-modules/structure.md).
- [ ] Wrote unit and integration [tests](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#testing)
- [ ] Updated relevant documentation (`docs/`) or specification (`x/<module>/spec/`)
- [ ] Added relevant `godoc` [comments](https://blog.golang.org/godoc-documenting-go-code).
- [ ] Added a relevant changelog entry to the `Unreleased` section in `CHANGELOG.md`
- [x] Re-reviewed `Files changed` in the Github PR explorer
- [ ] Review `Codecov Report` in the comment section below once CI passes

* build(deps): bump google.golang.org/grpc from 1.47.0 to 1.48.0 (#1699)

Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.47.0 to 1.48.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](grpc/grpc-go@v1.47.0...v1.48.0)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  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>

* docs: update middleware documentation (#1639)

* docs: update middleware documentation

* remove old text and add func keyword

* alignment

* fix alignment

* Update develop.md

* review comments

* remove empty line

* docs: add links in middleware docs to fee middleware implementation (#1641)

* docs: add links in middleware docs to fee middleware implementation

* add extra line for better readability

* fix typos

* Adding github action to run goimports (#1673)

* Add E2ETestSuite Type (E2E #3) (#1650)

* Separate go mod for e2e (E2E #4) (#1701)

* put back module name in event (#1681)

* fix typo

* Extracting e2e tests into two separate workflows (#1719)

* add categories

* Add fee middleware test suite functions (E2E #5) (#1710)

* Build local image to run tests with make e2e-test (#1722)

* Remove leftover crossing hello tests in connection handshake (#1724)

* remove leftover crossing hello tests in connection handshake

* fix bug in tests

* chore: adding environment variable to specify go relayer image (#1727)

* Thomas/1584 update docs apps (#1675)

* restructure content according to outline, fix image and syntax highlighting, fix titles and prepare for content updates

* rewrite bind port section

* restructure applications doc into folder structure

* add keeper section, make some minor corrections in bind ports, custom packet and implmenent IBC module sections

* update ibcmodule interface to encorporate the simpliefied handshake callbacks and version negotiation

* fix broken links

* fix remaining broken link

* fix some nits, correct for removal of crossing hellos and add some more explanation on portIDs

* update middleware docs to resolve merge confilicts

* update fee mw docs, add formating, fix typos, increase readability (#1665)

* update fee mw docs, add formating, fix typos, increase readability

* fix broken link

* Apply suggestions from code review

(De)capitalize headings and references to headings for consistency

Co-authored-by: Carlos Rodriguez <carlos@interchain.io>

* resolving merge conflict

* split the CLI commands and small typo correction

Co-authored-by: Carlos Rodriguez <carlos@interchain.io>

* chore: remove @fedekunze from CODEOWNERS (#1733)

* Test for AsyncSingleSender (E2E #6) (#1682)

* fix: running e2e-fork for dependabot PRs (#1745)

* Adding manual triggering of e2e via workflow dispatch (#1749)

* chore: denom traces migration handler (#1680)

* update code & test

* register migrator service

* add changelog entry for #1680

* add issue templates for epics and releases (#1702)

* add issue templates for epics and releases

* remove text

Co-authored-by: Carlos Rodriguez <crodveg@gmail.com>

* fix typo

* fix typo

* feat: allow governance to update the TrustingPeriod of the 07-tendermint light client (#1713)

* initial commit

* format imports

* update docs

* update CHANGELOG

* update upgrade dev docs

* update re: pr comments

* E2E Test: TestMsgPayPacketFeeSingleSender (#1756)

* move entry to right place

* build(deps): bump docker/build-push-action from 3.0.0 to 3.1.0 (#1743)

Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 3.0.0 to 3.1.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](docker/build-push-action@e551b19...1cb9d22)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  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>
Co-authored-by: Carlos Rodriguez <carlos@interchain.io>

* chore: Update makefile (#1770)

* remove unused tools, remove incorrect import formatting

* uncomment command in makefile

* add version matrix (#1767)

* add pseudocode to handle empty version string in OnChanOpenInit

* fix broken link (#1776)

* add item to update the version matrix after a release (#1775)

* E2E Test: TestMsgPayPacketFeeSingleSenderTimesOut (#1751)

* Move scripts from .github directory into cmd (#1787)

Co-authored-by: Charly <charly@interchain.berlin>
Co-authored-by: Sean King <sean@seking.dev>
Co-authored-by: Sean King <seantking@users.noreply.github.com>
Co-authored-by: Carlos Rodriguez <carlos@interchain.io>
Co-authored-by: Carlos Rodriguez <crodveg@gmail.com>
Co-authored-by: Cian Hatton <cian@interchain.io>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: vuong <56973102+vuong177@users.noreply.github.com>
Co-authored-by: Aditya <adityasripal@gmail.com>
Co-authored-by: Jacob Gadikian <jacobgadikian@gmail.com>
Co-authored-by: Colin Axnér <25233464+colin-axner@users.noreply.github.com>
Co-authored-by: rene <41963722+renaynay@users.noreply.github.com>
Co-authored-by: tmsdkeys <98807841+tmsdkeys@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

explain how fee middleware works
5 participants