Skip to content

fix(models): harden preparation downloads - #36

Merged
tulayha merged 1 commit into
mainfrom
fix/cli-setup-downloads
Jul 31, 2026
Merged

fix(models): harden preparation downloads#36
tulayha merged 1 commit into
mainfrom
fix/cli-setup-downloads

Conversation

@tulayha

@tulayha tulayha commented Jul 31, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • distinguish cached-model validation from downloads and retain the existing explicit size disclosure
  • aggregate Hugging Face byte progress across files, verify pinned weights, and retry resumable transient or incomplete downloads with bounded backoff
  • retry restart-only Pooch downloads without claiming partial-file preservation
  • expose actionable model_download_failed details consistently through durable jobs, CLI JSON, HTTP, and MCP

Root cause

Model preparation reported individual Hugging Face file totals as if they were the full model total. An interrupted or incomplete snapshot could then collapse into the generic model-unavailable path, producing circular remediation and hiding whether cached data could resume. Download failures also lacked a transport-stable error contract.

Impact

Cached pinned models are validated before any network work. Transient Hugging Face failures preserve and resume cache data, terminal failures are not retried, and unexpected programming exceptions remain visible. CLI, API, and MCP consumers receive the same structured job progress and error fields. Existing provider initialization and warm-up behavior remains unchanged.

Validation

  • python -m unittest discover -s tests -q — 479 passed, 3 skipped
  • affected CLI/API/MCP/job contract suites — 97 passed
  • focused model/application/CLI suites — 93 passed, 2 subtests passed
  • ruff check src tests
  • git diff --check
  • live vidxp doctor against the preserved shared cache passed for actor, dialogue, scene, storage, FFmpeg, and all pinned models

@tulayha
tulayha marked this pull request as ready for review July 31, 2026 11:16
@tulayha
tulayha merged commit 62cb7b1 into main Jul 31, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant