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

add blog article about new client API #975

Merged
merged 1 commit into from
Jun 12, 2023

Conversation

ghubertpalo
Copy link
Collaborator

Content

This PR includes a blog post to explain that the CLI options are going to change and why.

Pre-submit checklist

  • Branch
    • Commit sequence broadly makes sense
    • Key commits have useful messages
  • PR
    • Self-reviewed the diff
    • Useful pull request description
    • Reviewer requested
  • Documentation
    • Add dev blog post (if relevant)

Issue(s)

Relates to #960

@ghubertpalo ghubertpalo requested review from Alenar and jpraynaud June 12, 2023 09:18
@ghubertpalo ghubertpalo self-assigned this Jun 12, 2023

If the file can be verified against the multi-signature, it is saved on the disk.

The Mithril stake distribution may not be a convenient artifact for Caradano users but it paves the way for other signed entities that will come in the future. You have an idea of something that you would like to see certified by Mithril multi-signature? Come and talk about it in our [Discord channel](https://discord.gg/5kaErDKDRq).
Copy link
Member

Choose a reason for hiding this comment

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

The conclusion is a bit confusing IMHO.

Suggested change
The Mithril stake distribution may not be a convenient artifact for Caradano users but it paves the way for other signed entities that will come in the future. You have an idea of something that you would like to see certified by Mithril multi-signature? Come and talk about it in our [Discord channel](https://discord.gg/5kaErDKDRq).
Feel free to reach out to us on the [Discord channel](https://discord.gg/5kaErDKDRq) for questions and/or help.

Comment on lines 8 to 12
## Mithril client now access signed Mithril Stake Distributions

Since the last few months, the Mithril team has been working on signing other artifacts than just Cardano nodes' snapshots. The first other signed artifact is the stake distribution involved in Mithril Signatures. The Aggregator nodes now advertise for different types of messages to be signed and the Signer nodes know if they can handle them or not without making old nodes to crash. If you are curious, you may go and see in [Mithril Explorer](https://mithril.network/explorer), there are now different tabs, one for each type of signed artifact.

The last part of this development was to make the signers aware of different kinds of artifacts and be able to verify theirs signature. This implied changing completely the command line API of the client command. By example:
Copy link
Member

Choose a reason for hiding this comment

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

I think the goal of this post is to warn users that the client interface will change shortly and that the way they retrieve snapshots has changed. This is not very clear in the sub title and the below introduction

Suggested change
## Mithril client now access signed Mithril Stake Distributions
Since the last few months, the Mithril team has been working on signing other artifacts than just Cardano nodes' snapshots. The first other signed artifact is the stake distribution involved in Mithril Signatures. The Aggregator nodes now advertise for different types of messages to be signed and the Signer nodes know if they can handle them or not without making old nodes to crash. If you are curious, you may go and see in [Mithril Explorer](https://mithril.network/explorer), there are now different tabs, one for each type of signed artifact.
The last part of this development was to make the signers aware of different kinds of artifacts and be able to verify theirs signature. This implied changing completely the command line API of the client command. By example:
### Mithril client interface is evolving
For the last few months, we have implemented the capability for the Mithril protocol to sign multiple types of data: on top of the already existing Cardano node database snapshots, the Mithril stake distribution is now also signed on its own.
In order to make the client able to work on the different types of data that are certified, we have changed its command line API.
For example:

$> mithril-client list
```

this command was previously used to list Cardano node snapshots. But now it is unclear that it lists snapshots, Mithril stake distributions or any other artifacts that will be supported in the future. So this has to be abandoned in favor of a more explicit syntax:
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
this command was previously used to list Cardano node snapshots. But now it is unclear that it lists snapshots, Mithril stake distributions or any other artifacts that will be supported in the future. So this has to be abandoned in favor of a more explicit syntax:
This command was previously used to list Cardano node snapshots. It has been abandoned in favor of a more explicit syntax:

Furthermore, the old version had two different subcommands to 1. download and 2. verify a snapshot. These 2 commands have now be merged into one single `download` command:

```
$> mithril-client snapshot dowload 5109c1eaa6619bc…
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
$> mithril-client snapshot dowload 5109c1eaa6619bc…
$> ./mithril-client snapshot dowload 5109c1eaa6619bc…

The last part of this development was to make the signers aware of different kinds of artifacts and be able to verify theirs signature. This implied changing completely the command line API of the client command. By example:

```
$> mithril-client list
Copy link
Member

Choose a reason for hiding this comment

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

Also in the other commands 🙂

Suggested change
$> mithril-client list
$> ./mithril-client list

$> mithril-client msd list
```

In the same way it is for snapshots, it is possible to download and verify the stake distribution involved in Mithril signatures as JSON file:
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
In the same way it is for snapshots, it is possible to download and verify the stake distribution involved in Mithril signatures as JSON file:
As for the Cardano snapshots, it is possible to download and verify the stake distribution involved in Mithril multi-signatures as a JSON file:

$> mithril-client snapshot dowload 5109c1eaa6619bc…
```

This organization of the client opens the use of a new `mithril-stake-distribution` subcommand:
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
This organization of the client opens the use of a new `mithril-stake-distribution` subcommand:
This organization of the client opens the use of a new `mithril-stake-distribution` sub-command:

$> mithril-client msd download 713e2803e998f…
```

If the file can be verified against the multi-signature, it is saved on the disk.
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
If the file can be verified against the multi-signature, it is saved on the disk.
If the file certification can be verified, it is saved on the disk.

@ghubertpalo ghubertpalo force-pushed the greg/969/blog_article_client_msd branch from c2f3dc5 to 79af39b Compare June 12, 2023 12:46
@ghubertpalo ghubertpalo requested a review from jpraynaud June 12, 2023 12:49
Copy link
Member

@jpraynaud jpraynaud left a comment

Choose a reason for hiding this comment

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

LGTM 👍

@ghubertpalo ghubertpalo merged commit cf53744 into main Jun 12, 2023
@ghubertpalo ghubertpalo deleted the greg/969/blog_article_client_msd branch June 12, 2023 13:09
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