Define the data structures for test reports. Create TestReport struct with: test_name, status (Passed/Failed/SoftFailed), start_time, end_time, duration, sections (Vec), soft_errors, hard_errors, metrics (blocks_produced, transactions_sent, proofs_generated, gossip_consistency), node_summaries. Track timing metrics per section, categorize errors by type and context, include node health information, support serialization to multiple formats.