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

[Refactor] Replace embedded Service with ServiceId #802

Merged
merged 16 commits into from
Sep 11, 2024

Conversation

red-0ne
Copy link
Contributor

@red-0ne red-0ne commented Sep 7, 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

Type of change

Select one or more from the following:

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

@red-0ne red-0ne added service Anything related to general-purpose RPC service support code health Cleans up some code labels Sep 7, 2024
@red-0ne red-0ne self-assigned this Sep 7, 2024
@Olshansk Olshansk added this to the Shannon Beta TestNet Launch milestone Sep 9, 2024
Copy link
Member

@Olshansk Olshansk left a comment

Choose a reason for hiding this comment

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

That was much easier than expected, eh?

x/shared/types/service.go Show resolved Hide resolved
Copy link
Contributor

@bryanchriswhite bryanchriswhite left a comment

Choose a reason for hiding this comment

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

👌 Nice one @red-0ne! 😎

It's interesting to see the effect this change has on the imports. I wonder if it has any effect on the module dependency tree. 🤔

x/proof/types/message_submit_proof_test.go Outdated Show resolved Hide resolved
x/session/keeper/session_hydrator.go Show resolved Hide resolved
x/session/types/errors.go Outdated Show resolved Hide resolved
x/shared/types/service.go Outdated Show resolved Hide resolved
Copy link

The CI will now also run the e2e tests on devnet, which increases the time it takes to complete all CI checks.

You may need to run make trigger_ci to submit an empty commit that'll trigger the tests.

GCP workloads (requires changing the namespace to 802)
Grafana network dashboard for devnet-issue-802

@github-actions github-actions bot added devnet push-image CI related - pushes images to ghcr.io labels Sep 10, 2024
@red-0ne red-0ne changed the base branch from chore/session-service-basic-validation to main September 10, 2024 13:06
Copy link
Contributor

@bryanchriswhite bryanchriswhite left a comment

Choose a reason for hiding this comment

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

Preemptively approving. 👍

Just a few more suggestions regarding error messages; otherwise, LGTM. 🚢

x/session/types/query_get_session_request.go Outdated Show resolved Hide resolved
x/session/types/session_header.go Outdated Show resolved Hide resolved
x/session/types/session_header.go Outdated Show resolved Hide resolved
x/shared/helpers/service_configs.go Outdated Show resolved Hide resolved
x/shared/helpers/service_configs.go Outdated Show resolved Hide resolved
x/shared/types/service.go Outdated Show resolved Hide resolved
x/shared/types/service.go Outdated Show resolved Hide resolved
@Olshansk
Copy link
Member

Let's merge this in!

@red-0ne red-0ne added the consensus-breaking IMPORTANT! If the PR with this tag is merged, next release WILL HAVE TO BE an upgrade. label Sep 11, 2024
@red-0ne red-0ne merged commit 88a9197 into main Sep 11, 2024
11 checks passed
bryanchriswhite added a commit that referenced this pull request Sep 16, 2024
…ke-transfer

* pokt/main:
  [Tooling, Code Health] refactor: split Makefile into multiple files (#816)
  [Tooling] fix and add makefile targets (#814)
  [Docs] Add a debugging tip: using transaction hashes (#786)
  [Refactor] Replace embedded Service with ServiceId (#802)
  [Session,Service] Ensure SessionHeader and Service basic validation. (#782)
  [Tokenomics] Preparation for Global Mint Reimbursement Request (#755)
  [Quick PR][LocalNet] Turn off minimum-gas-prices (#805)
  [GATEWAY POC] A couple helpers to help deploy a PATH gateway (#801)
  [Documentation] Cosmovisor  (#768)
  [CI] Add cosmovisor to container images (#796)
  Use a descriptive error if service ID is not found (#787)
  [SessionManager] Implement off-chain proof params usage (#765)
  [SDK] Update shannon sdk dependency (#800)
  [E2E Test] Remove redundant logging (#798)
bryanchriswhite added a commit that referenced this pull request Sep 16, 2024
…actor/transfer-msg_period-param

* issues/657/feat/app-stake-transfer:
  [Tooling, Code Health] refactor: split Makefile into multiple files (#816)
  [Tooling] fix and add makefile targets (#814)
  [Docs] Add a debugging tip: using transaction hashes (#786)
  [Refactor] Replace embedded Service with ServiceId (#802)
  [Session,Service] Ensure SessionHeader and Service basic validation. (#782)
  [Tokenomics] Preparation for Global Mint Reimbursement Request (#755)
  [Quick PR][LocalNet] Turn off minimum-gas-prices (#805)
  [GATEWAY POC] A couple helpers to help deploy a PATH gateway (#801)
  [Documentation] Cosmovisor  (#768)
  [CI] Add cosmovisor to container images (#796)
  Use a descriptive error if service ID is not found (#787)
  [SessionManager] Implement off-chain proof params usage (#765)
  [SDK] Update shannon sdk dependency (#800)
  [E2E Test] Remove redundant logging (#798)
bryanchriswhite added a commit that referenced this pull request Sep 16, 2024
…ues/657/chore/app-transfer-period

* issues/657/refactor/transfer-msg_period-param:
  [Tooling, Code Health] refactor: split Makefile into multiple files (#816)
  [Tooling] fix and add makefile targets (#814)
  [Docs] Add a debugging tip: using transaction hashes (#786)
  [Refactor] Replace embedded Service with ServiceId (#802)
  [Session,Service] Ensure SessionHeader and Service basic validation. (#782)
  [Tokenomics] Preparation for Global Mint Reimbursement Request (#755)
  [Quick PR][LocalNet] Turn off minimum-gas-prices (#805)
  [GATEWAY POC] A couple helpers to help deploy a PATH gateway (#801)
  [Documentation] Cosmovisor  (#768)
  [CI] Add cosmovisor to container images (#796)
  Use a descriptive error if service ID is not found (#787)
  [SessionManager] Implement off-chain proof params usage (#765)
  [SDK] Update shannon sdk dependency (#800)
  [E2E Test] Remove redundant logging (#798)
okdas pushed a commit that referenced this pull request Nov 14, 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]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
code health Cleans up some code consensus-breaking IMPORTANT! If the PR with this tag is merged, next release WILL HAVE TO BE an upgrade. devnet devnet-test-e2e push-image CI related - pushes images to ghcr.io service Anything related to general-purpose RPC service support
Projects
Status: ✅ Done
Development

Successfully merging this pull request may close these issues.

3 participants