- [x] Setup monorepo - [x] Add package for go-nitro library - [x] Add web-app using go-nitro library - [x] Add tests to run in CI - [x] Implement CI - [x] Port types and interfaces - [x] Port classes and implementations - [x] Port classes with empty methods - [x] Port implementation - [x] Methods required for commands (`direct-fund`, `virtual-fund`, `pay`, `virtual-defund`, `direct-defund`) - [x] DurableStore implementation - [x] Metrics implementation - [x] Implement `RecordQueueLength` method - [x] Implement `RecordObjectiveStarted` and `RecordObjectiveCompleted` methods - [x] Implement `RecordFunctionDuration` method - [x] Test command flows - [x] direct-fund - [x] get-ledger-channel - [x] virtual-fund - [x] Test command in node environment - [x] Handle nil pointer case for bigint serialization - [x] get-payment-channel - [x] pay - [x] Test command in node environment - [x] virtual-defund - [x] Test command in node environment - [x] direct-defund - [x] Test command in node environment - [x] Debug empty slice serialization mismatch - [x] Match serialization for objects stored in memstore - [x] Payments through intermediaries - [x] End-to-end integration tests for CI - [ ] Implement message service for browser - [x] Browser <-> Browser - [x] Relayed connection - [x] Direct WebRTC connection - [x] Browser <-> NodeJS - [x] Browser <-> go-nitro - [x] Use `@cerc-io/peer` in ts-nitro - [ ] Integrate ts-nitro in mobymask-v2 - [x] Run `ts-nitro` client along with watcher server - [ ] Payments - [x] For watcher queries - [x] For phisher reports - [ ] For p2p network services (data forwarding) - [x] Wallet/key/signature management (MetaMask snaps) - [ ] Routing of nitro messages in federated relay network - [ ] Update ts-nitro with latest go-nitro changes
direct-fund,virtual-fund,pay,virtual-defund,direct-defund)RecordQueueLengthmethodRecordObjectiveStartedandRecordObjectiveCompletedmethodsRecordFunctionDurationmethod@cerc-io/peerin ts-nitrots-nitroclient along with watcher server