-
Notifications
You must be signed in to change notification settings - Fork 33
[Client] Add a Send or Broadcast msg type to the debug CLI #344
Copy link
Copy link
Closed
Labels
clientwork needed to interface with the node (rpc, cli, etc..)work needed to interface with the node (rpc, cli, etc..)coreCore infrastructure - protocol relatedCore infrastructure - protocol relatedcore starter taskGood for newcomers, but aimed at core team members though still open for everyoneGood for newcomers, but aimed at core team members though still open for everyone
Milestone
Description
Objective
Update the debug CLI to make it clear which debug commands are broadcasts and which are sends.
Origin Document
There was a "fly by" change made in #285 where we updated the strings in app/client/cli/debug.go to the available debug commands by adding broadcast and send to the end like so:
PromptResetToGenesis string = "ResetToGenesis (broadcast)"
PromptPrintNodeState string = "PrintNodeState (broadcast)"
PromptTriggerNextView string = "TriggerNextView (broadcast)"
PromptTogglePacemakerMode string = "TogglePacemakerMode (broadcast)"
PromptShowLatestBlockInStore string = "ShowLatestBlockInStore (send)"The best approach to doing something like this is to update
message DebugMessage {
DebugMessageAction action = 1;
google.protobuf.Any message = 2;
}To:
enum DebugMessageType {
DEBUG_MESSAGE_TYPE_UNKNOWN = 0;
DEBUG_MESSAGE_TYPE_SEND = 1;
DEBUG_MESSAGE_TYPE_BROADCAST = 2;
}
message DebugMessage {
DebugMessageAction action = 1;
DebugMessageType type = 2;
google.protobuf.Any message = 3;
}Goals
- Make it clear (to the user) which command is a send or broadcast
Deliverable
- Create a
SENDandBROADCASTenum type for the debug cmdline - Update the strings presented to the user to reflect each message type
- Update all downstream business logic to reflect the message type
Non-goals / Non-deliverables
- Adding new debug commands
- Updating send to be able to specify which specific node the command is sent to
General issue deliverables
- Update the appropriate CHANGELOG
- Update any relevant READMEs (local and/or global)
- Update any relevant global documentation & references
Testing Methodology
- All tests:
make test_all - LocalNet: verify a
LocalNetis still functioning correctly by following the instructions at docs/development/README.md
Creator: @Olshansk
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
clientwork needed to interface with the node (rpc, cli, etc..)work needed to interface with the node (rpc, cli, etc..)coreCore infrastructure - protocol relatedCore infrastructure - protocol relatedcore starter taskGood for newcomers, but aimed at core team members though still open for everyoneGood for newcomers, but aimed at core team members though still open for everyone
Type
Projects
Status
Done
