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

Warp readme #1780

Merged
merged 14 commits into from
Aug 16, 2023
Merged

Warp readme #1780

merged 14 commits into from
Aug 16, 2023

Conversation

aaronbuchwald
Copy link
Collaborator

This PR adds a README to the Avalanche Warp package.

@aaronbuchwald aaronbuchwald added this to the v1.10.6 milestone Jul 29, 2023
@aaronbuchwald
Copy link
Collaborator Author

@StephenButtolph would you be ok with including a note about special case handling for the Primary Network here or would you prefer to leave that to VMs?

Copy link
Contributor

@martineckardt martineckardt left a comment

Choose a reason for hiding this comment

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

Very good and the most comprehensive overview of AWM I have seen so far. Really enjoyed reading it

aaronbuchwald and others added 2 commits August 1, 2023 10:12
Co-authored-by: Martin Eckardt <[email protected]>
Co-authored-by: rodrigo <[email protected]>
Signed-off-by: aaronbuchwald <[email protected]>
@StephenButtolph StephenButtolph modified the milestones: v1.10.7, v1.10.8 Aug 3, 2023
@StephenButtolph StephenButtolph modified the milestones: v1.10.8, v1.10.9 Aug 9, 2023
+-----------------+----------+--------------------------+
| source_chain_id : [32]byte | 32 bytes |
+-----------------+----------+--------------------------+
| payload : []byte | 4 + size(payload) |
Copy link
Contributor

Choose a reason for hiding this comment

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

4 bytes + size(payload) here?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

the length is encoded as uint32 followed by the payload

+-----------------+----------+--------------------------+
| payload : []byte | 4 + size(payload) |
+-----------------+----------+--------------------------+
| 38 + size(payload) bytes|
Copy link
Contributor

@joshua-kim joshua-kim Aug 15, 2023

Choose a reason for hiding this comment

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

  1. Whatever we choose for the above we should do here to make it consistent
  2. What is this? Some header? I currently understand this to be a total, in which case i think this should actually be 4 + 32 + 4 = 40 + size(payload) bytes.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

This was incorrect, updating


BLS provides a way to aggregate signatures off chain into a single signature that can be efficiently verified on chain.

## AWM Serialization
Copy link
Contributor

@joshua-kim joshua-kim Aug 15, 2023

Choose a reason for hiding this comment

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

For this section we're making our own table diagrams but markdown supports this via https://www.markdownguide.org/extended-syntax/#tables

I'm not sure if you meant to do this if you prefer the ASCII look but this is something else to consider (I love ASCII, but others might hate it).

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

This is following the style we've used here: https://docs.avax.network/reference/avalanchego/p-chain/txn-format. Happy to change it to a more standard format throughout our docs, but don't think that should be a requirement for this PR.

Comment on lines 40 to 41
- `networkID` is the unique ID of an Avalanche Network (Mainnet/Testnet) and provides replay protection for BLS Signers across different Avalanche Networks
- `sourceChainID` is the `blockchainID` of the blockchain sending a message. This ensures that each blockchain can only sign a message with its own `blockchainID`. Note: the `blockchainID` is the hash of the transaction that created the blockchain on the Avalanche P-Chain. It serves as the unique identifier for the blockchain across the Avalanche Network.
Copy link
Contributor

Choose a reason for hiding this comment

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

source_chain_id and network_id to be consistent with the diagram

Copy link
Contributor

Choose a reason for hiding this comment

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

see prior comment

aaronbuchwald and others added 2 commits August 16, 2023 09:41
@StephenButtolph StephenButtolph added the documentation Improvements or additions to documentation or examples label Aug 16, 2023
@StephenButtolph StephenButtolph merged commit ea5da01 into dev Aug 16, 2023
@StephenButtolph StephenButtolph deleted the warp-readme branch August 16, 2023 17:17
marun pushed a commit that referenced this pull request Aug 17, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation or examples
Projects
No open projects
Archived in project
Development

Successfully merging this pull request may close these issues.

6 participants