Highlights
- Logos Delivery:
- v0.39.0 released.
- Messaging API — General Availability milestone closed, with Integrate Rate Limit Manager as its last deliverable.
- RLN on Logos Blockchain milestone closed: Implement pluggable RLN membership interface and Enable RLN in Logos Devnet.
- A network of Messaging API nodes can now be set up and driven from the node CLI and REST, with operator docs (#4386, #4389, #4387).
- Status:
- status-go and Status App both run logos-delivery v0.39.0 (#7860, #22606); Integrate Messaging API in status-go closed.
Logos Delivery
Messaging API — General Availability
-
[Deliverable] Reliability and scale validation with DST
- achieved:
- fix(conf): give logosdeliverynode a node config of its own (#4386).
- fix(conf): configure the Messaging API from the node CLI —
--reliabilityand--anonymity-level, so a network without Store nodes can run with reliability off (#4389). - docs(messaging): document how to run and use Messaging API nodes (#4387).
- fix(rest): answer 429 with
Retry-Afterwhen the send queue is full, instead of 500 (#4392). - feat(rest): list the messaging subscriptions (#4393).
- fix(messaging): confirm every propagated send against Store (#4351).
- achieved:
-
[Deliverable] Integrate Mix into Messaging API
- next:
- Mix replies can fail for senders behind NAT (#4357).
- next:
RLN on Logos Blockchain
-
[Deliverable] Implement pluggable RLN membership interface
- achieved:
- Rln interfaces — one config surface for both RLN backends, so an operator needs to know nothing about which one is in use (#4338).
- achieved:
-
[Deliverable] Enable RLN in Logos Devnet
- achieved:
- fix: message ids able to repeat within same epoch — two proofs sharing a nullifier in one epoch are exactly what recovers a sender’s identity secret (#4366).
- RLN EVM: persistent message id store — a node restarted mid-epoch no longer reuses ids already carried in proofs it sent (#4385).
- fix(rln): ignore instead of reject messages with unknown root — an honest peer’s valid message was rejected and its forwarder penalised by gossipsub (#4377).
- fix(rln): report RLN READY only once a proof can be generated (#4381).
- achieved:
Logos Chat
Chat — Beta
-
[Deliverable] Installation management
- achieved:
-
[Deliverable] Stabilize and polish API
- achieved:
- feat(sqlite): configure the connection for durability and concurrency (#274).
- fix: stop aborting on peer input and losing reordered messages (#282).
- build: require delivery_module 0.3.0 or later (#90).
- build: prepare 0.3.0 (#89).
- build: pin delivery_module to v0.3.0-rc.3 (#88).
- fix: start delivery again on a later init, correct the contract docs (#86).
- fix: take libchat’s fixes, return readable errors, reopen re-invited groups (#85).
- fix(group_v2): stop printing to stderr on member removal (#287).
- achieved:
Maintenance
- achieved:
- release: changelog for the final v0.39.0 (#4369), adopt nimble 0.26.0 (#4384), bump nim-libp2p to 2.4.0 (#4250).
- store: reject queries with a time range over 24h (#4349), align query handling with 13/WAKU2-STORE (#4355), fail node setup on an unknown message DB engine (#4361), document the REST
pageSizedefault and cap (rest-api#22). - lightpush: push through the node’s own service when it runs one (#4370), cap the request read size (#4378).
- peers and discovery: count unique peers only on first sighting (#4372), stop serving ENRs not rediscovered within 15 min (#4391), simplify selection and ENR iteration (#4399).
- config: add content-topic autoshards to
subscribeShards(#4373), limit subscribed shards to 60 (#4388), flag deprecated and ignored node options (#4402). - robustness: async-signal-safe shutdown handlers (#4354), surface TLS key/cert errors (#4360) and hint PKCS#8 when a TLS key cannot be parsed (#4390), replace
raises: [Exception]and bareCatchableError(#4362), replace nestedwaitFor/runForeverwithawaitin chat2 (#4358). - tooling and tests: wakucanary checks store-sync and the mix check is fixed (#4396), ignore
_createdsamples in the node metrics log (#4375), pin the sync window in store-sync reconciliation tests (#4367), bind the announced-addresses test to an auto port (#4363), remove a disabled codec-renaming test (#4374). - nim-ffi poll model, first merges: #197, #198, #203.
- next: