Transaction.uuid is typed as String in lance/src/dataset/transaction.rs, but it always holds a UUID value. The proto field (pb::Transaction.uuid) is also a string.
Change Transaction.uuid to Uuid, parsing from the proto string in TryFrom<pb::Transaction> and formatting with .hyphenated() at the one callsite that builds the .txn filename. Also update TransactionBuilder::uuid to accept Uuid instead of String, which removes .to_string() calls at builder callsites that already hold a Uuid.
Transaction.uuidis typed asStringinlance/src/dataset/transaction.rs, but it always holds a UUID value. The proto field (pb::Transaction.uuid) is also astring.Change
Transaction.uuidtoUuid, parsing from the proto string inTryFrom<pb::Transaction>and formatting with.hyphenated()at the one callsite that builds the.txnfilename. Also updateTransactionBuilder::uuidto acceptUuidinstead ofString, which removes.to_string()calls at builder callsites that already hold aUuid.