6 min read

Technical Progress Update November

Technical Progress Update November

[ - by ID.Iota]

GM 🌅 #IOTA Fam 🤖

It's time for another monthly update on the Tangleverse Times magazine. The last one was released on the 12th of October and it feels like ages since then. It sometimes really puzzles me how much can happen in such a short time. Fortunately we don’t need to discuss all things IOTA here but only take a look at the latest updates for the IOTA 2.0 node protocol - IOTA.core.

A look back into the open issues from September
The last time I updated you on the progress we were discussing the last features being implemented to the protocol. Remember? The Faucet INX plugin (Iss #110), the solution on how to deal with loss acceptance (Iss #315) and the time restriction on the transaction creation slot (Iss #355). Obviously all of those Issues have been resolved in the code base.

I’d also highlight two Issues that were discussed at that time. The introduction of SegWit (Iss #346) and the transaction issuing user flow with Mana allotting (Iss #345). Both of those Issues have also been resolved.

Since we said those were the last building blocks to get the network towards feature completion, we should be feature complete, correct?

Yes! And the team seems to agree on that statement, marking the progress on milestones 1.0 and 1.1 as 100% complete.

That leaves us with the hardened release candidate milestones 1.0 RC and 1.1 RC and a new milestone 1.xx tracking features that will be implemented once we have experienced IOTA 2.0 on test- and mainnet.

💡
As a short reminder. There is lots to develop beyond a release candidate 1.1. However the team is working day and night to release that specific network update. So whenever the Team or I do speak about feature completion, we are speaking about an initial, fully decentralized, releasable candidate that the community can test and play around with.

So what has happened since feature completion?
Feature completion is basically a month old,with the last Issue (Iss #410) in Milestone 1.0 being closed on the 31st of October. Since then the team - again - went into full test, cleanup and bug fixing mode. A look into the Issues resolved since then and the Issues currently being worked on proves this. Most of the open Issues are either new test set-ups or bugs.

Besides tests and bugs we still see some clean up chores that the team want to address before they release the network to the masses.

 Jonas just recently confirmed that in his latest update on Discord. He also confirmed that they are starting to test the whole setup in an integrated way. So basically they are simulating a fully integrated network consisting of the entire tech stack (iota-core + inx-indexer, inx-validator, inx-*).

Besides all the bug fixing etc. we see a single PR pushing a bigger code change that is following a reactive approach to “manage” the complexity in the code base. The change is covered in Issue #320 (PR #293). While this change initially was labeled as a “nice to have” and spearheaded by Hans in his freetime it shows now that this rewrite might lead to a few bug fixes.

💡
Hans put a pretty interesting twitter thread together covering the logic behind the reactive approach changes. You can read it here.

The attentive reader might have spotted the “non-actionable” label of some Issues. Some of those bugs are waiting for the reactive chain manager, since the team expects that those bugs will be resolved with the implementation of the rewrite.

A look in the PR shows that Hans seems to have come to an end on the reactive protocol rework. He seems to be very happy with the outcome stating that they have reached “close to optimal code structure” in the chain manager.

It’s going to be interesting to see if the team will be able to merge the reactive code rework in the coming week and if and how this rework will lead to a usable IOTA 2.0 testnet release.

What else do we need for a testnet?
Besides the node protocol not being fully ready to be deployed, there is also the wallet, an explorer and the adapted SDK missing to get a working testnet. So I thought I would do a little research on how those topics are progressing.

The development of firefly is actually quite easy to follow. As one would expect from an agile working team, we have a pretty transparent overview over their EPICs and the sprints (sprint duration of two weeks) that feed into those EPICs.

We got an EPIC #17 that has the goal to get the wallet software ready for IOTA 2.0. A link to their IOTA 2.0 dashboards is here.

There are a few things we can spot without going into too much detail. The precise sprint planning allows us to get the timeline behind those tasks. As you can see in the screenshot from the dashboard above every task has a specific sprint (Iteration) that it is connected to.

All tasks related to IOTA 2.0 are either in Sprint 29 or Sprint 30 (Iteration 29 / 30). The schedule for those Iterations are the following:

  • Iteration 29 | Nov 13 - Nov 26
  • Iteration 30 | Nov 27 - Dec 10

So what we can read from those timelines is that the firefly team has been working since November 13 towards a firefly release to support IOTA 2.0. We could also speculate that - at least initially - the team wanted to finish their work on the 10th of December.

But beware (especially the german readers) living in an agile world always means that plans are due to hiccups on the way. So don’t take those dates as specific ETAs or any confirmed dates. Just take them as a confirmation that there is work on a 2.0 wallet happening right now.

We can also read from the tasks that the firefly team is delayed, since they are still waiting on the IOTA.core node protocol. We will see how this develops over the coming weeks.

Since I don't want to bore you, I spare you the insights into the SDK and explorer development. Just so much for both SDK and explorer we can see some work happening in GitHub.

Wrapping things up
So where are we going from here? Testnet this year? Mhmm, I really don’t want to be that guy but I feel like it's hard to hype you up here.

We are really super close to a release. However December essentially consists of only two more weeks. So we either get something under the christmas tree and then play with it for two weeks without feedback from the team or we will have to wait till 2024.

I think all teams could basically release something tomorrow but withhold from it with all kinds of good reason. The best reason likely being that they are progressing faster if they fix everything they can test themselves.

So don’t let your head down. A lot of the tech stack is finally coming together. Piece by piece. There will be a testnet. Soon enough.

And don’t forget, blame me for hyping you up for a testnet release this year.

TLDR:
The IOTA 2.0 node protocol, IOTA.core, has made significant progress, with key issues resolved, marking milestones 1.0 and 1.1 as 100% complete. The team is now focused on testing, bug fixing, and cleanup before releasing the network to the community.

The release of a fully functional node protocol makes a wallet, explorer, and SDK necessary. The Firefly wallet team is actively working on IOTA 2.0 support, with a potential release date around end of December, though delays may occur.

A testnet release is imminent, the time frame is tight, possibly by the end of December or early 2024.