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

Long Running Snap Controller (Research possibilities and potential implementation) #1483

Closed
david0xd opened this issue Jun 8, 2023 · 6 comments
Assignees

Comments

@david0xd
Copy link
Contributor

david0xd commented Jun 8, 2023

This ticket will continue research work from https://github.com/MetaMask/MetaMask-planning/issues/517

Research how snaps can run safely and reliably for a long time by implementing part of a solution (proof of concept) with long running controller using web workers. Final approach should show that it is possible to support the needs for long running snaps which are doing long processing like zero knowledge proofs.

The main criteria for research:

Document describing potential solutions for background (long running) tasks from previous research: https://docs.google.com/document/d/13Zeh9VykvFPGwZFsSw1vIFEJDjBayKKGKTKCOin61vw/edit?usp=sharing (Useful to look at Intelligent Snap Controller proposal).

@kenhkan
Copy link

kenhkan commented Jun 16, 2023

From 1:1 with David: Pointed this ticket at 13 for conservatism

@kenhkan
Copy link

kenhkan commented Jun 16, 2023

Moved to engineering backlog until David returns from FTE transition

@david0xd
Copy link
Contributor Author

david0xd commented Jul 11, 2023

Research report document: https://docs.google.com/document/d/1dzbxwAQ2-Fgj4SrOEaF-dS9AoTPVsUt5eCTIGQVrDUI/edit?usp=sharing
Internal use only.

Document summary: Web Worker Performance Tracking and Potential Use of it to Control Snaps Execution
Content summary:

  • Web Workers performance tracking by validating responses and measuring time frames
  • Other (mostly inconsistent or experimental) ways for performance tracking
  • Ideas for integrating and handling the performance measurement approach in Snaps

This part of the research is deprecated and replaced with Long Running Snaps for Synchronous Work.

@david0xd
Copy link
Contributor Author

Based on the previous research and team discussions, a new document is created to make a conclusion: https://docs.google.com/document/d/1BsL75IiepnS1rbfzOVJ5xX3YS3W79Hmyk725lydsqq8/edit?usp=sharing

@kenhkan
Copy link

kenhkan commented Jul 13, 2023

From standup:

  • @Montoya to read the document in David' last comment
  • David to create two new tickets from the first round of work. Closing this afterwards.

@david0xd
Copy link
Contributor Author

Closing this with the results mentioned in the comment that will conclude this part of the research.

Document: https://docs.google.com/document/d/1BsL75IiepnS1rbfzOVJ5xX3YS3W79Hmyk725lydsqq8/edit
Task following the proposed implementation: #1604

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants