Logos Collective Weekly Summary

Week 29, 2026 (July 20, 2026)

5
Teams Reporting
175+
PRs & Updates

Key Highlights

Messaging

GroupV2 client integration landed in libchat alongside membership-change surfacing and PrivateV1 conversation stack removal.

Messaging

Structured API layers plus new logos_delivery_node app with REST API and event observability shipped in logos-delivery.

Blockchain

SDP validator operations and the Proof of Claim Groth16 verifier merged in Nimbos; multi-sequencer committee support landed in the Logos Execution Zone with a convergence demo.

Blockchain

Channel Participation in Proof of Stake finalized — spec and implementation both ready to merge; total stake inference confirmed at mainnet parameters.

AnonComms

LIONESS payload encryption for Sphinx merged into nim-libp2p-mix, confirmed integrating with Logos Delivery without issues.

AnonComms

First draft of the RLN membership management module API spec opened for review; anonymised-messaging docs published for testnet v0.2.

Storage

Free-route mix simulator (freeroutesim) completed for studying path selection and the malicious-path problem in hidden services over Mix.

Logos Core

Full-API doctest chain landed across logos-basecamp, logos-cpp-sdk, logos-rust-sdk, and logos-logoscore-cli; shared semver implementation unified across the packaging stack.

Support QUIC Transport in Logos Delivery

^

Logos Chat — Developer Preview

^

Add Group Chat

Bedrock — Research

^

Mantle

  • SDP Per-Service Uniqueness RFC merged: provider_id and zk_id unique within a service — logos-lips#371

Cryptarchia

  • Channel Participation in Proof of Stake finished the research phase: RFC ready to merge logos-lips#364, implementation accepted (in-review) #3145

Total Stake Inference

  • Mainnet-parameter inference-feedback evaluation completed (T=388800 slots, f=1/30): block references keep the inferred denominator substantially closer to true stake — at delays 10/20/29, 0.959/0.882/0.759 of true stake versus 0.705/0.399/0.168 chain-only; at delay 40, chain-only falls to ~0.101 while referenced configurations reach up to ~0.986 — doc
  • Additional simulations and figures added to the "Modelling of Network Delays" document — doc

Permissionless Channel Sequencing

  • Pivot to fully permissionless sequencing: Proposal VIII adopts a public per-channel lottery (new L1 op family, no committee), with a decision map and first-pass withdrawal-exit simulations covering exit-family comparison, lottery weight during pending exits, and concentration windows — doc

Cross-Zone Sequencing

  • Abort Attribution reworked into a commitment-only + challenge-response design following the optimistic fair exchange principle: the happy path registers only hash commitments on-chain, with content disclosed on-chain only when a challenge is opened — doc
  • Intent structure and hash computation fixed: canonical CrossZoneIntent serialization with SHA-256 commitments, so proposal_id = H(intent) serves as an openable commitment in disputes — doc

Anonymous Communications

  • Bayesian sender-attribution attack built, completing the anonymity axis alongside stake inference, with three unlinkability measures: top-1 de-anonymisation, mean true-sender posterior, and posterior entropy — doc, doc

Bedrock — Engineering

^

Blend

  • Connectivity maintenance design rewritten for simplicity (WIP) — doc

Node

  • Initial Block Download fix: AlreadyApplied errors ignored to handle the overlapped part of the chain — #3126
  • Devnet validation completed: Initial Block Download, SDP no-garbage-collection behavior, service rewards distribution, and Tokenomics fees confirmed working as intended
  • Channel thresholds accounted for in gas costs merged #3118; priority tip on the fund endpoint merged #3116
  • SDP snapshot API endpoint added #3132; SDP declarations returned keyed by id #3133; discovered_peers on /network/info (in-review) #3135
  • Recovery state moving to RocksDB (in-review): Overwatch runtime handle for state operators Overwatch#142, node recovery state #3134

