17 Commits

Author SHA1 Message Date
Prem Chaitanya Prathi
c9dfefa498
feat(mix): mixnet sender-anonymity for Logos Chat (static RLN, no LEZ)
Global, restart-based Required/None anonymity mode: route chat messages through the
libp2p mixnet for sender anonymity, on the logos-delivery (efafdfdc2) nwaku stack.
Static RLN spam protection; no on-chain LEZ gifter / dynamic membership.

Delivery (src/chat/delivery/waku_client.nim):
- WakuConfig.mixEnabled/mixNodes/minMixPoolSize; parseMixNodes, waitForMixPool,
  getMixPoolSize, mixReady.
- Required mode: sendBytes -> lightpushPublish(mixify=true) over the mix pool,
  fail-fast below minMixPoolSize (no relay fallback). None mode: relay publish.
  Errors propagate up to chat_send_message.
- Receive via WakuFilter (subscribe to static peers; no relay mounted), refreshed
  by a 60s keep-alive.
- Static RLN: pre-populated rln_tree.db + per-peer keystore; nodekey config to adopt
  a provisioned identity. No per-send root-convergence wait (static membership).

API / build:
- chat_get_mix_status FFI -> {mixEnabled,mixReady,mixPoolSize,minPoolSize}.
- Reproducible nix build: librln consumed as a cdylib (avoids the two-Rust-staticlib
  symbol collision); -d:libp2p_mix_experimental_exit_is_dest.
- vendor/nwaku -> efafdfdc2; vendor/nim-protobuf-serialization -> 38d24eb (0.4.0).
2026-06-25 21:45:41 +05:30
Patryk Osmaczko
04f46d1797
fix: re-add vendor/nim-ffi submodule to fix C-bindings build
`requires` in the nimble file alone is not sufficient, NBS never calls
`nimble install` or clones URLs from the `requires` block at build time.
The package must be present as a git submodule for NBS to discover and
link it.

Migrating to `nimble install` is a separate task.
2026-02-18 22:20:16 +01:00
Jazz Turner-Baggs
ecfe9218c3
Remove unused submodules (#68)
* Remove uneeded vendored deps

* remove naxoltl

* remove proto definitions
2026-02-18 22:20:16 +01:00
Jazz Turner-Baggs
3bfba7cf25
Libchat library Integration (#55)
* chore: add smoke test and redesign CI workflow (#62)

Add a smoke test that validates the binary links all dependencies
at runtime by instantiating a client without networking. Redesign
CI into separate build and test jobs, with test gated on build.

* Add libchat module

* Add Context

* Add libchat

* Update to latest libchat

* Remove stale files

* Bump to latest Libchat

* Update imports

* Update client

* Update library to work with Libchat

* Fix examples

* Remove Tui Examples - Replace with logos-core

* Add Indentity Todo

* fix: add `build-libchat` as dependency for examples, tests, and library (#59)

The Rust liblogos_chat.so was not being built automatically, causing
runtime failures when loading the shared library.

* Apply suggestions from code review

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Add Todo for Sender data

* Updated error log

---------

Co-authored-by: osmaczko <33099791+osmaczko@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-18 22:20:14 +01:00
Jazz Turner-Baggs
d77bbb6a2a
Fix corrupt submodule (#53) 2026-01-27 07:37:01 -08:00
pablo
058467771e
feat: libchat C library building and example TUI using it 2025-12-22 14:14:37 +02:00
Jazz Turner-Baggs
285b6f2d2e Add tests + requirements 2025-10-09 22:12:33 -07:00
Jazz Turner-Baggs
87ff91c04c
clean up tui 2025-09-26 14:20:57 -07:00
Jazz Turner-Baggs
15a40f8eff
expose decode in content_types for apps 2025-09-26 12:07:22 -07:00
Jazz Turner-Baggs
5be16419a1
migrate nim_chat_poc to nbs 2025-09-26 11:22:45 -07:00
Ivan Folgueira Bande
58176a9173 avoid add submodules 2025-09-26 10:35:32 -07:00
Ivan Folgueira Bande
59c9c920be some adaptations for n-b-s 2025-09-26 10:35:32 -07:00
Ivan Folgueira Bande
0743ea467f add nwaku vendor 2025-09-26 10:35:32 -07:00
Ivan Folgueira Bande
650f35b18d add nimbus-build-system 2025-09-26 10:35:32 -07:00
Ivan Folgueira Bande
7c0a847673 rm waku submodule 2025-09-26 10:35:32 -07:00
Jazz Turner-Baggs
1d2aa3453f Fix library conflicts 2025-09-03 14:43:54 -07:00
Jazz Turner-Baggs
adde56532b
Added Waku dependancies 2025-07-21 17:42:44 -07:00