TanStack
OSS
ai
Sign in / Sign up
Open main menu
ai
GitHub
Overview
Runs
Analytics
Loading workspace stats
Loading workspace insights...
Statistics interval
7 days
30 days
Latest CI Pipeline Executions
Status
Fix filter
Filter
Fuzzy
Filter range
Sort by
Sort by
Start time
Sort ascending
Sort descending
Succeeded
534-video-duration-support
aba231f0 ci: apply automated fixes
by autofix-ci...
a
Failed
534-video-duration-support
aba231f0 ci: apply automated fixes
by autofix-ci...
a
Succeeded
534-video-duration-support
d3850e2c feat(ai,ai-fal): per-model typed durations for video generation (#534) Adds a fifth generic `TModelDurationByName` to `VideoAdapter` plus two introspection methods on the base class: - `availableDurations()` returns a `DurationOptions` tagged union (`discrete | range | mixed | none`) describing the durations the current model accepts. - `snapDuration(seconds)` coerces raw seconds to the closest valid duration for the current model. `generateVideo({ duration })` is now typed via `VideoDurationForAdapter<TAdapter>`. The FAL adapter derives its per-model duration type from the SDK's `EndpointTypeMap`, so e.g. `falVideo('fal-ai/kling-video/v1.6/standard/text-to-video')` types `duration` as `'5' | '10'`; `falVideo('fal-ai/veo3')` types it as `'4s' | '6s' | '8s'`; `falVideo('fal-ai/minimax/video-01')` rejects the field entirely. Adapters that have not yet declared their per-model duration map get sensible defaults (`{ kind: 'none' }`, `undefined`) so existing video adapters keep working without changes. Built on top of #622 (`@tanstack/ai-schemas`); once that PR's FAL pipeline syncs runtime constraint data, the hand-curated map in `packages/typescript/ai-fal/src/video/video-provider-options.ts` can be replaced with schema-derived lookups. Follow-up issue #634 covers building the Gemini Veo adapter directly on this contract. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
by Tom Beckenham
T
Succeeded
534-video-duration-support
d3850e2c Merge 18be2e2413aa783fea037bda24da50b27e49f3bf into 843e490a80c0ed40f7782465b6a69693c6e1e6de
by Tom Beckenham
T
Previous page
Previous
Next
Next page