Skip to content
This repository has been archived by the owner on Nov 15, 2023. It is now read-only.

Approve multiple candidates with a single signature #7554

Open
wants to merge 62 commits into
base: sandreim/vrf_modulo_comapct_assignment
Choose a base branch
from

Commits on Jul 28, 2023

  1. Approve multiple candidates with a single signature

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Jul 28, 2023
    Configuration menu
    Copy the full SHA
    08c2381 View commit details
    Browse the repository at this point in the history
  2. Add Runtime configuration for max_approval_coalesce_count/wait_millis

    TODO: Migration is not correctly handled, should be done before versi
    testing.
    
    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Jul 28, 2023
    Configuration menu
    Copy the full SHA
    4901fee View commit details
    Browse the repository at this point in the history
  3. Add zombienet for approval-coalescing

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Jul 28, 2023
    Configuration menu
    Copy the full SHA
    1e3b511 View commit details
    Browse the repository at this point in the history

Commits on Jul 31, 2023

  1. Refactor timers to address review comments

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Jul 31, 2023
    Configuration menu
    Copy the full SHA
    cf68a10 View commit details
    Browse the repository at this point in the history

Commits on Aug 2, 2023

  1. Make wait time for caching relative to no-show

    ... additionally computed in ticks as it is done everywhere else.
    
    And added some tests to make sure approval-voting behaves the way we
    intended to.
    
    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 2, 2023
    Configuration menu
    Copy the full SHA
    fd4b906 View commit details
    Browse the repository at this point in the history
  2. Enforce target candidate is part of the signature

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 2, 2023
    2 Configuration menu
    Copy the full SHA
    2271c71 View commit details
    Browse the repository at this point in the history
  3. Merge remote-tracking branch 'origin/sandreim/vrf_modulo_comapct_assi…

    …gnment' into coalescing_of_approvals_cleanup
    alexggh committed Aug 2, 2023
    Configuration menu
    Copy the full SHA
    df410ff View commit details
    Browse the repository at this point in the history
  4. Fixup runtime configuration after rebase

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 2, 2023
    Configuration menu
    Copy the full SHA
    f0f05c6 View commit details
    Browse the repository at this point in the history
  5. Merge remote-tracking branch 'origin/sandreim/vrf_modulo_comapct_assi…

    …gnment' into coalescing_of_approvals_cleanup
    alexggh committed Aug 2, 2023
    Configuration menu
    Copy the full SHA
    76a10c6 View commit details
    Browse the repository at this point in the history
  6. Fixup build for unittests

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 2, 2023
    Configuration menu
    Copy the full SHA
    d31d1d0 View commit details
    Browse the repository at this point in the history

Commits on Aug 3, 2023

  1. Fix bugs discovered during zombie-testing and unittest

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 3, 2023
    Configuration menu
    Copy the full SHA
    6dfaecb View commit details
    Browse the repository at this point in the history

Commits on Aug 4, 2023

  1. Refactor the implementation a bit

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 4, 2023
    Configuration menu
    Copy the full SHA
    1a2a5ec View commit details
    Browse the repository at this point in the history

Commits on Aug 8, 2023

  1. Make test better

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 8, 2023
    Configuration menu
    Copy the full SHA
    81eb942 View commit details
    Browse the repository at this point in the history
  2. approval-voting: fix migration from v1 to v2

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 8, 2023
    Configuration menu
    Copy the full SHA
    ff0b35d View commit details
    Browse the repository at this point in the history
  3. Fix-up bugs in assignnments_coalescing of tranche0

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 8, 2023
    Configuration menu
    Copy the full SHA
    2570c1e View commit details
    Browse the repository at this point in the history
  4. Enable v2 network protocol

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 8, 2023
    Configuration menu
    Copy the full SHA
    305a43a View commit details
    Browse the repository at this point in the history
  5. Fixup test builds

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 8, 2023
    Configuration menu
    Copy the full SHA
    5bb1e91 View commit details
    Browse the repository at this point in the history
  6. Enable assignments v2 computing

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 8, 2023
    Configuration menu
    Copy the full SHA
    a83cfb7 View commit details
    Browse the repository at this point in the history

Commits on Aug 10, 2023

  1. Update test params

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 10, 2023
    Configuration menu
    Copy the full SHA
    98705e2 View commit details
    Browse the repository at this point in the history
  2. Merge remote-tracking branch 'origin/sandreim/vrf_modulo_comapct_assi…

    …gnment' into coalescing_of_approvals_v2
    alexggh committed Aug 10, 2023
    Configuration menu
    Copy the full SHA
    3f28a5d View commit details
    Browse the repository at this point in the history
  3. Fixup logic for restarting the node

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 10, 2023
    Configuration menu
    Copy the full SHA
    aae2a4a View commit details
    Browse the repository at this point in the history
  4. Add metric to measure impact of coalescing of approvals

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 10, 2023
    Configuration menu
    Copy the full SHA
    435d46a View commit details
    Browse the repository at this point in the history

