Who produce the block?

I read the source, but cannot find who produce the block.
my view as below, if i’m wrong ,please correct me.
the farmer just send the solution to node, every node can receive the solution and convert the solution into the digest, and then produce a block.
if this is true, there will be a lot of block that include the same solution, it’s odd.
but I cannot see how to choose the producer.

All summaries will be processed by Polkadot, it appears to be broadcast among some nodes. As for the source of the blocks, I speculate that a slot is randomly selected as the candidate for this block, perhaps you could broadcast the candidate for archiving? Waiting for the final confirmation, then the block is produced, so at the beginning, everyone is the creator of the block.

This is just a speculation based on the documentation and part of the code. We have to wait for a reply from nazar-pc for specifics.

Because the documentation lacks specific implementation details, however, combining the documentation to observe details should be the most effective method.

There will not be, node will produce block locally and will send the block rather than just the solution to the other nodes. Also once produced, notification is sent to the farmer again to sign that block, so other nodes on the network only receive signed blocks and no one else other than that farmer who produced solution can create correct signature.

The node put the solution into the block, but did not forward this block through a node or noderunner. Instead, it was done in a way similar to a domain?
Is the packaging of nodes done through pre-encapsulation based on randomly selected actions?

Node and NodeRunner are implementation details of Subspace networking stack, it is not used for blocks right now and has nothing to do with block production at all. It is all done as in any other Substrate chain and gossiped over Substrate networking stack.

I’m afraid I don’t understand what you’re trying to say here, maybe re-phrase?

I observed that the node would complete the “Prepared block for proposing.” Is this block the packaging completed by the node?

Block is indeed produced by node with solution sent by farmer and then node asks farmer to sign this block

he Document seems to imply that the process is random. What is it depending on for randomness?It appears to randomly pick a solution and act as a signer of the block。

The whole consensus is a lottery, so yes, farmers find valid solution at random if that is what you’re asking. I’m having a hard time understanding what the question is.

each node will produce a block in slot, even the node have no high enough solution to produce a block.

Of course not, read line 351 carefully, specifically ? at the end that will return early in case there was no solution/claim.

thank you very much.