This week has seen us working on the remaining tasks to be tidied up before beta and the next testnet. Plus there’s been lots going on with comms behind the scenes.
The next testnet will be to test the bad node detection functionality. We’ve been testing some approaches but it’s not quite there yet. We also want to test changes around pricing whereby the storage price should grow faster to incentivise node operators.
If you didn’t manage to catch our Twitter/X Spaces “The New Internet for the Age of AI” with Jim, Bux and the excellent Michael Casey live yesterday, click here to listen to the recording. A fascinating discussion!
Lots of activity here and on Discord which is great to see. Onwards!
General progress
@qi_ma has been the main man on bad node detection, one of the last building blocks we need in place. He raised a PR by which nodes periodically query close nodes about every node in their routing table to see if it is bad. If it is bad, within certain tolerances, it will be removed from the routing table, i.e. ignored.
@bochaco continues to work on the folder syncing feature, including pulling changes from the network and merging them with local changes. Users can now sync most changes between local storage and the network, although for some operations it’s still only one way. He plans to create automated tests before adding more features. Along with Qi he also worked on ways for nodes to exclude bad nodes from their routing tables.
@anselme worked on refactoring the spend put flow, verification and security, fixing issues and cleaning up the code. He improved parallelisation, stopped blindly trusting incoming data from other nodes (trust but verify), and generalised spend to the network activity so others can use it.
@chriso has also been busy with refactoring, in this case to manage services, in preparation for introducing the upgrade command. He now has start
and stop
operations for nodes, faucet and daemon working in a completely generic way. As well as that, he looked at some issues raised by the community regarding the node manager.
Not to be left out, @jason_paul has also been refactoring like crazy. Refactoring, for the uninitiated, means changing the code to better fit the current environment, rather than adjusting its functionality. It is essential for keeping various components working together properly as a project changes. Anyway, Jason has worked to align the scope of structs and implementations and remove unnecessary dependencies, as well as rejigging the upload code.
@bzee persevered with his WASM PoC, integrating behaviours across different transports like Quic, WebSockets and WebRTC. He hit some issues with WebRTC connections but made progress understanding node-to-node communication patterns, particularly with Quic. He is investigating the mechanisms behind how WebSockets is used in node-to-node communication.
@jimcollinson and @bux continue to dig deep into the product roadmap, ready for imminent release, as well as holding the fort in Discord.
And @joshuef has been mostly focused on network upgrades from the alpha branch, opening PR to update the main branch from alpha.
And on the community side, @mav made progress with the Omni disbursement processes. The code allowing the faucet to receive the signatures and verify disbursement is in, and on the client side, users can supply the signature of an address to the network. So it’s really all there bar the testing.
Anyone here looking for a roadmap? Keep your eyes peeled folks, incoming separate post later today.
Useful Links
As an open source project, we’re always looking for feedback, comments and community contributions - so don’t be shy, join in and let’s create the Safe Network together!