fix(ledger): handle Byron-era CBOR offset extraction gracefully
Byron-era blocks (slot 3313 and similar) have mismatched transaction body and witness set counts, causing ExtractTransactionOffsets to fail. This made the chainsync pipeline restart in an infinite loop. Changes: - ledger/state.go: make CBOR offset error non-fatal, log at debug level and continue with nil offsets - database/transaction.go: skip transaction recording when offsets are nil instead of returning a fatal error This allows the node to sync through Byron-era blocks without stalling while still processing all Shelley+ blocks correctly.