forked from piotrnar/gocoin
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathtodo.txt
30 lines (26 loc) · 1.65 KB
/
todo.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Lib:
* Implement BIP9
* Seen "FindPathTo: Unknown path to block" from NewChainExt/ParseTillBlock on init, after soft exit. Undo helped.
* Check implemetation against this: https://bitslog.wordpress.com/2017/01/08/a-bitcoin-transaction-that-takes-5-hours-to-verify/
* CheckTransactions to return descriptive errors (e.g. "bad-txns-vin-empty")
* Try to make own (faster) implementation of sha256 and rimp160
* The best chain should be decided on the amount of hashing work, not the length - SetBestChain()
Client:
* WebUI: Optimize mempool access for fetching "/balance.json?summary&mempool" with a long list of addressess
* WebUI to offer switching to "-trust -nowallet" mode while downloading many blocks.
* Make -nowallet mode switchable without restarting the node.
* Optionally use utils.GetBlockFromWeb() for initial blockchain download
* Monitor: the main loop got stuck in network.Tick() function after ~50 days of uptime (see TODO in tick.go)
* Make sure it does not need to "Undo block ##" after fist rejecting it with "Corrupt block received from"
Corrupt block received from 91.106.149.46:8333 CheckBlock() : size limits failed high - RPC_Result:bad-blk-length
Undo block 450529 000000000000000000cf208f521de0424677f7a87f2f278a1042f38d159565f5 976 KB
* Implement "Child Pays for Parent Merged" (mining feature)
* At slow connections it gets stuck (new blocks stop being downloaded). Go to standby and come back.
Wallet:
* Implement "server mode", e.g. through TCP or serial connection
* Write some automated tests
Probably not to do:
* Do not list unmatured coinbase outputs in the balance
* Implement "mempool" network command
Tools:
* txaddsig - make it to work with multisig