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 cơ sở 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. Nền tảng này đã tạo điều kiện cho nhiều dự án NEAR hình thành các cộng đồng tự trị và cung cấp giải pháp quản trị cộng đồng đầy đủ.
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 thông minh Sputnik-DAO - Đề xuất (, các bài viết tiếp theo sẽ đi sâu thảo luận về các mô hình quản trị cộng đồng DAO liên quan.
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)(. Người đề xuất cần cung cấp thông tin chi tiết về đề xuất, bao gồm:
Mô tả đề xuất: Hiển thị công khai trên giao diện, giúp hiểu mục đích của đề xuất
Loại đề xuất: như gọi hàm hợp đồng, chuyển tiền, kiểm soát quyền truy cập, v.v.
Sau khi đề xuất được tạo, nó sẽ được gán một ID duy nhất và thêm vào hồ đề xuất.
Đề xuất còn bao gồm các thuộc tính khác:
Đề xuất: Tự động thiết lập thành người gọi phương thức
Trạng thái: ban đầu là "Đang diễn ra"
Thời gian khởi xướng: dấu thời gian khối hiện tại
Trạng thái bỏ phiếu: Ban đầu là trống
Cần lưu ý, việc khởi xướng đề xuất cần phải ký quỹ một số lượng NEAR token nhất định làm tiền đặt cọc. Số tiền đặt cọc này sẽ được hoàn trả sau khi đề xuất kết thúc, nhưng phần vượt quá sẽ không được hoàn lại.
Đề xuất có thể trải qua nhiều trạng thái: đang tiến hành, đã được phê duyệt, đã bị từ chối, đã bị gỡ bỏ, v.v. Sự thay đổi trạng thái được điều khiển bởi phương pháp act_proposal)(.
Các thành viên trong cộng đồng có thể bỏ phiếu cho các đề xuất đang diễn ra:
Tán thành
Phản đối
Loại bỏ ) cho rằng đề xuất là vô nghĩa (
Sau khi bỏ phiếu, sẽ tiến hành kiểm phiếu, trạng thái đề xuất đủ điều kiện sẽ được cập nhật tương ứng:
Đã phê duyệt: Thực hiện nội dung đề xuất
Đã từ chối/Đã gỡ bỏ: Thực hiện công việc hoàn tất
Các đề xuất đã bị loại sẽ bị xóa khỏi hồ sơ đề xuất và không hoàn lại tiền đặt cọc. Các đề xuất đã bị từ chối sẽ được giữ lại trong hồ sơ và hoàn lại tiền đặt cọc.
Đối với các đề xuất đã được phê duyệt, sẽ gọi internal_execute_proposal)( để thực hiện nội dung quyết định. Hỗ trợ nhiều loại đề xuất khác nhau, chẳng hạn như:
Thay đổi cấu hình
Thay đổi chính sách quản trị
Thêm/Xóa vai trò thành viên
Gọi hàm hợp đồng
Nâng cấp hợp đồng
Chuyển tiền
đợi
Dưới đây là chi tiết về quy trình thực hiện của hai loại đề xuất điển hình:
) 3.1 Đề xuất thực hiện hàm hợp đồng
Các đề xuất như vậy đã được chỉ định các thao tác hàm cần thực hiện khi được tạo. Khi thực hiện, sẽ hoàn thành nhiều cuộc gọi hàm liên tiếp dưới dạng Hành động Batch Promise.
Đề xuất này được sử dụng để chuyển đổi các token tích lũy từ tài khoản hợp đồng sang tài khoản được chỉ định. Hỗ trợ token gốc NEAR và các token khác tuân thủ tiêu chuẩn NEP-141, có thể chuyển đến tài khoản bên ngoài hoặc hợp đồng khác.
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, bao gồm việc tạo ra đề xuất, thay đổi trạng thái và quy trình thực hiện. Các bài viết tiếp theo sẽ dựa trên đề xuất để khám phá sâu hơn về việc thực hiện mô hình quản trị của Sputnik-DAO.
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.
Phân tích độ sâu hợp đồng thông minh Sputnik DAO: Phân tích toàn diện cơ chế đề xuất
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 cơ sở 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. Nền tảng này đã tạo điều kiện cho nhiều dự án NEAR hình thành các cộng đồng tự trị và cung cấp giải pháp quản trị cộng đồng đầy đủ.
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 thông minh Sputnik-DAO - Đề xuất (, các bài viết tiếp theo sẽ đi sâu thảo luận về các mô hình quản trị cộng đồng DAO liên quan.
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)(. Người đề xuất cần cung cấp thông tin chi tiết về đề xuất, bao gồm:
Sau khi đề xuất được tạo, nó sẽ được gán một ID duy nhất và thêm vào hồ đề xuất.
Đề xuất còn bao gồm các thuộc tính khác:
Cần lưu ý, việc khởi xướng đề xuất cần phải ký quỹ một số lượng NEAR token nhất định làm tiền đặt cọc. Số tiền đặt cọc này sẽ được hoàn trả sau khi đề xuất kết thúc, nhưng phần vượt quá sẽ không được hoàn lại.
![])https://img-cdn.gateio.im/webp-social/moments-84ee9ca630a4cdcdb0d2eb63450a7cf4.webp(
2. Tình trạng đề xuất
Đề xuất có thể trải qua nhiều trạng thái: đang tiến hành, đã được phê duyệt, đã bị từ chối, đã bị gỡ bỏ, v.v. Sự thay đổi trạng thái được điều khiển bởi phương pháp act_proposal)(.
Các thành viên trong cộng đồng có thể bỏ phiếu cho các đề xuất đang diễn ra:
Sau khi bỏ phiếu, sẽ tiến hành kiểm phiếu, trạng thái đề xuất đủ điều kiện sẽ được cập nhật tương ứng:
Các đề xuất đã bị loại sẽ bị xóa khỏi hồ sơ đề xuất và không hoàn lại tiền đặt cọc. Các đề xuất đã bị từ chối sẽ được giữ lại trong hồ sơ và hoàn lại tiền đặt cọc.
![])https://img-cdn.gateio.im/webp-social/moments-427716593b21fa32b47855ceb5e101fc.webp(
3. Thực hiện đề xuất
Đối với các đề xuất đã được phê duyệt, sẽ gọi internal_execute_proposal)( để thực hiện nội dung quyết định. Hỗ trợ nhiều loại đề xuất khác nhau, chẳng hạn như:
Dưới đây là chi tiết về quy trình thực hiện của hai loại đề xuất điển hình:
) 3.1 Đề xuất thực hiện hàm hợp đồng
Các đề xuất như vậy đã được chỉ định các thao tác hàm cần thực hiện khi được tạo. Khi thực hiện, sẽ hoàn thành nhiều cuộc gọi hàm liên tiếp dưới dạng Hành động Batch Promise.
![]###https://img-cdn.gateio.im/webp-social/moments-ef0b959c42e1f5fc6263cd4a86fd078e.webp(
) 3.2 Đề xuất chuyển tiền hợp đồng
Đề xuất này được sử dụng để chuyển đổi các token tích lũy từ tài khoản hợp đồng sang tài khoản được chỉ định. Hỗ trợ token gốc NEAR và các token khác tuân thủ tiêu chuẩn NEP-141, có thể chuyển đến tài khoản bên ngoài hoặc hợp đồng khác.
![]###https://img-cdn.gateio.im/webp-social/moments-eb73d5e15f6161f0a4b442cd4b99a91e.webp(
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, bao gồm việc tạo ra đề xuất, thay đổi trạng thái và quy trình thực hiện. Các bài viết tiếp theo sẽ dựa trên đề xuất để khám phá sâu hơn về việc thực hiện mô hình quản trị của Sputnik-DAO.
![])https://img-cdn.gateio.im/webp-social/moments-4aed25bcefecb3d554dbe01447d4a0e8.webp(