ChainSafe / ChainSafe/gossamer

Create new type to pair extrinsic with its source

Open
#2,421 1 comment 0 reactions 0 assignees View on GitHub
C-simple
Dominant language
Go
Stars
454
Forks
144
PR merge metrics
No merged PRs in 30d

Description

## Issue summary

- Currently the encrypted extrinsics are individually prefixed with a source. This looks like
`externalExt := types.Extrinsic(append([]byte{byte(types.TxnExternal)}, ext...))`
This is not clean and can be confusing especially since we don't define possible prefixs anywhere.
- We should create a new type that contains the opaque extrinsic and its source as well as document what the possible sources are.

## Other information and links

- https://github.com/ChainSafe/gossamer/pull/2308#discussion_r818965438

Contributor guide

Open the contributing guide

Research direction

Start by tracing the types.Extrinsic and TxnExternal references shown in the issue, then review the linked pull request discussion for context. Done means a type pairs the opaque extrinsic with its source, the possible sources are documented, and existing prefix-based uses are updated consistently.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
blockchain
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.