449d998064
1. Tree hash (RFC 9420 Section 7.9): Leaf hash now includes uint32(leaf_index) before optional<LeafNode>. Parent hash wraps left_hash and right_hash with VarInt-prefixed opaques. 2. Message serialization tests: Fixed Add/Remove proposal tests to match the messages.json format (Add includes type prefix, Remove is just uint32 body without type prefix). Test results: 34/41 passing (83%). Remaining 7 failures: - EncryptWithLabel: HPKE AEAD needs AAD support - Add proposal: KeyPackage decode issue in test data - Transcript hashes (2): Need AuthenticatedContent parsing - Tree hash (1): May need per-node hash verification - Tree operations (2): Tree hash still mismatches after operations https://claude.ai/code/session_01NocQDWj2Y92FugjfgazzL3