Skip to content

v0.44.0 — async job status/result tools + background media renders (#62)

Choose a tag to compare

@gobha-me gobha-me released this 21 Jul 18:04

Closes the last open sub-issue of epic #59 (kimi-k3 agent-toolset field feedback). The agent's media tools blocked with a capped wait; now a long render can be kicked off in the background and collected later.

What's new

  • background: true on venice_sfx / venice_music / venice_video — still gates on spend + queues (the charge lands up front), then returns a stateless job handle {status: "queued", queue_id, type, model, download_url?} before polling.
  • venice_job_status (free) — one non-blocking probe of the render's retrieve route → processing / done / failed / not_found.
  • venice_job_result (free) — fetches and writes the file once ready. max_wait=0 (default) makes a single non-blocking attempt (returns processing if not ready); a larger max_wait block-polls, clamped to the server ceiling (300s audio / 900s video). Best-effort /complete cleanup.

Notes

  • Routing is keyed on type: sfx/music → /audio/*, video → /video/* (+ the VPS download_url).
  • Wired into venice chat --tools (built-ins 11 → 13) and venice code's free tool set. mcp-serve exposure deferred (matching the venice_vision/venice_models precedent).
  • Stateless handle — the agent holds the queue_id; no on-disk job registry.

593 tests + lint green.