From a84766b29a78d72375fcdf37cdf2ee619101a8c6 Mon Sep 17 00:00:00 2001 From: aric0x02 Date: Tue, 6 Jun 2023 19:17:01 +0800 Subject: [PATCH 1/7] move smart contract pallet --- .../move-smart-contract-maintenance.md | 125 ++++++++++++++++++ 1 file changed, 125 insertions(+) create mode 100644 applications/maintenance/move-smart-contract-maintenance.md diff --git a/applications/maintenance/move-smart-contract-maintenance.md b/applications/maintenance/move-smart-contract-maintenance.md new file mode 100644 index 00000000000..52340b133bf --- /dev/null +++ b/applications/maintenance/move-smart-contract-maintenance.md @@ -0,0 +1,125 @@ +# Project Code Name (e.g. JsonRPC Tools Maintenance) + +- **Team Name:** Ann +- **Payment Address:** 0x352a7f69df71bda6c51ee7fa938dd76ff2375087 (Ethereum USDC) +- **[Level](https://github.com/w3f/Grants-Program/tree/master#level_slider-levels):** 2 + +## Project Overview :page_facing_up: + +[Move smart contract pallet RFPs](https://github.com/w3f/Grants-Program/blob/master/docs/RFPs/Open/move_smart_contract_pallet.md ). + +This Project based in [Pontem MVM pallet](https://github.com/pontem-network/pontem/tree/master/pallets/sp-mvm).[Pontem sp-move-vm](https://github.com/pontem-network/sp-move-vm.git). +In order to implement Move smart contract Pallet. +We will migrate api,table extension,u256 functions from **aptos** into it. + +### Overview + +This project will primary enhance move smart contract pallet : + +1. Add 'GetModuleABI' json string bytes format version RPC APIs, + 'GetResource' json string bytes format verion.In order to implement [`build bcs transaction with remote ABI` in aptos](https://github.com/aptos-labs/aptos-core/blob/09359aa961e909699939783bd438e967ca381bdb/ecosystem/typescript/sdk/src/tests/e2e/aptos_client.test.ts#L188).(refer to [aptos-core api](https://github.com/aptos-labs/aptos-core/tree/main/api)). + +2. Add Table extension( Move language with large-scale storage tables ). + - Add `getTableEntry` get table item json string bytes in Move smart contract pallet[MVM pallet](https://github.com/pontem-network/pontem/blob/master/pallets/sp-mvm/rpc/src/lib.rs). + - Add table extension and writeset code logic in [Pontem sp-move-vm](https://github.com/pontem-network/sp-move-vm.git).(refer to **aptos**). + - Add table extension support in [Pontem Dove](https://github.com/pontem-network/dove.git). + - Add `table.move` in [Pontem pont-stdlib](https://github.com/pontem-network/pont-stdlib)((migrate from **aptos**). + +3. Add U256,U32,U16 support + + - Add its code in [Pontem MVM pallet](https://github.com/pontem-network/pontem/tree/master/pallets/sp-mvm) + - Add its code in [Pontem sp-move-vm](https://github.com/pontem-network/sp-move-vm.git) + - Add its code in [Pontem Move](https://github.com/pontem-network/move/tree/release-1.7.1) + +### Maintenance list + +1. Move smart contract pallets in [Pontem](https://github.com/pontem-network/pontem): + - [Pontem MVM pallet](https://github.com/pontem-network/pontem/tree/master/pallets/sp-mvm) + - [Pontem currencies pallet](https://github.com/pontem-network/pontem/tree/master/pallets/currencies) + - [Pontem groupsign pallet](https://github.com/pontem-network/pontem/tree/master/pallets/groupsign) +2. [Pontem sp-move-vm](https://github.com/pontem-network/sp-move-vm.git) +3. [Pontem toolset Doc](https://github.com/pontem-network/docs/tree/toolset-docs) +4. [Pontem Dove](https://github.com/pontem-network/dove.git) +5. [Pontem Move](https://github.com/pontem-network/move/tree/release-1.7.1) +6. [Pontem move-stdlib](https://github.com/pontem-network/move-stdlib) +7. [Pontem pont-stdlib](https://github.com/pontem-network/pont-stdlib) + +## Team :busts_in_silhouette: + +### Team members + +- Aric Lee +- Zen Zhou + +### Contact + +- **Contact Name:** Aric Lee +- **Contact Email:** aric0x02@gmail.com +- **Website:** None + +### Legal Structure + +None + +### Team's experience + + + +### Team Code Repos + +- https://github.com/aric0x02/ + +- https://github.com/aric0x02 +- https://github.com/ant8ee + +### Team LinkedIn Profiles (if available) + +None + +## Development Status :open_book: + +[Move smart contract pallet RFPs](https://github.com/w3f/Grants-Program/blob/master/docs/RFPs/Open/move_smart_contract_pallet.md ) + +## Maintenance Responsibilities :nut_and_bolt: + +This section should specify what kind of tasks and responsibilities the maintainer team will cover during future development. If you have already outlined a list of issues/bugs or pull requests that need further development - you can specify them here to provide more context on what tasks you will close. + +Also, make sure the current project owners are willing to review/accept your contributions (a note here: if you're fully taking over the project, it will make more sense for the current owners to transfer the repository to your organization. If you can't get in touch with them, you may, of course, work on a fork). + +Below we provide **example maintenance responsibilities**. + +Issues we want to fix: + +- There's command line paremeter -h conflict issue in [Pontem Dove](https://github.com/pontem-network/dove.git). +- There's dove command subcommand and parameter issue in build move lib bash script in [Pontem sp-move-vm](https://github.com/pontem-network/sp-move-vm.git). + +Our responsibilities: + +- Move [Pontem MVM pallet](https://github.com/pontem-network/pontem/tree/master/pallets/sp-mvm),[Pontem currencies pallet](https://github.com/pontem-network/pontem/tree/master/pallets/currencies),[Pontem groupsign pallet](https://github.com/pontem-network/pontem/tree/master/pallets/groupsign) into substrate-node-template (https://github.com/substrate-developer-hub/substrate-node-template) as Move contract Node. +- Add (get resource,get module abi,get table entry) rpc apis (return json string bytes) in Move smart contract pallet([Pontem MVM pallet](https://github.com/pontem-network/pontem/tree/master/pallets/sp-mvm)). +- Add Table extension in [Pontem sp-move-vm](https://github.com/pontem-network/sp-move-vm.git) , [Pontem Dove](https://github.com/pontem-network/dove.git). +- Add U256,U32,U16 support in [Pontem MVM pallet](https://github.com/pontem-network/pontem/tree/master/pallets/sp-mvm), in [Pontem sp-move-vm](https://github.com/pontem-network/sp-move-vm.git),in [Pontem Move](https://github.com/pontem-network/move.git). + +### Overview + +- **Start Date:** 2023/06/11. +- **Sprint/Period Duration:** 4 weeks +- **Total Duration:** 8 weeks +- **Full-Time Equivalent (FTE):** 1 FTE +- **Max budget per sprint/period:** 10,000 USD. +- **Hourly rate:** 150 USD. + + +## Future Plans + +- Move contract Examples(migrate from [aptos move examples](https://github.com/aptos-labs/aptos-core/tree/main/aptos-move/move-examples)). +- Move contract UI (based in [aptos ecosystem typescript sdk](https://github.com/aptos-labs/aptos-core/tree/main/ecosystem/typescript/sdk) and [paritytech contracts-ui](https://github.com/paritytech/contracts-ui.git)) +- BCS Transaction Builder SDK in Python(migrate from [aptos ecosystem python sdk](https://github.com/aptos-labs/aptos-core/tree/main/ecosystem/python/sdk)) +- Move vscode ide plugin/Move playground(based in [move vscode plugin](https://github.com/pontem-network/vscode-move-ide.git)) + + +## Additional Information :heavy_plus_sign: + +**How did you hear about the Maintenance Grants Program?** personal recommendation . + + From 53a57960c21074de0f8aad51c66a6462571c113a Mon Sep 17 00:00:00 2001 From: aric0x02 Date: Tue, 6 Jun 2023 19:21:48 +0800 Subject: [PATCH 2/7] update project name --- applications/maintenance/move-smart-contract-maintenance.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/applications/maintenance/move-smart-contract-maintenance.md b/applications/maintenance/move-smart-contract-maintenance.md index 52340b133bf..de3c14c631d 100644 --- a/applications/maintenance/move-smart-contract-maintenance.md +++ b/applications/maintenance/move-smart-contract-maintenance.md @@ -1,4 +1,4 @@ -# Project Code Name (e.g. JsonRPC Tools Maintenance) +# Move smart contract Pallet Maintainance - **Team Name:** Ann - **Payment Address:** 0x352a7f69df71bda6c51ee7fa938dd76ff2375087 (Ethereum USDC) From fac55716dbdfb4b3f5153a6c46b1d22f8f64fd02 Mon Sep 17 00:00:00 2001 From: aric0x02 Date: Tue, 6 Jun 2023 19:25:18 +0800 Subject: [PATCH 3/7] update start date --- applications/maintenance/move-smart-contract-maintenance.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/applications/maintenance/move-smart-contract-maintenance.md b/applications/maintenance/move-smart-contract-maintenance.md index de3c14c631d..402ee163514 100644 --- a/applications/maintenance/move-smart-contract-maintenance.md +++ b/applications/maintenance/move-smart-contract-maintenance.md @@ -102,7 +102,7 @@ Our responsibilities: ### Overview -- **Start Date:** 2023/06/11. +- **Start Date:** 2023/06/01. - **Sprint/Period Duration:** 4 weeks - **Total Duration:** 8 weeks - **Full-Time Equivalent (FTE):** 1 FTE From 8332a2d44a56bb829f0cce0eaf81b08e526470c5 Mon Sep 17 00:00:00 2001 From: aric0x02 Date: Wed, 14 Jun 2023 21:46:40 +0800 Subject: [PATCH 4/7] add milestone table --- .../move-smart-contract-maintenance.md | 113 ++++++++++++------ 1 file changed, 79 insertions(+), 34 deletions(-) diff --git a/applications/maintenance/move-smart-contract-maintenance.md b/applications/maintenance/move-smart-contract-maintenance.md index 402ee163514..85348331734 100644 --- a/applications/maintenance/move-smart-contract-maintenance.md +++ b/applications/maintenance/move-smart-contract-maintenance.md @@ -16,20 +16,21 @@ We will migrate api,table extension,u256 functions from **aptos** into it. This project will primary enhance move smart contract pallet : -1. Add 'GetModuleABI' json string bytes format version RPC APIs, - 'GetResource' json string bytes format verion.In order to implement [`build bcs transaction with remote ABI` in aptos](https://github.com/aptos-labs/aptos-core/blob/09359aa961e909699939783bd438e967ca381bdb/ecosystem/typescript/sdk/src/tests/e2e/aptos_client.test.ts#L188).(refer to [aptos-core api](https://github.com/aptos-labs/aptos-core/tree/main/api)). +1. Add json RPC APIs + - `getModuleABIs`,in order to implement `build bcs transaction with remote ABI`. + - `getResources`. + - `encodeSubmission`. -2. Add Table extension( Move language with large-scale storage tables ). - - Add `getTableEntry` get table item json string bytes in Move smart contract pallet[MVM pallet](https://github.com/pontem-network/pontem/blob/master/pallets/sp-mvm/rpc/src/lib.rs). - - Add table extension and writeset code logic in [Pontem sp-move-vm](https://github.com/pontem-network/sp-move-vm.git).(refer to **aptos**). - - Add table extension support in [Pontem Dove](https://github.com/pontem-network/dove.git). - - Add `table.move` in [Pontem pont-stdlib](https://github.com/pontem-network/pont-stdlib)((migrate from **aptos**). +2. Add Table extension(Move language with large-scale storage tables ). + - Add `getTableEntry` get table item json string bytes in Move smart contract pallet rpc. + - Add table extension and writeset code logic in sp-move-vm. + - Add table extension support in Dove. + - Add `table.move` in pont-stdlib. 3. Add U256,U32,U16 support - - - Add its code in [Pontem MVM pallet](https://github.com/pontem-network/pontem/tree/master/pallets/sp-mvm) - - Add its code in [Pontem sp-move-vm](https://github.com/pontem-network/sp-move-vm.git) - - Add its code in [Pontem Move](https://github.com/pontem-network/move/tree/release-1.7.1) + - Add its code in Move smart contract pallet. + - Add its code in **sp-move-vm**. + - Add its code in **Move**. ### Maintenance list @@ -82,40 +83,84 @@ None ## Maintenance Responsibilities :nut_and_bolt: -This section should specify what kind of tasks and responsibilities the maintainer team will cover during future development. If you have already outlined a list of issues/bugs or pull requests that need further development - you can specify them here to provide more context on what tasks you will close. - -Also, make sure the current project owners are willing to review/accept your contributions (a note here: if you're fully taking over the project, it will make more sense for the current owners to transfer the repository to your organization. If you can't get in touch with them, you may, of course, work on a fork). - -Below we provide **example maintenance responsibilities**. - Issues we want to fix: -- There's command line paremeter -h conflict issue in [Pontem Dove](https://github.com/pontem-network/dove.git). -- There's dove command subcommand and parameter issue in build move lib bash script in [Pontem sp-move-vm](https://github.com/pontem-network/sp-move-vm.git). +- There's command line paremeter -h conflict issue in Dove. +- There's dove command subcommand and parameter issue in build move lib bash script in sp-move-vm. Our responsibilities: -- Move [Pontem MVM pallet](https://github.com/pontem-network/pontem/tree/master/pallets/sp-mvm),[Pontem currencies pallet](https://github.com/pontem-network/pontem/tree/master/pallets/currencies),[Pontem groupsign pallet](https://github.com/pontem-network/pontem/tree/master/pallets/groupsign) into substrate-node-template (https://github.com/substrate-developer-hub/substrate-node-template) as Move contract Node. -- Add (get resource,get module abi,get table entry) rpc apis (return json string bytes) in Move smart contract pallet([Pontem MVM pallet](https://github.com/pontem-network/pontem/tree/master/pallets/sp-mvm)). -- Add Table extension in [Pontem sp-move-vm](https://github.com/pontem-network/sp-move-vm.git) , [Pontem Dove](https://github.com/pontem-network/dove.git). -- Add U256,U32,U16 support in [Pontem MVM pallet](https://github.com/pontem-network/pontem/tree/master/pallets/sp-mvm), in [Pontem sp-move-vm](https://github.com/pontem-network/sp-move-vm.git),in [Pontem Move](https://github.com/pontem-network/move.git). +- Build Move contracts Node that integrates Move smart contract pallet. +- Add `getModuleABIs`,`getResources`,`encodeSubmission `,`getTableEntry` RPC APIs in Move smart contract pallet. +- Add Table extension in sp-move-vm, Dove. +- Add U256,U32,U16 support in Move smart contract pallet,in Move. ### Overview -- **Start Date:** 2023/06/01. -- **Sprint/Period Duration:** 4 weeks -- **Total Duration:** 8 weeks -- **Full-Time Equivalent (FTE):** 1 FTE -- **Max budget per sprint/period:** 10,000 USD. -- **Hourly rate:** 150 USD. - +- **Total Estimated Duration:** 2 month +- **Full-Time Equivalent (FTE):** 1 FTE +- **Total Costs:** 10,000 USD. + +### Milestone 1 — Move smart contract json rpc + +- **Estimated duration:** 1 month +- **FTE:** 1.5 +- **Costs:** 10,000 USD + +| Number | Deliverable | Specification | +| -----: | ----------- | ------------- | +| **0a.** | License | Apache 2.0 and MIT | +| **0b.** | Documentation | We will provide both **inline documentation** of the code and a basic **tutorial** that explains how a user can (for example) spin up one of our Substrate nodes and send test transactions, which will show how the new functionality works. | +| **0c.** | Testing and Testing Guide | Core functions will be fully covered by comprehensive unit tests to ensure functionality and robustness. In the guide, we will describe how to run these tests. | +| **0d.** | Docker | We will provide a Dockerfile(s) that can be used to test all the functionality delivered with this milestone. | +| 1. |'getModuleABIs' rpc method in Move Smart contract pallet rpc | 'GetModuleABIs' rpc method will implement get move module abi json format version rpc api. It return move module abi json string bytes | +| 2. |'getResources' rpc method in Move Smart contract pallet rpc | 'GetResources' rpc method will implement get move struct resource json format version rpc api. It return move struct resource json string bytes | +| 3. | 'encodeSubmission' rpc method in Move Smart contract pallet rpc | 'encodeSubmission' rpc method will implement move module public script function call transaction data encoded in BCS , makes it possible to submit transaction to the API from languages that do not have library support for BCS | +| 3. | 'getTableEntry' rpc method in Move Smart contract pallet rpc | 'getTableEntry' rpc method will implement move struct table item json string bytes.| +| 4. | Substrate chain | Modules Move Smart contract of our custom chain will interact in such a way, allowing a user to get move module abi json string bytes and get move contract struct resource json string bytes and get bcs transaction data bytes of given move module public script function paremters and get table item json string bytes of given table handle and id. | +| 5. | table-extension in sp-move-vm | We will implement the functionality of TableResolver trait and table write set code logic. | +| 6. | table-extension in dove | We will add table-extension support in dove| +| 7. | Add table.move in pont-lib | We will add table in pont-lib,and remove older config item in Move.toml in pont-lib| +| 8. | Remove older config item in Move.toml in move-lib | We will remove older config item in Move.toml in move-lib| + +### Milestone 2 — Move smart contract U256 Support + +- **Estimated Duration:** 1 month +- **FTE:** 1 +- **Costs:** 10,000 USD + + +| Number | Deliverable | Specification | +| -----: | ----------- | ------------- | +| **0a.** | License | Apache 2.0 and MIT | +| **0b.** | Documentation | We will provide both **inline documentation** of the code and a basic **tutorial** that explains how a user can (for example) spin up one of our Substrate nodes and send test transactions, which will show how the new functionality works. | +| **0c.** | Testing and Testing Guide | Core functions will be fully covered by comprehensive unit tests to ensure functionality and robustness. In the guide, we will describe how to run these tests. | +| **0d.** | Docker | We will provide a Dockerfile(s) that can be used to test all the functionality delivered with this milestone. | +| 0e. | Article | We will publish an **article** that explains the usage detail of move contract json rpc api and table in move contract and view move resource json. | +| 1. | U256,U32,U16 in Move Contract pallet RPC | We will add a U256 Type support in Move struct parser | +| 2. | U256,U32,U16 in sp-move-vm | We will add a U256 Type support in Move VM | +| 3. | U256,U32,U16 in Move language library | We will add a U256 Type support in Move language library | +| 4. | Substrate chain | Modules Move Smart contract of our custom chain will interact in such a way, allowing a user to use U256 in move contract,submit include u256 bcs transaction. | +| 5. | convert move file name and module name from pascal case to snake case in pont-lib | We will convert file name and module name from pascal case to snake case in pont-lib| +| 6. | convert move file name and module name from pascal case to snake case in move-lib | We will convert file name and module name from pascal case to snake case in move-lib| ## Future Plans -- Move contract Examples(migrate from [aptos move examples](https://github.com/aptos-labs/aptos-core/tree/main/aptos-move/move-examples)). -- Move contract UI (based in [aptos ecosystem typescript sdk](https://github.com/aptos-labs/aptos-core/tree/main/ecosystem/typescript/sdk) and [paritytech contracts-ui](https://github.com/paritytech/contracts-ui.git)) -- BCS Transaction Builder SDK in Python(migrate from [aptos ecosystem python sdk](https://github.com/aptos-labs/aptos-core/tree/main/ecosystem/python/sdk)) -- Move vscode ide plugin/Move playground(based in [move vscode plugin](https://github.com/pontem-network/vscode-move-ide.git)) + +1. Maintenance Move Smart contract pallet and sp-move-vm + - We will continue maintenance move smart contract pallet and sp-move-vm ,keep Move VM version accord to common function in **Move language** and **Aptos** Repo. + - The function of the Move Smart contract pallet will be enhanced mainly based on application requirements, and the version will be updated in a timely manner according to the **Move language** and **Aptos** Repo. +2. Move contract Examples. + - Implement commonly used token standards, DEFI, DAO, governance and other typical move contract examples. + +3. Move contract UI + - Implement deploying move contract modules or packages, testing contract public interface methods, viewing the on-chain status of structures in contracts, and viewing transaction execution events. +4. BCS Transaction Builder SDK + - Typescript SDK. + - Python SDK. + - Others based on BCS SDK. +5. Move vscode IDE Plugin/Move playground + - Committed to implement a simple, convenient editing, compiling, deploying, testing and development move smart contract environment. ## Additional Information :heavy_plus_sign: From 2f1a229c456b15fd92360400b237108a7e0f3660 Mon Sep 17 00:00:00 2001 From: aric0x02 Date: Thu, 15 Jun 2023 06:41:05 +0800 Subject: [PATCH 5/7] update total amount --- applications/maintenance/move-smart-contract-maintenance.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/applications/maintenance/move-smart-contract-maintenance.md b/applications/maintenance/move-smart-contract-maintenance.md index 85348331734..d6d1f8d1a89 100644 --- a/applications/maintenance/move-smart-contract-maintenance.md +++ b/applications/maintenance/move-smart-contract-maintenance.md @@ -99,7 +99,7 @@ Our responsibilities: - **Total Estimated Duration:** 2 month - **Full-Time Equivalent (FTE):** 1 FTE -- **Total Costs:** 10,000 USD. +- **Total Costs:** 20,000 USD. ### Milestone 1 — Move smart contract json rpc From fa545bb22179cff5793a510572a139f9bc5cf3fb Mon Sep 17 00:00:00 2001 From: aric0x02 Date: Sat, 15 Jul 2023 17:03:50 +0800 Subject: [PATCH 6/7] Add our goal --- .../move-smart-contract-maintenance.md | 20 +++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/applications/maintenance/move-smart-contract-maintenance.md b/applications/maintenance/move-smart-contract-maintenance.md index d6d1f8d1a89..f863899a40a 100644 --- a/applications/maintenance/move-smart-contract-maintenance.md +++ b/applications/maintenance/move-smart-contract-maintenance.md @@ -11,7 +11,8 @@ This Project based in [Pontem MVM pallet](https://github.com/pontem-network/pontem/tree/master/pallets/sp-mvm).[Pontem sp-move-vm](https://github.com/pontem-network/sp-move-vm.git). In order to implement Move smart contract Pallet. We will migrate api,table extension,u256 functions from **aptos** into it. - +Our long-term goal is to implement the Substate Move smart contract development library like **openzeppelin** and IDE like **remix**. We will improve and enhance the functions of the existing move smart contract pallet and move VM. + ### Overview This project will primary enhance move smart contract pallet : @@ -64,8 +65,9 @@ None ### Team's experience +Aric has 22 years of software development experience and 5 years working in Blockchain developer. Now working as a freelancer. He has 3 years Rust development experience and 5 years NodeJs experience. - +Zen has 22 years of software development experience and 1 years working in Blockchain developer. He has 1 years Rust development experience . ### Team Code Repos - https://github.com/aric0x02/ @@ -99,13 +101,13 @@ Our responsibilities: - **Total Estimated Duration:** 2 month - **Full-Time Equivalent (FTE):** 1 FTE -- **Total Costs:** 20,000 USD. +- **Total Costs:** 25,000 USD. ### Milestone 1 — Move smart contract json rpc - **Estimated duration:** 1 month - **FTE:** 1.5 -- **Costs:** 10,000 USD +- **Costs:** 12,000 USD | Number | Deliverable | Specification | | -----: | ----------- | ------------- | @@ -117,17 +119,20 @@ Our responsibilities: | 2. |'getResources' rpc method in Move Smart contract pallet rpc | 'GetResources' rpc method will implement get move struct resource json format version rpc api. It return move struct resource json string bytes | | 3. | 'encodeSubmission' rpc method in Move Smart contract pallet rpc | 'encodeSubmission' rpc method will implement move module public script function call transaction data encoded in BCS , makes it possible to submit transaction to the API from languages that do not have library support for BCS | | 3. | 'getTableEntry' rpc method in Move Smart contract pallet rpc | 'getTableEntry' rpc method will implement move struct table item json string bytes.| -| 4. | Substrate chain | Modules Move Smart contract of our custom chain will interact in such a way, allowing a user to get move module abi json string bytes and get move contract struct resource json string bytes and get bcs transaction data bytes of given move module public script function paremters and get table item json string bytes of given table handle and id. | +| 4. | Substrate chain | Modules Move Smart contract of our custom chain will interact in such a way, allowing a user to get move module abi json string bytes and get move contract struct resource json string bytes and get bcs transaction data bytes of given move module public script function parameters and get table item json string bytes of given table handle and id. | | 5. | table-extension in sp-move-vm | We will implement the functionality of TableResolver trait and table write set code logic. | | 6. | table-extension in dove | We will add table-extension support in dove| | 7. | Add table.move in pont-lib | We will add table in pont-lib,and remove older config item in Move.toml in pont-lib| | 8. | Remove older config item in Move.toml in move-lib | We will remove older config item in Move.toml in move-lib| +| 9. | BCS transaction builder Typescript SDK| We will implement BCS transaction builder typescript SDK.| +| 10. | TodoList Move Smart Contract | We will implement todo list move smart contract that demonstrates the use of move table structure in move smart contract.| +| 11. | TodoList React DApp | We will implement todo list web DApp that demonstrates the use of move table structure in web app.| ### Milestone 2 — Move smart contract U256 Support - **Estimated Duration:** 1 month - **FTE:** 1 -- **Costs:** 10,000 USD +- **Costs:** 13,000 USD | Number | Deliverable | Specification | @@ -143,6 +148,9 @@ Our responsibilities: | 4. | Substrate chain | Modules Move Smart contract of our custom chain will interact in such a way, allowing a user to use U256 in move contract,submit include u256 bcs transaction. | | 5. | convert move file name and module name from pascal case to snake case in pont-lib | We will convert file name and module name from pascal case to snake case in pont-lib| | 6. | convert move file name and module name from pascal case to snake case in move-lib | We will convert file name and module name from pascal case to snake case in move-lib| +| 9. | BCS transaction builder Python SDK| We will implement BCS transaction builder Python SDK| +| 10. | U256/U32/U16 Move Smart Contract | We will implement U256 move smart contract that demonstrates the use of U256/U32/U16 in move smart contract. | +| 11. | U256/U32/U16 Python Cli App | We will implement U256/U32/U16 Python cli App that demonstrates the use of U256/U32/U16 in web app.| ## Future Plans From e7a4a47e51d9ba0ffb2ed1fb2016ace832a9222a Mon Sep 17 00:00:00 2001 From: aric0x02 Date: Sun, 16 Jul 2023 07:17:30 +0800 Subject: [PATCH 7/7] Update --- applications/maintenance/move-smart-contract-maintenance.md | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/applications/maintenance/move-smart-contract-maintenance.md b/applications/maintenance/move-smart-contract-maintenance.md index f863899a40a..50ab9c4eeca 100644 --- a/applications/maintenance/move-smart-contract-maintenance.md +++ b/applications/maintenance/move-smart-contract-maintenance.md @@ -119,7 +119,7 @@ Our responsibilities: | 2. |'getResources' rpc method in Move Smart contract pallet rpc | 'GetResources' rpc method will implement get move struct resource json format version rpc api. It return move struct resource json string bytes | | 3. | 'encodeSubmission' rpc method in Move Smart contract pallet rpc | 'encodeSubmission' rpc method will implement move module public script function call transaction data encoded in BCS , makes it possible to submit transaction to the API from languages that do not have library support for BCS | | 3. | 'getTableEntry' rpc method in Move Smart contract pallet rpc | 'getTableEntry' rpc method will implement move struct table item json string bytes.| -| 4. | Substrate chain | Modules Move Smart contract of our custom chain will interact in such a way, allowing a user to get move module abi json string bytes and get move contract struct resource json string bytes and get bcs transaction data bytes of given move module public script function parameters and get table item json string bytes of given table handle and id. | +| 4. | Substrate local Move smart contract Node | Modules Move Smart contract of our local Move smart contract Node will interact in such a way, allowing a user to get move module abi json string bytes and get move contract struct resource json string bytes and get bcs transaction data bytes of given move module public script function parameters and get table item json string bytes of given table handle and id. | | 5. | table-extension in sp-move-vm | We will implement the functionality of TableResolver trait and table write set code logic. | | 6. | table-extension in dove | We will add table-extension support in dove| | 7. | Add table.move in pont-lib | We will add table in pont-lib,and remove older config item in Move.toml in pont-lib| @@ -145,7 +145,7 @@ Our responsibilities: | 1. | U256,U32,U16 in Move Contract pallet RPC | We will add a U256 Type support in Move struct parser | | 2. | U256,U32,U16 in sp-move-vm | We will add a U256 Type support in Move VM | | 3. | U256,U32,U16 in Move language library | We will add a U256 Type support in Move language library | -| 4. | Substrate chain | Modules Move Smart contract of our custom chain will interact in such a way, allowing a user to use U256 in move contract,submit include u256 bcs transaction. | +| 4. | Substrate local Move smart contract Node | Modules Move Smart contract of our local Move smart contract Node will interact in such a way, allowing a user to use U256 in move contract,submit include u256 bcs transaction. | | 5. | convert move file name and module name from pascal case to snake case in pont-lib | We will convert file name and module name from pascal case to snake case in pont-lib| | 6. | convert move file name and module name from pascal case to snake case in move-lib | We will convert file name and module name from pascal case to snake case in move-lib| | 9. | BCS transaction builder Python SDK| We will implement BCS transaction builder Python SDK| @@ -164,8 +164,6 @@ Our responsibilities: 3. Move contract UI - Implement deploying move contract modules or packages, testing contract public interface methods, viewing the on-chain status of structures in contracts, and viewing transaction execution events. 4. BCS Transaction Builder SDK - - Typescript SDK. - - Python SDK. - Others based on BCS SDK. 5. Move vscode IDE Plugin/Move playground - Committed to implement a simple, convenient editing, compiling, deploying, testing and development move smart contract environment.