Built on top of #34644
Preferred to open a separate PR to keep the other one focused on submitBlock.
This PR:
- Extracts a shared
ProcessBlockhelper that wrapsProcessNewBlockwithSubmitBlockStateCatcherto captureBlockValidationState - Adds
reasonanddebugoutput parameters tosubmitSolution, matchingsubmitBlock - Makes both methods delegate to the same helper, eliminating duplicated logic