Hello Binance Square community! 👋 As of January 15, 2026, with $DUSK Network's mainnet live and exciting developments like DuskEVM rolling out, it's a perfect time to look back at the foundational work that made this possible. Today, I'm sharing a complete, original breakdown of Testnet Daylight Release Cycle Update #20 from May 19, 2023. This update highlights the incredible progress @dusk_foundation made across their GitHub repositories during their regular three-week cycle.
These release cycles give full transparency into ongoing development, covering selected key repos from their 18+ active ones. Work here is completed and shared, but not always immediately deployed to testnet – big features get separate spotlights.

Here are some striking visuals of zero-knowledge proof systems and privacy-focused blockchain tech that power much of $DUSK 's innovations:



Merkle Repository – Building Efficient Verification Trees
Work Still in Progress (Open Issues):
Set up performance benchmarks using the criterion tool for accurate testing.
Greatly expand documentation for all public types, traits, methods – with extra focus on the Poseidon hashing implementation and the zero-knowledge opening gadget.
Remove the positions map from the tree design entirely. Since the tree allows flexible walking, functions like len() and contains() can handle filled position checks without this extra structure.
Work Completed (Closed Issues)
Created a full Merkle tree using Poseidon hashing, including a zero-knowledge opening gadget that's fully generic for different heights and branching factors.
Fixed a calculation error in child index during random position insertions (child_location function issue).
Added proper accessor methods to the Opening structure so it can be easily used outside the crate.
Built a dedicated Walker tool that iterates through every leaf node in the tree.
Release Info: dusk-merkle v0.2.0 launched with getters for Opening fields, the new Poseidon Merkle tree + gadget, and changes to how branches handle data.
Here are clear diagram showing how Merkle trees work in blockchain – essential for understanding Dusk's verification systems:

Poseidon252 Repository – Pure Hashing Focus
Work Still in Progress:
Create a sponge framework that's flexible for different fixed input lengths, eliminating the need for extra padding.
Work Completed:
All Merkle tree logic and proof generation moved out to the dedicated dusk-merkle crate for better separation.
Citadel Repository – Advancing Privacy Protocols
Work Still in Progress:
Update to use dusk-merkle for opening circuits (Poseidon252 now only handles hashing).
Add a full section in the specs document about the Citadel smart contract.
Fix code duplication between Citadel and Rusk for data structures and tests, and decide on std vs no_std best practices.
Work Completed:
Developed a state module for local Merkle tree management (future full stack integration planned).
Made Merkle tree sizes fully customizable, not tied to Phoenix.
Allowed users to create their own challenge values instead of hardcoding.
Changed signature approach: now signs session stealth addresses (using license secret keys) instead of transaction hashes – improves malleability protection and proof verification.
Release Info: Citadel v0.2.0 with specs, new structs, license methods, state module, and user-crafted challenges.
Piecrust Repository – Smart Contract Execution
Work Still in Progress:
Enable querying the full tree of inter-contract calls.
Add high-level module documentation explaining each part's purpose.
Document imported functions in piecrust::imports.
Work Completed:
Renamed "module" to "contract" everywhere for clarity (WASM-based smart contracts).
Fixed a severe segmentation fault bug when moving Sessions after contract instantiation.
Updated owner type to support arbitrary lengths or BLS public key sizes (no more fixed 32-byte limit).
Removed the outdated wee_alloc dependency.
Added a practical example contract using dusk-merkle for custom tree storage.
Adapted to Rust nightly changes: replaced alloc_error_handler with panic in no_std.
Release Info: piecrust v0.4.0 and piecrust-uplink v0.4.0 with many additions, changes, fixes, and removals.
Here are some visuals of smart contract development environments – similar to what Dusk's EVM-compatible tools enable:

How to Setup Local Development Environment for Solidity ...
Wallet-CLI, bls_381, Jubjub, dusk-blockchain, Consensus & Rusk – Other Key Updates
Wallet-CLI: Better network fallback + overflow protection for address generation (max 256 per seed).
bls_381: Fixed docs, re-exported scalar modulus, corrected categories, upgraded to 2021 edition, bumped canonical.
Jubjub: Added unit tests for windowed NAF across scalars/windows.
dusk-blockchain: Fixed committee member extraction.
Consensus: Async database trait, candidate block fetching in reduction, changelog added.
Rusk: Many ongoing tasks for Citadel integration, sync flows, fee markets; completed delay support, data requests, limits, broker service, telemetry, shutdowns, fee inflation fix.
This update cycle also included releases like kadcast v0.5.0 (blocklists, upgrades), wallet-cli v0.14.1, etc.
These detailed improvements in 2023 built the strong foundation we see today in 2026 with live mainnet and advancing privacy tech. @dusk_foundation's methodical approach is truly impressive! $DUSK #Dusk @Dusk
