From a0258bf253f50cb9ba3c8793f6a18a9553c1b377 Mon Sep 17 00:00:00 2001 From: Ena Redzic <113043914+longgamma-massa@users.noreply.github.com> Date: Mon, 5 Jun 2023 17:23:16 +0200 Subject: [PATCH 01/14] adds Learn-ASC section --- docs/learn/autonomous-sc.mdx | 83 +++++++++++++++++++++++++++++++++++- 1 file changed, 82 insertions(+), 1 deletion(-) diff --git a/docs/learn/autonomous-sc.mdx b/docs/learn/autonomous-sc.mdx index 4642920f6..90c34a106 100644 --- a/docs/learn/autonomous-sc.mdx +++ b/docs/learn/autonomous-sc.mdx @@ -4,5 +4,86 @@ sidebar_label: Autonomous Smart Contracts --- # Autonomous Smart Contracts +this should be turned into a folder and have pages: Introduction, ASC on the Massa blockchain, + +## Introduction + +Massa Blockchain introduces a groundbreaking feature known as Autonomous Smart Contracts. +These smart contracts possess a unique capability—they can independently determine their own activation without any external actors. +By the end of this page, you will gain a fundamental understanding of: + +- The limitations of current smart contracts on existing blockchains +- How Massa Blockchain overcomes these limitations by empowering pre-programmed execution +- The inner workings and mechanisms behind autonomous smart contracts + +## Challenges with Existing Smart Contracts + +In today's blockchain landscape, smart contracts face limitations when it comes to automating operations without external triggers. +While automation lies at the heart of numerous industries, particularly in the realm of modern finance, only +certain actions within decentralized finance (DeFi) protocols, such as lending and arbitration, are automated. +However, even these actions are typically executed by off-chain bots. The absence of external calls prevents smart contracts, +as they exist in current public blockchains, from performing automated operations. + +Many decentralized protocols rely on recurrent triggers to ensure their smooth operation. +For example, in decentralized lending protocols, borrowers lock crypto assets as collateral when obtaining loans. +If the value of the collateralized asset drops below a specified threshold, the borrower's position becomes under-collateralized +and requires immediate action. To maintain the integrity of the protocol, such positions must be liquidated. Currently, +these liquidations are executed by organizations or individuals who run bots, often on centralized cloud services. + + + +## The Need for a Reliable Automation Mechanism + +The reliance on recurrent triggers is a prevalent requirement across numerous applications. Consequently, significant time and effort have been invested in developing more dependable networks of bots to ensure the timely execution of transactions. However, since these solutions operate off-chain, there is no guarantee that the execution will be triggered effectively. In cases where bots fail to execute transactions, decentralized protocols face risks, as do the applications built on top of them. + +# Autonomous Smart Contracts on the Massa Blockchain + +Massa's Autonomous Smart Contracts address the challenges of reliability, sophistication, and centralization that plague dApps seeking to offer automated smart-contract execution on behalf of their users. These innovative smart contracts introduce the ability to self-wake, granting them the power to autonomously perform arbitrary operations. For instance, they can be programmed to trigger specific calls when predefined exchange rate targets within liquid pools are met. + +## The Mechanism within Massa Network + + - ##to do:## + 1. Review info from here and update if needed https://docs.massa.net/en/latest/general-doc/autonomous-sc.html#mechanism-in-massa-network + 2. Create a diagram like in Operation lifecycle, that follows all mentioned info in the text. As here: https://docs.massa.net/en/latest/general-doc/architecture/archi-global.html#operation-lifecycle + + + + +# Use-cases and applications + +We already learned that autonomous smart contracts have the special ability to self wake-up and execute actions when specific conditions are met. +This offers a wide range of compelling use-cases that were either impossible, too costly, or risky to do with benchmark smart-contract functionalities. +Here are some of the best use cases for autonomous smart contracts: + +1. Decentralized Finance (DeFi): Autonomous smart contracts can revolutionize DeFi applications by enabling automated and self-executing actions. Some notable use cases include: + - Automated liquidations: Smart contracts can automatically trigger the liquidation of under-collateralized positions in lending protocols when predetermined thresholds are breached. + - Yield farming strategies: Contracts can autonomously perform yield farming strategies, automatically swapping and reinvesting tokens based on predefined conditions. + - Dynamic portfolio rebalancing: Smart contracts can automatically adjust portfolio allocations based on market conditions, ensuring desired asset ratios are maintained. + +2. Supply Chain Management: Autonomous smart contracts have the potential to streamline supply chain processes by automating specific actions triggered by predefined conditions. Key use cases include: + - Automatic inventory management: Contracts can initiate purchase orders or trigger production when inventory levels reach predefined thresholds, ensuring optimal stock levels. + - Quality control and compliance: Smart contracts can autonomously perform quality checks and audits based on predefined criteria, ensuring compliance with standards and regulations. + +3. Insurance Claims: Autonomous smart contracts can revolutionize the insurance industry by automating claims processes. Notable use cases include: + - Instant claims settlement: Contracts can automatically trigger claim payments when specific conditions, such as verified damage or loss, are met, accelerating the claims settlement process. + - Parametric insurance: Smart contracts can leverage external data feeds, such as weather or seismic information, to autonomously determine and process claims without human intervention. + +4. Gaming and NFTs: Autonomous smart contracts can bring enhanced functionality and interactivity, and cost-reduction in on-chain execution, to gaming and non-fungible token (NFT) platforms. Key use cases include: + - Dynamic NFTs: Contracts can imbue NFTs with evolving characteristics or abilities based on predefined conditions, creating captivating and unique gaming experiences. + - Automated auctions: Contracts can autonomously initiate and manage auctions for rare items, with bidding and settlement executed automatically when predetermined criteria are met. + +5. Decentralized Autonomous Organizations (DAOs): Autonomous smart contracts are instrumental in enabling self-governance and decision-making within DAOs. Notable use cases include: + - Voting and governance: Contracts can autonomously trigger voting processes based on predefined conditions, empowering token holders to participate in important decision-making. There are various applications for this: from voting in local communities to democratic processes in corporate governance. + - Automated fund management: Smart contracts can autonomously allocate funds, distribute dividends, or trigger investments based on predefined rules and performance metrics. + +6. Real Estate Transactions: Smart contracts can streamline various aspects of real estate transactions, increasing efficiency and reducing the need for intermediaries. Key use cases include: + - Escrow and payment automation: Contracts can securely hold funds in escrow and automatically release them when specific conditions, such as successful property transfer or completion of milestones, are met. + - Streamlined rental agreements: Contracts can automate rental payments, manage security deposits, and enforce the terms and conditions stipulated in the agreement. + +These examples illustrate just a few of the many compelling use cases for autonomous smart contracts. The self wake-up functionality empowers automated processes, reduces reliance on intermediaries, and enhances efficiency and transparency across diverse industries. + + +# Going further + +If you want to go further and start coding your own autonomous smart contract, you can read more about the ABI that allows you to automate your smart contracts and find examples of autonomous smart contracts (here - link the section in Build part, an alternative to this one: https://docs.massa.net/en/latest/web3-dev/smart-contracts/autonomous-smart-contract.html#web3-asc])[to do]. -Improve significantly: https://docs.massa.net/en/latest/general-doc/autonomous-sc.html \ No newline at end of file From c87731695ed6b1aa818b286c311f79b36b1c65f6 Mon Sep 17 00:00:00 2001 From: Ena Redzic <113043914+longgamma-massa@users.noreply.github.com> Date: Mon, 5 Jun 2023 17:31:31 +0200 Subject: [PATCH 02/14] adds intro to-do --- docs/learn/autonomous-sc.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/learn/autonomous-sc.mdx b/docs/learn/autonomous-sc.mdx index 90c34a106..b1afcf535 100644 --- a/docs/learn/autonomous-sc.mdx +++ b/docs/learn/autonomous-sc.mdx @@ -4,7 +4,7 @@ sidebar_label: Autonomous Smart Contracts --- # Autonomous Smart Contracts -this should be turned into a folder and have pages: Introduction, ASC on the Massa blockchain, +this should be turned into a folder and have pages: Introduction, ASC on the Massa blockchain, Usecases, Going Further. ## Introduction From 54975ac3c0b6f4763963e4fcc2a426b7895d41e4 Mon Sep 17 00:00:00 2001 From: Ena Redzic <113043914+longgamma-massa@users.noreply.github.com> Date: Mon, 5 Jun 2023 17:35:59 +0200 Subject: [PATCH 03/14] typo fix --- docs/learn/autonomous-sc.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/learn/autonomous-sc.mdx b/docs/learn/autonomous-sc.mdx index b1afcf535..c8935ea89 100644 --- a/docs/learn/autonomous-sc.mdx +++ b/docs/learn/autonomous-sc.mdx @@ -9,7 +9,7 @@ this should be turned into a folder and have pages: Introduction, ASC on the Mas ## Introduction Massa Blockchain introduces a groundbreaking feature known as Autonomous Smart Contracts. -These smart contracts possess a unique capability—they can independently determine their own activation without any external actors. +These smart contracts possess a unique capability - they can independently determine their own activation without any external actors. By the end of this page, you will gain a fundamental understanding of: - The limitations of current smart contracts on existing blockchains From b477516afa87db3f3f71bfe4ceebec094e9dc649 Mon Sep 17 00:00:00 2001 From: Ena Redzic <113043914+longgamma-massa@users.noreply.github.com> Date: Thu, 15 Jun 2023 11:46:15 +0200 Subject: [PATCH 04/14] broke lines in text --- docs/learn/autonomous-sc.mdx | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/docs/learn/autonomous-sc.mdx b/docs/learn/autonomous-sc.mdx index c8935ea89..3cb4026df 100644 --- a/docs/learn/autonomous-sc.mdx +++ b/docs/learn/autonomous-sc.mdx @@ -34,11 +34,18 @@ these liquidations are executed by organizations or individuals who run bots, of ## The Need for a Reliable Automation Mechanism -The reliance on recurrent triggers is a prevalent requirement across numerous applications. Consequently, significant time and effort have been invested in developing more dependable networks of bots to ensure the timely execution of transactions. However, since these solutions operate off-chain, there is no guarantee that the execution will be triggered effectively. In cases where bots fail to execute transactions, decentralized protocols face risks, as do the applications built on top of them. +The reliance on recurrent triggers is a prevalent requirement across numerous applications. +Consequently, significant time and effort have been invested in developing more dependable networks of bots to ensure +the timely execution of transactions. +However, since these solutions operate off-chain, there is no guarantee that the execution will be triggered effectively. +In cases where bots fail to execute transactions, decentralized protocols face risks, as do the applications built on top of them. # Autonomous Smart Contracts on the Massa Blockchain -Massa's Autonomous Smart Contracts address the challenges of reliability, sophistication, and centralization that plague dApps seeking to offer automated smart-contract execution on behalf of their users. These innovative smart contracts introduce the ability to self-wake, granting them the power to autonomously perform arbitrary operations. For instance, they can be programmed to trigger specific calls when predefined exchange rate targets within liquid pools are met. +Massa's Autonomous Smart Contracts address the challenges of reliability, sophistication, and centralization that plague dApps +seeking to offer automated smart-contract execution on behalf of their users. +These innovative smart contracts introduce the ability to self-wake, granting them the power to autonomously perform arbitrary operations. +For instance, they can be programmed to trigger specific calls when predefined exchange rate targets within liquid pools are met. ## The Mechanism within Massa Network @@ -51,8 +58,10 @@ Massa's Autonomous Smart Contracts address the challenges of reliability, sophis # Use-cases and applications -We already learned that autonomous smart contracts have the special ability to self wake-up and execute actions when specific conditions are met. -This offers a wide range of compelling use-cases that were either impossible, too costly, or risky to do with benchmark smart-contract functionalities. +We already learned that autonomous smart contracts have the special ability to self wake-up and execute actions when specific +conditions are met. +This offers a wide range of compelling use-cases that were either impossible, too costly, or risky to do with benchmark +smart-contract functionalities. Here are some of the best use cases for autonomous smart contracts: 1. Decentralized Finance (DeFi): Autonomous smart contracts can revolutionize DeFi applications by enabling automated and self-executing actions. Some notable use cases include: @@ -80,10 +89,13 @@ Here are some of the best use cases for autonomous smart contracts: - Escrow and payment automation: Contracts can securely hold funds in escrow and automatically release them when specific conditions, such as successful property transfer or completion of milestones, are met. - Streamlined rental agreements: Contracts can automate rental payments, manage security deposits, and enforce the terms and conditions stipulated in the agreement. -These examples illustrate just a few of the many compelling use cases for autonomous smart contracts. The self wake-up functionality empowers automated processes, reduces reliance on intermediaries, and enhances efficiency and transparency across diverse industries. +These examples illustrate just a few of the many compelling use cases for autonomous smart contracts. +The self wake-up functionality empowers automated processes, reduces reliance on intermediaries, and enhances efficiency and +transparency across diverse industries. # Going further -If you want to go further and start coding your own autonomous smart contract, you can read more about the ABI that allows you to automate your smart contracts and find examples of autonomous smart contracts (here - link the section in Build part, an alternative to this one: https://docs.massa.net/en/latest/web3-dev/smart-contracts/autonomous-smart-contract.html#web3-asc])[to do]. +If you want to go further and start coding your own autonomous smart contract, you can read more about the ABI that allows you to +automate your smart contracts and find examples of autonomous smart contracts (here - link the section in Build part, an alternative to this one: https://docs.massa.net/en/latest/web3-dev/smart-contracts/autonomous-smart-contract.html#web3-asc])[to do]. From 81faa38094ec8307d376a767f4733782796cdd3a Mon Sep 17 00:00:00 2001 From: Ena Redzic <113043914+longgamma-massa@users.noreply.github.com> Date: Mon, 19 Jun 2023 21:06:53 +0200 Subject: [PATCH 05/14] removed the missing section --- docs/learn/autonomous-sc.mdx | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/docs/learn/autonomous-sc.mdx b/docs/learn/autonomous-sc.mdx index 3cb4026df..e642c256b 100644 --- a/docs/learn/autonomous-sc.mdx +++ b/docs/learn/autonomous-sc.mdx @@ -50,18 +50,11 @@ For instance, they can be programmed to trigger specific calls when predefined e ## The Mechanism within Massa Network - ##to do:## - 1. Review info from here and update if needed https://docs.massa.net/en/latest/general-doc/autonomous-sc.html#mechanism-in-massa-network - 2. Create a diagram like in Operation lifecycle, that follows all mentioned info in the text. As here: https://docs.massa.net/en/latest/general-doc/architecture/archi-global.html#operation-lifecycle - - # Use-cases and applications -We already learned that autonomous smart contracts have the special ability to self wake-up and execute actions when specific -conditions are met. -This offers a wide range of compelling use-cases that were either impossible, too costly, or risky to do with benchmark -smart-contract functionalities. +Autonomous smart contracts offers a wide range of compelling use-cases that were either impossible, too costly, or risky to do with benchmark are met. Here are some of the best use cases for autonomous smart contracts: 1. Decentralized Finance (DeFi): Autonomous smart contracts can revolutionize DeFi applications by enabling automated and self-executing actions. Some notable use cases include: @@ -96,6 +89,5 @@ transparency across diverse industries. # Going further -If you want to go further and start coding your own autonomous smart contract, you can read more about the ABI that allows you to -automate your smart contracts and find examples of autonomous smart contracts (here - link the section in Build part, an alternative to this one: https://docs.massa.net/en/latest/web3-dev/smart-contracts/autonomous-smart-contract.html#web3-asc])[to do]. +If you want to go further and start coding your own autonomous smart contract, go to the (Build section)[to do]. From eb6b869e5fa8a930d9f473016808732fc89ae32d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9gory=20Libert?= Date: Wed, 21 Jun 2023 09:21:46 +0200 Subject: [PATCH 06/14] add asc section in build directory --- docs/build/asc.mdx | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 docs/build/asc.mdx diff --git a/docs/build/asc.mdx b/docs/build/asc.mdx new file mode 100644 index 000000000..487104963 --- /dev/null +++ b/docs/build/asc.mdx @@ -0,0 +1,6 @@ +--- +id: asc +sidebar_label: Autonomous Smart Contract +--- + +#TODO From f0c343b1acfcfde8f8353111142095799f3c4e24 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9gory=20Libert?= Date: Wed, 21 Jun 2023 09:22:25 +0200 Subject: [PATCH 07/14] split asc documentation in multiple files --- docs/learn/asc/asc-going-further.mdx | 7 ++ docs/learn/asc/asc-on-blockchain.mdx | 14 ++++ .../asc-use-cases.mdx} | 65 ++----------------- docs/learn/asc/autonomous-smart-contract.mdx | 38 +++++++++++ 4 files changed, 64 insertions(+), 60 deletions(-) create mode 100644 docs/learn/asc/asc-going-further.mdx create mode 100644 docs/learn/asc/asc-on-blockchain.mdx rename docs/learn/{autonomous-sc.mdx => asc/asc-use-cases.mdx} (55%) create mode 100644 docs/learn/asc/autonomous-smart-contract.mdx diff --git a/docs/learn/asc/asc-going-further.mdx b/docs/learn/asc/asc-going-further.mdx new file mode 100644 index 000000000..09b2e598d --- /dev/null +++ b/docs/learn/asc/asc-going-further.mdx @@ -0,0 +1,7 @@ +--- +id: asc-going-further +sidebar_label: Going further +--- +# Going further + +If you want to go further and start coding your own autonomous smart contract, go to the [Build section](/docs/build/asc.mdx). \ No newline at end of file diff --git a/docs/learn/asc/asc-on-blockchain.mdx b/docs/learn/asc/asc-on-blockchain.mdx new file mode 100644 index 000000000..31b2417c1 --- /dev/null +++ b/docs/learn/asc/asc-on-blockchain.mdx @@ -0,0 +1,14 @@ +--- +id: asc-on-blockchain +sidebar_label: On the Massa Blockchain +--- +# Autonomous Smart Contracts on the Massa Blockchain + +Massa's Autonomous Smart Contracts address the challenges of reliability, sophistication, and centralization that plague dApps +seeking to offer automated smart-contract execution on behalf of their users. +These innovative smart contracts introduce the ability to self-wake, granting them the power to autonomously perform arbitrary operations. +For instance, they can be programmed to trigger specific calls when predefined exchange rate targets within liquid pools are met. + +## The Mechanism within Massa Network + + - ##to do:## diff --git a/docs/learn/autonomous-sc.mdx b/docs/learn/asc/asc-use-cases.mdx similarity index 55% rename from docs/learn/autonomous-sc.mdx rename to docs/learn/asc/asc-use-cases.mdx index e642c256b..1234c4d21 100644 --- a/docs/learn/autonomous-sc.mdx +++ b/docs/learn/asc/asc-use-cases.mdx @@ -1,60 +1,11 @@ --- -id: autonomous-sc -sidebar_label: Autonomous Smart Contracts +id: asc-use-cases +sidebar_label: Use-cases --- - -# Autonomous Smart Contracts -this should be turned into a folder and have pages: Introduction, ASC on the Massa blockchain, Usecases, Going Further. - -## Introduction - -Massa Blockchain introduces a groundbreaking feature known as Autonomous Smart Contracts. -These smart contracts possess a unique capability - they can independently determine their own activation without any external actors. -By the end of this page, you will gain a fundamental understanding of: - -- The limitations of current smart contracts on existing blockchains -- How Massa Blockchain overcomes these limitations by empowering pre-programmed execution -- The inner workings and mechanisms behind autonomous smart contracts - -## Challenges with Existing Smart Contracts - -In today's blockchain landscape, smart contracts face limitations when it comes to automating operations without external triggers. -While automation lies at the heart of numerous industries, particularly in the realm of modern finance, only -certain actions within decentralized finance (DeFi) protocols, such as lending and arbitration, are automated. -However, even these actions are typically executed by off-chain bots. The absence of external calls prevents smart contracts, -as they exist in current public blockchains, from performing automated operations. - -Many decentralized protocols rely on recurrent triggers to ensure their smooth operation. -For example, in decentralized lending protocols, borrowers lock crypto assets as collateral when obtaining loans. -If the value of the collateralized asset drops below a specified threshold, the borrower's position becomes under-collateralized -and requires immediate action. To maintain the integrity of the protocol, such positions must be liquidated. Currently, -these liquidations are executed by organizations or individuals who run bots, often on centralized cloud services. - - - -## The Need for a Reliable Automation Mechanism - -The reliance on recurrent triggers is a prevalent requirement across numerous applications. -Consequently, significant time and effort have been invested in developing more dependable networks of bots to ensure -the timely execution of transactions. -However, since these solutions operate off-chain, there is no guarantee that the execution will be triggered effectively. -In cases where bots fail to execute transactions, decentralized protocols face risks, as do the applications built on top of them. - -# Autonomous Smart Contracts on the Massa Blockchain - -Massa's Autonomous Smart Contracts address the challenges of reliability, sophistication, and centralization that plague dApps -seeking to offer automated smart-contract execution on behalf of their users. -These innovative smart contracts introduce the ability to self-wake, granting them the power to autonomously perform arbitrary operations. -For instance, they can be programmed to trigger specific calls when predefined exchange rate targets within liquid pools are met. - -## The Mechanism within Massa Network - - - ##to do:## - - # Use-cases and applications -Autonomous smart contracts offers a wide range of compelling use-cases that were either impossible, too costly, or risky to do with benchmark are met. +Autonomous smart contracts offers a wide range of compelling use-cases that were either impossible, too costly, or risky to do with benchmark are met. + Here are some of the best use cases for autonomous smart contracts: 1. Decentralized Finance (DeFi): Autonomous smart contracts can revolutionize DeFi applications by enabling automated and self-executing actions. Some notable use cases include: @@ -84,10 +35,4 @@ Here are some of the best use cases for autonomous smart contracts: These examples illustrate just a few of the many compelling use cases for autonomous smart contracts. The self wake-up functionality empowers automated processes, reduces reliance on intermediaries, and enhances efficiency and -transparency across diverse industries. - - -# Going further - -If you want to go further and start coding your own autonomous smart contract, go to the (Build section)[to do]. - +transparency across diverse industries. \ No newline at end of file diff --git a/docs/learn/asc/autonomous-smart-contract.mdx b/docs/learn/asc/autonomous-smart-contract.mdx new file mode 100644 index 000000000..a18107f52 --- /dev/null +++ b/docs/learn/asc/autonomous-smart-contract.mdx @@ -0,0 +1,38 @@ +--- +id: autonomous-smart-contract +sidebar_label: Introduction +--- + +# Autonomous Smart Contracts + +## Introduction + +Massa Blockchain introduces a groundbreaking feature known as Autonomous Smart Contracts. +These smart contracts possess a unique capability - they can independently determine their own activation without any external actors. +By the end of this page, you will gain a fundamental understanding of: + +- The limitations of current smart contracts on existing blockchains +- How Massa Blockchain overcomes these limitations by empowering pre-programmed execution +- The inner workings and mechanisms behind autonomous smart contracts + +## Challenges with Existing Smart Contracts + +In today's blockchain landscape, smart contracts face limitations when it comes to automating operations without external triggers. +While automation lies at the heart of numerous industries, particularly in the realm of modern finance, only +certain actions within decentralized finance (DeFi) protocols, such as lending and arbitration, are automated. +However, even these actions are typically executed by off-chain bots. The absence of external calls prevents smart contracts, +as they exist in current public blockchains, from performing automated operations. + +Many decentralized protocols rely on recurrent triggers to ensure their smooth operation. +For example, in decentralized lending protocols, borrowers lock crypto assets as collateral when obtaining loans. +If the value of the collateralized asset drops below a specified threshold, the borrower's position becomes under-collateralized +and requires immediate action. To maintain the integrity of the protocol, such positions must be liquidated. Currently, +these liquidations are executed by organizations or individuals who run bots, often on centralized cloud services. + +## The Need for a Reliable Automation Mechanism + +The reliance on recurrent triggers is a prevalent requirement across numerous applications. +Consequently, significant time and effort have been invested in developing more dependable networks of bots to ensure +the timely execution of transactions. +However, since these solutions operate off-chain, there is no guarantee that the execution will be triggered effectively. +In cases where bots fail to execute transactions, decentralized protocols face risks, as do the applications built on top of them. \ No newline at end of file From 6cfd1627a8d48d480df3a7133059d270f84fdc8b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9gory=20Libert?= Date: Wed, 21 Jun 2023 09:22:53 +0200 Subject: [PATCH 08/14] add asc sections --- sidebars.js | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/sidebars.js b/sidebars.js index 7adb2e707..654183f23 100644 --- a/sidebars.js +++ b/sidebars.js @@ -42,6 +42,26 @@ const sidebars = { type: "doc", id: "learn/architecture/consensus-quality", }, + { + type: "html", + value: "Autonomous Smart Contract" + }, + { + type: "doc", + id: "learn/asc/autonomous-smart-contract", + }, + { + type: "doc", + id: "learn/asc/asc-on-blockchain", + }, + { + type: "doc", + id: "learn/asc/asc-use-cases", + }, + { + type: "doc", + id: "learn/asc/asc-going-further", + }, ], tutorialSidebar: [ { @@ -98,6 +118,10 @@ const sidebars = { type: "doc", id: "build/quickstart", }, + { + type: "doc", + id: "build/asc", + }, ], nodeSidebar: [ { From 7c26428ddb54c603a0a30ba68febce3e3751ea1c Mon Sep 17 00:00:00 2001 From: Adrien LF Date: Wed, 21 Jun 2023 11:49:19 +0200 Subject: [PATCH 09/14] fix broken links, fix sidebar --- docs/learn/architecture/basic-concepts.mdx | 2 +- docs/learn/asc/asc-going-further.mdx | 2 +- docs/tutorial/trading-bot.mdx | 2 +- sidebars.js | 4 ++++ 4 files changed, 7 insertions(+), 3 deletions(-) diff --git a/docs/learn/architecture/basic-concepts.mdx b/docs/learn/architecture/basic-concepts.mdx index ced316cb4..fac96953f 100644 --- a/docs/learn/architecture/basic-concepts.mdx +++ b/docs/learn/architecture/basic-concepts.mdx @@ -161,7 +161,7 @@ These use cases exemplify the transformative potential of Autonomous Smart Contr processes across various industries. :::info - Learn more about Autonomous Smart Contracts [here](/docu-dev/docs/learn/autonomous-sc). + Learn more about Autonomous Smart Contracts [here](/docu-dev/docs/learn/asc/autonomous-smart-contract). ::: ## Storage costs diff --git a/docs/learn/asc/asc-going-further.mdx b/docs/learn/asc/asc-going-further.mdx index 09b2e598d..c4c868116 100644 --- a/docs/learn/asc/asc-going-further.mdx +++ b/docs/learn/asc/asc-going-further.mdx @@ -4,4 +4,4 @@ sidebar_label: Going further --- # Going further -If you want to go further and start coding your own autonomous smart contract, go to the [Build section](/docs/build/asc.mdx). \ No newline at end of file +If you want to go further and start coding your own autonomous smart contract, go to the [Build section](/docs/build/asc.mdx). diff --git a/docs/tutorial/trading-bot.mdx b/docs/tutorial/trading-bot.mdx index bcb2dc48a..55ce4b9f6 100644 --- a/docs/tutorial/trading-bot.mdx +++ b/docs/tutorial/trading-bot.mdx @@ -5,7 +5,7 @@ sidebar_label: Trading bot # Autonomous Trading Bot -This video is a great example of how to use Massa's [autonomous smart contracts](/docs/learn/autonomous-sc) to build a trading bot that will automatically buy and sell tokens on the [Dusa](https://dusa.io) decentralized exchange (DEX). +This video is a great example of how to use Massa's [autonomous smart contracts](/docs/learn/asc/autonomous-smart-contract) to build a trading bot that will automatically buy and sell tokens on the [Dusa](https://dusa.io) decentralized exchange (DEX). This tutorial cover all the tooling required to build a decentralized application on the Massa blockchain, from the smart contract to the front-end interface, making it a great way to get started with Massa. diff --git a/sidebars.js b/sidebars.js index 7a0da3ec4..972895218 100644 --- a/sidebars.js +++ b/sidebars.js @@ -47,6 +47,10 @@ const sidebars = { type: "doc", id: "learn/architecture/storage-costs", }, + { + type: "html", + value: "
", + }, { type: "html", value: "Autonomous Smart Contract" From 42e578f5c5c64d62abf141c3c24a87de0705975d Mon Sep 17 00:00:00 2001 From: Adrien LF Date: Sat, 24 Jun 2023 16:38:38 +0200 Subject: [PATCH 10/14] wip --- docs/learn/asc/asc-going-further.mdx | 7 ------- docs/learn/asc/autonomous-sc.webp | Bin 0 -> 150838 bytes docs/learn/asc/autonomous-smart-contract.mdx | 9 +++++---- ...asc-on-blockchain.mdx => on-blockchain.mdx} | 8 +++++--- .../asc/{asc-use-cases.mdx => use-cases.mdx} | 10 +++++++--- sidebars.js | 8 ++------ 6 files changed, 19 insertions(+), 23 deletions(-) delete mode 100644 docs/learn/asc/asc-going-further.mdx create mode 100644 docs/learn/asc/autonomous-sc.webp rename docs/learn/asc/{asc-on-blockchain.mdx => on-blockchain.mdx} (80%) rename docs/learn/asc/{asc-use-cases.mdx => use-cases.mdx} (94%) diff --git a/docs/learn/asc/asc-going-further.mdx b/docs/learn/asc/asc-going-further.mdx deleted file mode 100644 index c4c868116..000000000 --- a/docs/learn/asc/asc-going-further.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -id: asc-going-further -sidebar_label: Going further ---- -# Going further - -If you want to go further and start coding your own autonomous smart contract, go to the [Build section](/docs/build/asc.mdx). diff --git a/docs/learn/asc/autonomous-sc.webp b/docs/learn/asc/autonomous-sc.webp new file mode 100644 index 0000000000000000000000000000000000000000..47198541b923f439e0a771665e9340dfcc9f0c95 GIT binary patch literal 150838 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%0Ah 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%0Dyi^g>TY|Z;^L&1op$2~}) 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 D7#*-V literal 0 HcmV?d00001 diff --git a/docs/learn/asc/autonomous-smart-contract.mdx b/docs/learn/asc/autonomous-smart-contract.mdx index a18107f52..7943a1dc8 100644 --- a/docs/learn/asc/autonomous-smart-contract.mdx +++ b/docs/learn/asc/autonomous-smart-contract.mdx @@ -7,13 +7,14 @@ sidebar_label: Introduction ## Introduction -Massa Blockchain introduces a groundbreaking feature known as Autonomous Smart Contracts. -These smart contracts possess a unique capability - they can independently determine their own activation without any external actors. -By the end of this page, you will gain a fundamental understanding of: +Massa Blockchain introduces a groundbreaking feature known as Autonomous Smart Contracts. +These smart contracts possess a unique capability: they can independently determine their own activation without any external actors. +By the end of this section, you will gain a fundamental understanding of: - The limitations of current smart contracts on existing blockchains - How Massa Blockchain overcomes these limitations by empowering pre-programmed execution - The inner workings and mechanisms behind autonomous smart contracts +- The use cases enables by autonomous smart contracts ## Challenges with Existing Smart Contracts @@ -35,4 +36,4 @@ The reliance on recurrent triggers is a prevalent requirement across numerous ap Consequently, significant time and effort have been invested in developing more dependable networks of bots to ensure the timely execution of transactions. However, since these solutions operate off-chain, there is no guarantee that the execution will be triggered effectively. -In cases where bots fail to execute transactions, decentralized protocols face risks, as do the applications built on top of them. \ No newline at end of file +In cases where bots fail to execute transactions, decentralized protocols face risks, as do the applications built on top of them. diff --git a/docs/learn/asc/asc-on-blockchain.mdx b/docs/learn/asc/on-blockchain.mdx similarity index 80% rename from docs/learn/asc/asc-on-blockchain.mdx rename to docs/learn/asc/on-blockchain.mdx index 31b2417c1..6e27548ad 100644 --- a/docs/learn/asc/asc-on-blockchain.mdx +++ b/docs/learn/asc/on-blockchain.mdx @@ -1,8 +1,8 @@ --- -id: asc-on-blockchain -sidebar_label: On the Massa Blockchain +id: massa-asc +sidebar_label: Autonomous Smart Contracts --- -# Autonomous Smart Contracts on the Massa Blockchain +# Massa's Autonomous Smart Contracts Massa's Autonomous Smart Contracts address the challenges of reliability, sophistication, and centralization that plague dApps seeking to offer automated smart-contract execution on behalf of their users. @@ -11,4 +11,6 @@ For instance, they can be programmed to trigger specific calls when predefined e ## The Mechanism within Massa Network +![Example banner](./autonomous-sc.webp) + - ##to do:## diff --git a/docs/learn/asc/asc-use-cases.mdx b/docs/learn/asc/use-cases.mdx similarity index 94% rename from docs/learn/asc/asc-use-cases.mdx rename to docs/learn/asc/use-cases.mdx index 1234c4d21..9e96300a4 100644 --- a/docs/learn/asc/asc-use-cases.mdx +++ b/docs/learn/asc/use-cases.mdx @@ -1,8 +1,8 @@ --- -id: asc-use-cases +id: use-cases sidebar_label: Use-cases --- -# Use-cases and applications +# Use-cases & Applications Autonomous smart contracts offers a wide range of compelling use-cases that were either impossible, too costly, or risky to do with benchmark are met. @@ -35,4 +35,8 @@ Here are some of the best use cases for autonomous smart contracts: These examples illustrate just a few of the many compelling use cases for autonomous smart contracts. The self wake-up functionality empowers automated processes, reduces reliance on intermediaries, and enhances efficiency and -transparency across diverse industries. \ No newline at end of file +transparency across diverse industries. + +## Going further + +If you want to go further and start coding your own autonomous smart contract, head to the [Build section](/docs/build/home). diff --git a/sidebars.js b/sidebars.js index 972895218..411ce2385 100644 --- a/sidebars.js +++ b/sidebars.js @@ -61,15 +61,11 @@ const sidebars = { }, { type: "doc", - id: "learn/asc/asc-on-blockchain", + id: "learn/asc/massa-asc", }, { type: "doc", - id: "learn/asc/asc-use-cases", - }, - { - type: "doc", - id: "learn/asc/asc-going-further", + id: "learn/asc/use-cases", }, ], tutorialSidebar: [ From 2b24bbda3eb23560663df15aa99c4a1958eda689 Mon Sep 17 00:00:00 2001 From: Adrien LF Date: Sat, 24 Jun 2023 18:52:13 +0200 Subject: [PATCH 11/14] wip --- docs/learn/asc/on-blockchain.mdx | 26 +++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/docs/learn/asc/on-blockchain.mdx b/docs/learn/asc/on-blockchain.mdx index 6e27548ad..b60c65747 100644 --- a/docs/learn/asc/on-blockchain.mdx +++ b/docs/learn/asc/on-blockchain.mdx @@ -7,10 +7,30 @@ sidebar_label: Autonomous Smart Contracts Massa's Autonomous Smart Contracts address the challenges of reliability, sophistication, and centralization that plague dApps seeking to offer automated smart-contract execution on behalf of their users. These innovative smart contracts introduce the ability to self-wake, granting them the power to autonomously perform arbitrary operations. -For instance, they can be programmed to trigger specific calls when predefined exchange rate targets within liquid pools are met. +For instance, they can be programmed to trigger specific calls when predefined exchange rate targets are met in a decentralized exchange. ## The Mechanism within Massa Network -![Example banner](./autonomous-sc.webp) +![Autonomous SCs](./autonomous-sc.webp) - - ##to do:## +Standard operations are sent to an *operation pool* and are executed when they are included in a block. The cost of +execution is payed by the sender of the operation when the operation is executed. + +Autonomous smart contracts works by emitting messages which will schedule the execution. Those messages are emitted +by smart contracts, through operations sent by users or by autonomous operations. Messages are then stored in an +*asynchronous pool*. Contrary to standard operations, the gas required by autonomous smart contracts is paid upfront. + +The asynchronous pool is deterministic by nature as it’s filled with messages that ultimately come from operations +included in blocks, which are processed by every node of the network. The pool has a finite size and messages +are removed based on the fees and after a certain number of slots if they were not executed. + +As for normal operations, the number of autonomous operations that can be executed is limited, through a maximum amount +of gas. In practice, it’s possible that your message isn’t executed at the slot that you want, but in a later slot, +when there is enough space to include your message. If you want your message to be included as soon as possible, the +fees needs to be higher than other messages (just like standard operations). + +Messages are ordered using the following formula: + +$(Reverse(Ratio(msg.fee, max(msg.max_gas,1))), emission\_slot, emission\_index),$ + +where $emission\_index$ is an index that differentiate multiple messages created in the same slot. From 4ba4a4125f53c2ff8ceee234d24d74a9ca7cbcb7 Mon Sep 17 00:00:00 2001 From: Adrien LF Date: Sat, 24 Jun 2023 18:54:14 +0200 Subject: [PATCH 12/14] wip --- docs/learn/asc/use-cases.mdx | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/learn/asc/use-cases.mdx b/docs/learn/asc/use-cases.mdx index 9e96300a4..dd79878ca 100644 --- a/docs/learn/asc/use-cases.mdx +++ b/docs/learn/asc/use-cases.mdx @@ -8,28 +8,28 @@ Autonomous smart contracts offers a wide range of compelling use-cases that were Here are some of the best use cases for autonomous smart contracts: -1. Decentralized Finance (DeFi): Autonomous smart contracts can revolutionize DeFi applications by enabling automated and self-executing actions. Some notable use cases include: +1. **Decentralized Finance (DeFi)**: Autonomous smart contracts can revolutionize DeFi applications by enabling automated and self-executing actions. Some notable use cases include: - Automated liquidations: Smart contracts can automatically trigger the liquidation of under-collateralized positions in lending protocols when predetermined thresholds are breached. - Yield farming strategies: Contracts can autonomously perform yield farming strategies, automatically swapping and reinvesting tokens based on predefined conditions. - Dynamic portfolio rebalancing: Smart contracts can automatically adjust portfolio allocations based on market conditions, ensuring desired asset ratios are maintained. -2. Supply Chain Management: Autonomous smart contracts have the potential to streamline supply chain processes by automating specific actions triggered by predefined conditions. Key use cases include: +2. **Supply Chain Management**: Autonomous smart contracts have the potential to streamline supply chain processes by automating specific actions triggered by predefined conditions. Key use cases include: - Automatic inventory management: Contracts can initiate purchase orders or trigger production when inventory levels reach predefined thresholds, ensuring optimal stock levels. - Quality control and compliance: Smart contracts can autonomously perform quality checks and audits based on predefined criteria, ensuring compliance with standards and regulations. -3. Insurance Claims: Autonomous smart contracts can revolutionize the insurance industry by automating claims processes. Notable use cases include: +3. **Insurance Claims**: Autonomous smart contracts can revolutionize the insurance industry by automating claims processes. Notable use cases include: - Instant claims settlement: Contracts can automatically trigger claim payments when specific conditions, such as verified damage or loss, are met, accelerating the claims settlement process. - Parametric insurance: Smart contracts can leverage external data feeds, such as weather or seismic information, to autonomously determine and process claims without human intervention. -4. Gaming and NFTs: Autonomous smart contracts can bring enhanced functionality and interactivity, and cost-reduction in on-chain execution, to gaming and non-fungible token (NFT) platforms. Key use cases include: +4. **Gaming and NFTs**: Autonomous smart contracts can bring enhanced functionality and interactivity, and cost-reduction in on-chain execution, to gaming and non-fungible token (NFT) platforms. Key use cases include: - Dynamic NFTs: Contracts can imbue NFTs with evolving characteristics or abilities based on predefined conditions, creating captivating and unique gaming experiences. - Automated auctions: Contracts can autonomously initiate and manage auctions for rare items, with bidding and settlement executed automatically when predetermined criteria are met. -5. Decentralized Autonomous Organizations (DAOs): Autonomous smart contracts are instrumental in enabling self-governance and decision-making within DAOs. Notable use cases include: +5. **Decentralized Autonomous Organizations (DAOs)**: Autonomous smart contracts are instrumental in enabling self-governance and decision-making within DAOs. Notable use cases include: - Voting and governance: Contracts can autonomously trigger voting processes based on predefined conditions, empowering token holders to participate in important decision-making. There are various applications for this: from voting in local communities to democratic processes in corporate governance. - Automated fund management: Smart contracts can autonomously allocate funds, distribute dividends, or trigger investments based on predefined rules and performance metrics. -6. Real Estate Transactions: Smart contracts can streamline various aspects of real estate transactions, increasing efficiency and reducing the need for intermediaries. Key use cases include: +6. **Real Estate Transactions**: Smart contracts can streamline various aspects of real estate transactions, increasing efficiency and reducing the need for intermediaries. Key use cases include: - Escrow and payment automation: Contracts can securely hold funds in escrow and automatically release them when specific conditions, such as successful property transfer or completion of milestones, are met. - Streamlined rental agreements: Contracts can automate rental payments, manage security deposits, and enforce the terms and conditions stipulated in the agreement. From bda646e5cf35da61b1213e72766d8da45332058b Mon Sep 17 00:00:00 2001 From: Adrien LF Date: Sat, 24 Jun 2023 19:07:08 +0200 Subject: [PATCH 13/14] Remove asc from build --- docs/build/asc.mdx | 6 ------ sidebars.js | 4 ---- 2 files changed, 10 deletions(-) delete mode 100644 docs/build/asc.mdx diff --git a/docs/build/asc.mdx b/docs/build/asc.mdx deleted file mode 100644 index 487104963..000000000 --- a/docs/build/asc.mdx +++ /dev/null @@ -1,6 +0,0 @@ ---- -id: asc -sidebar_label: Autonomous Smart Contract ---- - -#TODO diff --git a/sidebars.js b/sidebars.js index 411ce2385..1de8ee56e 100644 --- a/sidebars.js +++ b/sidebars.js @@ -180,10 +180,6 @@ const sidebars = { type: "doc", id: "build/sdk", }, - { - type: "doc", - id: "build/asc", - }, ], nodeSidebar: [ { From 2cf40f48fdf0dc3d511b9ba12f74c50a8b0b160e Mon Sep 17 00:00:00 2001 From: Adrien LF Date: Sat, 24 Jun 2023 19:08:24 +0200 Subject: [PATCH 14/14] typo --- docs/learn/asc/on-blockchain.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/learn/asc/on-blockchain.mdx b/docs/learn/asc/on-blockchain.mdx index b60c65747..ea71e86a9 100644 --- a/docs/learn/asc/on-blockchain.mdx +++ b/docs/learn/asc/on-blockchain.mdx @@ -14,7 +14,7 @@ For instance, they can be programmed to trigger specific calls when predefined e ![Autonomous SCs](./autonomous-sc.webp) Standard operations are sent to an *operation pool* and are executed when they are included in a block. The cost of -execution is payed by the sender of the operation when the operation is executed. +execution is paid by the sender of the operation when the operation is executed. Autonomous smart contracts works by emitting messages which will schedule the execution. Those messages are emitted by smart contracts, through operations sent by users or by autonomous operations. Messages are then stored in an