SIGN IN SIGN UP

fix: surface ByteDance video generation last-frame URLs (#19920)

## Background

ByteDance video generation requested the final frame but did not expose
its URL, preventing users from chaining generated clips.

## Root Cause

The ByteDance status-response schema omitted content.last_frame_url, so
Zod stripped the confirmed API field; the completed-result mapper also
lacked a lastFrameUrl metadata mapping.

## Summary

Added last_frame_url to status parsing, conditionally exposed it as
providerMetadata.bytedance.lastFrameUrl, added regression coverage, and
included a patch changeset.

## Testing

Updated the ByteDance video-model test response and assertions to verify
that returned last-frame URLs appear in completed provider metadata.

## End-to-end Validation

- `replay_original_reproduction` — immutable reproduction exited
successfully without the original bug signal.
- `pnpm -C examples/ai-functions exec tsx -e "<live ByteDance
generateVideo check>"` — live ModelArk generation returned a string
lastFrameUrl in provider metadata.

## Related Issues

Fixes #17883

Closes #19889

---------

Co-authored-by: ai-sdk-factory <308175966+ai-sdk-factory@users.noreply.github.com>
Co-authored-by: Gregor Martynus <39992+gr2m@users.noreply.github.com>
Co-authored-by: jsphellis <69395598+jsphellis@users.noreply.github.com>
Co-authored-by: Aayush Kapoor <83492835+aayush-kapoor@users.noreply.github.com>
A
ai-sdk-factory[bot] committed
99d4211716708a898aad9424a7140f4674bbfd85
Parent: e604532
Committed by GitHub <noreply@github.com> on 8/28/2026, 4:50:00 PM