paritytech / paritytech/dotns

[Feat]: Benchmark weights for the container-and-subname PoP lite registration path

Open
#287 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

P1 scope: pop type: feature
Dominant language
Solidity
Stars
4
Forks
2
Avg merge
1d 18h
Merged PRs (30d)
24

Description

Component

Proof of Personhood

Priority

P1

Summary

Issuing a PoP lite username changed shape. Instead of minting one atomic label, the gateway path now
splits stem.suffix, mints the numeric container on first use, and records the stem as a subname
beneath it. This changes the on-chain work each Root-origin dispatch performs, so the weights that
gate that dispatch need re-measuring. Deferring the store write to settlement also moves work out of
the dispatch and into the settlement call, and that split needs measuring separately so neither side
is under-weighted.

Proposal

Benchmark the paths that changed and compare them against the previous atomic-label figures:

  • Cold lite registration: split the label, mint the container (01), record the subname, and
    persist the chat key. This is the most expensive path because the container is minted here.
  • Warm lite registration: the container already exists, so only the subname record and the chat key
    are written.
  • Settlement: writing the deferred label into the owner's store at the subname node.

Produce weight and proof-size figures for each path using the previewnet-engine harness, record cold
and warm separately because the first username under a container costs more than the rest, and update
any weight definitions that gate the gateway dispatch from the measured figures.

Acceptance criteria
  • Weight and proof size measured for cold lite registration, warm lite registration, and settlement.
  • Figures compared against the previous atomic-label registration path.
  • Cold and warm paths reported separately.
  • Weight definitions that gate the gateway dispatch updated from the measured figures.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the previewnet-engine harness and the existing atomic-label registration benchmarks, then trace the weight definitions that gate the gateway dispatch. Measure cold and warm lite registration separately and measure settlement, compare the results with the previous figures, and update the relevant definitions so the acceptance criteria are met.

Written by the indexing model from the issue text.

Assessment

Tech stack
solidity
Domain
blockchain, performance
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.