Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Organize validator set

Đang mở
#560 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

  • #561 của @junha1 — đã đóng, không merge

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
18/100
Loại issue
Tái cấu trúc
Độ rõ ràng
Cần làm rõ
Mức độ hoạt động
Đình trệ
Công nghệ
rust
Lĩnh vực
blockchain

Hướng nghiên cứu

Bắt đầu bằng cách lần theo các chỗ sử dụng của những kiểu validator được nêu tên (ctypes::Validator, ctypes::ValidatorSet, foundry_graphql_engine::Validator) và interface của coordinator module. Xem lại cách các tập validator hiện tại và tiếp theo được lưu trữ và băm, sau đó xác định các điểm vào hiện có của kiểm thử end-to-end. Công việc được xem là hoàn tất khi các kiểu validator lỗi thời được loại bỏ, cả hai tập đều sử dụng ValidatorSet, và các kiểm thử multi-node bao phủ các tập validator khác nhau.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Types

Eventually, we will have only 3 types for validators.

  1. ctypes::Validator - It has two fields: public_key and weight.
  2. ctypes::ValidatorSet - It is a newtype of Vec<Validator>, but it save it sorted, and provides methods to save to/load from state. Also, its hash will be directly written in block header.
  3. foundry_graphql_engine::Validator GraphQL resolver for validator.

All other types will be completely removed. (NextValidatorSet, CurrentValidatorSet, SimpleValidator, WeightOrderedValidators, ...)

Naming

Validators -> Validator set
delegation/deposit/ ... -> weight

Next / Current

Both will be saved, but share same type ValidatorSet.

Coordinator-Module interface

Will be asked to return only Vec<Validator> as the validator set.

Test

We have to add various e2e tests that involve multiple nodes + varying validator set.

Ngôn ngữ chính
Rust
Star
36
Fork
11
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của CodeChain-io/foundry

Tất cả issue của CodeChain-io/foundry

Issue tương tự

Thêm issue về Rust

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.