Nhật ký phát triển hợp đồng thông minh Rust (11): Phân tích cơ chế đề xuất của Sputnik DAO
Sputnik-DAO như một hạ tầng của NEAR Protocol, đang thúc đẩy hệ sinh thái NEAR phát triển theo hướng phi tập trung. Hiện tại, nền tảng này đã tạo điều kiện cho nhiều dự án NEAR xây dựng cộng đồng tự trị phi tập trung, và cung cấp một giải pháp quản trị quyết định cộng đồng hoàn chỉnh, linh hoạt và hiệu quả.
Sputnikdaov2 là hợp đồng thông minh được sử dụng cho việc bỏ phiếu quản trị cộng đồng Sputnik-DAO. Bài viết này sẽ giới thiệu các khái niệm cốt lõi của hợp đồng này: đề xuất (Proposal), và trong các bài viết tiếp theo sẽ giới thiệu các mô hình quản trị cộng đồng DAO liên quan đến đề xuất (Policy).
1. Khởi xướng đề xuất
Các thành viên trong cộng đồng Sputnik-DAO có thể khởi xướng đề xuất mới bằng cách gọi phương thức add_proposal() của hợp đồng thông minh sputnikdaov2. Người đề xuất cần cung cấp thông tin chi tiết về đề xuất(ProposalInput), bao gồm:
Mô tả văn bản đề xuất(Description)
Loại đề xuất ( kind )
phương pháp add_proposal() sẽ thực hiện các kiểm tra và xử lý liên quan, tạo ra một đề xuất đầy đủ (Proposal), và gán nó với một proposal_id duy nhất, thêm vào hồ chứa đề xuất được duy trì toàn cầu bởi hợp đồng.
Đề xuất có các thuộc tính sau:
Người đề xuất(proposer)
Trạng thái đề xuất(status)
Thời gian khởi động(thời gian gửi)
trạng thái bỏ phiếu ( vote_counts, votes )
Cần lưu ý, Sputnik-DAO yêu cầu người đề xuất phải đặt cọc một số lượng token NEAR nhất định làm tiền bảo đảm. Khoản đặt cọc này sẽ được hoàn lại cho người đề xuất khi đề xuất kết thúc bình thường.
2. Trạng thái đề xuất
Các đề xuất trong Sputnik-DAO có thể trải qua nhiều trạng thái:
InProgress: trạng thái ban đầu, đang trong giai đoạn bỏ phiếu
Approved: Đề xuất đã được phê duyệt
Rejected: Đề xuất bị từ chối
Đã xóa: Đề xuất đã bị xóa
Thất bại: Thực hiện đề xuất thất bại
Hết hạn: Đề xuất đã hết hạn
Trạng thái đề xuất thay đổi được điều khiển bởi phương pháp act_proposal(). Các thành viên DAO có thể gọi phương pháp này để bỏ phiếu và thực hiện các thao tác khác đối với đề xuất.
3. Thực hiện đề xuất
Các đề xuất được phê duyệt sẽ được thực hiện thông qua hàm internal_execute_proposal(). Sputnik-DAO hỗ trợ nhiều loại đề xuất, bài viết này sẽ tập trung vào hai loại:
3.1 Đề xuất thực hiện hàm hợp đồng
Đề xuất loại FunctionCall cho phép thực hiện các hàm hợp đồng được chỉ định. Đề xuất có thể chứa nhiều đối tượng ActionCall, mỗi đối tượng chỉ định tên phương thức hợp đồng và tham số tương ứng.
3.2 Đề xuất chuyển tiền hợp đồng
Đề xuất loại Transfer được sử dụng để chuyển token từ tài khoản hợp đồng đến tài khoản chỉ định. Cơ sở thực hiện các thao tác chuyển tiền của các loại token khác nhau thông qua hàm internal_payout().
4. Tóm tắt
Bài viết này giới thiệu các khái niệm cốt lõi của hợp đồng thông minh Sputnik DAO - đề xuất (Proposal), bao gồm việc tạo đề xuất, thay đổi trạng thái và thực hiện. Các bài viết sau sẽ giới thiệu thêm về mô hình quản trị của Sputnik-DAO (Policy).
Trang này có thể chứa nội dung của bên thứ ba, được cung cấp chỉ nhằm mục đích thông tin (không phải là tuyên bố/bảo đảm) và không được coi là sự chứng thực cho quan điểm của Gate hoặc là lời khuyên về tài chính hoặc chuyên môn. Xem Tuyên bố từ chối trách nhiệm để biết chi tiết.
18 thích
Phần thưởng
18
7
Chia sẻ
Bình luận
0/400
RektButAlive
· 15giờ trước
Với cơ chế đề xuất này, còn xa lắm mới đến được với sự phi tập trung thực sự.
Xem bản gốcTrả lời0
NftDeepBreather
· 15giờ trước
near rất có triển vọng
Xem bản gốcTrả lời0
HashBandit
· 15giờ trước
cười lớn một dao khác tuyên bố giải quyết vấn đề mở rộng... máy khai thác của tôi nói ngược lại thật lòng
Xem bản gốcTrả lời0
SchrodingerProfit
· 15giờ trước
Cuốn lại, lại đang thực hiện việc quản lý bẫy này.
Xem bản gốcTrả lời0
GasFeeCry
· 15giờ trước
Có còn hy vọng cho hệ sinh thái near không?
Xem bản gốcTrả lời0
BrokenDAO
· 15giờ trước
Một utopia khác cố gắng dùng quản trị để kiềm chế bản chất con người... xem nó có thể trụ được bao lâu.
Phân tích cốt lõi của Sputnik DAO: Cơ chế đề xuất thúc đẩy quản trị phi tập trung của hệ sinh thái NEAR
Nhật ký phát triển hợp đồng thông minh Rust (11): Phân tích cơ chế đề xuất của Sputnik DAO
Sputnik-DAO như một hạ tầng của NEAR Protocol, đang thúc đẩy hệ sinh thái NEAR phát triển theo hướng phi tập trung. Hiện tại, nền tảng này đã tạo điều kiện cho nhiều dự án NEAR xây dựng cộng đồng tự trị phi tập trung, và cung cấp một giải pháp quản trị quyết định cộng đồng hoàn chỉnh, linh hoạt và hiệu quả.
Sputnikdaov2 là hợp đồng thông minh được sử dụng cho việc bỏ phiếu quản trị cộng đồng Sputnik-DAO. Bài viết này sẽ giới thiệu các khái niệm cốt lõi của hợp đồng này: đề xuất (Proposal), và trong các bài viết tiếp theo sẽ giới thiệu các mô hình quản trị cộng đồng DAO liên quan đến đề xuất (Policy).
1. Khởi xướng đề xuất
Các thành viên trong cộng đồng Sputnik-DAO có thể khởi xướng đề xuất mới bằng cách gọi phương thức add_proposal() của hợp đồng thông minh sputnikdaov2. Người đề xuất cần cung cấp thông tin chi tiết về đề xuất(ProposalInput), bao gồm:
phương pháp add_proposal() sẽ thực hiện các kiểm tra và xử lý liên quan, tạo ra một đề xuất đầy đủ (Proposal), và gán nó với một proposal_id duy nhất, thêm vào hồ chứa đề xuất được duy trì toàn cầu bởi hợp đồng.
Đề xuất có các thuộc tính sau:
Cần lưu ý, Sputnik-DAO yêu cầu người đề xuất phải đặt cọc một số lượng token NEAR nhất định làm tiền bảo đảm. Khoản đặt cọc này sẽ được hoàn lại cho người đề xuất khi đề xuất kết thúc bình thường.
2. Trạng thái đề xuất
Các đề xuất trong Sputnik-DAO có thể trải qua nhiều trạng thái:
Trạng thái đề xuất thay đổi được điều khiển bởi phương pháp act_proposal(). Các thành viên DAO có thể gọi phương pháp này để bỏ phiếu và thực hiện các thao tác khác đối với đề xuất.
3. Thực hiện đề xuất
Các đề xuất được phê duyệt sẽ được thực hiện thông qua hàm internal_execute_proposal(). Sputnik-DAO hỗ trợ nhiều loại đề xuất, bài viết này sẽ tập trung vào hai loại:
3.1 Đề xuất thực hiện hàm hợp đồng
Đề xuất loại FunctionCall cho phép thực hiện các hàm hợp đồng được chỉ định. Đề xuất có thể chứa nhiều đối tượng ActionCall, mỗi đối tượng chỉ định tên phương thức hợp đồng và tham số tương ứng.
3.2 Đề xuất chuyển tiền hợp đồng
Đề xuất loại Transfer được sử dụng để chuyển token từ tài khoản hợp đồng đến tài khoản chỉ định. Cơ sở thực hiện các thao tác chuyển tiền của các loại token khác nhau thông qua hàm internal_payout().
4. Tóm tắt
Bài viết này giới thiệu các khái niệm cốt lõi của hợp đồng thông minh Sputnik DAO - đề xuất (Proposal), bao gồm việc tạo đề xuất, thay đổi trạng thái và thực hiện. Các bài viết sau sẽ giới thiệu thêm về mô hình quản trị của Sputnik-DAO (Policy).