You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Both findings are the same hand-listed-key pattern the round-1 fix removed
elsewhere, in code that round introduced.
`addTableColumn` built a new column from `options`/`multiple` plus whatever
`defaultMetadata` returned. `number` and `percent` deliberately declare no
`defaultMetadata` for `precision` (absent has to keep meaning "render as
stored"), so a precision the sidebar and the contract both accepted was dropped
before it reached the schema. It now carries every key the target type owns,
mirroring `buildConvertedColumn`.
Toggling `includeTime` off runs a migration that truncates every stored cell,
but the mutation treated the metadata path as schema-only and never invalidated
row data — the grid kept rendering pre-migration timestamps while filters and
exports saw the truncated values. Types now declare `metadataRewritesCells`,
the client-safe counterpart to the server registry's `migrateCellsForMetadata`,
and the hook reads it instead of naming keys.
Nothing but a test couples those two halves, so there is now one asserting a
type declares `metadataRewritesCells` exactly when it declares a migration.
0 commit comments