[go: up one dir, main page]

DAL_node: Fix Backfill logic in Attestable_slots_watcher_table

What

  • Extend the DAL node’s backfill window by one level (including L+1) when computing the initial payload for a new subscription (which is a finalized payload block according to Tenderbake);

Why

A slot can be published between sampling level L and stream attachment; including L+1 prevents missing that publication in the initial cache.

How

Manually testing the MR

By running a ghostnet L1 node and DAL node and curl-ing the monitoring RPC:

curl -N "http://127.0.0.1:11832/profiles/tz1Zt8QQ9aBznYNk5LUBjtME9DuExomw9YRs/monitor/attestable_slots" | jq

{
  "kind": "backfill",
  "backfill_payload": {
    "slot_ids": [
      {
        "slot_level": 16245574,
        "slot_index": 8
      },
      {
        "slot_level": 16245573,
        "slot_index": 8
      },
      {
        "slot_level": 16245572,
        "slot_index": 8
      },
      {
        "slot_level": 16245571,
        "slot_index": 8
      },
      {
        "slot_level": 16245570,
        "slot_index": 8
      },
      {
        "slot_level": 16245569,
        "slot_index": 8
      },
      {
        "slot_level": 16245568,
        "slot_index": 8
      },
      {
        "slot_level": 16245567,
        "slot_index": 8
      },
      {
        "slot_level": 16245566,
        "slot_index": 8
      }
    ],
    "no_shards_attestation_levels": []
  }
}
{
  "kind": "attestable_slot",
  "slot_id": {
    "slot_level": 16245575,
    "slot_index": 8
  }
}
{
  "kind": "attestable_slot",
  "slot_id": {
    "slot_level": 16245576,
    "slot_index": 8
  }
}
...

Checklist

  • Document the interface of any function added or modified (see the coding guidelines)
  • Document any change to the user interface, including configuration parameters (see node configuration)
  • Provide automatic testing (see the testing guide).
  • For new features and bug fixes, add an item in the appropriate changelog (docs/protocols/alpha.rst for the protocol and the environment, CHANGES.rst at the root of the repository for everything else).
  • Select suitable reviewers using the Reviewers field below.
  • Select as Assignee the next person who should take action on that MR
Edited by Gabriel Moise

Merge request reports

Loading