Tests cover: - Clone: CustomFieldValue references cloned definitions, not source - Clone: values are preserved after cloning - Slots: 404 on non-existent piece, 422 on wrong type, success on correct type - Conversion: blocked when slots have filled data, allowed when empty - CustomField: rejects orphan creation, accepts existing field by ID Also removes legacy JSON structure check (column no longer exists after normalization) — replaced by slot table checks. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
11 KiB
11 KiB