Commit Graph

65 Commits

Author SHA1 Message Date
7a43ebd395 Expand in-memory storage indexes 2026-03-18 19:43:11 +01:00
4c40edfd83 Optimize memory-backed benchmark path 2026-03-18 18:56:47 +01:00
f60b8ba02a Add memory-backed benchmark profile 2026-03-18 18:39:53 +01:00
2225dfdc9e Improve public API documentation 2026-03-18 18:08:47 +01:00
9014912e9d Unify HTTP metadata handling 2026-03-18 18:00:07 +01:00
c30449b318 Expand relay metrics and observability 2026-03-18 17:39:13 +01:00
c377ed4b62 Separate read pool and harden fanout state handling 2026-03-18 17:21:58 +01:00
dce473662f Lock signature verification and add per-IP ingest limits 2026-03-18 16:46:32 +01:00
bc66dfcbbe Upgrade NIP-50 search to ranked Postgres FTS 2026-03-18 15:56:45 +01:00
f732d9cf24 Implement full NIP-43 relay access flow 2026-03-18 15:28:15 +01:00
f2856d000e Implement NIP-66 relay discovery publishing 2026-03-18 14:50:25 +01:00
dc5f0c1e5d Add first-class listener connection caps 2026-03-18 14:21:43 +01:00
b56925f413 Decouple publish fanout and use ETS ingest counters
Some checks failed
CI / Test (OTP 27.2 / Elixir 1.18.2) (push) Failing after 0s
CI / Test (OTP 28.4 / Elixir 1.19.4 + Marmot E2E) (push) Failing after 0s
2026-03-18 14:10:32 +01:00
05718d4b91 Prevent NIP-98 token replay 2026-03-18 14:05:38 +01:00
1fef184f50 Add relay-wide event ingest limiter 2026-03-18 14:05:27 +01:00
57fdb4ed85 Add configurable tag guardrails 2026-03-18 14:05:09 +01:00
a19b7d97f0 fix: Subscription workers restart strategy, sandbox ownership race condition
Some checks failed
CI / Test (OTP 27.2 / Elixir 1.18.2) (push) Failing after 0s
CI / Test (OTP 28.4 / Elixir 1.19.4 + Marmot E2E) (push) Failing after 0s
Clear OTP SSL PEM cache between listener terminate/restart so reloaded
certs are read from disk instead of serving stale cached data. Make
reconcile_worker idempotent to prevent unnecessary worker churn when
put_server is followed by start_server. Add request timeouts to
RelayInfoClient to prevent hanging connections.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-17 19:42:18 +01:00
65b47ec191 fix: Subscription workers restart strategy, sandbox ownership race condition
Some checks failed
CI / Test (OTP 27.2 / Elixir 1.18.2) (push) Failing after 0s
CI / Test (OTP 28.4 / Elixir 1.19.4 + Marmot E2E) (push) Failing after 0s
2026-03-17 18:49:50 +01:00
f4d94c9fcb Refactor test runtime ownership
Some checks failed
CI / Test (OTP 27.2 / Elixir 1.18.2) (push) Failing after 0s
CI / Test (OTP 28.4 / Elixir 1.19.4 + Marmot E2E) (push) Failing after 0s
2026-03-17 12:06:32 +01:00
02f2584757 Align websocket and admin APIs with shared surfaces 2026-03-17 01:08:41 +01:00
e8fd6c7328 Add listener TLS support and pinning tests 2026-03-17 00:48:48 +01:00
1f608ee2bd Refactor ingress to listener-based configuration 2026-03-16 23:47:17 +01:00
5f4f086d28 Add outbound sync worker runtime 2026-03-16 21:55:03 +01:00
9be3b6ca52 Add sync control plane API 2026-03-16 21:23:39 +01:00
769177a63e Add shared auth and identity APIs 2026-03-16 21:07:26 +01:00
d119d21d99 Extract API events and stream layers
Some checks failed
CI / Test (OTP 27.2 / Elixir 1.18.2) (push) Failing after 1s
CI / Test (OTP 28.4 / Elixir 1.19.4 + Marmot E2E) (push) Failing after 1s
2026-03-16 20:21:58 +01:00
5d4d181d00 Add trusted proxy IP enforcement tests 2026-03-16 19:09:27 +01:00
fd17026c32 Implement ACL runtime enforcement and management API 2026-03-16 17:49:16 +01:00
186d0f98ee improve: NIF-77 single-filter fast path 2026-03-16 16:30:07 +01:00
39dbc069a7 feat: NIF-77 negentropy sync 2026-03-16 16:00:15 +01:00
5c2fadc28e Rename archiver to partitions and drop archive SQL helper 2026-03-14 18:31:12 +01:00
7faf8c84c8 Align event_tags partition lifecycle with events 2026-03-14 18:23:21 +01:00
889d630c12 Add monthly partition maintenance and retention pruning 2026-03-14 18:11:40 +01:00
708e26e4f4 buid/test/docs: Docker image, Darwin fix, logo 2026-03-14 17:08:07 +01:00
0fbd7008a1 Use explicit Postgrex JSON types with Elixir JSON module 2026-03-14 11:24:06 +01:00
bfdb06b203 Restrict metrics access and add optional dedicated metrics listener 2026-03-14 04:56:45 +01:00
36365710a8 Harden NEG session handling and gate feature wiring 2026-03-14 04:56:45 +01:00
e12085af2f Add signature verification and lossless event tag storage 2026-03-14 04:20:42 +01:00
18e429e05a Fix medium findings: deletion coords, count SQL, cache startup 2026-03-14 04:15:37 +01:00
c7a9f152f9 Harden ingress limits, AUTH validation, and search escaping 2026-03-14 04:09:02 +01:00
54a54c026b Improve ingest throughput with moderation cache and post-ack fanout 2026-03-14 02:33:37 +01:00
d95cd1cb33 docs: relay_info strings 2026-03-14 00:17:31 +01:00
cc9c18b38c docs+nix: add deployment README and align release packaging 2026-03-13 22:54:18 +01:00
f2a6ab5150 Implement M7 Marmot hardening telemetry and ops checks 2026-03-13 22:40:36 +01:00
99983bbb32 Remove legacy nip_ee_mls feature-gating code 2026-03-13 22:33:48 +01:00
c1bebd5553 Implement M6 push notification policy guards and replay tests 2026-03-13 22:27:34 +01:00
a42c2b656e Implement M5 media metadata policy hooks and query coverage 2026-03-13 22:21:28 +01:00
619c1a0bdf Implement M4 Marmot group envelope and fanout hardening 2026-03-13 22:12:45 +01:00
1547d00215 Harden M3 giftwrap recipient gating in storage adapters 2026-03-13 22:07:39 +01:00
f439969fb3 Harden MIP-02 welcome and wrapped payload validation 2026-03-13 22:02:07 +01:00