[Backport] Version bumps from 1.6.0 release (#2965)

This PR backports version bumps from release branch
`release-polkadot-v1.6.0` back to `master` and also moved `prdoc` files
related to the release to the appropriate folder
This commit is contained in:
Egor_P
2024-01-17 15:40:23 +01:00
committed by GitHub
parent c1c0e62d33
commit f80cfc2259
60 changed files with 18 additions and 18 deletions
+21
View File
@@ -0,0 +1,21 @@
title: Approve multiple candidates with a single signature
doc:
- audience: Node Operator
description: |
Changed approval-voting, approval-distribution to approve multiple candidate with a single message, it adds:
* A new parachains_db version.
* A new validation protocol to support the new message types.
The new logic will be disabled and will be enabled at a later date after all validators have upgraded.
migrations:
db:
- name: Parachains database change from v4 to v5.
description: |
Approval-voting column format has been updated with several new fields. All existing data will be automatically
be migrated to the new values.
crates:
- name: "polkadot"
host_functions: []
+12
View File
@@ -0,0 +1,12 @@
title: Removed deprecated `Balances::transfer` and `Balances::set_balance_deprecated` functions.
doc:
- audience: Runtime User
description: |
The Balances pallet's dispatchables `set_balance_deprecated` and `transfer` were deprecated in [paritytech/substrate#12951](https://github.com/paritytech/substrate/pull/12951) and have now been removed.
notes:
- Use `set_balance_deprecated` instead `force_set_balance` and `transfer_allow_death` instead of `transfer`.
crates:
- name: pallet-balances
+29
View File
@@ -0,0 +1,29 @@
# Schema: Parity PR Documentation Schema (prdoc)
# See doc at https://github.com/paritytech/prdoc
title: Supporting paged rewards allowing all nominators to be rewarded
doc:
- audience: Node Operator
description: |
We used to clip top `MaxNominatorRewardedPerValidator` nominators by stake that are eligible for staking reward.
This was done to limit computation cost of paying out rewards. This PR introduces paging to reward payouts,
meaning we still clip nominators upto MaxExposurePageSize per page and there could be multiple pages of rewards to
be paid out. Validators get commission pro-rata to the amount of reward that is paid out for the page.
notes:
- payout_stakers should be called multiple times, once for each page of nominators.
- payout_stakers_by_page can be used to pay out rewards for a specific page.
- Some old non-paged era storage items are deprecated, and can be removed in a future upgrade.
migrations:
db: []
runtime:
- reference: pallet-staking
description: "v14: Migration of era exposure storage items to paged exposures."
crates:
- name: pallet-staking
host_functions: []
+29
View File
@@ -0,0 +1,29 @@
title: Tasks API - A general system for recognizing and executing service work
doc:
- audience: Runtime Dev
description: |
The Tasks API allows you to define some service work that can be recognized by a script or an off-chain worker.
Such a script can then create and submit all such work items at any given time.
`#[pallet:tasks_experimental]` provides a convenient way to define such work items. It can be attached to an
`impl` block inside a pallet, whose functions can then be annotated by the following attributes:
1. `#[pallet::task_list]`: Define an iterator over the available work items for a task
2. `#[pallet::task_condition]`: Define the conditions for a given work item to be valid
3. `#[pallet::task_weight]`: Define the weight of a given work item
4. `#[pallet::task_index]`: Define the index of a given work item
Each such function becomes a variant of the autogenerated enum `Task<T>` for this pallet.
All such enums are aggregated into a `RuntimeTask` by `construct_runtime`.
An example pallet that uses the Tasks API is available at `substrate/frame/example/tasks`.
migrations:
db: []
runtime: []
crates:
- name: frame-system
- name: frame-support
- name: frame-support-procedural
- name: pallet-example-tasks
host_functions: []
+10
View File
@@ -0,0 +1,10 @@
title: Support XCM as part of Cosmos CosmWasm contract messages
doc:
- audience: Runtime Dev
description: |
Made XCM JSON schema behind flag, bumped bounded-collection so to ensure it has that flag too.
crates:
- name: staging-xcm
- name: sp-weights
+11
View File
@@ -0,0 +1,11 @@
# Schema: Polkadot SDK PRDoc Schema (prdoc) v1.0.0
# See doc at https://raw.githubusercontent.com/paritytech/polkadot-sdk/master/prdoc/schema_user.json
title: Rococo/Westend Coretime Runtime
doc:
- audience: Runtime User
description: |
Rococo/Westend runtime for the Coretime Chain (a.k.a. "Broker Chain") described in RFC-1.
crates: [ ]
+22
View File
@@ -0,0 +1,22 @@
# Schema: Polkadot SDK PRDoc Schema (prdoc) v1.0.0
# See doc at https://raw.githubusercontent.com/paritytech/polkadot-sdk/master/prdoc/schema_user.json
title: "pallet-asset-conversion: Swap Credit"
doc:
- audience: Runtime Dev
description: |
Introduces a swap implementation that allows the exchange of a credit (aka Negative Imbalance) of one asset for a credit of another asset.
This is particularly useful when a credit swap is required but may not have sufficient value to meet the ED constraint, hence cannot be deposited to temp account before. An example use case is when XCM fees are paid using an asset held in the XCM executor registry and has to be swapped for native currency.
Additional Updates:
- encapsulates the existing `Swap` trait impl within a transactional context, since partial storage mutation is possible when an error occurs;
- supplied `Currency` and `Assets` impls must be implemented over the same `Balance` type, the `AssetBalance` generic type is dropped. This helps to avoid numerous type conversion and overflow cases. If those types are different it should be handled outside of the pallet;
- `Box` asset kind on a pallet level, unbox on a runtime level - here [why](https://substrate.stackexchange.com/questions/10039/boxed-argument-of-a-dispatchable/10103#10103);
- `path` uses `Vec` now, instead of `BoundedVec` since it is never used in PoV;
- removes the `Transfer` event due to it's redundancy with the events emitted by `fungible/s` implementations;
- modifies the `SwapExecuted` event type;
crates: [ ]
+24
View File
@@ -0,0 +1,24 @@
# Schema: Polkadot SDK PRDoc Schema (prdoc) v1.0.0
# See doc at https://raw.githubusercontent.com/paritytech/polkadot-sdk/master/prdoc/schema_user.json
title: Agile Coretime Base Relaychain Functionality
doc:
- audience: Runtime User
description: |
The relay chain is now capable of receiving assignments from the coretime
chain and will schedule parachains and on-demand orders accordingly.
Existing leases and system chains are preserved. They get a reserved
coretime core via a migration.
migrations:
db: []
runtime:
- reference: polkadot-runtime-parachains
description: |
Claim queue in scheduler now no longer contains Option values and
assignments now contain information necessary to accomodate for coretime
features. Also all existing parachains are converted to coretime
assignments.
crates:
- name: polkadot-runtime-parachains
+18
View File
@@ -0,0 +1,18 @@
title: Validator disabling in Statement Distribution.
doc:
- audience: Node Operator
description: |
Once a validator has been disabled for misbehavior, other validators
should no longer gossip its backing statements in the current era.
If they do, it might result in disconnects from the network due to low
reputation.
migrations:
db: []
runtime: []
crates:
- name: polkadot-statement-distribution
host_functions: []
+29
View File
@@ -0,0 +1,29 @@
# Schema: Polkadot SDK PRDoc Schema (prdoc) v1.0.0
# See doc at https://raw.githubusercontent.com/paritytech/polkadot-sdk/master/prdoc/schema_user.json
title: "pallet-asset-conversion: Decoupling Native Currency Dependancy"
doc:
- audience: Runtime Dev
description: |
Decoupling Pallet from the Concept of Native Currency
Currently, the pallet used to intrinsically linked with the concept of native currency, requiring users to provide implementations of the `fungible::*` and `fungibles::*` traits to interact with native and non native assets. This incapsulates some non-related to the pallet complexity and makes it less adaptable in contexts where the native currency concept is absent.
With this PR, the dependence on `fungible::*` for liquidity-supplying assets has been removed. Instead, the native and non-native currencies' handling is now overseen by a single type that implements the `fungibles::*` traits. To simplify this integration, types have been introduced to facilitate the creation of a union between `fungible::*` and `fungibles::*` implementations, producing a unified `fungibles::*` type.
One of the reasons driving these changes is the ambition to create a more user-friendly API for the `SwapCredit` implementation. Given that it interacts with two distinct credit types from `fungible` and `fungibles`, a unified type was introduced. Clients now manage potential conversion failures for those credit types. In certain contexts, it's vital to guarantee that operations are fail-safe, like in this impl - [PR](https://github.com/paritytech/polkadot-sdk/pull/1845), place in [code](https://github.com/paritytech/polkadot-sdk/blob/20b85a5fada8f55c98ba831964f5866ffeadf4da/cumulus/primitives/utility/src/lib.rs#L429).
Additional Updates:
- abstracted the pool ID and its account derivation logic via trait bounds, along with common implementation offerings;
- removed `inc_providers` on a pool creation for the pool account;
- benchmarks:
-- swap complexity is N, not const;
-- removed `From<u128> + Into<u128>` bound from `T::Balance`;
-- removed swap/liquidity/.. amount constants, resolve them dynamically based on pallet configuration;
-- migrated to v2 API;
- `OnUnbalanced` handler for the pool creation fee, replacing direct transfers to a specified account ID;
- renamed `MultiAssetId` to `AssetKind` aligning with naming across frame crates;
crates:
- name: pallet-asset-conversion
+14
View File
@@ -0,0 +1,14 @@
# Schema: Polkadot SDK PRDoc Schema (prdoc) v1.0.0
# See doc at https://raw.githubusercontent.com/paritytech/polkadot-sdk/master/prdoc/schema_user.json
title: "`UnionOf` types for merged `fungible` and `fungibles` implementations"
doc:
- audience: Runtime Dev
description: |
Introduces `UnionOf` types, crafted to merge `fungible` and `fungibles` implementations or two
`fungibles` implementations into a single type implementing `fungibles`. This also addresses
an issue where `ItemOf` initiates a double drop for an imbalance type, leading to inaccurate
total issuance accounting.
crates: [ ]
+12
View File
@@ -0,0 +1,12 @@
# Schema: Polkadot SDK PRDoc Schema (prdoc) v1.0.0
# See doc at https://raw.githubusercontent.com/paritytech/polkadot-sdk/master/prdoc/schema_user.json
title: Rococo and Westend People Chain Runtimes
doc:
- audience: Runtime User
description: |
Rococo and Westend runtimes for the "People Chain". This chain contains the Identity pallet
with plans to migrate all related data from the Relay Chain. Changes `IdentityInfo` fields.
crates: [ ]
+17
View File
@@ -0,0 +1,17 @@
title: Rename `ExportGenesisStateCommand` to `ExportGenesisHeadCommand`
doc:
- audience: Node Operator
description: |
The `export-genesis-state` subcommand is now called `export-gensis-head`, but
`export-genesis-state` stays as an alias to not break any scripts.
- audience: Node Dev
description: |
The struct `ExportGenesisStateCommand` is now called `ExportGenesisHeadCommand`.
So, you only need to rename the import and usage. The `run` function is now
taking only a `client` as argument to fetch the genesis header. This way
the exported genesis head is respecting custom genesis block builders.
crates:
- name: "cumulus-client-cli"
+9
View File
@@ -0,0 +1,9 @@
title: Configurable block number provider in pallet-vesting
doc:
- audience: Runtime Dev
description: |
Adds `BlockNumberProvider` type to pallet-vesting Config trait, allowing for custom providers instead of hardcoding frame-system.
This is particularly useful for parachains wanting to use `cumulus_pallet_parachain_system::RelaychainDataProvider` with `pallet-vesting`.
crates: [ ]
+13
View File
@@ -0,0 +1,13 @@
# Schema: Polkadot SDK PRDoc Schema (prdoc) v1.0.0
# See doc at https://raw.githubusercontent.com/paritytech/polkadot-sdk/master/prdoc/schema_user.json
title: "xcm-builder: `HaulBlobExporter` with improved XCM version check."
doc:
- audience: Runtime Dev
description: |
Version check in `HaulBlobExporter` uses new trait `CheckVersion` to check known/configured destination versions,
ensuring compatibility. `HaulBlobExporter` will attempt to downgrade the message to destination's known version
instead of using the latest version.
crates: [ ]
+12
View File
@@ -0,0 +1,12 @@
title: "Adds Snowbridge to Rococo runtime"
doc:
- audience: Runtime Dev
description: |
Adds the snowbridge pallets as a git subtree under the bridges directory. Adds Snowbridge
to the Rococo Asset Hub and Bridge Hub runtimes.
crates:
- name: asset-hub-rococo-runtime
- name: bridge-hub-rococo-runtime
+11
View File
@@ -0,0 +1,11 @@
# Schema: Polkadot SDK PRDoc Schema (prdoc) v1.0.0
# See doc at https://raw.githubusercontent.com/paritytech/polkadot-sdk/master/prdoc/schema_user.json
title: Westend Fellowship Treasury
doc:
- audience: Runtime User
description: |
Treasury Pallet Instance for the Fellowship in Westend Collectives.
crates: [ ]
+17
View File
@@ -0,0 +1,17 @@
title: Make crate visible methods of `OverlayedChanges` public.
doc:
- audience: Node Dev
description: |
Make some methods of `OverlayedChanges` namely `set_child_storage`, `clear_child_storage`, `clear_prefix`
and `clear_child_prefix` public which only had crate level visibility.
migrations:
db: []
runtime: []
crates:
- name: sp-state-machine
host_functions: []
+18
View File
@@ -0,0 +1,18 @@
title: Validator disabling in Dispute Participation.
doc:
- audience: Node Operator
description: |
Once a validator has been disabled for misbehavior, other validators
should no longer participate in disputes initiated by it.
This feature is needed to ensure robust spam protection against
malicious actors.
migrations:
db: []
runtime: []
crates:
- name: polkadot-node-core-dispute-coordinator
host_functions: []
+12
View File
@@ -0,0 +1,12 @@
# Schema: Polkadot SDK PRDoc Schema (prdoc) v1.0.0
# See doc at https://raw.githubusercontent.com/paritytech/polkadot-sdk/master/prdoc/schema_user.json
title: Unique Usernames for Identity
doc:
- audience: Runtime User
description: |
Adds the ability to add unique usernames for an account with reverse lookup (as in `AccountId`
to `Username` and `Username` to `AccountId`).
crates: [ ]
+10
View File
@@ -0,0 +1,10 @@
title: "pallet-broker: Small improvements to the origin checks"
doc:
- audience: Runtime User
description: |
Change the permissionless calls `drop_region`, `drop_contribution`, `drop_history` and
`drop_renewal` to allow any kind of origin.
crates:
- name: "pallet-broker"
@@ -0,0 +1,17 @@
title: "PVF: fix unshare 'could not create temporary directory'"
doc:
- audience: Node Operator
description: |
For validators: fixes the potential warning/error:
"Cannot unshare user namespace and change root, which are Linux-specific kernel security features: could not create a temporary directory in "/tmp/.tmpIcLriO".
migrations:
db: []
runtime: []
crates:
- name: polkadot-node-core-pvf
host_functions: []
+14
View File
@@ -0,0 +1,14 @@
# Schema: Polkadot SDK PRDoc Schema (prdoc) v1.0.0
# See doc at https://raw.githubusercontent.com/paritytech/polkadot-sdk/master/prdoc/schema_user.json
title: Remove kusama and polkadot SP constants from parachains-common
doc:
- audience: Runtime Dev
description: |
The constants for System Parachains in Kusama and Polkadot are now added to a new package in
the fellowship repo. This PR removes them from Polkadot-SDK. They are now accessible from the
`system-parachains-constants` package.
crates:
- name: parachains-common
+21
View File
@@ -0,0 +1,21 @@
# Schema: Polkadot SDK PRDoc Schema (prdoc) v1.0.0
# See doc at https://raw.githubusercontent.com/paritytech/polkadot-sdk/master/prdoc/schema_user.json
title: "Add Authorize Upgrade Pattern to Frame System"
doc:
- audience: Runtime User
description: |
Adds the `authorize_upgrade` -> `enact_authorized_upgrade` pattern to `frame-system`. This
will be useful for upgrading bridged chains that are under the governance of Polkadot without
passing entire runtime Wasm blobs over a bridge.
Notes:
- Changed `enact_authorized_upgrade` to `apply_authorized_upgrade`.
- Left calls in `parachain-system` and marked as deprecated to prevent breaking the API. They
just call into the `frame-system` functions.
- Deprecated calls will be removed no earlier than June 2024.
- Updated `frame-system` benchmarks to v2 syntax.
crates: [ ]
+14
View File
@@ -0,0 +1,14 @@
title: Add XCM FungibleAdapter
doc:
- audience: Runtime Dev
description: |
A new AssetTransactor has been added to xcm-builder: FungibleAdapter.
It's meant to be used instead of the old CurrencyAdapter for configuring the XCM executor
to handle only one asset.
crates:
- name: "xcm-builder"
migrations: []
host_functions: []
+18
View File
@@ -0,0 +1,18 @@
title: "pallet-uniques: Move migration over to `VersionedMigration`"
doc:
- audience: Runtime Dev
description: |
Moves the migration over to `VersionedMigration`. Thus, if you had
used `migrate_to_v1` before in a custom `OnRuntimeUpgrade` implementation
you can now directly use the `MigrateV0ToV1`.
migrations:
runtime:
- reference: MigrateV0ToV1
description: |
Migrate the pallet storage from `0` to `1` by initializing
the `CollectionAccount` storage entry from all collections.
crates:
- name: "pallet-uniques"
+13
View File
@@ -0,0 +1,13 @@
# Schema: Parity PR Documentation Schema (prdoc)
# See doc at https://github.com/paritytech/prdoc
title: BEEFY: Support compatibility with Warp Sync - Allow Warp Sync for Validators
doc:
- audience: Node Operator
description: |
BEEFY can now sync itself even when using Warp Sync to sync the node. This removes the limitation of not
being able to run BEEFY when warp syncing. Validators are now again able to warp sync.
crates:
- name: sc-consensus-beefy
+14
View File
@@ -0,0 +1,14 @@
# Schema: Polkadot SDK PRDoc Schema (prdoc) v1.0.0
# See doc at https://raw.githubusercontent.com/paritytech/polkadot-sdk/master/prdoc/schema_user.json
title: "pallet-election-provider-multi-phase: Removes `BetterUnsignedThreshold` from pallet config"
doc:
- audience: Runtime Dev
description: |
Removes thresholding for accepting solutions better than the last queued for unsigned phase. This is unnecessary
as even without thresholding, the number of solutions that can be submitted to on-chain which is better than the
previous one is limited.
crates:
- name: "pallet-election-provider-multi-phase"
+10
View File
@@ -0,0 +1,10 @@
title: Fix vote weights of ranked members in the Society pallet
doc:
- audience: Runtime User
description: |
Fixes a bug in the tally accrual of approvals/rejections when
ranked members vote for Candidates and Defender in the Society pallet.
crates:
- name: pallet-society
+16
View File
@@ -0,0 +1,16 @@
title: Validator disabling in Backing.
doc:
- audience: Node Operator
description: |
Once a validator has been disabled for misbehavior, it will no longer
sign backing statements in the current era.
migrations:
db: []
runtime: []
crates:
- name: polkadot-node-core-backing
host_functions: []
+17
View File
@@ -0,0 +1,17 @@
# Schema: Polkadot SDK PRDoc Schema (prdoc) v1.0.0
# See doc at https://raw.githubusercontent.com/paritytech/polkadot-sdk/master/prdoc/schema_user.json
title: Extract PartialComponents into type alias `Service`
doc:
- audience: Node Dev
description: |
Simplifies service definitions by extraction of a complicated type into a type alias. No breaking changes.
crates:
- name: "sc-service"
- name: "node-template"
- name: "minimal-node"
- name: "cumulus-test-service"
- name: "polkadot-parachain-bin"
- name: "parachain-template-node"
+9
View File
@@ -0,0 +1,9 @@
title: Add fallback request for req-response protocols
doc:
- audience: Node Dev
description: |
Enable better req-response protocol versioning, by allowing for fallback requests on different protocols.
crates:
- name: sc_network
+12
View File
@@ -0,0 +1,12 @@
title: "Accept Root origin as valid sudo"
doc:
- audience: Runtime User
description: |
Dispatchables of `pallet-sudo` will now also accept the `Root` origin
as valid `sudo` origin. This enhancement is useful for parachains that
allow the relay chain as a superuser. It enables the relay chain to send
an XCM message to initialize the sudo key.
crates:
- name: "pallet-sudo"
+10
View File
@@ -0,0 +1,10 @@
title: Improve XCM debuggability
doc:
- audience: Runtime User
description: |
Adds more logging to XCM execution to improve its debuggability.
crates:
- name: "staging-xcm-builder"
- name: "staging-xcm-executor"
+19
View File
@@ -0,0 +1,19 @@
title: "cumulus-primitives-parachain-inherent: Split into two crates"
doc:
- audience: Node Dev
description: |
This splits `cumulus-primitives-parachain-inherent` into two crates. The new crate is called
`cumulus-client-parachain-inherent`. This is done to improve the compile time for runtimes,
as they are not required anymore to pull in half of the node side at compile time.
To migrate your code you need to change
`cumulus_primitives_parachain_inherent::ParachainInherentData::create_at` to
`cumulus_client_parachain_inherent::ParachainInherentDataProvider::create_at`.
Any other code should be compatible. The mocking code also moved to the new client crate and
you may need to adapt your imports accordingly. Generally, replacing the old crate with the new
crate fix most compile errors resulting from this pull request.
crates:
- name: "cumulus-primitives-parachain-inherent"
- name: "cumulus-client-parachain-inherent"
+9
View File
@@ -0,0 +1,9 @@
title: Fix malus implementation.
doc:
- audience: Node Dev
description: |
The malus implementation is used to test security of Polkadot.
It was broken. This fixes it.
crates: [ ]
+13
View File
@@ -0,0 +1,13 @@
title: "Interlacing removes the region on which it is performed."
doc:
- audience: Runtime User
description: |
The current implementation of the broker pallet does not remove
the region on which the interlacing is performed. This can create
a vulnerability, as the original region owner is still allowed to
assign a task to the region even after transferring an interlaced
part of it.
crates:
- name: "pallet-broker"
+11
View File
@@ -0,0 +1,11 @@
title: "Implement only sending one notification at a time as per RFC 56"
doc:
- audience: Node Dev
description: |
Transactions are now gossiped one at a time instead of as batches, as per RFC 56. This
allows decoding notifications without knowing how to decode individual transactions, and
allows for a more fine grained backpressure.
crates:
- name: "sc-network-transactions"
+11
View File
@@ -0,0 +1,11 @@
title: "`fungible::Unbalanced::decrease_balance`: Handle `precision` properly"
doc:
- audience: Runtime Dev
description: |
`fungible::Unbalanced::decrease_balance` will now handle `precision` properly. This means when
passing `Exact`, it will ensure that the available balance is bigger or equal to the `amount`
that should be deducted.
crates:
- name: "frame-support"
+13
View File
@@ -0,0 +1,13 @@
title: "proposer: return optional block"
doc:
- audience: Node Dev
description: |
The `ProposerInterface` trait now returns an optional `Proposal`, allowing
for no block to be created. This is a breaking change that only impacts custom
`ProposerInterface` implementations. The change allows more flexibility in choosing
when to create blocks.
crates:
- name: "cumulus-client-consensus-aura"
- name: "cumulus-client-consensus-proposer"
+9
View File
@@ -0,0 +1,9 @@
title: New malus variant `support-disabled`
doc:
- audience: Node Dev
description: |
A new malicious flavor added to pretend that nobody
is disabled onchain.
crates: [ ]
+11
View File
@@ -0,0 +1,11 @@
title: Return latest known relay chain block number in `on_initialize` etc.
doc:
- audience: Runtime Dev
description: |
`RelaychainDataProvider` and `RelaychainBlockNumberProvider` will now return the latest known
relay chain block number in `on_initialize`, aka when `validation_data` wasn't yet set by
the inherent.
crates:
- name: "cumulus-pallet-parachain-system"
+13
View File
@@ -0,0 +1,13 @@
# Schema: Polkadot SDK PRDoc Schema (prdoc) v1.0.0
# See doc at https://raw.githubusercontent.com/paritytech/polkadot-sdk/master/prdoc/schema_user.json
title: Remove bounds from `PrevalidateAttests` struct definition
doc:
- audience: Runtime Dev
description: |
Minimal change to `PrevalidateAssets` to remove some trait bounds on the struct itself while
keeping all its capabilities.
crates:
- name: polkadot-runtime-common
+10
View File
@@ -0,0 +1,10 @@
title: Improve storage monitor API
doc:
- audience: Node Dev
description: |
This removes the need to unnecessarily provide a very specific data structure DatabaseSource and removes huge
sc-client-db dependency from storage monitor. It is now possible to use storage monitor with any path.
crates:
- name: sc-storage-monitor