Skip to content

Add Url variant to AgentDesiredModel for generic HTTP model downloads#234

Merged
mcharytoniuk merged 27 commits into
mainfrom
agent-desired-model-url-source
May 19, 2026
Merged

Add Url variant to AgentDesiredModel for generic HTTP model downloads#234
mcharytoniuk merged 27 commits into
mainfrom
agent-desired-model-url-source

Conversation

@mcharytoniuk
Copy link
Copy Markdown
Contributor

No description provided.

Copilot AI review requested due to automatic review settings May 18, 2026 15:23
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds a new Url variant for desired models so agents can download GGUF models from generic HTTP URLs, with cache resolution, status reporting, client schema updates, and integration tests.

Changes:

  • Adds Rust model-source abstraction and URL-backed model resolution/cache download support.
  • Extends shared types, Python/JavaScript schemas, GUI display, and admin UI conversion for AgentDesiredModel::Url.
  • Adds cache-dir helpers, URL model tests, and subprocess integration tests for URL desired state and 404 reporting.

Reviewed changes

Copilot reviewed 28 out of 29 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
resources/ts/components/ChangeModelPage.tsx Displays Url desired models in the model form.
paddler/src/resolves_model_source.rs Adds a common async model-source resolution trait.
paddler/src/resolve_desired_model.rs Routes Hugging Face, local, URL, and none variants through resolvers.
paddler/src/paddler_cache_dir.rs Adds cache-directory resolution from env/XDG/HOME.
paddler/src/model_source/url.rs Implements URL model cache pathing, download, status updates, and tests.
paddler/src/model_source/mod.rs Exposes model-source modules.
paddler/src/model_source/local.rs Moves local-path resolution into a resolver type.
paddler/src/model_source/huggingface.rs Moves Hugging Face download resolution into a resolver implementation.
paddler/src/lib.rs Updates exported modules for the new resolver structure.
paddler/src/download_huggingface_model.rs Removes the old standalone Hugging Face downloader module.
paddler/src/desired_model_resolution.rs Adds Debug for resolution values.
paddler/src/agent_issue_fix.rs Adds URL model issue-fix handling and tests.
paddler/Cargo.toml Adds sha2 to paddler dependencies.
paddler_types/src/url_model_reference.rs Adds the shared URL model reference type.
paddler_types/src/lib.rs Exports the URL model reference module.
paddler_types/src/agent_issue.rs Adds URL model issue variants.
paddler_types/src/agent_desired_model.rs Adds the Url desired model variant.
paddler_tests/tests/balancer_reports_url_model_not_found.rs Adds subprocess coverage for URL 404 issue reporting.
paddler_tests/tests/balancer_persists_url_model_in_desired_state.rs Adds subprocess coverage for persisted URL desired state.
paddler_tests/src/local_http_fixture.rs Adds a reusable local HTTP fixture for tests.
paddler_tests/src/lib.rs Exports the local HTTP fixture.
paddler_gui/src/ui/view_running_balancer.rs Displays URL desired models in the GUI.
paddler_client_python/tests/test_agent_desired_model.py Adds Python serialization/deserialization tests for URL models.
paddler_client_python/paddler_client/url_model_reference.py Adds Python URL model reference type.
paddler_client_python/paddler_client/agent_desired_model.py Adds Python client support for the Url variant.
paddler_client_javascript/src/schemas/UrlModelReference.ts Adds JavaScript schema/type for URL model references.
paddler_client_javascript/src/schemas/AgentDesiredModel.ts Adds JavaScript schema support for the Url variant.
Cargo.toml Adds workspace sha2 dependency.
Cargo.lock Records sha2 as a paddler dependency.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread resources/ts/components/ChangeModelPage.tsx
Comment thread paddler_types/src/agent_issue.rs Outdated
Comment thread paddler/src/model_source/url.rs Outdated
Comment thread paddler/src/model_source/url.rs Outdated
Comment thread paddler/src/model_source/url.rs Outdated
Comment thread paddler_client_javascript/src/schemas/AgentDesiredModel.ts
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 76 out of 78 changed files in this pull request and generated 11 comments.

Comment thread resources/ts/components/AgentList.tsx Outdated
Comment thread paddler/src/model_source/url.rs
Comment thread paddler_download_manager/src/download_manager.rs
Comment thread paddler_download_manager/src/download_manager.rs
Comment thread Cargo.toml
Comment thread paddler_client_javascript/src/schemas/AgentIssue.ts Outdated
Comment thread paddler_tests/tests/balancer_reports_download_server_is_unreachable.rs Outdated
Comment thread paddler_download_manager/tests/download.rs Outdated
Comment thread paddler/src/model_source/url.rs Outdated
Comment thread paddler/src/model_source/url.rs
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 76 out of 78 changed files in this pull request and generated 12 comments.

Comment thread paddler/src/model_source/url.rs
Comment thread paddler/src/model_source/url.rs
Comment thread paddler_download_manager/src/download_manager.rs
Comment thread paddler_download_manager/src/download_manager.rs
Comment thread resources/ts/components/AgentList.tsx
Comment thread Makefile Outdated
Comment thread paddler_types/src/agent_controller_snapshot.rs
Comment thread paddler/src/lib.rs
Comment thread paddler_download_manager/src/download_manager.rs
Comment thread paddler_download_manager/src/response_classification.rs
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 83 out of 85 changed files in this pull request and generated 3 comments.

Comment thread resources/ts/components/AgentIssues.tsx Outdated
Comment thread .github/workflows/test.yml Outdated
Comment thread paddler/src/model_source/url.rs
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 87 out of 89 changed files in this pull request and generated 2 comments.

Comment thread paddler/src/model_source/url.rs
Comment thread paddler_cache_dir/src/cached_downloaded_model.rs Outdated
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 87 out of 89 changed files in this pull request and generated 1 comment.

Comment thread paddler/src/model_source/url.rs
@mcharytoniuk mcharytoniuk merged commit ab86e86 into main May 19, 2026
16 checks passed
@mcharytoniuk mcharytoniuk deleted the agent-desired-model-url-source branch May 19, 2026 05:18
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.

3 participants