PolykeyAgent and PolykeyClient now accept the rpcMiddlewareFactory
for Custom Middleware + versionMetadata
option for defining version information for agentStatus
RPC call
#664
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This PR aims to allow for users of PolykeyAgent and PolykeyClient to insert additional middleware onto the Client RPC service. The main goal, is to be able to have the
agentStatus
RPC handler be able to report additional information about the Polykey-CLI binary that is running the node, such as thecommitHash
of the source used to produce binary.The implementation is based on the middlewareFactory chaining originally found in https://github.com/MatrixAI/Polykey/blob/004ee0827b685622af860395879a53c5c9214014/src/client/utils/middleware.ts;
The
versionMetadata
field has also been added to theagentStatus
RPC call so that the user can provide arbitrary information about the version through thePolykeyAgent
constructor parameters.Issues Fixed
Tasks
rpcMiddlewareFactory
client/middleware.ts
to accept custom middleware factoriesversionMetadata
field toagentStatus
RPC handler.Final checklist