Open pooja opened 5 years ago
From Lotus:
P0:
P1:
P2:
@sternhenri @whyrusleeping Could I get one of you to please respond to the questions from Soramitsu ASAP (i.e. by end of week)? These are mostly questions about status, so hopefully shouldn't be too hard to answer! These are urgent though, so would appreciate your help here.
@dignifiedquire and @sternhenri are planning on getting to this today
Do we know who is responsible for translation of character address to bytes?
Not sure what is being asked here
Proof of Space-Time and other proofs – are they finished in Rust language? Can we start writing bindings over them?
Yes, see https://github.com/filecoin-project/go-sectorbuilder for the go bindings
What are the list of libp2p protocols we should support? What is used for security, muxing, transport?
see: https://github.com/filecoin-project/specs/blob/master/networking.md
Is the usefulness of peers clearly defined or there is room for different interpretations?
Thats up to the client
Recommendation 25-50 connection slots while a node should not attempt to connect to more than 10 bootnodes. Is this consistent?
Seems acceptable, this is technically up to the client, so the specs here are just recommendations
The spec for Bitswap is WIP can we use it already?
Yeah, its pretty stable. though I think we might actually not need bitswap anymore if we're using graphsync or blocksync.
Is “checking signatures” resolved?
Not fully, ideas welcome.
Storage deal Make - there are some ToDos. What is the current status of this design?
Overall, quite solid, there are some details being fleshed out. Should land in the next couple weeks.
How to resolve cases when there are discrepancies between spec and go implementation.
The spec is the grand source of truth, any implementation not doing what the spec says is incorrect.
Any plans for preparing cross implementation tests?
Absolutely, we're planning on starting some of that up in the next month or so. Hard to give exact timelines, but its a high priority.
Thanks @whyrusleeping !
Thanks @whyrusleeping! @sternhenri @dignifiedquire Could y'all take a look at the Lotus questions above, esp the P0 ones?
Are we actually going to use a VDF in consensus? TBDetermined. Requires a final convo w Why, Nicola (preferably), should be answered by eonextweek.
GenerateTicket is undefined in expected-consensus.md Look up
Ticket Generation
insteadRetrieval protocol question: Should we always reference data by an ipfs cid? Seems an ok solution to me, though I may be missing context... May be worth having a non-ipfs format.. IPLD should be the standard here imo.
Retrieval Protocol currently references data by CID. This works for cases where people use ipfs/bitswap to transfer data, but what if we ship a hard drive over? Do we always require users ipld format their data? see above
Clarity on faults please! On it soon with @dignifiedquire, need ok from @jbenet on collateral piece as well to proceed.
Gas costs Small group should just decide.
Actor method error values Ibid, maybe we should just have a day for the above two.
Rational PoSt construction (technically merged, but not 'done' until faults are done) Dig is on it I am guessing... A week or two off.
In the spec, the slashing portion of consensus states:
During a fork, an attacker would have a 30% chance of winning on each fork, meaning they could continue to mine on both forks
Is it intended that a node will have to monitor forks? How is this possible, if a fork doesn't meet the nodes consensus shouldn't that be discarded?
Hi @GregTheGreek. No, the node chain maintainer will monitor the latest head and evaluate new blocks as they are received to either update the chain head or discard them.
However, in the case you highlight, we are considering an adversarial miner attempting to grind. The assumption is that this adversary would be running a custom node that does indeed track each fork (or a subset of them) in order to increase their earnings by deviating from the protocol and not discarding those nodes. When provable, this behavior (mining across forks in a given round) would be slashed.
Does that answer your question?
From Soramitsu: