Skip to content

Inspect linked model assets and preserve unreadable cache diagnostics - #1098

Draft
dlukeomalley wants to merge 1 commit into
tobi:mainfrom
dlukeomalley:fix/doctor-model-links
Draft

dlukeomalley wants to merge 1 commit into
tobi:mainfrom
dlukeomalley:fix/doctor-model-links

Conversation

@dlukeomalley

Copy link
Copy Markdown

Doctor skips symlinked cache entries even though normal model resolution loads them. It reports valid shared models missing and recommends downloading them again. The cache lookup also labels unreadable input as invalid content and recommends replacement without having read its header.

Delegate matching .gguf entry inspection to the existing shared GGUF validator. It now refuses non-regular paths before opening them, which also fixes a reproducible FIFO block in runtime validation. Keep missing, invalid and unreadable outcomes distinct; unreadable paths get an access/path correction rather than a replacement recommendation. .etag sidecars remain excluded.

Actual CLI controls cover valid, HTML, dangling and directory links. A directly owned worker reproduces the FIFO block with a bounded timeout; ordinary permission failure retains the unreadable/no-header result. No test-only application API or new validator is added.

Validation at f851dc6:

  • Full TypeScript config including tests/worker; Oxlint.
  • Project test script: Node 1,539 passed / 81 skipped; Bun 1,535 passed / 89 skipped.
  • Package build, grammar checks and compiled CLI/wrapper smoke under both runtimes.
  • Independent implementation and installed language review, with exact partial-source coverage retained.

CI-mode model integrations and unsupported Windows/POSIX cases remain skipped. Header fixtures establish inspection behavior, not full model validity or inference quality. Existing filename matching and stat/open race limits remain unchanged.

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