Răsfoiți Sursa

darkfid: new testnet genesis blocks added and docs updates

skoupidi 2 luni în urmă
părinte
comite
4aea462e2c

+ 13 - 4
README.md

@@ -66,7 +66,6 @@ you haven't already done it:
 ```shell
 ```shell
 % git clone https://codeberg.org/darkrenaissance/darkfi
 % git clone https://codeberg.org/darkrenaissance/darkfi
 % cd darkfi
 % cd darkfi
-% git checkout a05956d412a091e8b54c1cd4f4264c33b941203d
 ```
 ```
 
 
 This project requires the Rust compiler to be installed. 
 This project requires the Rust compiler to be installed. 
@@ -120,9 +119,19 @@ package manager, please consider adding support for it into the script
 and sending a patch.
 and sending a patch.
 
 
 Lastly, we can build the necessary binaries using the provided
 Lastly, we can build the necessary binaries using the provided
-Makefile, to build the project. If you want to build specific ones,
-like `darkfid` or `darkirc`, skip this step, as it will build
-everything, and use their specific targets instead.
+Makefile, to build the project.
+
+> Note:
+>
+> If you want to build specific binaries, like [darkfid][darkfid-build]
+> or [darkirc][darkirc-build], skip this step and refer to their build
+> instructions to use the correct release tag/branch and their specific
+> target.
+>
+> The following command will build everything using `master` branch.
+
+[darkfid-build]: https://dark.fi/book/testnet/node.html#compiling
+[darkirc-build]: https://dark.fi/book/misc/darkirc/darkirc.html#building
 
 
 ```shell
 ```shell
 % make
 % make

+ 6 - 6
bin/darkfid/darkfid_config.toml

@@ -102,7 +102,7 @@ localnet = false
 #outbound_peer_discovery_attempt_time = 5
 #outbound_peer_discovery_attempt_time = 5
 
 
 # Whitelisted network transports for outbound connections
 # Whitelisted network transports for outbound connections
-active_profiles = ["tor"]
+active_profiles = ["tcp+tls"]
 
 
 # Transports you want to be mixed (e.g. Tor would be allowed to connect to `tcp://`
 # Transports you want to be mixed (e.g. Tor would be allowed to connect to `tcp://`
 # if tcp is added to mixed_profiles and tor is added to active_profiles)
 # if tcp is added to mixed_profiles and tor is added to active_profiles)
@@ -146,8 +146,8 @@ seeds = ["tcp+tls://lilith0.dark.fi:18340", "tcp+tls://lilith1.dark.fi:18340"]
 # Seed nodes to connect to for peer discovery and/or adversising our
 # Seed nodes to connect to for peer discovery and/or adversising our
 # own external addresses
 # own external addresses
 seeds = [
 seeds = [
-    "tor://g7fxelebievvpr27w7gt24lflptpw3jeeuvafovgliq5utdst6xyruyd.onion:18341",
-    "tor://yvklzjnfmwxhyodhrkpomawjcdvcaushsj6torjz2gyd7e25f3gfunyd.onion:18341",
+    "tor://wgxxaifz5gv4iggcflyl67lgmsihffs6bbwobqah4np52t3y3olrnpid.onion:18341",
+    "tor://eu7b6sqsxvyfgmufquwr622fbbaqut7qwvpedzlste3b66bv7jvxlpyd.onion:18341",
 ]
 ]
 
 
 # Peer nodes to manually connect to
 # Peer nodes to manually connect to
