All notable changes to this module will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Make
PromptPrintNodeState
the first prompt in debug mode - Minor cleanup to documentation related to CLI modes
- Fixed one logging statement
- Introduces hashicorp vault keybase to allow for the use of a vault server to store keypairs
- Automatic import reorder
- Refactor debug CLI to use new P2P interfaces
- Added a limit on concurrent key imports for debug client to avoid OOM.
- Simplifies the debug CLI tooling by embedding private-keys.yaml manifest into the CLI binary when the debug build tag is present.
- Support libp2p module in debug CLI
- Renamed the package names for some basic helpers
- Implement SLIP-0010 HD child key derivation with the keybase
- Add CLI endpoints to derive child keys by index
- Add CLI endpoints to interact with the keybase
- Rename ServiceNode Actor Type Name to Servicer
- Added
non_interactive
flag to allow for non-interactiveStake
andUnstake
transactions (dogfooding incluster-manager
) - Updated CLI to use to source the address book and the current height from the RPC server leveraging the
rpcAddressBookProvider
andrpcCurrentHeightProvider
respectively and thebus
for dependency injection
- Introduced logical switch to handle parsing of the debug private keys from a local file OR from Kubernetes secret (PR #517)
- Bugfix for
Stake
command. Address erroneously sent instead of the PublicKey. (PR #518)
- Fixed
docgen
to work from the root of the repository - Updated all the CLI docs
- Integrate keybase with CLI
- Add debug module to keybase to automatically populate keybase with 999 validators
- Added debugging prompts to drive state sync requests
SendMetadataRequest
to send metadata request by all nodes to all nodesSendBlockRequest
to send get block request by all nodes to all nodes
- Added GH_WIKI tags where it was missing
- Documentation and supporting logic to enable
p1 debug
to be used from localhost
- Address legacy linter errors from
golangci-lint
- Changed log lines to utilize new logger module.
- Fix broken link to
shared/crypto/README.md
in keybase documentation
- Create
Keybase
interface to handle CRUD operations forKeyPairs
with aBadgerDB
backend - Add logic to create, import, export, list, delete and update (passphrase) key pairs
- Add logic to sign and verify arbitrary messages
- Add unit tests for the keybase
- The
client
(i.e. CLI) no longer instantiates aP2P
module along with a bus of optional modules. Instead, it instantiates aclient-only
P2P
module that is disconnected from consensus and persistence. Interactions with the persistence & consensus layer happen via RPC. - Replaced previous implementation, reliant on
ValidatorMap
, with a temporary fetch from genesis. This will be replaced with a lightweight peer discovery mechanism in #416 - Simplified debug CLI initialization
- Updated to use
coreTypes
instead of utility types forActor
andActorType
- Updated README.md
- Fixed message signing
- Reporting RPC StatusCode and body
- System commands working end-to-end
- Added Consensus State commands
- Commands documentation generator
- Basic implementation with Utility commands
- Account
- Send
- Actor (Application, Node, Fisherman, Validator)
- Stake (Custodial)
- EditStake
- Unstake
- Unpause
- Governance
- ChangeParameter
- Debug
- Refactored previous CLI into a subcommand
- Account
- Functionally mocked a keybase in the form of a json file (default: pk.json) that will contain the privatekey
- CLI calling RPC via generated client
- Default configuration handling/overrides