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

[Infra] Automatically add the consensus-breaking label #791

Open
3 tasks
Olshansk opened this issue Sep 4, 2024 · 3 comments
Open
3 tasks

[Infra] Automatically add the consensus-breaking label #791

Olshansk opened this issue Sep 4, 2024 · 3 comments
Assignees
Labels
community A ticket intended to potentially be picked up by a community member consensus-breaking IMPORTANT! If the PR with this tag is merged, next release WILL HAVE TO BE an upgrade. infra Infra or tooling related improvements, additions or fixes on-chain On-chain business logic potential community Can be a community task in the future but not ready to be picked up yet

Comments

@Olshansk
Copy link
Member

Olshansk commented Sep 4, 2024

Objective

Easily track which changes (and releases) are consensus breaking.

Origin Document

Screenshot 2024-09-04 at 12 19 02 PM

Goals

  • Make it easy to track which releases are consensus breaking

Deliverables

  • A GitHub CI workflow that adds the consensus-breaking label automatically when:
    • Anything under x/ is modified
    • Anything that under x/ imports changes

Non-goals / Non-deliverables

  • Having complex business logic that gives a 100% guarantee

Creator: @Olshansk
Co-Owners: @okdas

@Olshansk Olshansk added infra Infra or tooling related improvements, additions or fixes on-chain On-chain business logic potential community Can be a community task in the future but not ready to be picked up yet consensus-breaking IMPORTANT! If the PR with this tag is merged, next release WILL HAVE TO BE an upgrade. labels Sep 4, 2024
@Olshansk Olshansk added this to the Shannon Quality of Life milestone Sep 4, 2024
@Olshansk Olshansk added this to Shannon Sep 4, 2024
@Olshansk Olshansk moved this to 📋 Backlog in Shannon Sep 4, 2024
@okdas
Copy link
Member

okdas commented Sep 4, 2024

Ha-ha, I looked into that yesterday! Not a very trivial thing to do, but doable.
I believe it will be needed for a Beta TestNet.

@Olshansk Olshansk added the community A ticket intended to potentially be picked up by a community member label Sep 4, 2024
@Olshansk
Copy link
Member Author

Olshansk commented Sep 4, 2024

@okdas Can you just leave your ideas here so someone in the community can build it?

red-0ne added a commit that referenced this issue Sep 4, 2024
## Summary

Enable the `rest` service by default in Tilt

## Issue

Since the `rest` service is used in E2E tests, it should be enabled by
default to avoid non-edited `localnet_config.yaml` files to succeed E2E
tests.