Commits on Aug 11, 2023

  1. Add extra logs to improve debugability in versi

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 11, 2023
    Configuration menu
    Copy the full SHA
    9016644 View commit details
    Browse the repository at this point in the history
  2. Fixup sending approval before assignment

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 11, 2023
    Configuration menu
    Copy the full SHA
    1662e14 View commit details
    Browse the repository at this point in the history

Commits on Aug 15, 2023

  1. Count needed approvals by more than one third

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 15, 2023
    Configuration menu
    Copy the full SHA
    af57831 View commit details
    Browse the repository at this point in the history
  2. Add a few more metrics to understand versi behaviour

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 15, 2023
    Configuration menu
    Copy the full SHA
    be65f42 View commit details
    Browse the repository at this point in the history

Commits on Aug 17, 2023

  1. Don't send assignments to peers that are not part of the authorities …

    …session
    
    ... there is not point in sending the assignments to peers that are not
    authorities in the session(collators or validators that are not authorities yet),
    because they won't be gossiped, so we are just wasting them.
    
    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 17, 2023
    Configuration menu
    Copy the full SHA
    3ef84bf View commit details
    Browse the repository at this point in the history
  2. Count all observe no-shows

    No-shows are currently logged in the metric only at the moment of the
    approval candidate, but that doesn't account for votes that arrive late
    after the no-show period which is an early indicator that something
    might be off.
    
    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 17, 2023
    Configuration menu
    Copy the full SHA
    1dbcb90 View commit details
    Browse the repository at this point in the history
  3. Fix warning

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 17, 2023
    Configuration menu
    Copy the full SHA
    3ac044e View commit details
    Browse the repository at this point in the history
  4. Minor fixes for review

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 17, 2023
    Configuration menu
    Copy the full SHA
    2cb6756 View commit details
    Browse the repository at this point in the history

Commits on Aug 18, 2023

  1. Fix approval-distribution tests

    ... to take into consideration that we are not gossiping random
    assignments to non-validators nodes.
    
    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 18, 2023
    Configuration menu
    Copy the full SHA
    0429549 View commit details
    Browse the repository at this point in the history
  2. Address initial review feedback

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 18, 2023
    Configuration menu
    Copy the full SHA
    76823a4 View commit details
    Browse the repository at this point in the history
  3. Add zombient test 0006-approval-voting-coalescing to pipeline

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 18, 2023
    Configuration menu
    Copy the full SHA
    deff64f View commit details
    Browse the repository at this point in the history
  4. Update implementers guide

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 18, 2023
    Configuration menu
    Copy the full SHA
    62a57b5 View commit details
    Browse the repository at this point in the history

