[CODE] Which file and function used for building a proposal from a payment transaction - Algorand

[CODE] Which file and function used for building a proposal from a payment transaction

post by zach on Oct 14, 2019

I’ve looked at agreement/proposal.go (and related test file), and see where it makeProposal() and validate() it. I don’t see any transactions. I know the Block has a transaction payset associated, but I’m not understanding where it adds a transaction to the block. Where does a participant take payment transactions and “roll them” into a block to propose? Which file and function?

Also, where are participants voting on the proposed block (e.g. verifying signatures, verifying role, etc)?

Thanks. Wanting to understand the flow of this before diving into contributing and helping.

post by tsachi on Oct 14, 2019

Hi zach,

I don’t have the access to the code base from this machine, so I’ll try to give you some pointers -

The flow might not be the easiest to understand, but it’s quite well optimized (from a computer standpoint, that is…).