Go to file
enes 235e76be4e
All checks were successful
Release to Staging / build_and_release (push) Successful in 1m16s
fix: processing gift wraps and notifications (#193)
This change will potentially close multiple issues related to the gift-wrapped events processing (#168, #158). Further testing will be required to confirm before closing each.

The commented-out code causes the race condition during the processing of the gift wraps with sigits.

During the processing we perform checks to see if sigit is outdated. In cases where sigit includes multiple signers it's possible for a signer to receive multiple sigit updates at once (especially noticeable for 3rd, 4th signer). Due to async nature of processing we can have same sigit enter processing flow with different states. Since this code also updates user's app state, which includes uploads to the blossom server it takes time to upload local user state which causes both to check against the stale data and un-updated app state. This results in both sigits being "new" and both proceed to update user state and upload app data. We have no guarantees as in which event will update last, meaning that the final state we end up with could be already stale.

The issue is also complicated due to the fact that we mark the gift wraps as processed and it's impossible to update the state without creating a new gift wrap with correct state and processing it last to overwrite stale state.

This is temporary solution to stop broken sigit states until proper async implementation is ready.

Co-authored-by: b
Reviewed-on: #193
Reviewed-by: eugene <eugene@nostrdev.com>
Co-authored-by: enes <mulahasanovic@outlook.com>
Co-committed-by: enes <mulahasanovic@outlook.com>
2024-09-12 08:26:59 +00:00
.git-hooks chore(git-hooks): clean commit-msg script 2024-08-12 16:01:56 +02:00
.gitea/workflows chore(workflow-audit): omit dev dependencies in npm audit 2024-08-22 14:37:23 +05:00
public fix: update logo and favicon 2024-07-26 10:43:19 +02:00
src fix: processing gift wraps and notifications (#193) 2024-09-12 08:26:59 +00:00
.env.example chore: update relay list 2024-05-15 23:46:10 +01:00
.eslintrc.cjs chore(ci): add licenseChecker and check in staging workflow 2024-08-07 15:18:25 +02:00
.gitignore chore: fix appBar 2024-02-29 12:05:05 +05:00
.prettierrc chore: fixed code formatting 2024-05-15 11:50:21 +03:00
contributing.md add contributing.md 2024-04-05 12:17:47 +05:00
index.html fix: fonts 2024-07-30 12:00:57 +02:00
LICENSE chore: updating licence 2024-08-15 18:30:00 +01:00
licenseChecker.cjs chore(ci): add license 2024-08-07 15:18:25 +02:00
package-lock.json feat(create): touch support for dnd 2024-09-05 09:31:52 +02:00
package.json Merge pull request #191 from lint-0-warnings into staging 2024-09-09 08:55:28 +00:00
README.md Update README.md 2024-05-23 23:47:48 +00:00
tsconfig.json chore: fix build 2024-05-31 12:44:14 +05:00
tsconfig.node.json chore: initialized vite app 2024-02-27 19:03:15 +05:00
vite.config.ts refactor(pdf): use minified and remove unnecessary vite config 2024-08-08 12:37:47 +02:00

SIGit

SIGit is a decentralised document signing tool, currently under active development. Document Signing is a $30 billion industry yet has two major structural flaws:

  • Your signing provider can read ALL your documents (and even use them to train their proprietary AI)
  • Your signatories do not own their keys (cloud email and/or SMS are not secure)

The trouble, of course, is all the trust that is required to make things work.

SIGit is a signing technology that is more secure and private than any off-the-shelf self-hosted or SaaS based solution. This is a result of two design factors:

  1. The use of NOSTR for identity and key management (not your keys, not your signature)
  2. Encryption of documents at every stage (we have no idea what you are signing)

Of course, being built on the Nostr relay network, you can sign documents and build business relationships even in the most adversarial of regulatory environments.

The source for this repo is: https://git.sigit.io/sig/it

If you'd like to submit PRs or issues (which are very welcome) please reach out by DM for an invite to the source repo: https://njump.me/npub1d0csynrrxcynkcedktdzrdj6gnras2psg48mf46kxjazs8skrjgq9uzhlq

We expect to have an MVP by the summer, if you are interested in being an early tester, do reach out on https://chat.sigit.io