You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- [x] message parts & limit message queue size to keep websocket alive
24
+
- [ ] emit sent and delivered status when all parts have been ack'd as such
25
+
26
+
- [ ] Parts feedback to Client to allow them to restore queue ??? **OR RATHER**, think through the state restore & queue recovery –> half-a, half-b, full
27
+
- [ ] add tests for concurrent messages re-assembling
28
+
- [ ] add tests for out of order parts
29
+
- [ ] test persistence and resilience (save/load state between restarts)
30
+
31
+
- [ ] **Investigate INITCHATS: new Date() or new Date(0)–why?? FIX DOCS.**
24
32
25
33
- [ ] livestream embedded media (snap) (before sharing decryption key at last, then reconstitute) – PARTS IN PARTS??? or binary only for content???
26
34
@@ -62,6 +70,10 @@
62
70
- [ ] investigate performance and memory usage (eg, dangling sessions, dlqs, parts, no redundant compute)
63
71
- [ ] Use UTF8 vs Base64 for raw content encoding??
64
72
73
+
WARNINGS/DISCLAIMERS
74
+
75
+
[Warning] AES-CBC and AES-CTR do not provide authentication by default, and implementing it manually can result in minor, but serious mistakes. We recommended using authenticated encryption like AES-GCM to protect against chosen-ciphertext attacks. (2key-ratchet.js, line 6011)
76
+
65
77
### TESTS REFACTORING (keeping or increasing coverage):
66
78
67
79
- [ ] generate unit .test files with mocks/spies for each module corresponding to the library API reference (**testing only publicly exported**) --> should have 100% coverage for publicly exposed APIs (public and internal)
0 commit comments