Timeline warning transition_downgraded_to_cut: why a fade became a cut
Sume Timeline turns a fade, wipe or slide into a hard cut when the transition does not fit the clip. Why it happens in short vertical edits and how to avoid it.

The warning transition_downgraded_to_cut means a transition you asked for did not fit the source it had to blend with, so the compiler used a hard cut instead. The render still succeeds. It shows up in warnings[] on GET /v1/jobs/:id/result, read from the Timeline docs and compiler on 2026-10-06.
Which transition limits does the schema enforce?
A transition goes on slots after the first. The type is one of fade, wipeleft, wiperight, slideup, slidedown or dissolve. The duration must be 1 second or less and at most 50 percent of the shorter neighbor, and a chain of transitions is capped at eight.
| Rule | Limit |
|---|---|
| Allowed slots | Every slot after the first |
| Duration | 1 second or less |
| Share of shorter neighbor | 50 percent or less |
| Chained transitions | 8 |
When does a valid transition still downgrade?
The schema checks the declared durations. The compiler also checks the real source. If a clip is shorter than the slot it was given, or its remaining footage cannot cover the overlap, the blend has nothing to dissolve into and the compiler cuts instead. Short-form edits hit this often because 1 to 2 second slots leave little room.
How do I avoid the downgrade?
Warnings are soft: nothing is refunded or retried automatically, so scan them before you upload a Short.
- Keep a transition at 0.25 to 0.5 seconds when slots are under 2 seconds.
- Make each source at least as long as its slot plus the overlap.
- Read
warnings[].segment_indexto find the slot, then lengthen the source or shorten the transition.
Sources
Related posts
More in Developers
- Sume timeline warnings are not failures: a gate for your season
A padded, looped, resampled or clamped clip comes back as a warning on a completed render. A Python allowlist gate stops those episodes before you publish.
- Titan base64 image fields vs Sume input_references URLs in Python
Titan sends images as base64 strings inside the request. Sume wants public HTTPS URLs. A Python adapter from a local file to a URL for edits.
- Transcribe 10,000 short clips: queue capacity and wave size by plan
10,000 five-second clips cost $8.33 on Sume STT. How fast they finish depends on plan concurrency and queue capacity: 6, 24, 48 or 120 accepted jobs.
- Text-to-speech API in Node: submit, poll and save the MP3
A Node 18+ fetch example for the Sume TTS Router: submit with an Idempotency-Key, poll status_url, read the audio artifact and save an MP3 to disk.
Written by Sume