The headline says pretty much what happens when our common dataset is synchronized in a base.
Is this a bug?
I cannot reproduce the issue. When I sync a CDS, a duration column is synced into a duration column. Repeated syncs does not change that.
Hence it does not seem to be a general problem. You’ll have to provide more info.
The origin column contains a formula to calculate work time duration and is set to duration
dateDif({Schicht Beginn},{Schicht Ende})
You do NOT sync a column of type duration. You sync a column of type formula which you defined to look like a duration column. (Obviously not the same.)
The result of datedif() is a number (e.g. 1, 5, 87). So the result type is number. Formula columns of this type are synced as number columns.
Long story short: No, not a bug. SeaTable behaves as it is supposed to.