Testing

  • Testing Framework merged: snapshot store support logos-blockchain-testing#56, multiple apps in one test stack #57, unified cluster provisioning for scenarios, app deployments, and manual clusters #58
  • Tokio-console profiling: cucumber integration #3129 and console-subscriber update #3136 merged, opt-in task naming in Overwatch Overwatch#141; Overwatch bump for tokio-console (in-review) #3148

Zone SDK

  • Channel-update transactions unified with custom transactions merged — #3122
  • L1 op identity and finalized slot surfaced on channel messages (in-review) — #3147

Logos Core Integration

Logos Execution Zone (LEZ)

^

Wallet UI

  • Wallet synchronization flow rework merged — #585
  • PDA account-id generation in the wallet FFI merged — #582
  • Batched merkle proof fetching merged — #598

Sequencer

  • Multi-sequencer committee support merged with adminConfigureChannel and a convergence demo — #616
  • Request distribution across multiple sequencers opened (in-review) — #623

Accounts

  • View-tag randomization for updated accounts (in-review) — #591
  • Dummy-note padding via random seeding of nullifiers and commitments (in-review) #592; ciphertext padding, which closes the last large privacy leak (the ciphertext size), opened (in-review) #630

Cross-Zone

  • Programs deployed at genesis instead of builtins (in-review) — #615
  • Cross-zone generalization directions written up for team decisions — doc

Refactor

  • CI sped up with a prebuilt docker image caching dependencies — #618

Nimbos

^

Nimbos

  • SDP validator operations merged: declare/withdraw/active ops wired into the ledger, with registry, query API, and tests — nimbos#111
  • Proof of Claim Groth16 verifier merged, with shared verification-key helpers and circuit/fixture tests — nimbos#120
  • SDP module layout refactored to honour layering rules — nimbos#128
  • Epoch state management (in-review) — nimbos#126
  • Anonymous Leaders Reward Protocol ledger state and claim path opened (in-review) — nimbos#134
  • SDP epoch snapshot mapping fixed to n+2 (in-review) nimbos#136; non-mutating SDP/channel state transitions via sink parameters (in-review) nimbos#137
  • End-to-end Initial Block Download tested against a local Rust network

Establish libp2p mixnet

^

Implement LIONESS payload encryption for Sphinx

  • Merged LIONESS payload encryptionnim-libp2p-mix #30
  • Confirmed integration with logos-delivery works without any issues

Implement local reputation mechanism and research advanced DoS protection

  • Explored Blend's PoQ + PoSel for Mix — precompute is PoQ's only real edge over RLN
  • Researched a way to keep slashing with precomputed proofs
  • Finalise the PoQ + PoSel for Mix analysis
  • Draft the per-hop PoQ with slashing spec

Implement RLN membership allocation service

^

Specify basic RLN membership management module API

Implement basic RLN membership management module

  • Working logos-core module and UI, tested against testnet with corresponding journey — logos-docs #403

Create a basic service discovery module

^

Validate service discovery protocol correctness in large-scale simulations

  • Continue service discovery investigation and bug fixes

Deliver de-MLS for p2p group messaging

^

Implementing recovery mode

  • Fixed a race condition in proposal creation
  • Started work on a manual commit/recover trigger
  • Integrate the new architecture into libchat

Implementing a WallClock service for de-MLS timing

  • Adjust the WallClock service

Decentralised Oracle Network

^

Specifying oracle mechanism

  • Revised oracle spec — logos-lips #366 with a new approach
  • Reviewed the oracle spec PR and cleaned up previous review comments
  • Merge the spec, continue with future work and edge cases, and run more experiments to improve the spec
  • Discuss missing points in the current PR version

Implement an MVP payment protocol

^

Specify and implement client payment shielding via LEZ private execution mode

  • Implementation plan for privacy mode in payment streams
  • Implement the plan, fix possible issues

Maintain and expand Zerokit

^

Release Zerokit (v3.0.0) with enum-based runtime configuration

  • Addressed comments in PR14 and reviewed PR426
  • Implemented a validation mechanism for all input paths
  • Zerokit PR reviews and discussion
  • Complete and merge PR14 to the develop v3 branch
  • Continue Zerokit PR reviews