![image](https://github.com/user-attachments/assets/88ac37ca-bf9f-4146-83f1-2eafc2f3c829)

## Type of change

Select one or more from the following:

- [ ] New feature, functionality or library
- [ ] Consensus breaking; add the `consensus-breaking` label if so. See
#791 for details
- [ ] Bug fix
- [x] Code health or cleanup
- [ ] Documentation
- [ ] Other (specify)

## Testing

- [ ] **Documentation**: `make docusaurus_start`; only needed if you
make doc changes
- [ ] **Unit Tests**: `make go_develop_and_test`
- [ ] **LocalNet E2E Tests**: `make test_e2e`
- [ ] **DevNet E2E Tests**: Add the `devnet-test-e2e` label to the PR.

## Sanity Checklist

- [ ] I have tested my changes using the available tooling
- [ ] I have commented my code
- [ ] I have performed a self-review of my own code; both comments &
source code
- [ ] I create and reference any new tickets, if applicable
- [ ] I have left TODOs throughout the codebase, if applicable
Olshansk pushed a commit that referenced this issue Sep 4, 2024
## Summary

Enable the `rest` service by default in Tilt

## Issue

Since the `rest` service is used in E2E tests, it should be enabled by
default to avoid non-edited `localnet_config.yaml` files to succeed E2E
tests.


![image](https://github.com/user-attachments/assets/88ac37ca-bf9f-4146-83f1-2eafc2f3c829)

## Type of change

Select one or more from the following:

- [ ] New feature, functionality or library
- [ ] Consensus breaking; add the `consensus-breaking` label if so. See
#791 for details
- [ ] Bug fix
- [x] Code health or cleanup
- [ ] Documentation
- [ ] Other (specify)

## Testing

- [ ] **Documentation**: `make docusaurus_start`; only needed if you
make doc changes
- [ ] **Unit Tests**: `make go_develop_and_test`
- [ ] **LocalNet E2E Tests**: `make test_e2e`
- [ ] **DevNet E2E Tests**: Add the `devnet-test-e2e` label to the PR.

## Sanity Checklist

- [ ] I have tested my changes using the available tooling
- [ ] I have commented my code
- [ ] I have performed a self-review of my own code; both comments &
source code
- [ ] I create and reference any new tickets, if applicable
- [ ] I have left TODOs throughout the codebase, if applicable
okdas added a commit that referenced this issue Sep 5, 2024
## Summary

Bumps golang and cosmos sdk to the latest versions.


## Issue

- Discovered that the latest cosmovisor needs a newer go version in #796

## Type of change

Select one or more from the following:

- [ ] New feature, functionality or library
- [ ] Consensus breaking; add the `consensus-breaking` label if so. See
#791 for details
- [ ] Bug fix
- [x] Code health or cleanup
- [ ] Documentation
- [ ] Other (specify)

## Testing

- [ ] **Documentation**: `make docusaurus_start`; only needed if you
make doc changes
- [ ] **Unit Tests**: `make go_develop_and_test`
- [x] **LocalNet E2E Tests**: `make test_e2e`
- [x] **DevNet E2E Tests**: Add the `devnet-test-e2e` label to the PR.

## Sanity Checklist

- [ ] I have tested my changes using the available tooling
- [ ] I have commented my code
- [ ] I have performed a self-review of my own code; both comments &
source code
- [ ] I create and reference any new tickets, if applicable
- [ ] I have left TODOs throughout the codebase, if applicable
red-0ne added a commit that referenced this issue Sep 6, 2024
## Summary

* Update `ShannonSDK` dependency.
* Fix `InitSDKConfig` already being sealed by `ShannonSDK`

## Issue


![image](https://github.com/user-attachments/assets/6ef7d7e4-af61-4f1d-ad36-1e8e14bef067)

## Type of change

Select one or more from the following:

- [ ] New feature, functionality or library
- [ ] Consensus breaking; add the `consensus-breaking` label if so. See
#791 for details
- [ ] Bug fix
- [x] Code health or cleanup
- [ ] Documentation
- [ ] Other (specify)

## Testing

- [ ] **Documentation**: `make docusaurus_start`; only needed if you
make doc changes
- [x] **Unit Tests**: `make go_develop_and_test`
- [x] **LocalNet E2E Tests**: `make test_e2e`
- [ ] **DevNet E2E Tests**: Add the `devnet-test-e2e` label to the PR.

## Sanity Checklist

- [x] I have tested my changes using the available tooling
- [x] I have commented my code
- [x] I have performed a self-review of my own code; both comments &
source code
- [ ] I create and reference any new tickets, if applicable
- [ ] I have left TODOs throughout the codebase, if applicable
okdas added a commit that referenced this issue Sep 9, 2024
## Summary

Add cosmovisor binary to our container images. It will allow us to use
cosmovisor in
[docker-compose-example](https://github.com/pokt-network/poktroll-docker-compose-example)
repo in the future to automate upgrades.

## Type of change

Select one or more from the following:

- [ ] New feature, functionality or library
- [ ] Consensus breaking; add the `consensus-breaking` label if so. See
#791 for details
- [ ] Bug fix
- [ ] Code health or cleanup
- [ ] Documentation
- [x] Other - tooling

## Testing

No code was changed - no reason for extensive testing.

- Tested Dockerfile.release locally and Dockerfile.dev will be tested by
CI.

## Sanity Checklist

- [x] I have tested my changes using the available tooling
- [x] I have commented my code
- [x] I have performed a self-review of my own code; both comments &
source code
- [ ] I create and reference any new tickets, if applicable
- [ ] I have left TODOs throughout the codebase, if applicable
@Olshansk Olshansk mentioned this issue Sep 9, 2024
6 tasks
red-0ne added a commit that referenced this issue Sep 11, 2024
## Summary

This PR replaces all embedded `Service` entries with `ServiceId`.

Most of the changes are `Service` -> `ServiceId` replacements but
special attention has to be put on:
* x/session/types/session_header.go
* x/shared/helpers/service_configs.go
* x/shared/types/service.go
* x/service/types/message_add_service.go
* proto/poktroll/shared/service.proto
* proto/poktroll/session/types.proto
* proto/poktroll/session/query.proto

A follow-up to update `Shannon-SDK` is expected after approval.

E2E tests pass locally.

## Issue


![image](https://github.com/user-attachments/assets/c1feb50b-89c1-4b4f-b4cb-94cfb4ec5ade)

## Type of change

Select one or more from the following:

- [ ] New feature, functionality or library
- [ ] Consensus breaking; add the `consensus-breaking` label if so. See
#791 for details
- [ ] Bug fix
- [x] Code health or cleanup
- [ ] Documentation
- [ ] Other (specify)

## Testing

- [ ] **Documentation**: `make docusaurus_start`; only needed if you
make doc changes
- [x] **Unit Tests**: `make go_develop_and_test`
- [x] **LocalNet E2E Tests**: `make test_e2e`
- [ ] **DevNet E2E Tests**: Add the `devnet-test-e2e` label to the PR.

## Sanity Checklist

- [x] I have tested my changes using the available tooling
- [ ] I have commented my code
- [x] I have performed a self-review of my own code; both comments &
source code
- [ ] I create and reference any new tickets, if applicable
- [ ] I have left TODOs throughout the codebase, if applicable

---------

Co-authored-by: Daniel Olshansky <[email protected]>
red-0ne added a commit that referenced this issue Jan 7, 2025
## Summary

This pull request includes several changes to the `pkg/client` package,
focusing on adding gas limit and gas price parameters to transaction
signing and broadcasting functions, as well as making related updates in
tests and configurations.

It also updates the `BroadcastTx` method in `pkg/client/tx/context.go`
to use `BroadcastTxSync` instead of `BroadcastTxAsync` for better error
handling during the check-tx ABCI operation.

Minor Fix: Changed the URL in `makefiles/relay.mk` to include a trailing
slash.

## Issue


![image](https://github.com/user-attachments/assets/535e99b3-621b-46bd-a335-49e167c50cba)

## Type of change

Select one or more from the following:

- [ ] New feature, functionality or library
- [ ] Consensus breaking; add the `consensus-breaking` label if so. See
#791 for details
- [x] Bug fix
- [ ] Code health or cleanup
- [ ] Documentation
- [ ] Other (specify)

## Testing

- [ ] **Documentation**: `make docusaurus_start`; only needed if you
make doc changes
- [x] **Unit Tests**: `make go_develop_and_test`
- [x] **LocalNet E2E Tests**: `make test_e2e`
- [ ] **DevNet E2E Tests**: Add the `devnet-test-e2e` label to the PR.

## Sanity Checklist

- [x] I have tested my changes using the available tooling
- [x] I have commented my code
- [x] I have performed a self-review of my own code; both comments &
source code
- [ ] I create and reference any new tickets, if applicable
- [x] I have left TODOs throughout the codebase, if applicable

---------

Co-authored-by: Dima K. <[email protected]>
Co-authored-by: Dmitry K <[email protected]>
red-0ne added a commit that referenced this issue Jan 10, 2025
## Summary

This pull request includes several updates to the load-testing
configuration and test files, as well as improvements to the relay
stress test suite. The most important changes include updating funding
account addresses, modifying gateway configurations, and refactoring
various test functions for better accuracy.

## Type of change

Select one or more from the following:

- [ ] New feature, functionality or library
- [ ] Consensus breaking; add the `consensus-breaking` label if so. See
#791 for details
- [x] Bug fix
- [ ] Code health or cleanup
- [ ] Documentation
- [ ] Other (specify)

## Testing

- [x] **Unit Tests**: `make go_develop_and_test`
- [x] **LocalNet E2E Tests**: `make test_e2e`
- [ ] **DevNet E2E Tests**: Add the `devnet-test-e2e` label to the PR.

## Sanity Checklist

- [x] I have tested my changes using the available tooling
- [ ] I have commented my code
- [x] I have performed a self-review of my own code; both comments &
source code
- [ ] I create and reference any new tickets, if applicable
- [ ] I have left TODOs throughout the codebase, if applicable
red-0ne added a commit that referenced this issue Jan 11, 2025
## Summary

Standardize the terminology used across the codebase and documentation
by replacing instances of "on-chain" with "onchain" and "off-chain" with
"offchain".

## Issue


![image](https://github.com/user-attachments/assets/f8603d06-470e-4b4f-8f13-d2af003ef021)

![image](https://github.com/user-attachments/assets/bee20cd5-db43-49e8-9b8b-3b707e9262fb)


## Type of change

Select one or more from the following:

- [ ] New feature, functionality or library
- [ ] Consensus breaking; add the `consensus-breaking` label if so. See
#791 for details
- [ ] Bug fix
- [x] Code health or cleanup
- [ ] Documentation
- [ ] Other (specify)

## Testing

- [x] **Unit Tests**: `make go_develop_and_test`
- [x] **LocalNet E2E Tests**: `make test_e2e`

## Sanity Checklist

- [ ] I have tested my changes using the available tooling
- [ ] I have commented my code
- [x] I have performed a self-review of my own code; both comments &
source code
- [ ] I create and reference any new tickets, if applicable
- [ ] I have left TODOs throughout the codebase, if applicable
red-0ne added a commit that referenced this issue Jan 16, 2025
## Summary

This pull request includes changes to support larger proof transactions
by increasing the maximum allowed sizes for RPC and mempool, and by
adjusting the gRPC client configuration.

## Issue

`RelayMiner`s simulate and broadcast transaction with multiple proofs
that tend to be too large than the default gRPC client's
`MaxCall{Send,Recv}MsgSize`.


![image](https://github.com/user-attachments/assets/e9d57be0-07c8-498e-9494-50b18a1fbf49)

## Type of change

Select one or more from the following:

- [ ] New feature, functionality or library
- [ ] Consensus breaking; add the `consensus-breaking` label if so. See
#791 for details
- [x] Bug fix
- [ ] Code health or cleanup
- [ ] Documentation
- [ ] Other (specify)

## Testing


- [x] **Unit Tests**: `make go_develop_and_test`
- [x] **LocalNet E2E Tests**: `make test_e2e`
- [ ] **DevNet E2E Tests**: Add the `devnet-test-e2e` label to the PR.

## Sanity Checklist

- [x] I have tested my changes using the available tooling
- [x] I have commented my code
- [x] I have performed a self-review of my own code; both comments &
source code
- [ ] I create and reference any new tickets, if applicable
- [x] I have left TODOs throughout the codebase, if applicable

---------

Co-authored-by: Dmitry K <[email protected]>
red-0ne added a commit that referenced this issue Jan 16, 2025
…t C&P (#1026)

## Summary

This pull request includes changes to `pkg/relayer/session/claim.go` to
1. Delete SMTs when funds are insufficient.
2. Account for the gas cost of creating claims and submitting proofs.

## Issue

When the SupplierOperator lacks sufficient funds to process claim and
proof submissions, the corresponding SMTs are not deleted from the file
system. This issue becomes more severe at scale, especially when the
RelayMiner is handling multiple claims from various applications.


![image](https://github.com/user-attachments/assets/024cb8c2-9190-4f60-9c81-da66c5a2dd0a)

## Type of change

Select one or more from the following:

- [ ] New feature, functionality or library
- [ ] Consensus breaking; add the `consensus-breaking` label if so. See
#791 for details
- [x] Bug fix
- [ ] Code health or cleanup
- [ ] Documentation
- [ ] Other (specify)

## Testing

<!-- READ & DELETE:
- Documentation changes: only keep this if you're making documentation
changes
- Unit Testing: Remove this if you didn't make code changes
- E2E Testing: Remove this if you didn't make code changes
- See the quickstart guide for instructions:
https://dev.poktroll.com/developer_guide/quickstart
- DevNet E2E Testing: Remove this if you didn't make code changes
- THIS IS VERY EXPENSIVE: only do it after all the reviews are complete.
- Optionally run `make trigger_ci` if you want to re-trigger tests
without any code changes
- If tests fail, try re-running failed tests only using the GitHub UI as
shown
[here](https://github.com/pokt-network/poktroll/assets/1892194/607984e9-0615-4569-9452-4c730190c1d2)
-->

- [ ] **Documentation**: `make docusaurus_start`; only needed if you
make doc changes
- [x] **Unit Tests**: `make go_develop_and_test`
- [x] **LocalNet E2E Tests**: `make test_e2e`
- [ ] **DevNet E2E Tests**: Add the `devnet-test-e2e` label to the PR.

## Sanity Checklist

- [x] I have tested my changes using the available tooling
- [x] I have commented my code
- [x] I have performed a self-review of my own code; both comments &
source code
- [ ] I create and reference any new tickets, if applicable
- [ ] I have left TODOs throughout the codebase, if applicable
@Olshansk Olshansk mentioned this issue Jan 16, 2025
15 tasks
Olshansk pushed a commit that referenced this issue Jan 16, 2025
## Summary

This pull request includes changes to support larger proof transactions
by increasing the maximum allowed sizes for RPC and mempool, and by
adjusting the gRPC client configuration.

## Issue

`RelayMiner`s simulate and broadcast transaction with multiple proofs
that tend to be too large than the default gRPC client's
`MaxCall{Send,Recv}MsgSize`.


![image](https://github.com/user-attachments/assets/e9d57be0-07c8-498e-9494-50b18a1fbf49)

## Type of change

Select one or more from the following:

- [ ] New feature, functionality or library
- [ ] Consensus breaking; add the `consensus-breaking` label if so. See
#791 for details
- [x] Bug fix
- [ ] Code health or cleanup
- [ ] Documentation
- [ ] Other (specify)

## Testing


- [x] **Unit Tests**: `make go_develop_and_test`
- [x] **LocalNet E2E Tests**: `make test_e2e`
- [ ] **DevNet E2E Tests**: Add the `devnet-test-e2e` label to the PR.

## Sanity Checklist

- [x] I have tested my changes using the available tooling
- [x] I have commented my code
- [x] I have performed a self-review of my own code; both comments &
source code
- [ ] I create and reference any new tickets, if applicable
- [x] I have left TODOs throughout the codebase, if applicable

---------

Co-authored-by: Dmitry K <[email protected]>
Olshansk added a commit that referenced this issue Jan 20, 2025
## Summary

Update the supplier query endpoint to use **AutoCLI** and add a flag to
filter by `ServiceID`

### Primary Changes:
- Add `service_id` filter to `list-suppliers` query to support filtering
suppliers by service ID
- Update CLI command from `list-supplier` to `list-suppliers` for
improved clarity
- Change revenue share percentage field type from `float32` to `uint32`
to fix autoCLI issues

### Secondary changes:
- Update documentation and config examples to reflect the new revenue
share percentage type
- Remove legacy CLI commands in favor of autocli implementation

<img width="1286" alt="Screenshot 2025-01-16 at 12 58 06 PM"
src="https://github.com/user-attachments/assets/63583424-9a96-4195-82b0-6e58cc676e8b"
/>
<img width="1295" alt="Screenshot 2025-01-16 at 12 57 52 PM"
src="https://github.com/user-attachments/assets/f2c10d81-5e5d-4b76-b375-bd2190eba7a5"
/>



## Type of change

Select one or more from the following:

- [x] New feature, functionality or library
- [x] Consensus breaking; add the `consensus-breaking` label if so. See
#791 for details
- [ ] Bug fix
- [ ] Code health or cleanup
- [ ] Documentation
- [ ] Other (specify)

## Testing

- [x] **Documentation**: `make docusaurus_start`; only needed if you
make doc changes
- [x] **Unit Tests**: `make go_develop_and_test`
- [ ] **LocalNet E2E Tests**: `make test_e2e`
- [ ] **DevNet E2E Tests**: Add the `devnet-test-e2e` label to the PR.

## Sanity Checklist

- [ ] I have tested my changes using the available tooling
- [x] I have commented my code
- [x] I have performed a self-review of my own code; both comments &
source code
- [x] I create and reference any new tickets, if applicable
- [x] I have left TODOs throughout the codebase, if applicable
okdas added a commit that referenced this issue Jan 24, 2025
## Summary

Performed the first upgrade on the Alpha TestNet. Add some documentation
changes to prevent some issues in the future.


## Issue

N/A

## Type of change

Select one or more from the following:

- [ ] New feature, functionality or library
- [ ] Consensus breaking; add the `consensus-breaking` label if so. See
#791 for details
- [ ] Bug fix
- [x] Code health or cleanup
- [x] Documentation
- [ ] Other (specify)

## Testing


- [x] **Documentation**: `make docusaurus_start`; only needed if you
make doc changes
- [ ] **Unit Tests**: `make go_develop_and_test`
- [ ] **LocalNet E2E Tests**: `make test_e2e`
- [ ] **DevNet E2E Tests**: Add the `devnet-test-e2e` label to the PR.

## Sanity Checklist

- [ ] I have tested my changes using the available tooling
- [ ] I have commented my code
- [ ] I have performed a self-review of my own code; both comments &
source code
- [ ] I create and reference any new tickets, if applicable
- [ ] I have left TODOs throughout the codebase, if applicable

---------

Co-authored-by: DK <[email protected]>
Co-authored-by: Daniel Olshansky <[email protected]>
Co-authored-by: Bryan White <[email protected]>
bryanchriswhite added a commit that referenced this issue Jan 24, 2025
## Summary

Construct a new logger instance for each session during settlement to
avoid field duplication.

## Issue

-
https://discord.com/channels/824324475256438814/1316109400917934201/1330007345882988665

## Type of change

Select one or more from the following:

- [ ] New feature, functionality or library
- [ ] Consensus breaking; add the `consensus-breaking` label if so. See
#791 for details
- [x] Bug fix
- [ ] Code health or cleanup
- [ ] Documentation
- [ ] Other (specify)

## Testing

- [ ] **Documentation**: `make docusaurus_start`; only needed if you
make doc changes
- [ ] **Unit Tests**: `make go_develop_and_test`
- [ ] **LocalNet E2E Tests**: `make test_e2e`
- [ ] **DevNet E2E Tests**: Add the `devnet-test-e2e` label to the PR.

## Sanity Checklist

- [ ] I have tested my changes using the available tooling
- [ ] I have commented my code
- [ ] I have performed a self-review of my own code; both comments &
source code
- [ ] I create and reference any new tickets, if applicable
- [ ] I have left TODOs throughout the codebase, if applicable
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
community A ticket intended to potentially be picked up by a community member consensus-breaking IMPORTANT! If the PR with this tag is merged, next release WILL HAVE TO BE an upgrade. infra Infra or tooling related improvements, additions or fixes on-chain On-chain business logic potential community Can be a community task in the future but not ready to be picked up yet
Projects
Status: 🏗 In progress
Development

No branches or pull requests

2 participants