diff --git a/zcash-core-dag.svg b/zcash-core-dag.svg index 4e820598..96ee9b0b 100644 --- a/zcash-core-dag.svg +++ b/zcash-core-dag.svg @@ -4,17 +4,17 @@ - - - + + + zcash/librustzcash#226 - -zcash/librustzcash#226 -Bring in Bolt TZE + +zcash/librustzcash#226 +Bring in Bolt TZE @@ -22,27 +22,27 @@ zcash/librustzcash#225 - -zcash/librustzcash#225 -Add Bolt TZE support to -the transaction builder + +zcash/librustzcash#225 +Add Bolt TZE support to +the transaction builder zcash/librustzcash#226->zcash/librustzcash#225 - - + + zcash/zcash#4190 - -zcash/zcash#4190 -TZE: implement zcashd -'host' logic. + +zcash/zcash#4190 +TZE: implement zcashd +'host' logic. @@ -50,10 +50,10 @@ zcash/orchard#4 - -zcash/orchard#4 -Implement the Action -circuit + +zcash/orchard#4 +Implement the Action +circuit @@ -61,189 +61,189 @@ zcash/librustzcash#320 - -zcash/librustzcash#320 -Implement Orchard -consensus rules as an NU -feature + +zcash/librustzcash#320 +Implement Orchard +consensus rules as an NU +feature zcash/orchard#4->zcash/librustzcash#320 - - + + zcash/orchard#35 - -zcash/orchard#35 -Transaction building -support + +zcash/orchard#35 +Transaction building +support zcash/orchard#4->zcash/orchard#35 - - + + zcash/zcash#5195 - -zcash/zcash#5195 -Implement Orchard proof -verification consensus -rule + +zcash/zcash#5195 +Implement Orchard proof +verification consensus +rule zcash/orchard#4->zcash/zcash#5195 - - + + zcash/zcash#5024 - -zcash/zcash#5024 -Implement NU5 consensus -rules + +zcash/zcash#5024 +Implement NU5 consensus +rules zcash/librustzcash#320->zcash/zcash#5024 - - + + zcash/zcash#5021 - -zcash/zcash#5021 -Add Orchard support to -transaction builder + +zcash/zcash#5021 +Add Orchard support to +transaction builder zcash/orchard#35->zcash/zcash#5021 - - + + zcash/librustzcash#406 - -zcash/librustzcash#406 -Add Orchard support to -the transaction builder + +zcash/librustzcash#406 +Add Orchard support to +the transaction builder zcash/orchard#35->zcash/librustzcash#406 - - + + zcash/zcash#5195->zcash/zcash#5024 - - + + zcash/zcash#5023 - -zcash/zcash#5023 -Implement support for -Orchard shielded coinbase -output + +zcash/zcash#5023 +Implement support for +Orchard shielded coinbase +output zcash/zcash#5021->zcash/zcash#5023 - - + + zcash/librustzcash#403 - -zcash/librustzcash#403 -Add Orchard support to -`zcash_client_backend` + +zcash/librustzcash#403 +Add Orchard support to +`zcash_client_backend` zcash/librustzcash#406->zcash/librustzcash#403 - - + + - + zcash/librustzcash#404 - - -zcash/librustzcash#404 -Add Orchard support to -`zcash_client_sqlite` + + +zcash/librustzcash#404 +Add Orchard support to +`zcash_client_sqlite` - + zcash/librustzcash#403->zcash/librustzcash#404 - - + + zcash/zcash#4707 - -zcash/zcash#4707 -[Orchard] Consensus -specification + +zcash/zcash#4707 +[Orchard] Consensus +specification zcash/zcash#4707->zcash/librustzcash#320 - - + + zcash/zcash#4819 - -zcash/zcash#4819 -Backport upstream PRs -that remove Boost usage + +zcash/zcash#4819 +Backport upstream PRs +that remove Boost usage @@ -251,10 +251,10 @@ zcash/orchard#33 - -zcash/orchard#33 -Implement note commitment -tree logic for Orchard + +zcash/orchard#33 +Implement note commitment +tree logic for Orchard @@ -262,471 +262,465 @@ zcash/zcash#5018 - -zcash/zcash#5018 -Add Orchard note -commitment tree and -nullifier set to -CCoinsView + +zcash/zcash#5018 +Add Orchard note +commitment tree and +nullifier set to +CCoinsView zcash/orchard#33->zcash/zcash#5018 - - - - - -zcash/zcash#5037 - - -zcash/zcash#5037 -Add Orchard metadata to -history trees - - - - - -zcash/zcash#5018->zcash/zcash#5037 - - + + - + zcash/zcash#5197 - - -zcash/zcash#5197 -Implement NU5 block -consensus rules + + +zcash/zcash#5197 +Implement NU5 block +consensus rules - + zcash/zcash#5018->zcash/zcash#5197 - - - - - -zcash/zcash#5037->zcash/zcash#5024 - - + + - + zcash/zcash#5197->zcash/zcash#5024 - - + + - + zcash/zcash#5019 - - -zcash/zcash#5019 -Add Orchard keys and -addresses to the wallet + + +zcash/zcash#5019 +Add Orchard keys and +addresses to the wallet - + zcash/zcash#5019->zcash/zcash#5023 - - + + - + zcash/zcash#5020 - - -zcash/zcash#5020 -Add Orchard note -detection and storage to -the wallet + + +zcash/zcash#5020 +Add Orchard note +detection and storage to +the wallet - + zcash/zcash#5019->zcash/zcash#5020 - - + + - + zcash/zcash#5179 - - -zcash/zcash#5179 -Add Unified Address key -generation and storage to -the wallet + + +zcash/zcash#5179 +Add Unified Address key +generation and storage to +the wallet - + zcash/zcash#5019->zcash/zcash#5179 - - + + - + zcash/zcash#5178 - - -zcash/zcash#5178 -New RPC: z_getnewaccount + + +zcash/zcash#5178 +New RPC: z_getnewaccount - + zcash/zcash#5179->zcash/zcash#5178 - - + + - + zcash/zcash#5182 - - -zcash/zcash#5182 -New RPC: -z_getbalanceforaddress + + +zcash/zcash#5182 +New RPC: +z_getbalanceforaddress - + zcash/zcash#5179->zcash/zcash#5182 - - + + - + zcash/zcash#5185 - - -zcash/zcash#5185 -Add support for funding -z_sendmany from a UA -account + + +zcash/zcash#5185 +Add support for funding +z_sendmany from a UA +account - + zcash/zcash#5179->zcash/zcash#5185 - - + + - + zcash/zcash#5180 - - -zcash/zcash#5180 -New RPC: -z_getaddressforaccount + + +zcash/zcash#5180 +New RPC: +z_getaddressforaccount - + zcash/zcash#5179->zcash/zcash#5180 - - + + - + zcash/zcash#5183 - - -zcash/zcash#5183 -New RPC: -z_getbalanceforaccount + + +zcash/zcash#5183 +New RPC: +z_getbalanceforaccount - + zcash/zcash#5179->zcash/zcash#5183 - - + + - + zcash/orchard#36 - - -zcash/orchard#36 -Parsing and serialization -of Orchard keys and -addresses + + +zcash/orchard#36 +Parsing and serialization +of Orchard keys and +addresses - + zcash/orchard#36->zcash/zcash#5019 - - + + - + zcash/librustzcash#371 - - -zcash/librustzcash#371 -Implement parsing and -serialization of Unified -Addresses + + +zcash/librustzcash#371 +Implement parsing and +serialization of Unified +Addresses - + zcash/orchard#36->zcash/librustzcash#371 - - + + - + zcash/zcash#5133 - - -zcash/zcash#5133 -Implement Unified Address -parsing and serialization -to KeyIO + + +zcash/zcash#5133 +Implement Unified Address +parsing and serialization +to KeyIO - + zcash/librustzcash#371->zcash/zcash#5133 - - + + - + zcash/zcash#5133->zcash/zcash#5178 - - + + - + zcash/zcash#5133->zcash/zcash#5182 - - + + - + zcash/zcash#5133->zcash/zcash#5185 - - + + - + zcash/zcash#5181 - - -zcash/zcash#5181 -New RPC: -z_listunifiedreceivers + + +zcash/zcash#5181 +New RPC: +z_listunifiedreceivers - + zcash/zcash#5133->zcash/zcash#5181 - - + + - + zcash/zcash#5184 - - -zcash/zcash#5184 -Add support for UA -recipients to z_sendmany + + +zcash/zcash#5184 +Add support for UA +recipients to z_sendmany - + zcash/zcash#5133->zcash/zcash#5184 - - + + - + zcash/zcash#5191 - - -zcash/zcash#5191 -z_getbalance: Return -error if given a UA + + +zcash/zcash#5191 +z_getbalance: Return +error if given a UA - + zcash/zcash#5133->zcash/zcash#5191 - - + + - + zcash/orchard#30 - - -zcash/orchard#30 -Implement ZIP 32 for -Orchard + + +zcash/orchard#30 +Implement ZIP 32 for +Orchard - + zcash/orchard#30->zcash/zcash#5019 - - + + - + zcash/zcash#2534 - - - - -zcash/zcash#2534 -Bitcoin 0.12 P2P/Net PRs -1 + + + + +zcash/zcash#2534 +Bitcoin 0.12 P2P/Net PRs +1 - + zcash/zcash#5003 - - - - -zcash/zcash#5003 -net: prerequisites for -p2p encapsulation changes + + + + +zcash/zcash#5003 +net: prerequisites for +p2p encapsulation changes - + zcash/zcash#2534->zcash/zcash#5003 - - + + - + zcash/zcash#5005 - - - - -zcash/zcash#5005 -net: Split DNS resolving -functionality out of net -structures + + + + +zcash/zcash#5005 +net: Split DNS resolving +functionality out of net +structures - + zcash/zcash#2534->zcash/zcash#5005 - - + + - + zcash/zcash#5004 - - - - -zcash/zcash#5004 -Verify that expected -services are available -from peer nodes & -disconnect otherwise. + + + + +zcash/zcash#5004 +Verify that expected +services are available +from peer nodes & +disconnect otherwise. - + zcash/zcash#5003->zcash/zcash#5004 - - + + - + zcash/zcash#5006 - - - - -zcash/zcash#5006 -Rework AddNode behaviour + + + + +zcash/zcash#5006 +Rework AddNode behaviour - + zcash/zcash#5005->zcash/zcash#5006 - - + + - + zcash/zcash#5004->zcash/zcash#5006 - - + + - + zcash/zcash#5008 - - - - -zcash/zcash#5008 -net: Feeler connections -to increase online addrs -in the tried table. + + + + +zcash/zcash#5008 +net: Feeler connections +to increase online addrs +in the tried table. - + zcash/zcash#5006->zcash/zcash#5008 - - + + + + + +zcash/zcash#5037 + + +zcash/zcash#5037 +Add Orchard metadata to +history trees + + + + + +zcash/zcash#5037->zcash/zcash#5024 + + zcash/zcash#5034 - - - -zcash/zcash#5034 -Bitcoin 0.17 locking PRs + + + +zcash/zcash#5034 +Bitcoin 0.17 locking PRs @@ -734,104 +728,104 @@ zcash/zcash#5050 - - - -zcash/zcash#5050 -Bitcoin 0.18 locking PRs + + + +zcash/zcash#5050 +Bitcoin 0.18 locking PRs - + zcash/zcash#5034->zcash/zcash#5050 - - + + zcash/zcash#5163 - - - -zcash/zcash#5163 -Bitcoin 0.19 locking PRs + + + +zcash/zcash#5163 +Bitcoin 0.19 locking PRs - + zcash/zcash#5050->zcash/zcash#5163 - - + + zcash/zcash#5176 - -zcash/zcash#5176 -Implement BIP 39 seed -phrase support + +zcash/zcash#5176 +Implement BIP 39 seed +phrase support - + zcash/zcash#5176->zcash/zcash#5019 - - + + zcash/zcash#2673 - -zcash/zcash#2673 -Support Hierarchical -Deterministic t-addresses -(BIP 32) + +zcash/zcash#2673 +Support Hierarchical +Deterministic t-addresses +(BIP 32) - + zcash/zcash#5176->zcash/zcash#2673 - - + + - + zcash/zcash#2673->zcash/zcash#5179 - - + + zcash/zips#364 - -zcash/zips#364 -[ZIP 339] Wallet Recovery -Words (a la BIP 39) + +zcash/zips#364 +[ZIP 339] Wallet Recovery +Words (a la BIP 39) - + zcash/zips#364->zcash/zcash#5176 - - + + zcash/zcash#5177 - -zcash/zcash#5177 -Deprecate old address- -related RPCs + +zcash/zcash#5177 +Deprecate old address- +related RPCs @@ -839,45 +833,45 @@ zcash/zips#511 - -zcash/zips#511 -ZIP 32: Document standard -key structure for Unified -Addresses + +zcash/zips#511 +ZIP 32: Document standard +key structure for Unified +Addresses - + zcash/zips#511->zcash/zcash#5179 - - + + zcash/librustzcash#387 - -zcash/librustzcash#387 -Implement Unified Address -key derivation + +zcash/librustzcash#387 +Implement Unified Address +key derivation - + zcash/zips#511->zcash/librustzcash#387 - - + + zcash/zcash#5186 - -zcash/zcash#5186 -z_viewtransaction: Figure -out how to render UAs + +zcash/zcash#5186 +z_viewtransaction: Figure +out how to render UAs @@ -885,31 +879,31 @@ zcash/zcash#5196 - -zcash/zcash#5196 -Implement v5 transaction -consensus rules + +zcash/zcash#5196 +Implement v5 transaction +consensus rules - + zcash/zcash#5196->zcash/zcash#5024 - - + + zcash/zcash#5198 - -zcash/zcash#5198 -Switch to a `(txid, -auth_digest)` identifier -in places where the node -needs to commit to a -specific instance of a -transaction + +zcash/zcash#5198 +Switch to a `(txid, +auth_digest)` identifier +in places where the node +needs to commit to a +specific instance of a +transaction @@ -917,12 +911,12 @@ zcash/zcash#5199 - -zcash/zcash#5199 -[ZIP 239] Relay v5+ -transactions with a -(txid, auth_digest) tuple -(or digest thereof) + +zcash/zcash#5199 +[ZIP 239] Relay v5+ +transactions with a +(txid, auth_digest) tuple +(or digest thereof) @@ -930,486 +924,438 @@ zcash/zips#506 - -zcash/zips#506 -Orchard anchor should be -a base field element, not -a bitstring + +zcash/zips#506 +Orchard anchor should be +a base field element, not +a bitstring - + zcash/zips#506->zcash/zcash#4707 - - - - - -zcash/zcash#5220 - - - - -zcash/zcash#5220 -NU5 header commitments -and consensus rules - - - - - -zcash/zcash#5220->zcash/zcash#5037 - - - - - -zcash/zcash#5220->zcash/zcash#5197 - - + + - + zcash/zcash#5223 - - -zcash/zcash#5223 -Add RPC test case that -checks the auth data -commitments for v4 txs + + +zcash/zcash#5223 +Add RPC test case that +checks the auth data +commitments for v4 txs - - -zcash/zcash#5220->zcash/zcash#5223 - - - - + zcash/orchard#82 - - - - -zcash/orchard#82 -[book] Add Sinsemilla -gadget description + + + + +zcash/orchard#82 +[book] Add Sinsemilla +gadget description - + zcash/orchard#82->zcash/zcash#4707 - - + + - + zcash/orchard#54 - - - - -zcash/orchard#54 -[book] Document ECC -gadget in circuit + + + + +zcash/orchard#54 +[book] Document ECC +gadget in circuit - + zcash/orchard#54->zcash/zcash#4707 - - + + - + zcash/halo2#63 - - -zcash/halo2#63 -Implement zero-knowledge- -ness + + +zcash/halo2#63 +Implement zero-knowledge- +ness - + zcash/halo2#63->zcash/librustzcash#320 - - - - - -zcash-hackworks/zcash-test-vectors#26 - - -zcash-hackworks/zcash-test-vectors#26 -Implement Unified Address -encodings - - - - - -zcash-hackworks/zcash-test-vectors#26->zcash/librustzcash#371 - - + + - + zcash-hackworks/zcash-test-vectors#36 - - -zcash-hackworks/zcash-test-vectors#36 -Orchard Merkle path test -vectors + + +zcash-hackworks/zcash-test-vectors#36 +Orchard Merkle path test +vectors - + zcash-hackworks/zcash-test-vectors#36->zcash/orchard#33 - - + + - + zcash/orchard#95 - - -zcash/orchard#95 -Implement Merkle path -validity chip + + +zcash/orchard#95 +Implement Merkle path +validity chip - + zcash-hackworks/zcash-test-vectors#36->zcash/orchard#95 - - + + - + zcash/orchard#95->zcash/orchard#4 - - + + - + zcash/halo2#64 - - -zcash/halo2#64 -Design gadget API or -interaction model + + +zcash/halo2#64 +Design gadget API or +interaction model - + zcash/halo2#235 - - -zcash/halo2#235 -[Circuit] Implement -Core/Chip abstraction + + +zcash/halo2#235 +[Circuit] Implement +Core/Chip abstraction - + zcash/halo2#64->zcash/halo2#235 - - + + - + zcash/halo2#235->zcash/orchard#4 - - + + - + zcash/halo2#75 - - -zcash/halo2#75 -Implement support for -recursion + + +zcash/halo2#75 +Implement support for +recursion - + zcash/halo2#251 - - -zcash/halo2#251 -Implement user-facing API -for recursive proving + + +zcash/halo2#251 +Implement user-facing API +for recursive proving - + zcash/halo2#75->zcash/halo2#251 - - + + - + zcash/halo2#79 - - -zcash/halo2#79 -Migrate Rescue and -Poseidon gadgets to -algebraic hash -abstraction + + +zcash/halo2#79 +Migrate Rescue and +Poseidon gadgets to +algebraic hash +abstraction - + zcash/halo2#78 - - -zcash/halo2#78 -Implement algebraic hash -/ random oracle -abstraction gadget + + +zcash/halo2#78 +Implement algebraic hash +/ random oracle +abstraction gadget - + zcash/halo2#78->zcash/halo2#79 - - + + - + zcash/halo2#250 - - -zcash/halo2#250 -Implement the recursive -verifier circuit + + +zcash/halo2#250 +Implement the recursive +verifier circuit - + zcash/halo2#78->zcash/halo2#250 - - + + - + zcash/halo2#250->zcash/halo2#75 - - + + - + zcash/halo2#57 - - -zcash/halo2#57 -Remove unused -fixed_values from -ProvingKey + + +zcash/halo2#57 +Remove unused +fixed_values from +ProvingKey - + zcash/halo2#82 - - -zcash/halo2#82 -Consider not sampling -beta and gamma if there -are no permutations or -lookups + + +zcash/halo2#82 +Consider not sampling +beta and gamma if there +are no permutations or +lookups - + zcash/halo2#248 - - -zcash/halo2#248 -Implement endoscaling in -the circuit + + +zcash/halo2#248 +Implement endoscaling in +the circuit - + zcash/halo2#248->zcash/halo2#250 - - + + - + zcash/halo2#249 - - -zcash/halo2#249 -Implement circuit logic -for handling public -inputs + + +zcash/halo2#249 +Implement circuit logic +for handling public +inputs - + zcash/halo2#249->zcash/halo2#250 - - + + - + zcash/halo2#246 - - -zcash/halo2#246 -Create recursive proof -structures + + +zcash/halo2#246 +Create recursive proof +structures - + zcash/halo2#247 - - -zcash/halo2#247 -Implement underlying -scaffolding for the -recursive circuit + + +zcash/halo2#247 +Implement underlying +scaffolding for the +recursive circuit - + zcash/halo2#246->zcash/halo2#247 - - + + - + zcash/halo2#247->zcash/halo2#250 - - + + - + zcash/halo2#245 - - -zcash/halo2#245 -Remove the need to -multiply by powers of x^n -in verifier + + +zcash/halo2#245 +Remove the need to +multiply by powers of x^n +in verifier - + zcash/halo2#245->zcash/halo2#63 - - + + - + zcash/halo2#245->zcash/halo2#250 - - + + - + zcash/halo2#210 - - -zcash/halo2#210 -Make multiopen -point_index_map dependent -only on the rotation + + +zcash/halo2#210 +Make multiopen +point_index_map dependent +only on the rotation - + zcash/halo2#210->zcash/halo2#250 - - + + - + zcash/orchard#38 - - -zcash/orchard#38 -Implement generic ECC -gadget + + +zcash/orchard#38 +Implement generic ECC +gadget - + zcash/orchard#96 - - -zcash/orchard#96 -Implement Sinsemilla -gadget + + +zcash/orchard#96 +Implement Sinsemilla +gadget - + zcash/orchard#38->zcash/orchard#96 - - + + - + zcash/orchard#96->zcash/orchard#4 - - + + - + zcash/orchard#67 - - - - -zcash/orchard#67 -Sinsemilla chip with -HashDomain + + + + +zcash/orchard#67 +Sinsemilla chip with +HashDomain - + zcash/orchard#67->zcash/orchard#95 - - + + - + zcash/orchard#67->zcash/orchard#96 - - + + diff --git a/zcash-zf-dag.svg b/zcash-zf-dag.svg index db92a3be..886a3b4d 100644 --- a/zcash-zf-dag.svg +++ b/zcash-zf-dag.svg @@ -4,10 +4,10 @@ - - - + + + ZcashFoundation/zebra#1135 @@ -694,10 +694,10 @@ ZcashFoundation/zebra#1791 - -ZcashFoundation/zebra#1791 -Re-enable `sync_large_che -ckpoints_testnet` test + +ZcashFoundation/zebra#1791 +Re-enable `sync_large_che +ckpoints_testnet` test @@ -705,32 +705,32 @@ ZcashFoundation/zebra#1007 - - - -ZcashFoundation/zebra#1007 -Draft RFC: Initial draft -for basic network -integration testing + + + +ZcashFoundation/zebra#1007 +Draft RFC: Initial draft +for basic network +integration testing ZcashFoundation/zebra#1791->ZcashFoundation/zebra#1007 - - + + ZcashFoundation/zebra#1827 - -ZcashFoundation/zebra#1827 -Split `WrongVersion` -errors into -`OutdatedVersion` and -`PreActivationVersion` + +ZcashFoundation/zebra#1827 +Split `WrongVersion` +errors into +`OutdatedVersion` and +`PreActivationVersion` @@ -738,11 +738,11 @@ ZcashFoundation/zebra#1828 - -ZcashFoundation/zebra#1828 -Move duplicate -`Transaction` code into -methods + +ZcashFoundation/zebra#1828 +Move duplicate +`Transaction` code into +methods @@ -750,10 +750,10 @@ ZcashFoundation/zebra#1592 - -ZcashFoundation/zebra#1592 -Write tests for sync -hangs + +ZcashFoundation/zebra#1592 +Write tests for sync +hangs @@ -761,228 +761,145 @@ ZcashFoundation/zebra#1817 - - - -ZcashFoundation/zebra#1817 -Re-Apply "Refactor -`connection.rs` to make -`fail_with` errors -impossible" (double -revert) + + + +ZcashFoundation/zebra#1817 +Re-Apply "Refactor +`connection.rs` to make +`fail_with` errors +impossible" (double +revert) ZcashFoundation/zebra#1592->ZcashFoundation/zebra#1817 - - + + ZcashFoundation/zebra#1841 - -ZcashFoundation/zebra#1841 -ZIP-252: Update Zebra and -DNS Seeders with NU5 -activation heights + +ZcashFoundation/zebra#1841 +ZIP-252: Update Zebra and +DNS Seeders with NU5 +activation heights - - -ZcashFoundation/zebra#1849 - - -ZcashFoundation/zebra#1849 -Refactor MetaAddr fields -to enable security fixes - - - - - -ZcashFoundation/zebra#1848 - - -ZcashFoundation/zebra#1848 -Security: Limit -reconnection rate to each -individual peer address - - - - - -ZcashFoundation/zebra#1849->ZcashFoundation/zebra#1848 - - - - + ZcashFoundation/zebra#1865 - - -ZcashFoundation/zebra#1865 -Security: Running Zebra -nodes should eventually -stop trying to contact -peers that always fail + + +ZcashFoundation/zebra#1865 +Security: Running Zebra +nodes should eventually +stop trying to contact +peers that always fail - - -ZcashFoundation/zebra#1849->ZcashFoundation/zebra#1865 - - - - - -ZcashFoundation/zebra#1867 - - -ZcashFoundation/zebra#1867 -Security: Zebra should -stop gossiping -unreachable addresses to -other nodes, Action: re- -deploy all nodes - - - - - -ZcashFoundation/zebra#1849->ZcashFoundation/zebra#1867 - - - - - -ZcashFoundation/zebra#1868 - - -ZcashFoundation/zebra#1868 -Security: Zebra should -stop gossiping failure -times as last_seen times - - - - - -ZcashFoundation/zebra#1849->ZcashFoundation/zebra#1868 - - - - - -ZcashFoundation/zebra#1873 - - -ZcashFoundation/zebra#1873 -Zebra's address book can -use all available memory - - - - - -ZcashFoundation/zebra#1849->ZcashFoundation/zebra#1873 - - - - - -ZcashFoundation/zebra#1875 - - -ZcashFoundation/zebra#1875 -Zebra attempts new peer -connections in a fixed, -predictable order - - - - - -ZcashFoundation/zebra#1849->ZcashFoundation/zebra#1875 - - - - - -ZcashFoundation/zebra#1876 - - -ZcashFoundation/zebra#1876 -Security: Retry -previously successful -peers before peers that -have always failed - - - - - -ZcashFoundation/zebra#1849->ZcashFoundation/zebra#1876 - - - - - -ZcashFoundation/zebra#1848->ZcashFoundation/zebra#1875 - - - - + ZcashFoundation/zebra#1956 - - -ZcashFoundation/zebra#1956 -Zebra should store a -persistent list of recent -successful peers + + +ZcashFoundation/zebra#1956 +Zebra should store a +persistent list of recent +successful peers - + ZcashFoundation/zebra#1865->ZcashFoundation/zebra#1956 - - + + + + + +ZcashFoundation/zebra#1867 + + +ZcashFoundation/zebra#1867 +Security: Zebra should +stop gossiping +unreachable addresses to +other nodes, Action: re- +deploy all nodes + + - + ZcashFoundation/zebra#1867->ZcashFoundation/zebra#1791 - - + + - + ZcashFoundation/zebra#1867->ZcashFoundation/zebra#1865 - - + + - + ZcashFoundation/zebra#1867->ZcashFoundation/zebra#1956 - - + + + + + +ZcashFoundation/zebra#1873 + + +ZcashFoundation/zebra#1873 +Zebra's address book can +use all available memory + + + + + +ZcashFoundation/zebra#1875 + + +ZcashFoundation/zebra#1875 +Zebra attempts new peer +connections in a fixed, +predictable order + + + + + +ZcashFoundation/zebra#1876 + + +ZcashFoundation/zebra#1876 +Security: Retry +previously successful +peers before peers that +have always failed + + - + ZcashFoundation/zebra#1876->ZcashFoundation/zebra#1875 - - + + - + ZcashFoundation/zebra#1869 - + ZcashFoundation/zebra#1869 Zebra should limit the @@ -993,761 +910,809 @@ - + ZcashFoundation/zebra#1869->ZcashFoundation/zebra#1791 - - + + - + ZcashFoundation/zebra#1869->ZcashFoundation/zebra#1873 - - + + - + ZcashFoundation/zebra#1890 - - -ZcashFoundation/zebra#1890 -Zebra should support -separate local bind and -external advertise -addresses + + +ZcashFoundation/zebra#1890 +Zebra should support +separate local bind and +external advertise +addresses - + ZcashFoundation/zebra#1893 - - -ZcashFoundation/zebra#1893 -Zebra should auto- -discover its own external -IP address + + +ZcashFoundation/zebra#1893 +Zebra should auto- +discover its own external +IP address - + ZcashFoundation/zebra#1890->ZcashFoundation/zebra#1893 - - + + - + ZcashFoundation/zebra#1904 - - -ZcashFoundation/zebra#1904 -Testnet DNS seeders don't -show the Foundation's new -zcashd nodes + + +ZcashFoundation/zebra#1904 +Testnet DNS seeders don't +show the Foundation's new +zcashd nodes - + ZcashFoundation/zebra#1904->ZcashFoundation/zebra#1791 - - + + - + ZcashFoundation/zebra#1917 - - -ZcashFoundation/zebra#1917 -Check Transaction -cardinality at parse -time, to limit memory -usage + + +ZcashFoundation/zebra#1917 +Check Transaction +cardinality at parse +time, to limit memory +usage - + ZcashFoundation/zebra#1851 - - -ZcashFoundation/zebra#1851 -Limit the number of -connected peers in the -PeerSet + + +ZcashFoundation/zebra#1851 +Limit the number of +connected peers in the +PeerSet - + ZcashFoundation/zebra#1850 - - -ZcashFoundation/zebra#1850 -Security: Limit the -number of outbound peer -connections when dialing -new peers + + +ZcashFoundation/zebra#1850 +Security: Limit the +number of outbound peer +connections when dialing +new peers - + ZcashFoundation/zebra#1334 - - -ZcashFoundation/zebra#1334 -After network upgrade -activation, reject new -connections from outdated -peers + + +ZcashFoundation/zebra#1334 +After network upgrade +activation, reject new +connections from outdated +peers - + ZcashFoundation/zebra#706 - - -ZcashFoundation/zebra#706 -Do we need to prefer -evicting pre-upgrade -peers from the peer set -across a network upgrade? + + +ZcashFoundation/zebra#706 +Do we need to prefer +evicting pre-upgrade +peers from the peer set +across a network upgrade? - + ZcashFoundation/zebra#1334->ZcashFoundation/zebra#706 - - + + - + ZcashFoundation/zebra#1894 - - -ZcashFoundation/zebra#1894 -Zebra should follow OS -directory conventions -better + + +ZcashFoundation/zebra#1894 +Zebra should follow OS +directory conventions +better - + ZcashFoundation/zebra#1894->ZcashFoundation/zebra#1956 - - + + - + ZcashFoundation/zebra#1874 - - -ZcashFoundation/zebra#1874 -ZIP 244: Transaction -Identifier Non- -Malleability + + +ZcashFoundation/zebra#1874 +ZIP 244: Transaction +Identifier Non- +Malleability - + ZcashFoundation/zebra#1567 - - -ZcashFoundation/zebra#1567 -ZIP-221: Block Header -Chain History Commitment + + +ZcashFoundation/zebra#1567 +ZIP-221: Block Header +Chain History Commitment - + ZcashFoundation/zebra#2015 - - -ZcashFoundation/zebra#2015 -Run coverage on the -latest nightly + + +ZcashFoundation/zebra#2015 +Run coverage on the +latest nightly - + ZcashFoundation/zebra#2028 - - -ZcashFoundation/zebra#2028 -Use the AtLeastOne -generic type to enforce -field counts + + +ZcashFoundation/zebra#2028 +Use the AtLeastOne +generic type to enforce +field counts - + ZcashFoundation/zebra#1774 - - -ZcashFoundation/zebra#1774 -Add a size estimator to -the message encoder and -serializers + + +ZcashFoundation/zebra#1774 +Add a size estimator to +the message encoder and +serializers - + ZcashFoundation/zebra#2035 - - - - -ZcashFoundation/zebra#2035 -Add external_addr to -config (network section) + + + + +ZcashFoundation/zebra#2035 +Add external_addr to +config (network section) - + ZcashFoundation/zebra#2052 - - -ZcashFoundation/zebra#2052 -Use default port for -initial peers and -external addresses + + +ZcashFoundation/zebra#2052 +Use default port for +initial peers and +external addresses - + ZcashFoundation/zebra#2035->ZcashFoundation/zebra#2052 - - + + - + ZcashFoundation/zebra#2050 - - -ZcashFoundation/zebra#2050 -ZIP-244: Implement Non- -Malleable transaction ids + + +ZcashFoundation/zebra#2050 +ZIP-244: Implement Non- +Malleable transaction ids - + ZcashFoundation/zebra#2051 - - -ZcashFoundation/zebra#2051 -ZIP-244: Implement -sighash for Non-Malleable -Transaction Ids + + +ZcashFoundation/zebra#2051 +ZIP-244: Implement +sighash for Non-Malleable +Transaction Ids - + ZcashFoundation/zebra#2050->ZcashFoundation/zebra#2051 - - + + - + ZcashFoundation/zebra#2165 - - - - -ZcashFoundation/zebra#2165 -Add ZIP-244 signature -hash support + + + + +ZcashFoundation/zebra#2165 +Add ZIP-244 signature +hash support - + ZcashFoundation/zebra#2050->ZcashFoundation/zebra#2165 - - + + - + ZcashFoundation/zebra#608 - - -ZcashFoundation/zebra#608 -ZIP-213: Validate -Shielded Coinbase Outputs + + +ZcashFoundation/zebra#608 +ZIP-213: Validate +Shielded Coinbase Outputs - + ZcashFoundation/zebra#2152 - - -ZcashFoundation/zebra#2152 -ZIP-209 RFC: Value Pools -Design + + +ZcashFoundation/zebra#2152 +ZIP-209 RFC: Value Pools +Design - + ZcashFoundation/zebra#1895 - - -ZcashFoundation/zebra#1895 -ZIP-209: Prohibit -Negative Shielded Chain -Value Pool Balances - -Implementation + + +ZcashFoundation/zebra#1895 +ZIP-209: Prohibit +Negative Shielded Chain +Value Pool Balances - +Implementation - + ZcashFoundation/zebra#2152->ZcashFoundation/zebra#1895 - - + + - + ZcashFoundation/zebra#1973 - - -ZcashFoundation/zebra#1973 -Automatically invalidate -preselected peers + + +ZcashFoundation/zebra#1973 +Automatically invalidate +preselected peers - + ZcashFoundation/zebra#2156 - - -ZcashFoundation/zebra#2156 -Security: Send notfound -inv items to the inv -collector, Credit: -Equilibrium + + +ZcashFoundation/zebra#2156 +Security: Send notfound +inv items to the inv +collector, Credit: +Equilibrium - + ZcashFoundation/zebra#1973->ZcashFoundation/zebra#2156 - - + + - + ZcashFoundation/zebra#2160 - - - - -ZcashFoundation/zebra#2160 -Security: MetaAddr -refactor, gossip time, -connection order, -reconnection rate fixes -(see tickets) + + + + +ZcashFoundation/zebra#2160 +Security: MetaAddr +refactor, gossip time, +connection order, +reconnection rate fixes +(see tickets) - + ZcashFoundation/zebra#829 - - -ZcashFoundation/zebra#829 -Replace `primitive_types` -with `bigint` + + +ZcashFoundation/zebra#829 +Replace `primitive_types` +with `bigint` - + ZcashFoundation/zebra#829->ZcashFoundation/zebra#2050 - - + + - + ZcashFoundation/zebra#2129 - - - - -ZcashFoundation/zebra#2129 -Add ZIP-0244 TxId Digest -support + + + + +ZcashFoundation/zebra#2129 +Add ZIP-0244 TxId Digest +support - + ZcashFoundation/zebra#829->ZcashFoundation/zebra#2129 - - + + - + ZcashFoundation/zebra#2292 - - -ZcashFoundation/zebra#2292 -Cleanup MetaAddr after -security fixes + + +ZcashFoundation/zebra#2292 +Cleanup MetaAddr after +security fixes - - -ZcashFoundation/zebra#2275 - - - - -ZcashFoundation/zebra#2275 -Security: Limit -reconnection rate to -individual peers - - - - - -ZcashFoundation/zebra#2275->ZcashFoundation/zebra#2292 - - - - - -ZcashFoundation/zebra#2293 - - -ZcashFoundation/zebra#2293 -Batch MetaAddrChanges and -remove identical changes - - - - - -ZcashFoundation/zebra#2275->ZcashFoundation/zebra#2293 - - - - + ZcashFoundation/zebra#2276 - - - - -ZcashFoundation/zebra#2276 -Always send our local -listener with the latest -time + + + + +ZcashFoundation/zebra#2276 +Always send our local +listener with the latest +time - + ZcashFoundation/zebra#2276->ZcashFoundation/zebra#2292 - - + + - + ZcashFoundation/zebra#2277 - - - - -ZcashFoundation/zebra#2277 -Gossip dynamic local -listener ports to peers + + + + +ZcashFoundation/zebra#2277 +Gossip dynamic local +listener ports to peers - + ZcashFoundation/zebra#2277->ZcashFoundation/zebra#2292 - - + + + + + +ZcashFoundation/zebra#2293 + + +ZcashFoundation/zebra#2293 +Batch MetaAddrChanges and +remove identical changes + + - + ZcashFoundation/zebra#2262 - - -ZcashFoundation/zebra#2262 -After network upgrade -activation, close -existing connections to -outdated peers + + +ZcashFoundation/zebra#2262 +After network upgrade +activation, close +existing connections to +outdated peers - + ZcashFoundation/zebra#2262->ZcashFoundation/zebra#1334 - - + + - + ZcashFoundation/zebra#2262->ZcashFoundation/zebra#706 - - + + - + ZcashFoundation/zebra#2261 - - -ZcashFoundation/zebra#2261 -Stop sending addresses of -outdated peers to other -peers + + +ZcashFoundation/zebra#2261 +Stop sending addresses of +outdated peers to other +peers - + ZcashFoundation/zebra#2262->ZcashFoundation/zebra#2261 - - + + - + ZcashFoundation/zebra#2107 - - -ZcashFoundation/zebra#2107 -Security: Stop -immediately disconnecting -from nodes that send -unexpected messages, -Credit: Equilibrium + + +ZcashFoundation/zebra#2107 +Security: Stop +immediately disconnecting +from nodes that send +unexpected messages, +Credit: Equilibrium - + ZcashFoundation/zebra#2262->ZcashFoundation/zebra#2107 - - + + - + ZcashFoundation/zebra#2107->ZcashFoundation/zebra#706 - - + + - + ZcashFoundation/zebra#2288 - - - - -ZcashFoundation/zebra#2288 -Batch math & variable- -time multiscalar -multiplication for -redpallas + + + + +ZcashFoundation/zebra#2288 +Batch math & variable- +time multiscalar +multiplication for +redpallas - + ZcashFoundation/zebra#2318 - - - - -ZcashFoundation/zebra#2318 -RedPallas async verifier -service + + + + +ZcashFoundation/zebra#2318 +RedPallas async verifier +service - + ZcashFoundation/zebra#2288->ZcashFoundation/zebra#2318 - - + + - + ZcashFoundation/zebra#2317 - - -ZcashFoundation/zebra#2317 -Validate Orchard -SpendAuth signatures for -Transaction::V5 + + +ZcashFoundation/zebra#2317 +Validate Orchard +SpendAuth signatures for +Transaction::V5 - + ZcashFoundation/zebra#2318->ZcashFoundation/zebra#2317 - - + + - + ZcashFoundation/zebra#2102 - - -ZcashFoundation/zebra#2102 -Implement Orchard binding -verification key -derivation + + +ZcashFoundation/zebra#2102 +Implement Orchard binding +verification key +derivation - + ZcashFoundation/zebra#2102->ZcashFoundation/zebra#2317 - - + + - + ZcashFoundation/zebra#2103 - - -ZcashFoundation/zebra#2103 -Validate -bindingSigOrchard for -Transaction::V5 + + +ZcashFoundation/zebra#2103 +Validate +bindingSigOrchard for +Transaction::V5 - + ZcashFoundation/zebra#2102->ZcashFoundation/zebra#2103 - - + + - + ZcashFoundation/zebra#1970 - - -ZcashFoundation/zebra#1970 -Design: Validate -transparent coinbase -outputs, update database -to track UTXO provenance + + +ZcashFoundation/zebra#1970 +Design: Validate +transparent coinbase +outputs, update database +to track UTXO provenance - + ZcashFoundation/zebra#2329 - - -ZcashFoundation/zebra#2329 -State: Validate -transparent coinbase -outputs, update database -to track UTXO provenance + + +ZcashFoundation/zebra#2329 +State: Validate +transparent coinbase +outputs, update database +to track UTXO provenance - + ZcashFoundation/zebra#1970->ZcashFoundation/zebra#2329 - - + + - + ZcashFoundation/zebra#2330 - - -ZcashFoundation/zebra#2330 -Transaction Verifier: -Validate transparent -coinbase outputs, update -state requests to track -UTXO provenance + + +ZcashFoundation/zebra#2330 +Transaction Verifier: +Validate transparent +coinbase outputs, update +state requests to track +UTXO provenance - + ZcashFoundation/zebra#1970->ZcashFoundation/zebra#2330 - - + + - + ZcashFoundation/zebra#2329->ZcashFoundation/zebra#2330 - - + + - + ZcashFoundation/zcash_script#21 - - -ZcashFoundation/zcash_script#21 -Add support for V5 -transactions + + +ZcashFoundation/zcash_script#21 +Add support for V5 +transactions - + ZcashFoundation/zebra#2328 - - -ZcashFoundation/zebra#2328 -Update `zcash_script` to -support V5 transactions + + +ZcashFoundation/zebra#2328 +Update `zcash_script` to +support V5 transactions - + ZcashFoundation/zcash_script#21->ZcashFoundation/zebra#2328 - - + + - + ZcashFoundation/zebra#1981 - - -ZcashFoundation/zebra#1981 -Implement Transparent and -Sapling validation for -transaction v5 + + +ZcashFoundation/zebra#1981 +Implement Transparent and +Sapling validation for +transaction v5 - + ZcashFoundation/zebra#2328->ZcashFoundation/zebra#1981 - - + + + + + +ZcashFoundation/zebra#2343 + + +ZcashFoundation/zebra#2343 +Move the Transaction +network upgrade check to +zebra-chain + + + + + +ZcashFoundation/zebra#2308 + + +ZcashFoundation/zebra#2308 +Legacy Chain Check + + + + + +ZcashFoundation/zebra#2343->ZcashFoundation/zebra#2308 + + + + + +ZcashFoundation/zebra#2344 + + +ZcashFoundation/zebra#2344 +Add a path method to the +FinalizedState + + + + + +ZcashFoundation/zebra#2344->ZcashFoundation/zebra#2308 + + + + + +ZcashFoundation/zebra#2338 + + +ZcashFoundation/zebra#2338 +Create Error enums in +`zebrad` + + + + + +ZcashFoundation/zebra#2339 + + +ZcashFoundation/zebra#2339 +Downcast and match +Already Verified error +enums in the syncer + + + + + +ZcashFoundation/zebra#2338->ZcashFoundation/zebra#2339 + +