Free-route mix simulator

  • Completed the implementation of the free-route mix freeroutesim simulator for simulating the path selection and malicious-path problem — helps study the problem better in the mix protocol we are using.
  • Improved documentation of the simulator and results.
  • Continue research and study the problem in the context of anonymous download using the transport layer since the problem still exists there.

Logos Storage UI & Design System alignment

  • Implemented the menu in the app
  • Extended the button in Logos Design System to support icons
  • Extended the textfield in Logos Design System to support validation
  • Extended the frame in Logos Design System to support custom radius
  • Extended the button icon in Logos Design System to support hover animation
  • Extended the textfield in Logos Design System to support read-only attribute
  • Aligned the Logos Storage UI with the Logos Design System
  • Implement missing UI elements in Logos Storage UI from the Design

Storage Documentation

^

Migration to Docusaurus

  • Meeting with EcoDev — they will migrate to Docusaurus, and a workflow for generic API generation is OK to implement.
  • Created logos-storage/logos-storage-docs as a temp repo to centralise all Logos Storage documentation into while we wait for docs.logos.co to migrate to Docusaurus.
  • Began setting up the repo as a Docusaurus site to make migration to docs.logos.co easier once it has been set up.

Misc

^

Wire protocol serialization

logos-basecamp

Doctest full sync+async UI runs with cross-version cases; QDockWidgets adoption; install/upgrade confirmation dialog with dep-change list; graceful SIGTERM handling for UI modules.

logos-chat-module

Message preview in conversation summaries, group name/description surfacing, and roster changes as members_changed events.

logos-chat-ui

Chat UI UX polish, group creation with name/description, Logos Design System + ChatUi refactor, and pending indicators for member-add.

logos-cpp-sdk

Codegen fixes for T-array arg packing, any-value return, bstr + composite-any type handling; binary payload encoding in cdylib events fixed.

logos-liblogos

Re-pinned to logos-protocol master for LogosAPIConsumer handle cache and nested-bytes fix.

logos-logoscore-cli

Doctest full_api chain (cross-language proxies, events, arrays); call passes lists/maps via json:/str: argument prefixes.

logos-logoscore-py

Bumped flake.lock and logoscore-cli.

#8 #7

logos-module-builder

Auto-generated qmldir at ui_qml entry dir with per-module URI; SDK re-pins for full_api and bstr event fixes.

logos-module-client

Bumped logos-protocol to master for nested-bytes qvariantToNlohmann fix.

#11

logos-package

One semver implementation for the packaging stack.

#30

logos-package-downloader

Top-level pinned dep no longer re-resolved to newest as transitive; catalog versions now ranked by semver precedence, not release date.

logos-package-downloader-module

downloadResolvedDependencies keeps already-installed satisfying deps; re-pinned to shared-semver master.

logos-package-manager

Use the shared semver implementation, and stop clobbering newer packages.

#25

logos-package-manager-module

Fresh-install gate with dep changes threaded through the gated flow; re-pinned to shared-semver master.

logos-package-manager-ui

Route install/upgrade confirmation through the host gate; always confirm installs and pass installed set to the download path; row Action uses shared semver.

logos-protocol

Cache remote-object handle per name in LogosAPIConsumer; keep nested bytes/ints tagged in qvariantToNlohmann containers; async call error channel fixes.

logos-qt-sdk

Handle QVariantList/QVariantMap args in reflection dispatch; protocol bump for nested-bytes fix.

logos-rust-sdk

lidl-gen clones any event params instead of Value::from; fix event emitter dropping bstr payload arg with binary event tests.

logos-storage-ui

Bumped logos-module-builder as needed for QML conflict resolution.

#69

logos-view-module-runtime

Distinguish source-unavailable from invalid response.

#16

logos-workspace

Pin logos-libp2p-module's libp2p input to a SHA (deleted upstream branch).

#94