From bc68bcd76d4d86a3977ec97452bfdfbe193be193 Mon Sep 17 00:00:00 2001 From: Arnaud Bailly Date: Tue, 11 Apr 2023 17:25:07 +0200 Subject: [PATCH 1/7] Start adding disclaimers on README and website --- README.md | 16 ++++++++++------ docs/docs/getting-started/index.md | 8 ++++++++ docs/docs/getting-started/quickstart.md | 4 ++-- docs/docs/getting-started/troubleshooting.md | 10 ++++++++-- 4 files changed, 28 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 715dfe81876..4f528070e0e 100644 --- a/README.md +++ b/README.md @@ -19,12 +19,16 @@ we've put together, marching towards a production ready solution. It contains a connects to other hydra-nodes, interfaces the Cardano blockchain and provides an API to clients such as the included example terminal user interface `hydra-tui`. -> :warning: :warning: :warning: -> -> This is still prototypical and exploratory work shared here for your -interest. -> -> It is NOT ready for production (yet). +
+:rotating_light: Mainnet Availability :rotating_light: + +Since version 0.10.0, Hydra scripts are available on Cardano mainnet +and it's therefore possible to run Hydra nodes on mainnet. Before +doing so, be sure to read the [relevant section](https://hydra.family/head-protocol/docs/getting-started/troubleshooting) of the +documentation in order to understand the current limitations and the +possible consequences. + +
## :rocket: Getting started diff --git a/docs/docs/getting-started/index.md b/docs/docs/getting-started/index.md index 57b46891037..c82ac4461e0 100644 --- a/docs/docs/getting-started/index.md +++ b/docs/docs/getting-started/index.md @@ -4,6 +4,14 @@ sidebar_position: 1 # Getting Started +:::warning Mainnet Availability +Since version 0.10.0, Hydra scripts are available on Cardano mainnet +and it's therefore possible to run Hydra nodes on mainnet. Before +doing so, be sure to review the [relevant section](/docs/getting-started/troubleshooting) of the +documentation in order to understand the current limitations and the +possible consequences. +::: + ```mdx-code-block import DocCardList from '@theme/DocCardList'; import {useCurrentSidebarCategory} from '@docusaurus/theme-common'; diff --git a/docs/docs/getting-started/quickstart.md b/docs/docs/getting-started/quickstart.md index fe3929885b6..b260bb64976 100644 --- a/docs/docs/getting-started/quickstart.md +++ b/docs/docs/getting-started/quickstart.md @@ -282,5 +282,5 @@ We provide sample node configurations that will help you get started hosting a H ## Running on Mainnet Hydra node is compatible with the mainnet network. To choose this network you need to specify `--mainnet` flag for the network id in the hydra-node arguments. We publish the hydra scripts on each new release and you can find them on the [release page](https://github.com/input-output-hk/hydra/releases) (look for section _Hydra Scripts_). -You would need to match the hydra-node version with the appropriate scripts published for this release and make sure to choose the correct network. -Currently there is a hard-coded limit on mainnet network where you can only commit up to 100 ADA into the Hydra head which is meant to prevent the users from _shooting themselves in the foot_ until we have more experiments on the mainnet. + +Please be sure to read the [relevant section](./troubleshooting) section to fully understand the limitations and consequences of running Hydra nodes on mainnet. diff --git a/docs/docs/getting-started/troubleshooting.md b/docs/docs/getting-started/troubleshooting.md index 10f031e1a21..bde99c4f722 100644 --- a/docs/docs/getting-started/troubleshooting.md +++ b/docs/docs/getting-started/troubleshooting.md @@ -1,6 +1,6 @@ # Troubleshooting -## Known issues +## Known issues & limitations ### hydra-node @@ -19,8 +19,14 @@ - Not an issue, but a workaround: The internal wallet of `hydra-node` requires a UTXO to be marked as "fuel" to drive the Hydra protocol transactions. See [user manual](/docs/getting-started/demo/with-docker/#seeding-the-network). +- You would need to match the hydra-node version with the appropriate scripts published for this release and make sure to choose the correct network. + +- There is a hard-coded limit on **mainnet** network where you can only commit up to 100 ADA into the Hydra head which is meant to prevent the users from _shooting themselves in the foot_ until we have more experience running Hydra Heads on the mainnet + +- Using reference scripts _inside the head_ will make it uncloseable on-chain as there's no way references can be preserved between off-chain and on-chain + ### hydra-tui - TUI crashes when user tries to post a new transaction wihout any UTXO remaining. -- Recipient addresses to send money to in the TUI are inferred from the current UTXO set. If a party does not commit a UTXO or consumes all its UTXO in a Head, it won't be able to send or receive anything anymore. \ No newline at end of file +- Recipient addresses to send money to in the TUI are inferred from the current UTXO set. If a party does not commit a UTXO or consumes all its UTXO in a Head, it won't be able to send or receive anything anymore. From fc1a1ba2607dfb5516a9320ef8f021891ac2d5ce Mon Sep 17 00:00:00 2001 From: Arnaud Bailly Date: Wed, 12 Apr 2023 13:58:05 +0200 Subject: [PATCH 2/7] Improved known issues page following suggestions and moved to own page --- README.md | 10 ++--- docs/docs/getting-started/index.md | 11 ++--- docs/docs/getting-started/troubleshooting.md | 32 -------------- docs/docs/known-issues.md | 46 ++++++++++++++++++++ 4 files changed, 57 insertions(+), 42 deletions(-) delete mode 100644 docs/docs/getting-started/troubleshooting.md create mode 100644 docs/docs/known-issues.md diff --git a/README.md b/README.md index 4f528070e0e..77dcb1b7cee 100644 --- a/README.md +++ b/README.md @@ -22,11 +22,11 @@ API to clients such as the included example terminal user interface `hydra-tui`.
:rotating_light: Mainnet Availability :rotating_light: -Since version 0.10.0, Hydra scripts are available on Cardano mainnet -and it's therefore possible to run Hydra nodes on mainnet. Before -doing so, be sure to read the [relevant section](https://hydra.family/head-protocol/docs/getting-started/troubleshooting) of the -documentation in order to understand the current limitations and the -possible consequences. +Hydra Head protocol is compatible with Cardano mainnet since version +0.10.0 and it's therefore possible to run hydra-node on mainnet. +Before doing so, be sure to review the [relevant +section](/docs/known-issues) of the documentation in order to +understand the current limitations and the possible consequences.
diff --git a/docs/docs/getting-started/index.md b/docs/docs/getting-started/index.md index c82ac4461e0..bddcad3d159 100644 --- a/docs/docs/getting-started/index.md +++ b/docs/docs/getting-started/index.md @@ -5,11 +5,12 @@ sidebar_position: 1 # Getting Started :::warning Mainnet Availability -Since version 0.10.0, Hydra scripts are available on Cardano mainnet -and it's therefore possible to run Hydra nodes on mainnet. Before -doing so, be sure to review the [relevant section](/docs/getting-started/troubleshooting) of the -documentation in order to understand the current limitations and the -possible consequences. +Hydra Head protocol is compatible with Cardano mainnet since version +0.10.0 and it's therefore possible to run hydra-node on mainnet. +Before doing so, be sure to review the [relevant +section](/docs/known-issues) of the documentation in order to +understand the current limitations and the possible consequences. + ::: ```mdx-code-block diff --git a/docs/docs/getting-started/troubleshooting.md b/docs/docs/getting-started/troubleshooting.md deleted file mode 100644 index bde99c4f722..00000000000 --- a/docs/docs/getting-started/troubleshooting.md +++ /dev/null @@ -1,32 +0,0 @@ -# Troubleshooting - -## Known issues & limitations - -### hydra-node - -- The current transaction size has a limit of ~16KB. This causes the following inconveniences: - - - The protocol can only handle a maximum number of participants by Head. See [cost of collectcom transaction](/benchmarks/transaction-cost/#cost-of-collectcom-transaction) or the `hydra-node` will inform you of the current configured maximum when trying to configure too many peers. - - - Each party can only commit zero or one utxo into a Head. - - - The head cannot be finalized if holding more than ~100 assets. See [cost of fanout transaction](https://hydra.family/head-protocol/benchmarks/transaction-cost/#cost-of-fanout-transaction) for latest numbers. - -- There are couple of ideas around reducing the risk of loosing funds in a Hydra Head: - - [Always abortable Head](https://github.com/input-output-hk/hydra/issues/699) - - [Limit size/complexity of UTxOs in the Head](https://github.com/input-output-hk/hydra/issues/698) - - [Only sign closable snapshots](https://github.com/input-output-hk/hydra/issues/370) - -- Not an issue, but a workaround: The internal wallet of `hydra-node` requires a UTXO to be marked as "fuel" to drive the Hydra protocol transactions. See [user manual](/docs/getting-started/demo/with-docker/#seeding-the-network). - -- You would need to match the hydra-node version with the appropriate scripts published for this release and make sure to choose the correct network. - -- There is a hard-coded limit on **mainnet** network where you can only commit up to 100 ADA into the Hydra head which is meant to prevent the users from _shooting themselves in the foot_ until we have more experience running Hydra Heads on the mainnet - -- Using reference scripts _inside the head_ will make it uncloseable on-chain as there's no way references can be preserved between off-chain and on-chain - -### hydra-tui - -- TUI crashes when user tries to post a new transaction wihout any UTXO remaining. - -- Recipient addresses to send money to in the TUI are inferred from the current UTXO set. If a party does not commit a UTXO or consumes all its UTXO in a Head, it won't be able to send or receive anything anymore. diff --git a/docs/docs/known-issues.md b/docs/docs/known-issues.md new file mode 100644 index 00000000000..b0e6c9d154c --- /dev/null +++ b/docs/docs/known-issues.md @@ -0,0 +1,46 @@ +# Known issues & limitations + +Please be aware of the following limitations before running hydra-node with `--mainnet`, as they could put your funds at risk. + +### Head protocol + +#### Layer-1/Layer-2 + +The current transaction size on mainnet is limited to 16KB, a limitation which has the following consequences: + - The protocol can only handle a maximum number of participants by Head (see [cost of collectcom transaction](/benchmarks/transaction-cost/#cost-of-collectcom-transaction)). Upon startup, the `hydra-node` will inform you of the current configured maximum when trying to configure too many peers. + - Each party can only commit zero or one utxo into a Head. + +It's possible to have funds locked at various stages in a Hydra Head because of the complexity or size of the UTxO being committed or created while the Head is open: + - The head cannot be _finalized_ if holding more than ~100 assets (see [cost of fanout transaction](https://hydra.family/head-protocol/benchmarks/transaction-cost/#cost-of-fanout-transaction) for latest numbers), although it can be _closed_ + - If one or more participants commit UTxO too large to be processed together in a `CollectCom` or `Abort` transaction, the Head will be stuck in the _initialising_ stage + - Tokens minted and not burnt in an _open_ head will prevent it from being _finalized_ + - Committing reference inputs from L1 to a Head is problematic and the hydra-node will prevent this should a client try to do so. Note that a `Commit` transaction could perfectly be crafted outside of the hydra-node and would therefore put the Head in an uncloseable state + - Using reference inputs on the L2 is non problematic as they will be committed back on the L1 along with all the other UTxO + +#### Networking + +Note the messages exchanged through the _Hydra Network_ layer between participants are neither authenticated, authorized, nor encrypted. It's therefore advised that operators requiring confidentiality and identification of participants run hydra-node connected through some kind of VPN or on top of encrypted channels. + +Also, while the Hydra Head protocol guarantees safety of a participant's funds, it does not guarantee liveness, so all parties involved in a Hydra Head must be online and reactive for the protocol to make progress. + +#### Remediations + +There are couple of ideas in the roadmap around reducing the risk of loosing funds in a Hydra Head: + - [Always abortable Head](https://github.com/input-output-hk/hydra/issues/699) + - [Limit size/complexity of UTxOs in the Head](https://github.com/input-output-hk/hydra/issues/698) + - [Only sign closable snapshots](https://github.com/input-output-hk/hydra/issues/370) + +### hydra-node + +Independently from the Head protocol itself, the way the hydra-node is implemented has the following consequences: + +- The hydra-node will reject attempts to `Commit` reference scripts UTxO +- There is a hard-coded limit on **mainnet** network where you can only commit up to 100 ADA into the Hydra head which is meant to prevent the users from _shooting themselves in the foot_ until we have more experience running Hydra Heads on the mainnet. +- The internal wallet of `hydra-node` which is used to drive Hydra protocol transactions requires a UTXO to be marked as "fuel" (see [user manual](/docs/getting-started/demo/with-docker/#seeding-the-network) +- You _need_ to match the hydra-node version with the appropriate scripts published for this release and make sure to choose the correct network w.r.t the given scripts reference. + +### hydra-tui + +- TUI crashes when user tries to post a new transaction wihout any UTXO remaining. + +- Recipient addresses to send money to in the TUI are inferred from the current UTXO set. If a party does not commit a UTXO or consumes all its UTXO in a Head, it won't be able to send or receive anything anymore. From 61f4d33579fb425f8c6c1ebe51d34065b52e72b9 Mon Sep 17 00:00:00 2001 From: Arnaud Bailly Date: Wed, 10 May 2023 20:31:31 +0200 Subject: [PATCH 3/7] Update disclaimer & limitations following review --- README.md | 38 +++++++++---- docs/docs/getting-started/index.md | 45 +++++++++++++-- docs/docs/known-issues.md | 90 +++++++++++++++++++++--------- 3 files changed, 133 insertions(+), 40 deletions(-) diff --git a/README.md b/README.md index 77dcb1b7cee..10afb79d940 100644 --- a/README.md +++ b/README.md @@ -19,16 +19,34 @@ we've put together, marching towards a production ready solution. It contains a connects to other hydra-nodes, interfaces the Cardano blockchain and provides an API to clients such as the included example terminal user interface `hydra-tui`. -
-:rotating_light: Mainnet Availability :rotating_light: - -Hydra Head protocol is compatible with Cardano mainnet since version -0.10.0 and it's therefore possible to run hydra-node on mainnet. -Before doing so, be sure to review the [relevant -section](/docs/known-issues) of the documentation in order to -understand the current limitations and the possible consequences. - -
+:rotating_light: Mainnet Availability :rotating_light: + +The Hydra Head protocol version 0.10.0 is compatible with the Cardano +mainnet, which means it is possible to run a hydra-node on mainnet for +testing purposes. + +Before running a Hydra node to take part in the Hydra Head protocol, +developers are strongly encouraged to review the [relevant +section](/docs/getting-started/troubleshooting) of the documentation +in order to understand the current limitations and the possible +consequences. + +By using Hydra Head protocol version 0.10.0, you understand the +protocol is in development and that use of the hydra-node on mainnet +is entirely at your own risk. + +You also acknowledge and agree to have an adequate understanding of +the risks associated with use of the Hydra Head protocol version +0.10.0 and that all information and materials published, distributed +or otherwise made available on Hydra.Family and Hydra Github +Repository is provided for non-commercial, personal use, and testing +purposes only. + +Hydra Head protocol version 0.10.0 is available on an ‘AS IS’ and ‘AS +AVAILABLE’ basis, without any representations or warranties of any +kind. All implied terms are excluded to the fullest extent permitted +by law. For details, see also sections 7, 8 and 9 of Apache 2.0 +License. ## :rocket: Getting started diff --git a/docs/docs/getting-started/index.md b/docs/docs/getting-started/index.md index bddcad3d159..6daadc64269 100644 --- a/docs/docs/getting-started/index.md +++ b/docs/docs/getting-started/index.md @@ -5,11 +5,46 @@ sidebar_position: 1 # Getting Started :::warning Mainnet Availability -Hydra Head protocol is compatible with Cardano mainnet since version -0.10.0 and it's therefore possible to run hydra-node on mainnet. -Before doing so, be sure to review the [relevant -section](/docs/known-issues) of the documentation in order to -understand the current limitations and the possible consequences. + +Hydra is the layer-two scalability solution for Cardano, which aims to increase +the speed of transactions (low latency, high throughput) and minimize +transaction cost. + +This repository contains the proof-of-concept implementation for the Hydra [Head +protocol](https://eprint.iacr.org/2020/299.pdf). It is a developer preview that +we've put together, marching towards a production ready solution. It contains a +`hydra-node`, which runs a simplified (coordinated) Hydra Head protocol, +connects to other hydra-nodes, interfaces the Cardano blockchain and provides an +API to clients such as the included example terminal user interface `hydra-tui`. + +:rotating_light: Mainnet Availability :rotating_light: + +The Hydra Head protocol version 0.10.0 is compatible with the Cardano +mainnet, which means it is possible to run a hydra-node on mainnet for +testing purposes. + +Before running a Hydra node to take part in the Hydra Head protocol, +developers are strongly encouraged to review the [relevant +section](/docs/getting-started/troubleshooting) of the documentation +in order to understand the current limitations and the possible +consequences. + +By using Hydra Head protocol version 0.10.0, you understand the +protocol is in development and that use of the hydra-node on mainnet +is entirely at your own risk. + +You also acknowledge and agree to have an adequate understanding of +the risks associated with use of the Hydra Head protocol version +0.10.0 and that all information and materials published, distributed +or otherwise made available on Hydra.Family and Hydra Github +Repository is provided for non-commercial, personal use, and testing +purposes only. + +Hydra Head protocol version 0.10.0 is available on an ‘AS IS’ and ‘AS +AVAILABLE’ basis, without any representations or warranties of any +kind. All implied terms are excluded to the fullest extent permitted +by law. For details, see also sections 7, 8 and 9 of Apache 2.0 +License. ::: diff --git a/docs/docs/known-issues.md b/docs/docs/known-issues.md index b0e6c9d154c..a8b868b6900 100644 --- a/docs/docs/known-issues.md +++ b/docs/docs/known-issues.md @@ -1,46 +1,86 @@ # Known issues & limitations -Please be aware of the following limitations before running hydra-node with `--mainnet`, as they could put your funds at risk. +Please be aware of the following limitations before running hydra-node +on the Cardano `--mainnet`; as an incredibly technical project, Hydra +in its current form requires an elevated level of understanding of the +underlying infrastructure. Without the expertise required to operate a +hydra-node, users may put their funds at risk if they are unfamiliar +with the implementation and usage process. ### Head protocol #### Layer-1/Layer-2 The current transaction size on mainnet is limited to 16KB, a limitation which has the following consequences: - - The protocol can only handle a maximum number of participants by Head (see [cost of collectcom transaction](/benchmarks/transaction-cost/#cost-of-collectcom-transaction)). Upon startup, the `hydra-node` will inform you of the current configured maximum when trying to configure too many peers. - - Each party can only commit zero or one utxo into a Head. - -It's possible to have funds locked at various stages in a Hydra Head because of the complexity or size of the UTxO being committed or created while the Head is open: - - The head cannot be _finalized_ if holding more than ~100 assets (see [cost of fanout transaction](https://hydra.family/head-protocol/benchmarks/transaction-cost/#cost-of-fanout-transaction) for latest numbers), although it can be _closed_ - - If one or more participants commit UTxO too large to be processed together in a `CollectCom` or `Abort` transaction, the Head will be stuck in the _initialising_ stage + - The protocol can only handle a maximum number of participants in a + Head (see [cost of collectcom + transaction](/benchmarks/transaction-cost/#cost-of-collectcom-transaction)). Upon + startup, the `hydra-node` will inform you of the current + configured maximum when trying to configure too many peers. + - Each party can only commit zero or one UTxO into a Head. + +It's currently possible to be denied access to funds by other protocol +participants at various stages in a Hydra Head because of the +complexity or size of the UTxO being committed or created while the +Head is open: + - The head cannot be _finalized_ if holding more than ~60 assets + (see [cost of fanout + transaction](https://hydra.family/head-protocol/benchmarks/transaction-cost/#cost-of-fanout-transaction) + for latest numbers), although it can be _closed_ + - If one or more participants commit UTxO too large to be processed + together in a `CollectCom` or `Abort` transaction, the Head will + be stuck in the _initialising_ stage - Tokens minted and not burnt in an _open_ head will prevent it from being _finalized_ - - Committing reference inputs from L1 to a Head is problematic and the hydra-node will prevent this should a client try to do so. Note that a `Commit` transaction could perfectly be crafted outside of the hydra-node and would therefore put the Head in an uncloseable state - - Using reference inputs on the L2 is non problematic as they will be committed back on the L1 along with all the other UTxO - -#### Networking - -Note the messages exchanged through the _Hydra Network_ layer between participants are neither authenticated, authorized, nor encrypted. It's therefore advised that operators requiring confidentiality and identification of participants run hydra-node connected through some kind of VPN or on top of encrypted channels. - -Also, while the Hydra Head protocol guarantees safety of a participant's funds, it does not guarantee liveness, so all parties involved in a Hydra Head must be online and reactive for the protocol to make progress. - -#### Remediations - -There are couple of ideas in the roadmap around reducing the risk of loosing funds in a Hydra Head: + - Committing reference scripts from L1 to a Head is problematic and + the hydra-node will prevent this should a client try to do + so. Note that a `Commit` transaction could perfectly be crafted + outside of the hydra-node and would therefore put the Head in an + uncloseable state + - Using reference scripts on the L2 is non problematic as they will + be committed back on the L1 along with all the other UTxO + +There are couple of items in the roadmap around reducing the risk of loosing funds in a Hydra Head: - [Always abortable Head](https://github.com/input-output-hk/hydra/issues/699) - [Limit size/complexity of UTxOs in the Head](https://github.com/input-output-hk/hydra/issues/698) - [Only sign closable snapshots](https://github.com/input-output-hk/hydra/issues/370) +#### Networking + +The messages exchanged through the _Hydra Network_ layer between +participants are neither authenticated, authorized, nor encrypted +which means communications between Hydra nodes are not protected. It's +advised that operators requiring confidentiality and/or identification +of participants run hydra-node connected through some kind of VPN or +on top of encrypted channels until this is addressed in the software +(see [#727](https://github.com/input-output-hk/hydra/issues/727)) + +Also, while the Hydra Head protocol guarantees safety of a +participant's funds, it does not guarantee liveness, so all parties +involved in a Hydra Head must be online and reactive for the protocol +to make progress. This means that, should one or several participants' +Hydra node crash, become unreachable from other Hydra nodes, or is +disconnected from the Cardano network, no more transactions can happen +in the Head and it must be closed. + ### hydra-node -Independently from the Head protocol itself, the way the hydra-node is implemented has the following consequences: +Independently from the Head protocol itself, the way the hydra-node is +implemented has the following consequences: -- The hydra-node will reject attempts to `Commit` reference scripts UTxO -- There is a hard-coded limit on **mainnet** network where you can only commit up to 100 ADA into the Hydra head which is meant to prevent the users from _shooting themselves in the foot_ until we have more experience running Hydra Heads on the mainnet. -- The internal wallet of `hydra-node` which is used to drive Hydra protocol transactions requires a UTXO to be marked as "fuel" (see [user manual](/docs/getting-started/demo/with-docker/#seeding-the-network) -- You _need_ to match the hydra-node version with the appropriate scripts published for this release and make sure to choose the correct network w.r.t the given scripts reference. +- There is a hard-coded limit on **mainnet** network where you can + only commit up to 100 ADA into the Hydra head. This is only a safety + precaution and is going to be increased as we gain more experience + in running Hydra heads on the mainnet. +- The internal wallet of `hydra-node` which is used to drive Hydra + protocol transactions requires a UTXO to be marked as "fuel" (see + [user + manual](/docs/getting-started/demo/with-docker/#seeding-the-network) ### hydra-tui - TUI crashes when user tries to post a new transaction wihout any UTXO remaining. -- Recipient addresses to send money to in the TUI are inferred from the current UTXO set. If a party does not commit a UTXO or consumes all its UTXO in a Head, it won't be able to send or receive anything anymore. +- Recipient addresses to send money to in the TUI are inferred from + the current UTXO set. If a party does not commit a UTXO or consumes + all its UTXO in a Head, it won't be able to send or receive anything + anymore. From 973f53c1e7676e6c05e4bc583a27d27a465348b0 Mon Sep 17 00:00:00 2001 From: Arnaud Bailly Date: Wed, 10 May 2023 22:30:00 +0200 Subject: [PATCH 4/7] Finalise disclaimer --- README.md | 12 ++++-------- docs/docs/getting-started/index.md | 12 ++++-------- 2 files changed, 8 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index 10afb79d940..5abf2a409ec 100644 --- a/README.md +++ b/README.md @@ -39,14 +39,10 @@ You also acknowledge and agree to have an adequate understanding of the risks associated with use of the Hydra Head protocol version 0.10.0 and that all information and materials published, distributed or otherwise made available on Hydra.Family and Hydra Github -Repository is provided for non-commercial, personal use, and testing -purposes only. - -Hydra Head protocol version 0.10.0 is available on an ‘AS IS’ and ‘AS -AVAILABLE’ basis, without any representations or warranties of any -kind. All implied terms are excluded to the fullest extent permitted -by law. For details, see also sections 7, 8 and 9 of Apache 2.0 -License. +Repository is available on an ‘AS IS’ and ‘AS AVAILABLE’ basis, +without any representations or warranties of any kind. All implied +terms are excluded to the fullest extent permitted by law. For +details, see also sections 7, 8 and 9 of Apache 2.0 License. ## :rocket: Getting started diff --git a/docs/docs/getting-started/index.md b/docs/docs/getting-started/index.md index 6daadc64269..a261e458303 100644 --- a/docs/docs/getting-started/index.md +++ b/docs/docs/getting-started/index.md @@ -37,14 +37,10 @@ You also acknowledge and agree to have an adequate understanding of the risks associated with use of the Hydra Head protocol version 0.10.0 and that all information and materials published, distributed or otherwise made available on Hydra.Family and Hydra Github -Repository is provided for non-commercial, personal use, and testing -purposes only. - -Hydra Head protocol version 0.10.0 is available on an ‘AS IS’ and ‘AS -AVAILABLE’ basis, without any representations or warranties of any -kind. All implied terms are excluded to the fullest extent permitted -by law. For details, see also sections 7, 8 and 9 of Apache 2.0 -License. +Repository is available on an ‘AS IS’ and ‘AS AVAILABLE’ basis, +without any representations or warranties of any kind. All implied +terms are excluded to the fullest extent permitted by law. For +details, see also sections 7, 8 and 9 of Apache 2.0 License. ::: From 14a3bdd37e34bd880bd391c06ae0b82c9e5f9739 Mon Sep 17 00:00:00 2001 From: Arnaud Bailly Date: Thu, 11 May 2023 08:49:21 +0200 Subject: [PATCH 5/7] Fix broken links --- docs/docs/getting-started/index.md | 2 +- docs/docs/getting-started/quickstart.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/docs/getting-started/index.md b/docs/docs/getting-started/index.md index a261e458303..b0c375f0080 100644 --- a/docs/docs/getting-started/index.md +++ b/docs/docs/getting-started/index.md @@ -25,7 +25,7 @@ testing purposes. Before running a Hydra node to take part in the Hydra Head protocol, developers are strongly encouraged to review the [relevant -section](/docs/getting-started/troubleshooting) of the documentation +section](/docs/known-issues) of the documentation in order to understand the current limitations and the possible consequences. diff --git a/docs/docs/getting-started/quickstart.md b/docs/docs/getting-started/quickstart.md index b260bb64976..ddd3aeaa1e2 100644 --- a/docs/docs/getting-started/quickstart.md +++ b/docs/docs/getting-started/quickstart.md @@ -283,4 +283,4 @@ We provide sample node configurations that will help you get started hosting a H Hydra node is compatible with the mainnet network. To choose this network you need to specify `--mainnet` flag for the network id in the hydra-node arguments. We publish the hydra scripts on each new release and you can find them on the [release page](https://github.com/input-output-hk/hydra/releases) (look for section _Hydra Scripts_). -Please be sure to read the [relevant section](./troubleshooting) section to fully understand the limitations and consequences of running Hydra nodes on mainnet. +Please be sure to read the [relevant section](/docs/known-issues) section to fully understand the limitations and consequences of running Hydra nodes on mainnet. From ee5631dc353635d149403b152f7a1ad6759f94b6 Mon Sep 17 00:00:00 2001 From: Sebastian Nagel Date: Thu, 11 May 2023 08:45:35 +0200 Subject: [PATCH 6/7] Reflow README and getting-started paragraphs --- README.md | 41 ++++++++++++++---------------- docs/docs/getting-started/index.md | 41 ++++++++++++++---------------- 2 files changed, 38 insertions(+), 44 deletions(-) diff --git a/README.md b/README.md index 5abf2a409ec..a11f31fb4a7 100644 --- a/README.md +++ b/README.md @@ -21,28 +21,25 @@ API to clients such as the included example terminal user interface `hydra-tui`. :rotating_light: Mainnet Availability :rotating_light: -The Hydra Head protocol version 0.10.0 is compatible with the Cardano -mainnet, which means it is possible to run a hydra-node on mainnet for -testing purposes. - -Before running a Hydra node to take part in the Hydra Head protocol, -developers are strongly encouraged to review the [relevant -section](/docs/getting-started/troubleshooting) of the documentation -in order to understand the current limitations and the possible -consequences. - -By using Hydra Head protocol version 0.10.0, you understand the -protocol is in development and that use of the hydra-node on mainnet -is entirely at your own risk. - -You also acknowledge and agree to have an adequate understanding of -the risks associated with use of the Hydra Head protocol version -0.10.0 and that all information and materials published, distributed -or otherwise made available on Hydra.Family and Hydra Github -Repository is available on an ‘AS IS’ and ‘AS AVAILABLE’ basis, -without any representations or warranties of any kind. All implied -terms are excluded to the fullest extent permitted by law. For -details, see also sections 7, 8 and 9 of Apache 2.0 License. +The Hydra Head protocol version 0.10.0 is compatible with the Cardano mainnet, +which means it is possible to run a hydra-node on mainnet for testing purposes. + +Before running a Hydra node to take part in the Hydra Head protocol, developers +are strongly encouraged to review the [relevant +section](/docs/getting-started/troubleshooting) of the documentation in order to +understand the current limitations and the possible consequences. + +By using Hydra Head protocol version 0.10.0, you understand the protocol is in +development and that use of the hydra-node on mainnet is entirely at your own +risk. + +You also acknowledge and agree to have an adequate understanding of the risks +associated with use of the Hydra Head protocol version 0.10.0 and that all +information and materials published, distributed or otherwise made available on +Hydra.Family and Hydra Github Repository is available on an ‘AS IS’ and ‘AS +AVAILABLE’ basis, without any representations or warranties of any kind. All +implied terms are excluded to the fullest extent permitted by law. For details, +see also sections 7, 8 and 9 of Apache 2.0 License. ## :rocket: Getting started diff --git a/docs/docs/getting-started/index.md b/docs/docs/getting-started/index.md index b0c375f0080..e58dc0ab7e0 100644 --- a/docs/docs/getting-started/index.md +++ b/docs/docs/getting-started/index.md @@ -19,28 +19,25 @@ API to clients such as the included example terminal user interface `hydra-tui`. :rotating_light: Mainnet Availability :rotating_light: -The Hydra Head protocol version 0.10.0 is compatible with the Cardano -mainnet, which means it is possible to run a hydra-node on mainnet for -testing purposes. - -Before running a Hydra node to take part in the Hydra Head protocol, -developers are strongly encouraged to review the [relevant -section](/docs/known-issues) of the documentation -in order to understand the current limitations and the possible -consequences. - -By using Hydra Head protocol version 0.10.0, you understand the -protocol is in development and that use of the hydra-node on mainnet -is entirely at your own risk. - -You also acknowledge and agree to have an adequate understanding of -the risks associated with use of the Hydra Head protocol version -0.10.0 and that all information and materials published, distributed -or otherwise made available on Hydra.Family and Hydra Github -Repository is available on an ‘AS IS’ and ‘AS AVAILABLE’ basis, -without any representations or warranties of any kind. All implied -terms are excluded to the fullest extent permitted by law. For -details, see also sections 7, 8 and 9 of Apache 2.0 License. +The Hydra Head protocol version 0.10.0 is compatible with the Cardano mainnet, +which means it is possible to run a hydra-node on mainnet for testing purposes. + +Before running a Hydra node to take part in the Hydra Head protocol, developers +are strongly encouraged to review the [relevant section](/docs/known-issues) of +the documentation in order to understand the current limitations and the +possible consequences. + +By using Hydra Head protocol version 0.10.0, you understand the protocol is in +development and that use of the hydra-node on mainnet is entirely at your own +risk. + +You also acknowledge and agree to have an adequate understanding of the risks +associated with use of the Hydra Head protocol version 0.10.0 and that all +information and materials published, distributed or otherwise made available on +Hydra.Family and Hydra Github Repository is available on an ‘AS IS’ and ‘AS +AVAILABLE’ basis, without any representations or warranties of any kind. All +implied terms are excluded to the fullest extent permitted by law. For details, +see also sections 7, 8 and 9 of Apache 2.0 License. ::: From d80553ed1e4b6a6c664a4638195ddd80405f1e89 Mon Sep 17 00:00:00 2001 From: Sebastian Nagel Date: Thu, 11 May 2023 08:46:48 +0200 Subject: [PATCH 7/7] Fix link to known issues page and add license link Using reference style links we can easily copy the same body of text for the disclaimer between README and Getting-Started index page. --- README.md | 13 ++++++++----- docs/docs/getting-started/index.md | 13 +++++++------ 2 files changed, 15 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index a11f31fb4a7..60c7cf4ad3f 100644 --- a/README.md +++ b/README.md @@ -24,10 +24,10 @@ API to clients such as the included example terminal user interface `hydra-tui`. The Hydra Head protocol version 0.10.0 is compatible with the Cardano mainnet, which means it is possible to run a hydra-node on mainnet for testing purposes. -Before running a Hydra node to take part in the Hydra Head protocol, developers -are strongly encouraged to review the [relevant -section](/docs/getting-started/troubleshooting) of the documentation in order to -understand the current limitations and the possible consequences. +Before running a `hydra-node` to take part in the Hydra Head protocol, +developers are strongly encouraged to review the [known issues][known-issues] in +the documentation in order to understand the current limitations and the +possible consequences. By using Hydra Head protocol version 0.10.0, you understand the protocol is in development and that use of the hydra-node on mainnet is entirely at your own @@ -39,7 +39,10 @@ information and materials published, distributed or otherwise made available on Hydra.Family and Hydra Github Repository is available on an ‘AS IS’ and ‘AS AVAILABLE’ basis, without any representations or warranties of any kind. All implied terms are excluded to the fullest extent permitted by law. For details, -see also sections 7, 8 and 9 of Apache 2.0 License. +see also sections 7, 8 and 9 of the [Apache 2.0 License][license]. + +[known-issues]: https://hydra.family/head-protocol/getting-started/known-issues +[license]: ./LICENSE ## :rocket: Getting started diff --git a/docs/docs/getting-started/index.md b/docs/docs/getting-started/index.md index e58dc0ab7e0..eda304846a1 100644 --- a/docs/docs/getting-started/index.md +++ b/docs/docs/getting-started/index.md @@ -4,8 +4,6 @@ sidebar_position: 1 # Getting Started -:::warning Mainnet Availability - Hydra is the layer-two scalability solution for Cardano, which aims to increase the speed of transactions (low latency, high throughput) and minimize transaction cost. @@ -17,13 +15,13 @@ we've put together, marching towards a production ready solution. It contains a connects to other hydra-nodes, interfaces the Cardano blockchain and provides an API to clients such as the included example terminal user interface `hydra-tui`. -:rotating_light: Mainnet Availability :rotating_light: +:::warning Mainnet Availability The Hydra Head protocol version 0.10.0 is compatible with the Cardano mainnet, which means it is possible to run a hydra-node on mainnet for testing purposes. -Before running a Hydra node to take part in the Hydra Head protocol, developers -are strongly encouraged to review the [relevant section](/docs/known-issues) of +Before running a `hydra-node` to take part in the Hydra Head protocol, +developers are strongly encouraged to review the [known issues][known-issues] in the documentation in order to understand the current limitations and the possible consequences. @@ -37,10 +35,13 @@ information and materials published, distributed or otherwise made available on Hydra.Family and Hydra Github Repository is available on an ‘AS IS’ and ‘AS AVAILABLE’ basis, without any representations or warranties of any kind. All implied terms are excluded to the fullest extent permitted by law. For details, -see also sections 7, 8 and 9 of Apache 2.0 License. +see also sections 7, 8 and 9 of the [Apache 2.0 License][license]. ::: +[known-issues]: ../known-issues +[license]: https://github.com/input-output-hk/hydra/blob/master/LICENSE + ```mdx-code-block import DocCardList from '@theme/DocCardList'; import {useCurrentSidebarCategory} from '@docusaurus/theme-common';