Skip to content

Add register-system-para subcommand#56

Open
karolk91 wants to merge 7 commits into
joepetrowski:masterfrom
karolk91:kk/register-system-para
Open

Add register-system-para subcommand#56
karolk91 wants to merge 7 commits into
joepetrowski:masterfrom
karolk91:kk/register-system-para

Conversation

@karolk91
Copy link
Copy Markdown

@karolk91 karolk91 commented Apr 13, 2026

Adds composable primitives for building Asset Hub governance proposals that
register a system parachain and/or reserve cores on Coretime.

New subcommands

  • xcm-force-register — relay-chain Registrar.force_register wrapped in
    the whitelist + preimage pattern, with optional delayed dispatch for the
    free-preimage path. Outputs preimage.hex, xcm_whitelist.hex, xcm_dispatch.hex.
  • xcm-force-reserve — AH XCM send carrying Broker.force_reserve(para, core).
  • batch-ah — combines hex-encoded AH calls into a single Utility.batch_all proposal.
  • register-system-para — convenience wrapper that chains the primitives
    above for the common single-para case.

Docs

See README for details and a worked multi-parachain example.

Real-world scenario

Used to prepare the Bulletin (para 1010) registration + extra core reservations
for Polkadot People (para 1004): https://hackmd.io/@karolk/S1qWzAs2-x

New command that generates all calls needed to register a system parachain
on the relay chain via Asset Hub governance.

Uses the whitelist+preimage pattern to work around the 128 KB UMP limit:
the large force_register call (with WASM) is stored as a preimage on the
relay chain, while Asset Hub sends a tiny XCM batch that whitelists and
dispatches it. Asset Hub has Root on the relay via LocationAsSuperuser
@karolk91 karolk91 marked this pull request as ready for review April 14, 2026 17:20
println!(" REGISTER SYSTEM PARACHAIN {}", args.para_id);
println!("{}", "=".repeat(60));
println!();
println!(" STEP 1 — Submit on Relay Chain (permissionless):");
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This means they'd get charged the full fee and deposit, and isn't the intended order if they're doing the delay path

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants