Skip to content
  1. Jun 19, 2021
    • Shawn Tabrizi's avatar
      039df45f
    • Lldenaurois's avatar
      Follow-up PR: Count no-shows (#3309) · 5c16c95b
      Lldenaurois authored
      * node/approval-voting: test for invalid validator index in assignments
      
      This commit adds a unit test to show that, currently, validator indexes
      greater than n_validators (or the length of the approvals bitvector) are
      counted in n_assignments. In the subsequent commit we will correct this
      behavior.
      
      * node/approval-voting: ignore invalid validator indexes in n_assignments
      
      This commit ignores any validator assignments whose index is beyond
      n_validators. Without this check, an improperly crafted assignment would
      be counted towards the approval.
      
      It still remains that n_assignments and count_no_shows inspect the
      number of validators and approvals, respectively. Ideally we would
      add greater safety around ensuring these two values cannot differ.
      5c16c95b
  2. Jun 18, 2021
  3. Jun 17, 2021
  4. Jun 16, 2021
    • Shawn Tabrizi's avatar
      fix xcm pallet origin (#3272) · 0282ad31
      Shawn Tabrizi authored
      0282ad31
    • asynchronous rob's avatar
      extract determine_new_blocks into a separate utility (#3261) · 462ca043
      asynchronous rob authored
      * extract determine_new_blocks into a separate utility
      
      * rework docs
      462ca043
    • Lldenaurois's avatar
      Approval checking unit tests (#3252) · 0da70dfa
      Lldenaurois authored
      * node/approval_checking: break out filled_tranch_iterator method
      
      In the subsequent commit, we will begin to test this method in
      isolation.
      
      * node/approval-voting: fix tranche back-filling algorithm
      
      Previously, this algorithm would generate duplicate, empty entries for
      tranches (1..pre_end). This is caused because the initial value (0) for
      gap_end is treated as the end of a prior tranche that wasn't actually
      processed. The first pass thus would add (1..tranche) empty entries, in
      addition to the (0..pre_end) empty entries chained at the end of the
      method.
      
      This is fixed by using the current tranche as the gap_start for the
      first iteration, ensuring that the approval_entries_filled only produces
      entries in the range (pre_end..post_start).
      
      * Address feedback
      0da70dfa
    • André Silva's avatar
      bridges: update finality-grandpa to 0.14.1 (#3266) · 4b3ec9c9
      André Silva authored
      * bridges: update finality-grandpa
      
      * update Substrate
      
      Co-authored-by: parity-processbot <>
      4b3ec9c9
    • Bernhard Schuster's avatar
      malus - mockable overseer mvp (#3224) · 44a8aa23
      Bernhard Schuster authored
      44a8aa23
    • Shawn Tabrizi's avatar
      use safe math (#3249) · b64d9885
      Shawn Tabrizi authored
      b64d9885
    • Shawn Tabrizi's avatar
      Companion for #8920 (Control Staking) (#3260) · 2fbd705e
      Shawn Tabrizi authored
      * update weight apis
      
      * update Substrate
      
      Co-authored-by: parity-processbot <>
      2fbd705e
    • Keith Yeung's avatar
      Companion for #8949 (#3216) · 7d82d93f
      Keith Yeung authored
      * Remove Call part imports of the offences and authority discovery pallets
      
      * Remove non-existent Call enum variants
      
      * Move ValidateUnsigned impl to be under #[pallet::validate_unsigned] in claims pallet
      
      * Remove unused imports
      
      * Remove Call part import for randomness collective flip pallet
      
      * update Substrate
      
      Co-authored-by: parity-processbot <>
      7d82d93f
  5. Jun 15, 2021
  6. Jun 14, 2021
  7. Jun 13, 2021
    • ordian's avatar
      approval votes checking logs (#3233) · 93e42fb2
      ordian authored
      * approval-voting: logs for invalid votes
      
      * proper errors for assignment checks
      
      * proper errors for approval checks
      93e42fb2
    • asynchronous rob's avatar
      4797fb7d
    • asynchronous rob's avatar
    • asynchronous rob's avatar
      Dispute Coordinator Subsystem (#3150) · 5bc2b277
      asynchronous rob authored
      
      
      * skeleton for dispute-coordinator
      
      * add coordinator and participation message types
      
      * begin dispute-coordinator DB
      
      * functions for loading
      
      * implement strongly-typed DB transaction
      
      * add some tests for DB transaction
      
      * core logic for pruning
      
      * guide: update candidate-votes key for coordinator
      
      * update candidate-votes key
      
      * use big-endian encoding for session, and implement upper bound generator
      
      * finish implementing pruning
      
      * add a test for note_current_session
      
      * define state of the subsystem itself
      
      * barebones subsystem definition
      
      * control flow
      
      * more control flow
      
      * implement session-updating logic
      
      * trace
      
      * control flow for message handling
      
      * Update node/core/dispute-coordinator/src/lib.rs
      
      Co-authored-by: default avatarAndré Silva <[email protected]>
      
      * Update node/subsystem/src/messages.rs
      
      Co-authored-by: default avatarAndré Silva <[email protected]>
      
      * some more control flow
      
      * guide: remove overlay
      
      * more control flow
      
      * implement some DB getters
      
      * make progress on importing statements
      
      * add SignedDisputeStatement struct
      
      * move ApprovalVote to shared primitives
      
      * add a signing-payload API to explicit dispute statements
      
      * add signing-payload to CompactStatement
      
      * add relay-parent hash to seconded/valid dispute variatns
      
      * correct import
      
      * type-safe wrapper around dispute statements
      
      * use checked dispute statement in message type
      
      * extract rolling session window cache to subsystem-util
      
      * extract session window tests
      
      * approval-voting: use rolling session info cache
      
      * reduce dispute window to match runtime in practice
      
      * add byzantine_threshold and supermajority_threshold utilities to primitives
      
      * integrate rolling session window
      
      * Add PartialOrd to CandidateHash
      
      * add Ord to CandidateHash
      
      * implement active dispute update
      
      * add dispute messages to AllMessages
      
      * add dispute stubs to overseer
      
      * inform dispute participation to participate
      
      * implement issue_local_statement
      
      * implement `determine_undisputed_chain`
      
      * fix warnings
      
      * test harness for dispute coordinator tests
      
      * add more helpers to test harness
      
      * add some more helpers
      
      * some tests for dispute coordinator
      
      * ignore wrong validator indices
      
      * test finality voting rule constraint
      
      * add more tests
      
      * add variants to network bridge
      
      * fix test compilation
      
      * remove most dispute coordinator functionality
      
      as of #3222 we can do most of the work within the approval voting subsystem
      
      * Revert "remove most dispute coordinator functionality"
      
      This reverts commit 9cd615e8eb6ca0b382cbaff525d813e753d6004e.
      
      * Use thiserror
      
      Co-authored-by: default avatarBernhard Schuster <[email protected]>
      
      * Update node/core/dispute-coordinator/src/lib.rs
      
      Co-authored-by: default avatarBernhard Schuster <[email protected]>
      
      * extract tests to separate module
      
      * address nit
      
      * adjust run_iteration API
      
      Co-authored-by: default avatarAndré Silva <[email protected]>
      Co-authored-by: default avatarBernhard Schuster <[email protected]>
      5bc2b277
  8. Jun 12, 2021