Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

skunert: retain at rank 2 #80

Open
wants to merge 4 commits into
base: main
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
77 changes: 77 additions & 0 deletions evidence/skunert/0003-skunert-retain-II-2024.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
# Evidence-0003: Retention at Rank II

| | |
| ---------------- | ---------- |
| **Report Date** | 2024/10/28 |
| **Submitted by** | skunert |


## Member details

- Matrix username: `@sebastian:parity.io`
- Polkadot address: `1682A5hxfiS1Kn1jrUnMYv14T9EuEnsgnBbujGfYbeEbSK3w`
- Current rank: 2
- Date of initial induction: 2024/01/08
- Date of last report: 2024/07/29
- Area(s) of Expertise/Interest: `Cumulus Node`, `Substrate Node`, `Parachain Authoring`, `Weight`


## Reporting period

- Start date: 2024/07/30
- End date: 2024/10/30


## Evidence

### Proof weight hardening

During this reporting period I focused on the hardening of our proof weight system. Earlier this year we identified two issues with the way we handle proof size weight:

1. [#5229](https://github.com/paritytech/polkadot-sdk/issues/5229): Since PoV-reclaim only monitors `SignedExtensions` post-dispatch hook, it was missing trie accesses that occured in pre-dispatch hooks. Together with unbenchmarked extrinsic base weights on parachains, this can lead to an underestimation of proof weight.
2. [#6020](https://github.com/paritytech/polkadot-sdk/issues/6020): Both our benchmarking code and PoV-reclaim do currently not account for storage accesses that happen during the storage root calculation in `finalize_block`.

I worked on a quick fix to alleviate the impact of #5229 ([#5281](https://github.com/paritytech/polkadot-sdk/pull/5281), [#5257](https://github.com/paritytech/polkadot-sdk/pull/5257)). However, proper hardening of the proof weight includes multiple steps, one of which is to integrate overhead benchmarking into the `frame-omni-bencher` in polkadot-sdk. Before, benchmarking block overhead and extrinsic base weight was not supported for parachains at all. I worked on identifying the requirements and came up with the design in [#5303](https://github.com/paritytech/polkadot-sdk/issues/5303). Then I implemented the proposed changes, leading to [#5891](https://github.com/paritytech/polkadot-sdk/pull/5891).

### Slot-based collator

Another workstream has been the continuation of the slot-based collator improvements [#6066](https://github.com/paritytech/polkadot-sdk/pull/6066). The MVP is in place and works for elastic scaling chains which want to produce blocks at fixed intervals, with one block per slot.
However, the slot-based collator should aim to fully replace our existing collator implementations with the following improvements:

- Simplified modification of block production timings and conditions
- Introduction of a slot-based collator variant that is behaviour-compatible with the lookahead collator.
- Implementation of multi-block authoring support per parachain slot

Work on this has started but is not yet presentable.

### Support

I invested time in supportive work:

- Sparred with Michal on the fork-aware transaction pool and spent a significant amount of time on its review [#4639](https://github.com/paritytech/polkadot-sdk/pull/4639)
- Reviewed fellowship RFC [#103](https://github.com/polkadot-fellows/RFCs/pull/103)
- Reviewed runtime PRs (3) [list](https://github.com/polkadot-fellows/runtimes/pulls?q=is%3Apr++reviewed-by%3Askunert+created%3A2024-07-30..2024-10-30+)
- Reviewed polkadot-sdk PRs (69) [list](https://github.com/paritytech/polkadot-sdk/pulls?q=is%3Apr+reviewed-by%3Askunert+created%3A2024-07-30..2024-10-30+)

## Voting record

*Provide your voting record in relation to required thresholds for your rank.*

| Ranks | Activity thresholds | Agreement thresholds | Member's voting activities | Comments |
| ----- | ------------------- | -------------------- | -------------------------- | ----------------------------- |
| III | 70% | N/A | | |
| I | 90% | N/A | | There was nothing to vote on. |
| II | 80% | N/A | | There was nothing to vote on. |
| III | 70% | N/A | | |
| IV | 60% | N/A | | |
| V | 50% | N/A | | |
| VI | 40% | N/A | | |


## Misc

- [ ] Question(s):

- [ ] Concern(s):

- [ ] Comment(s):