diff options
| author | Maze Winther <mazewinther@gmail.com> | 2026-05-02 01:28:19 +0200 |
|---|---|---|
| committer | Maze Winther <mazewinther@gmail.com> | 2026-05-02 03:27:23 +0200 |
| commit | f66cdbfeb2e8b68e70e1f8595c38cacf58210ddf (patch) | |
| tree | 2d55fcef60c19703cbfdc72c037c906687676f8a /apps/web/src/services/storage/migrations/transformers | |
| parent | 99137fe493a3e8a60b205541d1f1891b19a045f9 (diff) | |
| download | opencut-f66cdbfeb2e8b68e70e1f8595c38cacf58210ddf.tar.gz | |
fix: address review findings in masks substrate
- Remove dead ternary in getPreferredEdges (always returned undefined; the
all-false object was never reached by Object.values().some(Boolean))
- Document why drawWithFeather descriptors zero the feather field in the
compositor (analytical renderer handles softness itself; zeroing prevents
a second JFA feather pass)
- Remove legacyType from V30→V31 migration (not consumed anywhere; a
down-migration can map type:"freeform" back to "custom" directly)
- Add V30→V31 test coverage: skip-guard branches, freeform passthrough,
elements without a masks array
- Add snap tests for vertical-edge (bottom) and uniform-scale handle paths
Co-authored-by: Cursor <cursoragent@cursor.com>
Diffstat (limited to 'apps/web/src/services/storage/migrations/transformers')
| -rw-r--r-- | apps/web/src/services/storage/migrations/transformers/v30-to-v31.ts | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/apps/web/src/services/storage/migrations/transformers/v30-to-v31.ts b/apps/web/src/services/storage/migrations/transformers/v30-to-v31.ts index acdf4061..512fc921 100644 --- a/apps/web/src/services/storage/migrations/transformers/v30-to-v31.ts +++ b/apps/web/src/services/storage/migrations/transformers/v30-to-v31.ts @@ -91,9 +91,10 @@ function migrateMask({ mask }: { mask: unknown }): unknown { return mask; } + // "custom" is the only freeform-path mask type; a down-migration can map + // type === "freeform" back to "custom" without any additional marker. return { ...mask, type: "freeform", - legacyType: "custom", }; } |
