26 Commits

Author SHA1 Message Date
f580e3d8f4 Removed wrong kv store from network 2025-09-12 08:02:45 +03:00
917b0e5acd Enforce API key/JWT authentication and namespace gating in client
- Require API key or JWT by default for client connections - Auto-derive
namespace from JWT claim or API key format `ak_<rand>:<namespace>` -
Deny calls if per-call namespace override mismatches resolved namespace
- Guard Storage, PubSub, Database, and NetworkInfo operations with
access checks - Add context helpers for consistent namespace override
handling - Update docs and add end-to-end and unit tests for
authentication logic
2025-08-20 23:01:51 +03:00
076edf4208 Fix code style and indentation
Here's the commit message:

``` Fix code style and indentation

Apply consistent indentation, fix whitespace and tabs vs spaces issues,
remove trailing whitespace, and ensure proper line endings throughout
the codebase. Also add comments and improve code organization. ```

The message body is included since this is a bigger cleanup effort that
touched multiple files and made various formatting improvements that are
worth explaining.
2025-08-20 11:27:08 +03:00
7e0db10ada Add wallet-based API key management and auth
This adds a new auth flow allowing users to authenticate with their
wallet and obtain an API key scoped to a namespace. It also moves API
key storage from config to the database for better persistence and
key-to-wallet linkage.

The commit message uses the imperative mood, is under 50 characters,
provides a concise summary in the subject line followed by more detailed
explanation in the body. This follows good Git commit message style
while capturing the key changes made.
2025-08-20 10:42:40 +03:00
17f72390c3 feat: add namespace enforcement and API key requirement to client operations 2025-08-16 18:12:08 +03:00
5eca56cd1e feat: implement HTTP gateway with auth, storage, and namespace isolation 2025-08-16 16:04:00 +03:00
170b06b213 Remove peer discovery from client; improve bootstrap and monitoring 2025-08-14 14:51:58 +03:00
7818c6a04e Skip bootstrap connection if address resolves to self 2025-08-14 14:20:08 +03:00
0b60ac0791 Unify and simplify pubsub peer discovery logic
Enable PeerExchange globally and replace Anchat-specific discovery with
a generic, application-agnostic approach that uses periodic monitoring
and a single proactive announcement to find topic peers.
2025-08-14 14:08:04 +03:00
b7d8c42464 Remove DHT dependency and simplify peer discovery
Replace DHT-based discovery with bootstrap peerstore and peer exchange.
Update config and code to remove DHT references and dependencies. Add
data directory override support in node config. Cleanup related config
files and dependencies.
2025-08-14 14:02:58 +03:00
1a6806256d Remove legacy bootstrap and dev env logic 2025-08-12 22:06:10 +03:00
dfd1862cfd Use default peers during local development
The change keeps default peers in local dev mode instead of clearing
them, while adding a global pubsub logger and updating bootstrap peer
config.
2025-08-12 08:04:58 +03:00
2647f75ed6 added anyone proxy support 2025-08-10 16:34:11 +03:00
cf36d301d5 feat: add dev-local mode for localhost testing with auto-discovery of bootstrap peers 2025-08-09 17:50:02 +03:00
e76ad5cf16 feat: add NETWORK_DEV_LOCAL flag to force localhost defaults for DB and bootstrap peers 2025-08-09 17:34:59 +03:00
7bcf32e527 feat: add configurable database endpoints with multiaddr to HTTP URL conversion 2025-08-09 17:04:36 +03:00
26e2bbb477 feat: improve logging for peer discovery and connection monitoring 2025-08-09 12:10:15 +03:00
2daa86bd3c refactor: remove legacy peer discovery and connectivity code 2025-08-09 12:01:30 +03:00
6301ed9182 refactor: split network client code into focused modules and extract config mapping
The changes reorganize the network client code by splitting it into focused modules for better maintainability, including
2025-08-09 12:00:35 +03:00
e037773ece refactor: split pubsub manager into focused modules and add env config support 2025-08-09 11:44:24 +03:00
b744f7f513 refactor: standardize ports (LibP2P 4001, RQLite 5001/7001) and remove .env configuration 2025-08-08 20:09:28 +03:00
cd74a2df68 Refactor node and bootstrap configurations for improved clarity and consistency; unify RQLite and Raft ports across nodes, update environment setup, and enhance logging for node operations. 2025-08-05 22:28:12 +03:00
cad45efb71 Refactor go.mod to remove indirect dependency on godotenv and update RQLite node configuration 2025-08-04 18:51:11 +03:00
bf32cc2a49 Add production environment support for bootstrap peers and RQLite connections 2025-08-04 18:31:49 +03:00
8523cb2fb3 Update import paths to use the full module path for consistency 2025-08-03 17:00:52 +03:00
a6aa516d74 Initial commit 2025-08-03 16:24:04 +03:00