Commits on Aug 21, 2023

  1. Fix importing of approval out-of-view

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    f38697e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    903cef2 View commit details
    Browse the repository at this point in the history
  3. Companion for substrate#14776 (paritytech#7648)

    * Bump dalek
    
    * update lockfile for {"substrate"}
    
    ---------
    
    Co-authored-by: parity-processbot <>
    skunert authored Aug 21, 2023
    Configuration menu
    Copy the full SHA
    ea027a8 View commit details
    Browse the repository at this point in the history
  4. PVF worker: random fixes (paritytech#7649)

    * PVF worker: random fixes
    
    - Fixes possible panic due to non-UTF-8 env vars
      (paritytech#7330 (comment))
    - Very small refactor of some duplicated code
    
    * Don't need `to_str()` for comparison between OsString and str
    
    * Check edge cases that can cause env::remove_var to panic
    
    In case of a key or value that would cause env::remove_var to panic, we first
    log a warning and then proceed to attempt to remove the env var.
    
    * Make warning message clearer for end users
    
    * Backslash was unescaped, but can just remove it from error messages
    mrcnski authored Aug 21, 2023
    Configuration menu
    Copy the full SHA
    0bbe0a7 View commit details
    Browse the repository at this point in the history

Commits on Aug 22, 2023

  1. Merge remote-tracking branch 'origin/sandreim/vrf_modulo_comapct_assi…

    …gnment' into feature/approve_multiple_candidates_v2
    
     Conflicts:
    	node/core/runtime-api/src/cache.rs
    	node/core/runtime-api/src/lib.rs
    	node/network/approval-distribution/src/lib.rs
    	node/network/protocol/src/lib.rs
    	node/subsystem-types/src/messages.rs
    	node/subsystem-types/src/runtime_client.rs
    	primitives/src/runtime_api.rs
    	primitives/src/vstaging/mod.rs
    	runtime/parachains/src/builder.rs
    	runtime/parachains/src/configuration.rs
    	runtime/parachains/src/configuration/migration/v7.rs
    	runtime/parachains/src/configuration/tests.rs
    	runtime/parachains/src/runtime_api_impl/vstaging.rs
    	runtime/rococo/src/lib.rs
    	runtime/westend/src/lib.rs
    alexggh committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    7bdf7dc View commit details
    Browse the repository at this point in the history
  2. Add BEEFY capabilities to Westend and Kusama (paritytech#7591)

    * runtime: add BEEFY and MMR to Westend
    
    Signed-off-by: Adrian Catangiu <adrian@parity.io>
    
    * runtime: add BEEFY and MMR to Kusama
    
    Signed-off-by: Adrian Catangiu <adrian@parity.io>
    
    * node/service: enable BEEFY for Westend and Kusama
    
    Signed-off-by: Adrian Catangiu <adrian@parity.io>
    
    * node/service: regenerate genesis keys for westend-native and kusama-native
    
    Since these keys are only used for development/local chains, also publish
    the secret seeds used to generate the public keys, so that developers can
    recover/generate the private key pairs if needed.
    
    Signed-off-by: Adrian Catangiu <adrian@parity.io>
    
    * runtime: add session keys migration to add BEEFY to Westend and Kusama
    
    * runtime: fix migration
    
    * fix try-runtime build
    
    * cargo fmt
    
    * fix parachains slashing benchmark
    
    * address review comments
    
    * Apply suggestions from code review
    
    Co-authored-by: Bastian Köcher <git@kchr.de>
    
    * runtime: fix session keys migration
    
    ---------
    
    Signed-off-by: Adrian Catangiu <adrian@parity.io>
    Co-authored-by: parity-processbot <>
    Co-authored-by: Bastian Köcher <git@kchr.de>
    acatangiu and bkchr authored Aug 22, 2023
    Configuration menu
    Copy the full SHA
    e39c003 View commit details
    Browse the repository at this point in the history
  3. Bump actions/setup-node from 3.8.0 to 3.8.1 (paritytech#7639)

    Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3.8.0 to 3.8.1.
    - [Release notes](https://github.com/actions/setup-node/releases)
    - [Commits](actions/setup-node@v3.8.0...v3.8.1)
    
    ---
    updated-dependencies:
    - dependency-name: actions/setup-node
      dependency-type: direct:production
      update-type: version-update:semver-patch
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    dependabot[bot] authored Aug 22, 2023
    Configuration menu
    Copy the full SHA
    8ce1716 View commit details
    Browse the repository at this point in the history
  4. Merge remote-tracking branch 'origin/sandreim/vrf_modulo_comapct_assi…

    …gnment' into feature/approve_multiple_candidates_v2
    alexggh committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    3264a00 View commit details
    Browse the repository at this point in the history
  5. Bound number of assets which can be withdrawn to pay for execution. (p…

    …aritytech#7641)
    
    * Bound number of assets which can be withdrawn to pay for execution.
    
    * ".git/.scripts/commands/fmt/fmt.sh"
    
    * Include ClaimAsset in limiting the assets
    
    * Change max assets to constant
    
    ---------
    
    Co-authored-by: command-bot <>
    Co-authored-by: Francisco Aguirre <franciscoaguirreperez@gmail.com>
    gavofyork and franciscoaguirre authored Aug 22, 2023
    Configuration menu
    Copy the full SHA
    9f1e9ea View commit details
    Browse the repository at this point in the history
  6. Enable approval-coalescing by default

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    d5fc80c View commit details
    Browse the repository at this point in the history
  7. Increase num-workers

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    301dab1 View commit details
    Browse the repository at this point in the history
  8. Increase SMALL_POV_SIZE

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    d861d81 View commit details
    Browse the repository at this point in the history
  9. Put logs on trace

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    a216036 View commit details
    Browse the repository at this point in the history
  10. Fix xcm-builder mock (paritytech#7652)

    * Fix xcm-builder mock
    
    (preparation for monorepo)
    
    The CI fails here when the runtime-benchmarks feature is enabled in the workspace.
    
    Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
    
    * Update xcm/xcm-builder/Cargo.toml
    
    ---------
    
    Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
    ggwpez authored Aug 22, 2023
    Configuration menu
    Copy the full SHA
    759fe21 View commit details
    Browse the repository at this point in the history

Commits on Aug 23, 2023

  1. Merge remote-tracking branch 'origin/sandreim/vrf_modulo_comapct_assi…

    …gnment' into feature/approve_multiple_candidates_v2
    alexggh committed Aug 23, 2023
    Configuration menu
    Copy the full SHA
    a908447 View commit details
    Browse the repository at this point in the history
  2. Do not cleanup peer-knowledge on peer-connected/disconnected

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 23, 2023
    Configuration menu
    Copy the full SHA
    e8ac355 View commit details
    Browse the repository at this point in the history
  3. Companion: restructure macro related exports (paritytech#7626)

    * move RuntimeDebug out of frame_support
    
    * move RuntimeDebug out of frame_support
    
    * fix xcm export
    
    * ".git/.scripts/commands/fmt/fmt.sh"
    
    * fix xcm intefration tests
    
    * fix cargo lock for xcm intefration tests
    
    * wip
    
    * restructure benchmarking macro related exports
    
    * update cargo lock
    
    ---------
    
    Co-authored-by: parity-processbot <>
    juangirini authored Aug 23, 2023
    Configuration menu
    Copy the full SHA
    7f0eb5f View commit details
    Browse the repository at this point in the history
  4. Revert some hacks

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 23, 2023
    Configuration menu
    Copy the full SHA
    7972d31 View commit details
    Browse the repository at this point in the history
  5. Merge remote-tracking branch 'origin/sandreim/vrf_modulo_comapct_assi…

    …gnment' into feature/approve_multiple_candidates_v2
    alexggh committed Aug 23, 2023
    Configuration menu
    Copy the full SHA
    e988782 View commit details
    Browse the repository at this point in the history
  6. Build image with network vstaging

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 23, 2023
    Configuration menu
    Copy the full SHA
    feefbbb View commit details
    Browse the repository at this point in the history
  7. Fixup sending approvals more than once

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 23, 2023
    Configuration menu
    Copy the full SHA
    71c08a4 View commit details
    Browse the repository at this point in the history
  8. Fixup unify_with_peer

    Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
    alexggh committed Aug 23, 2023
    Configuration menu
    Copy the full SHA
    0349441 View commit details
    Browse the repository at this point in the history

Commits on Aug 24, 2023

  1. Bump chevdor/srtool-actions from 0.7.0 to 0.8.0 (paritytech#7660)

    Bumps [chevdor/srtool-actions](https://github.com/chevdor/srtool-actions) from 0.7.0 to 0.8.0.
    - [Release notes](https://github.com/chevdor/srtool-actions/releases)
    - [Commits](chevdor/srtool-actions@v0.7.0...v0.8.0)
    
    ---
    updated-dependencies:
    - dependency-name: chevdor/srtool-actions
      dependency-type: direct:production
      update-type: version-update:semver-minor
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    dependabot[bot] authored Aug 24, 2023
    Configuration menu
    Copy the full SHA
    52034bd View commit details
    Browse the repository at this point in the history
  2. Bump rustls-webpki from 0.101.2 to 0.101.4 (paritytech#7653)

    Bumps [rustls-webpki](https://github.com/rustls/webpki) from 0.101.2 to 0.101.4.
    - [Release notes](https://github.com/rustls/webpki/releases)
    - [Commits](rustls/webpki@v/0.101.2...v/0.101.4)
    
    ---
    updated-dependencies:
    - dependency-name: rustls-webpki
      dependency-type: indirect
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    dependabot[bot] authored Aug 24, 2023
    Configuration menu
    Copy the full SHA
    ebb610f View commit details
    Browse the repository at this point in the history
  3. extend abridged host config (paritytech#7659)

    added asynchronous backing params
    slumber authored Aug 24, 2023
    Configuration menu
    Copy the full SHA
    f3da93d View commit details
    Browse the repository at this point in the history

Commits on Aug 25, 2023

  1. cli: disallow BEEFY and warp sync together (paritytech#7661)

    Signed-off-by: Adrian Catangiu <adrian@parity.io>
    acatangiu authored Aug 25, 2023
    Configuration menu
    Copy the full SHA
    598f4c6 View commit details
    Browse the repository at this point in the history
  2. update readme: archived repo (paritytech#7654)

    * Update README.md
    
    * Update README.md
    the-right-joyce authored Aug 25, 2023
    Configuration menu
    Copy the full SHA
    52209dc View commit details
    Browse the repository at this point in the history
  3. Merge remote-tracking branch 'origin/master' into approve_multiple_ca…

    …ndidates_polkadot_sdk
    alexggh committed Aug 25, 2023
    Configuration menu
    Copy the full SHA
    a218e59 View commit details
    Browse the repository at this point in the history