Weekly Firo Development Meeting Minutes

Week 3 October

Lelantus Spark

  • Levon worked on testing and bug fixes. Most of the RPC code has been pushed, but some tests are failing and we are trying to fix them. Devnet is expected to complete this week with the assistance of Peter.
  • Most comments from Sproxet on Spark have been resolved by Peter and Levon, and parts with fixes are being pushed.

Bug fixes

  • Peter found a second issue with the addressindex problem. It has something to do with the order of transactions being processed during block disconnecting. It is hard to find because during a reindex, everything works fine. However, after a reindex, blocks were disconnected and during that process a number of amounts were recorded incorrectly. A fix is being tested to see if it’s good.

Miscellaneous

  • Ledger-live: Gevorg has finished syncing tests and is working on sending stuff.
  • Firo-QT: Gevorg has finished adding the option to hide RAP Address tab. The Ubuntu build is working and now checking the Windows build.
  • AtomicDex: Gevorg did some investigation and found out there are new updates.
    • Added new coins
    • Some warning indicators
    • Progress bar for transaction time
    • Other small changes
2 Likes

Week 4 October

Lelantus Spark

  • Levon worked on some Spark bug fixes. Most of the serious bugs are fixed. Changes regarding review comments are being pushed.
  • Peter did some reviews on Spark and found an issue that prevented the code from saving the state to the blockchain.
  • Devnet is expected to be available by this week.
  • After devnet is launched, code auditing will begin.

Bug fixes

  • Transaction Index: a fix has been made and requires testing. Changes will be pushed after testing within the next few days.
  • Peter will be looking into introducing an IS lock timeout fix. This fix will drop the IS-Locked transaction from the IS database after a certain amount of time.

Miscellaneous

  • Ledger-live: Gevorg is still working on send stuff on the ledger device.
  • Firo-QT: Gevorg found problems with text overlapping and UI scaling. Issues have been fixed and are being pushed.
  • Electrum-Firo: Missing Windows dependencies will be added
2 Likes

Week 5 October

Lelantus Spark

  • Levon worked on various tasks on Spark.
    • Did some bug fixes and fixed failing spark unittests.
    • Spark RPC calls implementation was finalized and tested on regtest. Everything is working.
    • Wallet rescan is set to be implemented this week, and work on moving wallet checks from the “AcceptToMemoryPool” and “AcceptBlock” functions will continue.
    • To develop a transition test for Lelantus spend->transparent->Spark mint from UTXO on testnet
  • Spark Devnet
    • New version update commit to be pushed for launch.
    • Peter to put in a new hard fork block number.
    • Levon will coordinate with Peter to start Devnet.

Bug fixes

  • Txindex issue: Test are still pending due to mistakes.
  • IS lock issue: Peter discovered that determining the time of inclusion of tx in the IS database was impossible.The hybrid approach will be done by including both whitelist for old txs and timeouts for new txs. Need to check the list of utxos locked by this transaction
  • Tx creation issue (Tx can be created but not included in mempool): Gevorg will be assisting in this issue.

Miscellaneous

  • Ledger-live: Gevorg is still working on the send function.
  • Firo-QT: Gevorg is finishing up the UI for hiding RAP addresses. Anwar put it to the test, and it works. Some work will be done on improving the restoration screen.
  • Electrum Firo: Gevorg added some missing dependencies, and it is to be finalized this week
2 Likes

Week 1 November

Lelantus Spark

  • Levon work on various task on Spark:
    • Launched Devnet by using Peter’s assistance in creating an executable and updating Devnet nodes. Smoke tests were done, mostly okay except for a crashing issue while running Spark due to Spark HF block on devnet has not passed yet
    • Did some work on wallet scanning where the “-rescan” argument was used when launching a wallet, during restoration with a fully synced blockchain, and when switching wallets.
    • Did some RPC tests and more C++ unittests
    • Implemented a RPC for Lelantus to transparent to Spark layer function
  • Devnet:
    • Levon and Peter will continue testing on devnet
    • Once the HF block is passed, the rest can assist with testing.
  • To set all Spark limits (input numbers, to be set the same as Lelantus). Mint and spend limits are the same as Lelantus for now (spend limit 5k). Limits might be removed in the future when spark launches.
  • To look into work required to have an explorer for Spark. If possible, to provide an example (devnet explorer) for the public.

Bug fixes

  • Peter continues to work on txindex issue and the IS lock whitelist
  • Gevorg assisted with the transaction creation bug where some tx were created but not accepted into mempool

Miscellaneous

  • Ledger-live: Gevorg continues working on send functions
  • Firo-QT: Gevorg finished the restoration screen changes. New strings need to be added but require some translation for other languages.
  • Electrum-Firo: Some dependencies that were missing were added, and some code was cleaned up.
  • Firo UI: Gevorg to investigate an Ubuntu UI window bug reported by a user
5 Likes

Week 2 November

Lelantus Spark

  • Lelantus Spark code security audit begins. Performed by Hashcloak https://firo.org/2022/11/11/lelantus-spark-code-audit-begins.html
  • Spark wallet scanning functionality is near completion.
  • Levon implemented Lelantus mints to Spark remints RPC functionality tests and more C++ unittests.
  • Spark’s mint and spend limits will be set.
  • Spark functionality and code review are still ongoing.

Bug Fixes

  • Peter found the cause of the txindex/addressindex bug. The fix (PR 1209) is working and deployed. This requires a reindex to the wallet.
  • InstantSend lock PR: Whitelisting transactions that have stuck or locked inputs. Introduced a timeout parameter that is saved to the database and, at a later time, can use the saved timestamp to not block any transactions based on InstantSend-locked databases that are too old. The introduction of a whitelist is a hard fork.

Miscellaneous

  • Ledger-live: Gevorg is still working on the send function for the integration into Ledger Live.
  • Firo-QT: Gevorg has finished UI problems on Ubuntu. PR 1210
  • Lelantus Spork will be extended by 12 months. It is planned to release an update by the end of November, and hardfork date will be set mid-December 2022 or early January 2023.

Week 3 November

Lelantus Spark

  • Levon was working on testing the Lelantus to Spark function and the implementation of wallet transaction scanning.
  • On setting new input and output limits for Spark, Reuben will consult with Aaron. Devnet will start after setting limits.
  • Initial discussion for Lelantus Spark limits
  • Several bugs were fixed by Levon. Peter will be reviewing the Spark code this week.

Bug fixes

  • Peter worked on unlocking inputs that were previously InstantSend-locked but removed from the mempool. A test will be done for it. To dump the transaction in question from a long running masternode in order to investigate the transaction doesn’t lock some very large inputs. PR to be issued soon.
  • Peter will also be working with Gevorg on investigating the transaction that couldn’t be added into the mempool bug.

Miscellaneous

  • Firo: Gevorg discussed with Levon regarding the transaction creation and UI stuff.
  • Electrum-Firo: Gevorg is working on the build stuff for electrum and it will be the highest priority this week.
  • Ledger-Live: Gevorg is working on the Firo integration. He will consult with Levon after he has finished.
  • Lelantus Spork will be extended for 1 more year. A new update will be released soon.
  • Due to resource constraints, decided to only focus on the backend side of mobile wallets. For example, to assist Cypher Stack to integrate Lelantus Spark backend and let them handle the frontend.
1 Like