de738b27ed
When replaying old CRDT ops that predate new struct fields (e.g. claimed_by, claim_ts added by story 479), node_from would call .unwrap() on None and panic during init. Now defaults to an empty CrdtNode::new() for missing fields, allowing schema evolution without breaking replay of historical ops. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>