@@ -175,8 +175,8 @@ seeds = [
 # Seed nodes to connect to for peer discovery and/or adversising our
 # Seed nodes to connect to for peer discovery and/or adversising our
 # own external addresses
 # own external addresses
 seeds = [
 seeds = [
-    "socks5://127.0.0.1:9050/g7fxelebievvpr27w7gt24lflptpw3jeeuvafovgliq5utdst6xyruyd.onion:18341",
-    "socks5://127.0.0.1:9050/yvklzjnfmwxhyodhrkpomawjcdvcaushsj6torjz2gyd7e25f3gfunyd.onion:18341",
+    "socks5://127.0.0.1:9050/wgxxaifz5gv4iggcflyl67lgmsihffs6bbwobqah4np52t3y3olrnpid.onion:18341",
+    "socks5://127.0.0.1:9050/eu7b6sqsxvyfgmufquwr622fbbaqut7qwvpedzlste3b66bv7jvxlpyd.onion:18341",
 ]
 ]
 
 
 # Peer nodes to manually connect to
 # Peer nodes to manually connect to
@@ -303,7 +303,7 @@ localnet = false
 #blacklist = [["example.com", ["tcp"], [8551, 23331]]]
 #blacklist = [["example.com", ["tcp"], [8551, 23331]]]
 
 
 # Whitelisted network transports for outbound connections
 # Whitelisted network transports for outbound connections
-active_profiles = ["tor"]
+active_profiles = ["tcp+tls"]
 
 
 # Transports you want to be mixed (e.g. Tor would be allowed to connect to `tcp://`
 # Transports you want to be mixed (e.g. Tor would be allowed to connect to `tcp://`
 # if tcp is added to mixed_profiles and tor is added to active_profiles)
 # if tcp is added to mixed_profiles and tor is added to active_profiles)

+ 1 - 1
bin/darkfid/genesis_block_localnet

@@ -1 +1 @@
-AYa7rEMKSzoYLxJbN6SG6cSGu/o02E70pmtKI+XwxiWxAAAAAAAAAACJkYxpAAAAADs822+Z8eocSeM2cBLVQuRsIQzi4hikKA26/mTDYRMI3B26eM431XcoU3nvP3rIX5PBf+lWoUENTTZy5HiNw8wAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
+AYa7rEMKSzoYLxJbN6SG6cSGu/o02E70pmtKI+XwxiWxAAAAAAAAAABPJw9qAAAAADs822+Z8eocSeM2cBLVQuRsIQzi4hikKA26/mTDYRMI3B26eM431XcoU3nvP3rIX5PBf+lWoUENTTZy5HiNw8wAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=

+ 1 - 1
bin/darkfid/genesis_block_mainnet

@@ -1 +1 @@
-AYa7rEMKSzoYLxJbN6SG6cSGu/o02E70pmtKI+XwxiWxAAAAAAAAAACTkYxpAAAAADs822+Z8eocSeM2cBLVQuRsIQzi4hikKA26/mTDYRMI3B26eM431XcoU3nvP3rIX5PBf+lWoUENTTZy5HiNw8wAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
+AYa7rEMKSzoYLxJbN6SG6cSGu/o02E70pmtKI+XwxiWxAAAAAAAAAABaJw9qAAAAADs822+Z8eocSeM2cBLVQuRsIQzi4hikKA26/mTDYRMI3B26eM431XcoU3nvP3rIX5PBf+lWoUENTTZy5HiNw8wAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=

+ 1 - 1
bin/darkfid/genesis_block_testnet

@@ -1 +1 @@
-AYa7rEMKSzoYLxJbN6SG6cSGu/o02E70pmtKI+XwxiWxAAAAAAAAAACOkYxpAAAAADs822+Z8eocSeM2cBLVQuRsIQzi4hikKA26/mTDYRMI3B26eM431XcoU3nvP3rIX5PBf+lWoUENTTZy5HiNw8wAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
+AYa7rEMKSzoYLxJbN6SG6cSGu/o02E70pmtKI+XwxiWxAAAAAAAAAABVJw9qAAAAADs822+Z8eocSeM2cBLVQuRsIQzi4hikKA26/mTDYRMI3B26eM431XcoU3nvP3rIX5PBf+lWoUENTTZy5HiNw8wAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=

+ 17 - 15
doc/src/arch/tx_lifetime.md

@@ -69,37 +69,39 @@ state transition is pending to be applied on top of the canonical
 
 
 1. User creates a transaction $tx$
 1. User creates a transaction $tx$
 2. User broadcasts $tx$ to `S`
 2. User broadcasts $tx$ to `S`
-3. `S` validates $tx$ state transition against canonical chain state
+3. `S` validates $tx$ state transition against best fork state
 4. $tx$ enters `S` `mempool`
 4. $tx$ enters `S` `mempool`
 5. `S` broadcasts $tx$ to `P`
 5. `S` broadcasts $tx$ to `P`
-6. `M` validates $tx$ state transition against all known fork states
+6. `M` validates $tx$ state transition against best fork state
 7. $tx$ enters `M` `mempool`
 7. $tx$ enters `M` `mempool`
 8. `M` broadcasts $tx$ to rest `M` nodes
 8. `M` broadcasts $tx$ to rest `M` nodes
 9. Block producer `SM` finds which fork to extend
 9. Block producer `SM` finds which fork to extend
 10. `SM` validates all unproposed transactions in its `mempool` in
 10. `SM` validates all unproposed transactions in its `mempool` in
-  sequence, extended fork state, discarding invalid
+sequence, against extended fork state, discarding invalid
 11. `SM` creates a block proposal containing $tx$ extending the fork
 11. `SM` creates a block proposal containing $tx$ extending the fork
-12. `M` receives block proposal and validates its transactions against
+12. `SM` removes $tx$ from their `mempool`
+13. `M` receives block proposal and validates its transactions against
 the extended fork state
 the extended fork state
-13. `SM` proposes more block proposals extending a fork state
-14. When a fork can be confirmed, `M` validates all its proposals
+14. `M` removes $tx$ from their `mempool`
+15. `SM` proposes more block proposals extending a fork state
+16. When a fork can be confirmed, `M` validates all its proposals
 transactions in sequence, against canonical state
 transactions in sequence, against canonical state
-15. `M` writes the state transition update of $tx$ to their chain
-16. `M` removes $tx$ from their `mempool`
-17. `M` drop rest forks and keeps only the confirmed one
-18. `M` broadcasts the confirmed proposals sequence
-19. `S` receives the proposals sequence and validates transactions
-20. `S` writes the state updates to their chain
-21. `S` removes $tx$ from their `mempool`
+17. `M` writes the state transition update of $tx$ to their chain
+18. `M` drop rest forks and keeps only the confirmed one
+19. `M` broadcasts the confirmed proposals sequence
+20. `S` receives the proposals sequence and validates transactions
+21. `S` writes the state updates to their chain
+22. `S` removes $tx$ from their `mempool`
 
 
 `M` will keep $tx$ in its `mempool` as long as it is a valid state
 `M` will keep $tx$ in its `mempool` as long as it is a valid state
-transition for any fork(including canonical) or it get confirmed.
+transition against current best fork state or it gets included into a
+proposal.
 
 
 Unproposed transactions refers to all $tx$ not included in a proposal
 Unproposed transactions refers to all $tx$ not included in a proposal
 of any fork.
 of any fork.
 
 
 If a fork that can be confirmed fails to validate all its
 If a fork that can be confirmed fails to validate all its
-transactions(14), it should be dropped.
+transactions(16), it should be dropped.
 
 
 ## The `Transaction` object
 ## The `Transaction` object
 
 

+ 1 - 0
doc/src/misc/darkirc/darkirc.md

@@ -28,6 +28,7 @@ Follow the instructions in the [README](../../index.html#build) to ensure
 you have all the necessary dependencies. After that, in repo root folder:
 you have all the necessary dependencies. After that, in repo root folder:
 
 
 ```shell
 ```shell
+% git checkout a05956d412a091e8b54c1cd4f4264c33b941203d
 % make darkirc
 % make darkirc
 ```
 ```
 
 

+ 10 - 4
doc/src/testnet/node.md

@@ -2,12 +2,12 @@ Compiling and Running a Node
 =========================
 =========================
 
 
 **DISCLAIMER: This is a work in progress and functionalities may not be
 **DISCLAIMER: This is a work in progress and functionalities may not be
-available on the current deployed testnet as of 22-May-2025.**
+available on the current deployed alpha testnet as of 21-May-2026.**
 
 
 Please read the whole document first before executing commands, to
 Please read the whole document first before executing commands, to
 understand all the steps required and how each component operates.
 understand all the steps required and how each component operates.
-Unless instructed otherwise, each daemon runs on its own shell, so don't
-stop a running one to start another.
+Unless instructed otherwise, each daemon runs on its own shell, so
+don't stop a running one to start another.
 
 
 Each command to execute will be inside a codeblock, on its first line,
 Each command to execute will be inside a codeblock, on its first line,
 marked by the user `$` symbol, followed by the expected output. For
 marked by the user `$` symbol, followed by the expected output. For
@@ -60,7 +60,13 @@ updates.
 
 
 Refer to the main [DarkFi](../index.html#build) page for instructions
 Refer to the main [DarkFi](../index.html#build) page for instructions
 on how to install Rust and necessary deps. Skip last step of the build
 on how to install Rust and necessary deps. Skip last step of the build
-process, as you don't need to compile all binaries of the project.
+process, as you don't need to compile all binaries of the project, and
+ensure you are on latest `master` branch:
+
+```shell
+$ git checkout master
+$ git pull
+```
 
 
 Once you have the repository in place, and everything is installed, we
 Once you have the repository in place, and everything is installed, we
 can compile the `darkfid` node and the `drk` wallet CLI:
 can compile the `darkfid` node and the `drk` wallet CLI: