Parent Epic
#44
Bug
table_diff.py processes row changes and column changes separately, but when rows change it skips column ops entirely. Adding both a row and a column in the same reconcile only produces insertTableRow — the insertTableColumn is silently dropped.
Root Cause
From table_diff.py: when the fuzzy LCS on rows detects row insertions/deletions, column diffing is skipped. The logic assumes row and column changes are mutually exclusive.
Impact
Any table edit that simultaneously adds/removes rows AND columns will produce an incomplete result — the column operation is lost.
Suggested Fix
Consider splitting into two batches or supporting both axes. Alternatively, document this as a known limitation and handle the combined case by deleting and reinserting the table.
xfail Tests (1)
TestComplexTables::test_table_add_row_and_column_simultaneously
Parent Epic
#44
Bug
table_diff.pyprocesses row changes and column changes separately, but when rows change it skips column ops entirely. Adding both a row and a column in the same reconcile only producesinsertTableRow— theinsertTableColumnis silently dropped.Root Cause
From
table_diff.py: when the fuzzy LCS on rows detects row insertions/deletions, column diffing is skipped. The logic assumes row and column changes are mutually exclusive.Impact
Any table edit that simultaneously adds/removes rows AND columns will produce an incomplete result — the column operation is lost.
Suggested Fix
Consider splitting into two batches or supporting both axes. Alternatively, document this as a known limitation and handle the combined case by deleting and reinserting the table.
xfail Tests (1)
TestComplexTables::test_table_add_row_and_column_simultaneously