-
Notifications
You must be signed in to change notification settings - Fork 5
Closed
Labels
developmentStandard developmentStandard developmentr&d:polykey:core activity 1Secret Vault Sharing and Secret History ManagementSecret Vault Sharing and Secret History Management
Description
Specification
When the root key pair changes we need to update anything that depends on this. This change event is propagated through the events system. One of the changes is updating the TLS config the RPC servers are using. Previously this could be done dynamically but now with the WebSocketServer this can only be set when starting it.
This means that the WebSocketServer needs to be restarted when this event happens. This means any active connections are potentially interrupted.
To support this we need to make the following changes.
- When the root keypair is updated we need to restart the
WebSocketServer. - When restarting the
WebSocketServerwe need to gracefully end any active connections. - We need to propagate an abort signal to the stream handler to signal ending.
- expand the force stop options to allow for forcing connections to end, Signalling connections to end gracefully or just wait for all active connections to end.
- Add a feature to block all new connections so when waiting for connections to end new ones can't start.
Additional context
- Related Client RPC migration #509
Tasks
- When the root keypair is updated we need to restart the
WebSocketServer. - When restarting the
WebSocketServerwe need to gracefully end any active connections. - We need to propagate an abort signal to the stream handler to signal ending.
- expand the force stop options to allow for forcing connections to end, Signalling connections to end gracefully or just wait for all active connections to end.
- Add a feature to block all new connections so when waiting for connections to end new ones can't star
Metadata
Metadata
Assignees
Labels
developmentStandard developmentStandard developmentr&d:polykey:core activity 1Secret Vault Sharing and Secret History ManagementSecret Vault Sharing and Secret History Management