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

Create tests for PolykeyAgent stability during random agent-agent interactions #8

Open
3 tasks
tegefaulkes opened this issue Sep 21, 2022 · 1 comment
Open
3 tasks
Labels
development Standard development r&d:polykey:core activity 3 Peer to Peer Federated Hierarchy

Comments

@tegefaulkes
Copy link
Contributor

tegefaulkes commented Sep 21, 2022

Specification

It's possible that during an agent-agent communication we don't properly catch all possible errors. Failing to catch these errors can result if the PolykeyAgent crashing randomly. We need to create a test to check for these conditions so we can prevent any problems.

  1. There should never be a condition where the failure of an agent causes an connected agent to crash.
  2. There should never be a condition where general operation of a PolykeyAgent causes it to crash.

We need to create tests where we do random agent-agent interactions and then force the crash of either the client or agent node. We need to make sure either of these agents don't crash unexpectedly. given the randomness of the test and how expensive starting agents are, it's unlikely to catch these errors very often but just having these tests covers our bases. These tests should be using fast-check to allow randomness of the testing.

Additional context

Tasks

  • 1. Create a test where we have random interaction between agent 1 and agent 2 where agent 2 crashes at a random time.
  • 2. Create a test where we have random interaction between agent 1 and agent 2 where agent 1 crashes at a random time.
  • 3. Create a test where an agent runs for a period of time preforming random tasks without crashing.
@tegefaulkes tegefaulkes changed the title Make sure that any agent-agent GRPC call that is being made catches any connection errors if they can be handled. We want to prevent connection errors crashing the agent. 1-2 hours Create tests for PolykeyAgent stability during random agent-agent interactions Sep 21, 2022
@tegefaulkes tegefaulkes self-assigned this Sep 21, 2022
@tegefaulkes tegefaulkes added the development Standard development label Sep 21, 2022
@CMCDragonkai CMCDragonkai added the r&d:polykey:core activity 3 Peer to Peer Federated Hierarchy label Jul 10, 2023
@CMCDragonkai
Copy link
Member

I think such chaos testing is best done in Polykey-CLI because that encompasses the entire system and would be more illustrative of potential problems including memory leaks, resource leaks... etc.

@CMCDragonkai CMCDragonkai transferred this issue from MatrixAI/Polykey Aug 11, 2023
@tegefaulkes tegefaulkes removed their assignment Jul 31, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
development Standard development r&d:polykey:core activity 3 Peer to Peer Federated Hierarchy
Development

No branches or pull requests

2 participants