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.
Implements Shamirs Secret Sharing for storing pk among 5 distributed servers.
Fixes prisma schema bug where payout should reference worker instead of user.
Fixes hydration errors.
Manages .env nicely.
Adds docker to spin up postgres and redis databases.
Implements long running payouts with redis queues, (locks amount instantly and makes a queue to handle sol transfer and creates a payouts on success and clears the lock amount in a single prisma transaction).
Prevents double spending with the help Sequential isolation in prisma transactions.
Add more zod validations, does error handling.
Sooner toast notifications.
Logins only when connects wallet, clears token on disconnect.
Adds get all tasks page for users to see all there tasks,
Adds payout page for workers to see all their payouts. (including making apis for that in the backend)
Using docker to start all 5 distributed server which are responsible for sending the private key shares to your main backend (especially to the queue)
NOTE: Have tested in all scenarios mostly everything works fine if the backed does not go down, (even if the backend goes down when it comes back up the failed queues with start the transaction again and clear the locked amount)
Need to set cors properly for sk-distirbution-servers so that only your main backend can access it in prod (right now everything can access it).