diff --git a/src/getting-started/car-server.md b/src/getting-started/car-server.md index faef3ac..4281e0a 100644 --- a/src/getting-started/car-server.md +++ b/src/getting-started/car-server.md @@ -2,7 +2,7 @@ It is an HTTP server that converts arbitrary content into a [CARv2](https://ipld.io/specs/transport/car/carv2/) file and serves it over HTTP - supporting the latest CARv2 format, which is not yet entirely supported by other crates in the Rust ecosystem. -Following the following steps, you can run the server locally and upload and download files. +The next steps describe how to run the server locally and use it to upload and download files.
The server is a proof of concept, showcasing our CARv2 implementation, but it is not intended to be used in production. @@ -37,9 +37,9 @@ Follow these steps to ensure your setup works as expected: 1. Upload a test file using the instructions in the [Upload a file](../storage-provider-cli/storage.md#upload-a-file) section. Make sure to note the CID returned by the server. -2. Download the CAR file using the CID you received, following the steps in the [Download the CAR File](../storage-provider-cli/storage.md#download-the-car-file) section. +2. Download the CAR file using the retrieved CID, following the steps in the [Download the CAR File](../storage-provider-cli/storage.md#download-the-car-file) section. -3. [Optional] Verify the contents of the downloaded CAR file. You can use [go-car](https://github.com/ipld/go-car/tree/master/cmd/car#install)'s `inspect` command. Like so. +3. [Optional] Verify the contents of the downloaded CAR file. Using, for example, [go-car](https://github.com/ipld/go-car/tree/master/cmd/car#install)'s `inspect` command: ```bash car inspect @@ -57,4 +57,4 @@ Follow these steps to ensure your setup works as expected: car extract ``` -If you can successfully upload a file, receive a CID, download the corresponding CAR file, and verify its contents, your CAR server setup is working correctly. +If a file can be successfully uploaded, the server produces a CID, allows download the corresponding CAR file, and verify its contents, the CAR server setup is working correctly. diff --git a/src/getting-started/demo.md b/src/getting-started/demo.md index a7d973d..8af4b67 100644 --- a/src/getting-started/demo.md +++ b/src/getting-started/demo.md @@ -1,8 +1,7 @@ # Real-world use case demo
-Before reading this guide, -please ensure you've followed the local testnet guide and that a working testnet is running! +Before reading this guide, please follow the local testnet guide and have a working testnet running!
A high-level overview with diagrams of the process described below can be found in Pallets section. @@ -123,7 +122,7 @@ $ storagext-cli --sr25519-key "//Charlie" storage-provider prove-commit "@prove- -[^slash]: You can wait for 5 minutes and observe a `DealSlashed` [Event](../pallets/market.md#events) being published. +[^slash]: Wait for 5 minutes and observe a `DealSlashed` [Event](../pallets/market.md#events) being published. ## 3. Proofs and faults diff --git a/src/getting-started/index.md b/src/getting-started/index.md index b98f003..a552a7b 100644 --- a/src/getting-started/index.md +++ b/src/getting-started/index.md @@ -1,10 +1,10 @@ # Getting Started -This chapter will guide you through setting up, running, and trying out the components that have been implemented so far. +This chapter goes through the process of setting up, running, and trying out the components implemented so far. ## System Requirements -Before proceeding with the setup, please ensure your system meets the following requirements: +Before proceeding with the setup, please ensure the host system meets the following requirements: - **OS**: Linux x86_64/MacOS ARM x64 - **RAM**: Minimum 8GB, recommended 16GB or more diff --git a/src/getting-started/local-testnet.md b/src/getting-started/local-testnet.md index f285db9..42de7a8 100644 --- a/src/getting-started/local-testnet.md +++ b/src/getting-started/local-testnet.md @@ -1,6 +1,6 @@ # Local Testnet - Polka Storage Parachain -This guide will help you set up a local parachain network using zombienet. +This guide helps to set up a local parachain network using zombienet. At the end, we will have three nodes: Alice, Bob and Charlie. Alice and Bob will be running Polkadot relay chain nodes as validators, and Charlie will run a relay chain and parachain node. @@ -8,7 +8,7 @@ Charlie will be our contact point to the parachain network. ## Native Binaries -You can download our latest releases's binaries directly and run them on your machine without additional dependencies. +Our latest releases's binaries are available to download and can be run without additional dependencies. We support `Linux x86_64` and `MacOS ARM x64`. The commands below will download: - [Relay Chain](https://github.com/paritytech/polkadot-sdk/releases) binaries (`polkadot`, `polkadot-prepare-worker`, `polkadot-execute-worker`), @@ -81,18 +81,16 @@ wget https://s3.eu-central-1.amazonaws.com/polka-storage/polka-storage-testnet.t zombienet -p native spawn polka-storage-testnet.toml ``` -You can easily access the parachain using the Polkadot.js Apps interface by clicking on this link: +The parachain is also accessible using the Polkadot.js Apps interface by clicking on this link: -Where you should be greeted by a page like this: -

Polkadot/Subtrate Portal

-Or you can interact with the chain via [`storagext-cli`](../storagext-cli/index.md), for example: +Or interact with the chain via [`storagext-cli`](../storagext-cli/index.md), for example: ```bash storagext-cli --sr25519-key "//Alice" storage-provider register Alice @@ -114,17 +112,17 @@ Docker Images were only published on x86_64 platforms! They won't work on Kubern ### Start up the Kubernetes cluster -Using `minikube`, you can start the cluster with the following command: +Using `minikube`, start the cluster with the following command: ``` minikube start ``` -You can read more about `minikube` on its [Getting Started](https://minikube.sigs.k8s.io/docs/handbook/controls/) page. +More information about `minikube` is available on its [Getting Started](https://minikube.sigs.k8s.io/docs/handbook/controls/) page. ### Running the Parachain -1. Create a `local-kube-testnet.toml` file on your machine with the following content. +1. Create a `local-kube-testnet.toml` file with the following content: ```toml [settings] @@ -248,21 +246,21 @@ zombie-01b7920d650c18d3d78f75fd8b0978af temp-collator 0/1 ### Accessing the Parachain -You can easily access the parachain using the Polkadot.js Apps interface by clicking on this link: +The parachain is available through the Polkadot.js Apps interface by clicking on this link: [https://polkadot.js.org/apps/?rpc=ws%3A%2F%2F127.0.0.1%3A42069#/explorer](https://polkadot.js.org/apps/?rpc=ws%3A%2F%2F127.0.0.1%3A42069#/explorer) -This link will automatically connect to Charlie's node running on your local machine at port `42069`. The port is configured in `local-kube-testnet.toml` under `rpc_port` for Charlie's node. +This link will automatically connect to Charlie's node running on a local machine at port `42069`. The port is configured in `local-kube-testnet.toml` under `rpc_port` for Charlie's node. ## Zombienet Configuration Breakdown -During the setup, you either download a file in the third step of [Linux](#linux-x86_64)/[MacOS](#macos-arm) — `polka-storage-testnet.toml` — +During the setup either download a file in the third step of [Linux](#linux-x86_64)/[MacOS](#macos-arm) — `polka-storage-testnet.toml` — or copy it from the first step of [Running the parachain](#running-the-parachain). ### Similarities The two files share most of the contents, so we'll start by covering their similarities. -For more details, you should refer to the [`zombienet` documentation](https://paritytech.github.io/zombienet/network-definition-spec.html): +For more details refer to the [`zombienet` documentation](https://paritytech.github.io/zombienet/network-definition-spec.html): #### `relaychain` diff --git a/src/glossary.md b/src/glossary.md index 9ff43e2..801a9de 100644 --- a/src/glossary.md +++ b/src/glossary.md @@ -120,7 +120,7 @@ lease, and participants might receive rewards or tokens from the project in retu A deadline is one of the multiple points during a proving period when proofs for some partitions are due. -For more information on deadlines, you can read the original Filecoin specification: +For more information on deadlines, read the original Filecoin specification: ### Extrinsics @@ -136,7 +136,7 @@ For a sector to stop being considered in proving periods, it needs to be declare — indicating the storage provider is aware of the faulty sector and will be working to restore it. If a sector is faulty for too long, it will be terminated and the deal will be slashed. -For more information on faults, you can read the original Filecoin specification: +For more information on faults, read the original Filecoin specification: ### Full Node @@ -165,7 +165,7 @@ Partitions are logical groups[^logical] of sectors to be proven together. The number of sectors to be proven at once is 2349[^computational_limit], as defined by Filecoin. -For more information on partitions, you can read the original Filecoin specification: +For more information on partitions, read the original Filecoin specification: [^logical]: They do not reflect the physical storage state, only existing in the context of deadlines and proofs. @@ -177,7 +177,7 @@ For more information on partitions, you can read the original Filecoin specifica From the [Polkadot Wiki][1]: > The smallest unit for the account balance on Substrate based blockchains (Polkadot, Kusama, etc.) is Planck (a reference to Planck Length, the smallest possible distance in the physical Universe). -> You can compare DOT's Planck to BTC's Satoshi or ETH's Wei. Polkadot's native token DOT equals to \\(10^{10}\\) Planck and Kusama's native token KSM equals to \\(10^{12}\\) Planck. +> DOT's Planck is like BTC's [Satoshi](https://en.bitcoin.it/wiki/Satoshi_(unit)) or ETH's [Wei](https://ethereum.org/en/developers/docs/intro-to-ether/#denominations). Polkadot's native token DOT equals to \\(10^{10}\\) Planck and Kusama's native token KSM equals to \\(10^{12}\\) Planck. ### Polkadot @@ -206,7 +206,7 @@ A proving period is when storage providers' commitments are audited, and they must prove they are still storing the data from the deals they signed - the average period for proving all sectors maintained by a provider (default set to 24 hours). -For more information on proving periods, you can read the original Filecoin specification: +For more information on proving periods, read the original Filecoin specification: - Proving periods in the context of Window Proof of Spacetime — - Proving periods in the context of Filecoin's system design — @@ -221,7 +221,7 @@ The sector is the default unit of storage that providers put in the network. A sector is a contiguous array of bytes on which a storage provider puts together, seals,and performs Proofs of Spacetime on. Storage providers store data on the network in fixed-size sectors. -For more information on sectors, you can read the original Filecoin specification: +For more information on sectors, read the original Filecoin specification: ### Session diff --git a/src/introduction.md b/src/introduction.md index ed832f1..b3bb0a1 100644 --- a/src/introduction.md +++ b/src/introduction.md @@ -31,9 +31,9 @@ The following on-chain logic has been implemented: - [Continuously proving](./pallets/storage-provider.md#submit_windowed_post) that the promise of storage has been kept up [PoSt proof](./glossary.md#proofs), - [Punishing](./pallets/storage-provider.md#events) for failing to provide storage. -We present a complete real-world scenario [(which you can run on your own!)](./getting-started/demo.md) in which a [Storage Provider](./glossary.md#storage-provider) and a [Storage User](./glossary.md#storage-user) negotiate a deal, perform all the steps necessary to start the storage and then receive rewards (or punishments) for making it happen. +We present a complete real-world scenario (./getting-started/demo.md) in which a [Storage Provider](./glossary.md#storage-provider) and a [Storage User](./glossary.md#storage-user) negotiate a deal, perform all the steps necessary to start the storage and then receive rewards (or punishments) for making it happen. -You can read more about the project's genesis in: +More information available about the project's genesis in: - Treasury Proposal — - OpenGov Referendum — diff --git a/src/pallets/market.md b/src/pallets/market.md index db00d71..b5f721b 100644 --- a/src/pallets/market.md +++ b/src/pallets/market.md @@ -32,7 +32,7 @@ The reserved amount will be considered `free` until it is used in a deal when #### Example -Using the `storagext-cli` you can add 1000000000[^existential_deposit] [Plancks](../glossary.md#planck) to Alice's account with the following command[^add_balance]: +Using the `storagext-cli` to add 1000000000[^existential_deposit] [Plancks](../glossary.md#planck) to Alice's account with the following command[^add_balance]: ```bash storagext-cli --sr25519-key "//Alice" market add-balance 1000000000 @@ -40,7 +40,7 @@ storagext-cli --sr25519-key "//Alice" market add-balance 1000000000 [^existential_deposit]: This value is the minimum amount due to Polkadot's existential deposit. - You can read more about it at . + More information available in: . [^add_balance]: Read more about the `add-balance` command in [_Storagext CLI/Subcommand `market`/`add-balance`_](../storagext-cli/market.md#add-balance) @@ -57,7 +57,7 @@ lesser than or equal to `free` and greater than 0 (\\({free} \ge {amount} \gt 0\ #### Example -Using the `storagext-cli` you can withdraw 10000 [Plancks](../glossary.md#planck) from Alice's `free` balance using the following command[^withdraw_balance]: +Using the `storagext-cli` to withdraw 10000 [Plancks](../glossary.md#planck) from Alice's `free` balance using the following command[^withdraw_balance]: ```bash storagext-cli --sr25519-key "//Alice" market withdraw-balance 10000 @@ -102,7 +102,7 @@ See the [original Filecoin specification](https://spec.filecoin.io/#section-syst #### Example -Using the `storagext-cli` you can publish deals with `//Alice` as the storage provider and `//Charlie` as the client by running the following command[^publish_storage_deals]: +Using the `storagext-cli` to publish deals with `//Alice` as the storage provider and `//Charlie` as the client by running the following command[^publish_storage_deals]: ```bash storagext-cli --sr25519-key "//Alice" market publish-storage-deals \ @@ -168,7 +168,7 @@ Non-existing deal IDs will be ignored. #### Example -Using the `storagext-cli` you can settle deal payments for IDs 97, 1010, 1337 and 42069 using the following command[^settle_deal_payments]: +Using the `storagext-cli` to settle deal payments for IDs 97, 1010, 1337 and 42069 using the following command[^settle_deal_payments]: ```bash storagext-cli --sr25519-key "//Alice" market settle-deal-payments 97 1010 1337 42069 @@ -222,8 +222,8 @@ The Market Pallet actions can fail with following errors: - Deal is not pending. - `DealsTooLargeToFitIntoSector` - Sum of all deals piece sizes for a sector exceeds sector size. The sector size is based on the registered proof type. We currently only support registered `StackedDRG2KiBV1P1` proofs, which have 2KiB sector sizes. - `TooManyDealsPerBlock` - Tried to activate too many deals at a given `start_block`. -- `UnexpectedValidationError` - `publish_storage_deals`'s core logic was invoked with a broken invariant that `validate_deals` should call. Report an issue if you receive this error. -- `DealPreconditionFailed` - Due to a programmer bug. Report an issue if you receive this error. +- `UnexpectedValidationError` - `publish_storage_deals`'s core logic was invoked with a broken invariant that should be called by `validate_deals`. Please report an issue to the developers. +- `DealPreconditionFailed` - Due to a programmer bug. Please report an issue to the developers. ## Constants diff --git a/src/pallets/storage-provider.md b/src/pallets/storage-provider.md index 236e2fe..c323cf4 100644 --- a/src/pallets/storage-provider.md +++ b/src/pallets/storage-provider.md @@ -323,16 +323,16 @@ The Storage Provider Pallet actions can fail with the following errors: - `InvalidUnsealedCidForSector` - This error is emitted when the declared unsealed_cid for pre_commit is different from the one calculated by the system. - `FaultDeclarationTooLate` - A fault declaration was submitted after the fault declaration cutoff. The fault declaration can be submitted after the upcoming deadline is closed. - `FaultRecoveryTooLate` - A fault recovery was submitted after the fault recovery cutoff. The fault recovery can be submitted after the upcoming deadline is closed. -- `DeadlineError` - An error was encountered in the deadline module. If you encounter this error, please report an issue, as this is a programmer error. -- `PartitionError` - An error was encountered in the partition module. If you encounter this error, please report an issue, as this is a programmer error. -- `StorageProviderError` - An error was encountered in the storage provider module. If you encounter this error, please report an issue, as this is a programmer error. +- `DeadlineError` - An error was encountered in the deadline module. Please report an issue to the developers. +- `PartitionError` - An error was encountered in the partition module. Please report an issue to the developers. +- `StorageProviderError` - An error was encountered in the storage provider module. Please report an issue to the developers. - `SectorMapError` - An error was encountered in the sector map module. These errors can be: - - `FailedToInsertSector` - Internal bounds violation with Sectors. If you encounter this error please report an issue as this is a programmer error. - - `FailedToInsertPartition` - Internal bounds violation with partitions. If you encounter this error please report an issue as this is a programmer error. -- `CouldNotActivateSector` - Failure during prove commit when trying to convert a previously pre-committed sector due to a programming error. Please report an issue if you receive this error. -- `CouldNotVerifySectorForPreCommit` - Failure during pre-commit due to the [commd](../glossary.md#commitment-of-data) calculation failing due to a programming error. Please report an issue if you receive this error. -- `SlashingFailed` - Slashing of funds fails due to a programmer error. Please report an issue if you receive this error. -- `ConversionError` - Due to a programmer error. Please report an issue if you receive this error. + - `FailedToInsertSector` - Internal bounds violation with Sectors. Please report an issue to the developers. + - `FailedToInsertPartition` - Internal bounds violation with partitions. Please report an issue to the developers. +- `CouldNotActivateSector` - Failure during prove commit when trying to convert a previously pre-committed sector due to a programming error. Please report an issue to the developers. +- `CouldNotVerifySectorForPreCommit` - Failure during pre-commit due to the [commd](../glossary.md#commitment-of-data) calculation failing due to a programming error. Please report an issue to the developers. +- `SlashingFailed` - Slashing of funds fails due to a programmer error. Please report an issue to the developers. +- `ConversionError` - Due to a programmer error. Please report an issue to the developers. ## Pallet constants diff --git a/src/storage-provider-cli/index.md b/src/storage-provider-cli/index.md index e73e978..0d7a3d3 100644 --- a/src/storage-provider-cli/index.md +++ b/src/storage-provider-cli/index.md @@ -7,10 +7,10 @@ The Polka Storage Provider CLI provides two commands — `wallet` and `storage`. The `storage` command launches a server that converts arbitrary files into CARv2 files — it does so using our CARv2 Rust library (the first Rust CARv2 implementation). -You can read more about it on the [`storage`](./storage.md) page. +More information available on the [`storage`](./storage.md) page. ## `wallet` The `wallet` command is a thin wrapper over the [`subkey`](https://docs.substrate.io/reference/command-line-tools/subkey/) utility provided by Polkadot. -You can read more about it on the [`wallet`](./wallet.md) page. +More information available on the [`wallet`](./wallet.md) page. diff --git a/src/storage-provider-cli/storage.md b/src/storage-provider-cli/storage.md index 05d1b49..6dc04c4 100644 --- a/src/storage-provider-cli/storage.md +++ b/src/storage-provider-cli/storage.md @@ -1,7 +1,7 @@ # The `storage` command The `storage` command launches a server that can convert files into CAR files. -It has two parameters that you can customize: +It has two customizable parameters: | Parameter | Description | Default value | | ---------------------- | ------------------------------------------------------- | ---------------- | @@ -20,7 +20,7 @@ polka-storage-provider storage --listen-addr 0.0.0.0:9000 ## Upload a file -To upload a file to the provider's server, use the following curl command. Replace `image.jpg` with the path to your file: +To upload a file to the provider's server, use the following curl command. ```bash curl \ @@ -33,7 +33,7 @@ This command uploads the file `image.jpg` to the server running at `http://local ## Download the CAR File -After uploading, you will receive a CID (Content Identifier) for the file. Use this CID to download the corresponding CAR file. Replace `:cid` with the actual CID provided: +After uploading, a CID (Content Identifier) for the file will be produced. Use this CID to download the corresponding CAR file. Replace `:cid` with the actual CID provided: ```bash curl \ diff --git a/src/storage-provider-cli/wallet.md b/src/storage-provider-cli/wallet.md index f1ceec9..a255b58 100644 --- a/src/storage-provider-cli/wallet.md +++ b/src/storage-provider-cli/wallet.md @@ -1,14 +1,14 @@ # The `wallet` command The wallet command is a re-export of the Substrate CLI. -For detailed documentation, you can check the following links: +The detailed documentation is available under: - [`sc_cli`](https://docs.rs/sc-cli/0.46.0/sc_cli/commands/index.html) - [`subkey` subcommands](https://docs.substrate.io/reference/command-line-tools/subkey/#subcommands) ## Subcommands -You can use the following commands with the `wallet` subcommand: +The following commands are available with the `wallet` subcommand: | Command | Description | | ------------------- | ------------------------------------------------------------------------------------------------------ | @@ -40,7 +40,7 @@ Secret phrase: offer payment boost boy manage car asset lock cousin mounta SS58 Address: 5DPwBLBRGunws9T2aF59cht37HeBg9aSTAc6Fh2aFBJPSsr6 ``` -If you want to add parameters like a password, you may do so using the `--password-interactive` flag: +The password may be added interactively, using `--password-interactive` flag: ```bash > polka-storage-provider wallet generate --password-interactive @@ -54,7 +54,7 @@ Secret phrase: comfort distance rack number assist nasty young universe la SS58 Address: 5DPo4H1oPAQwReNVMi9XckSkvW4me1kJoageggJSMDF2EzjZ ``` -Or you can pass it beforehand: +Or it can be passed directly, beforehand: ```bash > polka-storage-provider wallet generate --password diff --git a/src/storagext-cli/index.md b/src/storagext-cli/index.md index ec0e26c..d5efce5 100644 --- a/src/storagext-cli/index.md +++ b/src/storagext-cli/index.md @@ -4,7 +4,8 @@ Alongside the pallets, we've also developed a CLI to enable calling extrinsics w The CLI's goal is to ease development and testing and to sidestep some limitations of the Polkadot.js visual interface. -This chapter covers how to use the `storagext-cli`, and you will find several examples of usage throughout the book. +This chapter covers how to use the `storagext-cli`, along with that, +there are several usage examples available throughout the book. ## Getting started @@ -16,7 +17,7 @@ the latter is split into three kinds, and **one is required** for most operation - [ECDSA](https://en.bitcoin.it/wiki/Secp256k1) — `--ecdsa-key` or the `ECDSA_KEY` environment variable - [Ed25519](https://en.wikipedia.org/wiki/EdDSA#Ed25519) — `--ed25519-key` or the `ED25519_KEY` environment variable -For example, to connect to a node at `supercooldomain.com:1337` using Charlie's Sr25519 key, you would run the following command: +For example, to connect to a node at `supercooldomain.com:1337` using Charlie's Sr25519 key: ```bash storagext-cli --node-rpc "supercooldomain.com:1337" --sr25519-key "//Charlie" diff --git a/src/storagext-cli/market.md b/src/storagext-cli/market.md index cc3f508..38166bf 100644 --- a/src/storagext-cli/market.md +++ b/src/storagext-cli/market.md @@ -1,18 +1,17 @@ # The `market` command -Under the `market` subcommand, you will find the [Market](../pallets/market.md)-related extrinsics. +Under the `market` subcommand [Market](../pallets/market.md) related extrinsics are available. This chapter covers the provided commands and how to use them.
-If you haven't done so before, you should read the storagext-cli getting started page, -which covers the basic flags necessary to operate the CLI. +The storagext-cli getting started page covers the basic flags necessary to operate the CLI and should be read first.
## `add-balance` -The `add-balance` command allows you to add balance to your market account. -It takes a single `AMOUNT` argument, the balance, to add to the market account, -and the balance will be added to the `free` balance. +The `add-balance` adds balance to the market account of the extrinsic signer. +It takes a single `AMOUNT` argument, the balance to add to the market account, +the balance will be added to the `free` balance. ### Parameters @@ -31,21 +30,21 @@ storagext-cli --sr25519-key "//Alice" market add-balance 1000000000
The 1000000000 value is not arbitrary, it is the minimum existential deposit for any Polkadot account. As such, when the Market account is being setup, the first deposit ever needs to meet this minimum to create the Market account. -If you attempt to create the Market account with less than 1000000000, you will get the following error: +An attempt to create a Market account with less than 1000000000, will produce the following error:
 Error: Runtime error: Token error: Account cannot exist with the funds that would be given.
 
-> You can read more about the `add_balance` extrinsic in [_Pallets/Market Pallet/Add Balance_](../pallets/market.md#add_balance). +> More information about the `add_balance` extrinsic is available in [_Pallets/Market Pallet/Add Balance_](../pallets/market.md#add_balance). ## `withdraw-balance` -The `withdraw-balance` command allows you to withdraw balance from your market account. +The `withdraw-balance` withdraws balance from the market account of the extrinsic signer. Like [`add-balance`](#add-balance), `withdraw-balance` takes a single `AMOUNT` argument; -note that _only the `free` balance can be withdrawn_. -Likewise, you can only withdraw a balance amount lesser than or equal to the `free` amount and greater than 0 (\\({free} \ge {amount} \gt 0\\)). +note that _only `free` balance can be withdrawn_. +Likewise, withdrawal of a balance amount lesser than or equal to the `free` amount and greater than 0 (\\({free} \ge {amount} \gt 0\\)). ### Parameters @@ -61,11 +60,11 @@ Withdrawing 10000 [Plancks](../glossary.md#planck) from Alice's account. storagext-cli --sr25519-key "//Alice" market withdraw-balance 10000 ``` -> You can read more about the `withdraw_balance` extrinsic in [_Pallets/Market Pallet/Withdraw Balance_](../pallets/market.md#withdraw-balance). +> More about the `withdraw_balance` extrinsic is available in [_Pallets/Market Pallet/Withdraw Balance_](../pallets/market.md#withdraw-balance). ## `publish-storage-deals` -The `publish-storage-deals` command allows you to publish storage deals that have been agreed upon off-chain. +The `publish-storage-deals` publishes storage deals that have been agreed upon off-chain. The deals are to be submitted by the storage provider, having been previously signed by the client.
@@ -140,15 +139,14 @@ Where `deals.json` is a file with contents similar to: ] ``` -> You can read more about the `publish_storage_deals` extrinsic in [_Pallets/Market Pallet/Publish Storage Deals_](../pallets/market.md#publish_storage_deals). +> More information about the `publish_storage_deals` extrinsic is available in [_Pallets/Market Pallet/Publish Storage Deals_](../pallets/market.md#publish_storage_deals). ## `settle-deal-payments` -The `settle-deal-payments` command allows you to settle deal payments, -that is, have the storage provider receive the owed funds from storing data for their clients. +The `settle-deal-payments` command makes the storage provider receive the owed funds from storing data for their clients. Non-existing deal IDs will be ignored. -Anyone can settle anyone's deals, though there's little incentive to do so — if you're feeling charitable, who are we to stop you?! +Anyone can settle anyone's deals, though there's little incentive to do so as it costs gas, so the Storage Provider will end up being the caller most of the time. ### Parameters @@ -164,11 +162,11 @@ Settling deals with the IDs 97, 1010, 1337, 42069: storagext-cli --sr25519-key "//Alice" market settle-deal-payments 97 1010 1337 42069 ``` -> You can read more about the `publish_storage_deals` extrinsic in [_Pallets/Market Pallet/Settle Deal Payments_](../pallets/market.md#settle_deal_payments). +> More information about the `publish_storage_deals` extrinsic is available in [_Pallets/Market Pallet/Settle Deal Payments_](../pallets/market.md#settle_deal_payments). ## `retrieve-balance` -The `retrieve-balance` command allows you to check the balance of any market account. +The `retrieve-balance` command checks the balance of a given market account. ### Parameters diff --git a/src/storagext-cli/storage-provider.md b/src/storagext-cli/storage-provider.md index 5d92af4..acab4bb 100644 --- a/src/storagext-cli/storage-provider.md +++ b/src/storagext-cli/storage-provider.md @@ -1,16 +1,15 @@ # The `storage-provider` command -Under the `storage-provider` subcommand, you will find the [Storage Provider](../pallets/storage-provider.md)-related extrinsics. +Under the `storage-provider` subcommand [Storage Provider](../pallets/storage-provider.md) related extrinsics are available. This chapter covers the provided commands and how to use them.
-If you haven't done so, you should read the storagext-cli getting started page, -which covers the basic flags necessary to operate the CLI. +The storagext-cli getting started page covers the basic flags necessary to operate the CLI and should be read first.
### `register` -The `register` command allows you to register as a storage provider. Before you can start providing storage, you need to register to be able to deal with the clients and perform any storage provider duties. +The `register` command registers as a storage provider. Before a user can start providing storage, they need to register to be able to deal with the clients and perform any storage provider duties. ### Parameters @@ -27,12 +26,11 @@ Registering the provider with the specific `peer_id` storagext-cli --sr25519-key storage-provider register ``` -> You can read more about the `register` extrinsic in [_Pallets/Storage Provider/Register_](../pallets/storage-provider.md#register_storage_provider). +> More information about the `register` extrinsic is available in [_Pallets/Storage Provider/Register_](../pallets/storage-provider.md#register_storage_provider). ### `pre-commit` -The `pre-commit` command allows you to pre-commit a sector with deals that `market publish-storage-deals` have published. -The pre-committed sector has to be proven, or the deals will not activate and will be slashed. +The `pre-commit` command [pre-commits](../pallets/storage-provider.md#pre_commit_sector) a sector with deals that have been published by `market publish-storage-deals`. The pre-committed sector has to be proven or the deals will not activate and will be slashed. ### Parameters @@ -73,11 +71,11 @@ Where `pre-commit-sector.json` is a file with contents similar to: } ``` -> You can read more about the `pre_commit` extrinsic in [_Pallets/Storage Provider/Pre-commit sector_](../pallets/storage-provider.md#pre_commit_sector). +> More information about the `pre_commit` extrinsic is available in [_Pallets/Storage Provider/Pre-commit sector_](../pallets/storage-provider.md#pre_commit_sector). ### `prove-commit` -The `prove-commit` command allows you to prove a sector commitment. Currently, any proof that is a hex encoded string of length >= 1 is accepted. +The `prove-commit` command proves a sector commitment. Currently, any proof that is a hex encoded string of length >= 1 is accepted. After the sector is proven, the deals will become `Active`. ### Parameters @@ -111,11 +109,11 @@ Where `prove-commit-sector.json` is a file with contents similar to: } ``` -> You can read more about `prove_commit` extrinsic in [_Pallets/Storage Provider/Prove-commit sector_](../pallets/storage-provider.md#prove_commit_sector). +> More information about `prove_commit` extrinsic is available in [_Pallets/Storage Provider/Prove-commit sector_](../pallets/storage-provider.md#prove_commit_sector). ### `submit-windowed-post` -The `submit-windowed-post` command allows you to submit a windowed PoSt proof. The PoSt proof needs to be periodically submitted to prove that some sector is still stored. Sectors are proven in a baches called partitions. +The `submit-windowed-post` command submits a windowed PoSt proof. The post proof needs to be periodically submitted to prove that some sector is still stored. Sectors are proven in batches called partitions. ### Parameters @@ -160,11 +158,11 @@ Where `window-proof.json` is a file with contents similar to: } ``` -> You can read more about the `submit_windowed_post` extrinsic in [_Pallets/Storage Provider/Submit Windowed Post_](../pallets/storage-provider.md#submit_windowed_post). +> More information about the `submit_windowed_post` extrinsic is available in [_Pallets/Storage Provider/Submit Windowed Post_](../pallets/storage-provider.md#submit_windowed_post). ### `declare-faults` -The `declare-faults` command allows you to declare faulty sectors. This is required to avoid penalties for not submitting [Window PoSt](../glossary.md#post) at the required time. +The `declare-faults` command declares faulty sectors. This is required to avoid penalties for not submitting [Window PoSt](../glossary.md#post) at the required time. ### Parameters @@ -201,11 +199,11 @@ Where `faults.json` is a file with contents similar to: ] ``` -> You can read more about the `declare_faults` extrinsic in [_Pallets/Storage Provider/Declare Faults_](../pallets/storage-provider.md#declare_faults). +> More information about the `declare_faults` extrinsic is available in [_Pallets/Storage Provider/Declare Faults_](../pallets/storage-provider.md#declare_faults). ### `declare-faults-recovered` -The `declare-faults-recovered` command allows you to declare recovered faulty sectors. +The `declare-faults-recovered` command declares recovered faulty sectors. ### Parameters @@ -242,4 +240,4 @@ Where `recoveries.json` is a file with contents similar to: ] ``` -> You can read more about the `declare_faults_recovered` extrinsic in [_Pallets/Storage Provider/Declare Faults Recovered_](../pallets/storage-provider.md#declare_faults_recovered). +> More information about the `declare_faults_recovered` extrinsic is available in [_Pallets/Storage Provider/Declare Faults Recovered_](../pallets/storage-provider.md#declare_faults_recovered). diff --git a/src/storagext-cli/system.md b/src/storagext-cli/system.md index e304113..8cffd4b 100644 --- a/src/storagext-cli/system.md +++ b/src/storagext-cli/system.md @@ -1,15 +1,14 @@ # The `system` command -The command provides various utilities for interacting with the blockchain. It allows you to retrieve information about the current state of the chain. +The command provides various utilities for interacting with the blockchain. It retrieves information about the current state of the chain.
-If you haven't done so before, you should read the storagext-cli getting started page, -which covers the basic flags necessary to operate the CLI. +The storagext-cli getting started page covers the basic flags necessary to operate the CLI and should be read first.
## `get-height` -The command allows you to get the current block height of the chain. +The command gets the current block height of the chain. ### Example @@ -21,7 +20,7 @@ storagext-cli system get-height ## `wait-for-height` -The command allows you to wait for the chain to reach a specific block height. It will exit once the chain has reached the specified height. +The command awaits for the chain to reach a specific block height. It will exit once the chain has reached the specified height. ### Parameters