feat: cpm download-weights command with HF Hub provider#43
Merged
Conversation
* feat: initial cpm implementation * feat: initial cpm implementation All 8 commands: init, install (local + registry), remove, list, info, verify, search, update. Includes hardware audit, JSON Schema validation (embedded), dependency resolution, registries.toml config, structured logging, and CI pipeline. Tests: archive (4), schema (2), config (2), dep (3), audit (5) = 16 total * chore: remove committed binary, add to .gitignore * chore: attribute project to Jean Machuca with GitHub Sponsors * chore: add * 2.* pattern to .gitignore for editor backups * Release v0.1.0 (#2) (#4) * feat: initial cpm implementation * feat: initial cpm implementation All 8 commands: init, install (local + registry), remove, list, info, verify, search, update. Includes hardware audit, JSON Schema validation (embedded), dependency resolution, registries.toml config, structured logging, and CI pipeline. Tests: archive (4), schema (2), config (2), dep (3), audit (5) = 16 total * chore: remove committed binary, add to .gitignore * chore: attribute project to Jean Machuca with GitHub Sponsors * docs: add cross-repo navigation links to README (#7) * docs: add contributing section to README (#9) * fix: resolve merge conflict markers in README (#16) * Fix CI blockers: commit go.sum, fix errcheck, fix build paths, wire up CI * feat: add source validation with provider bug check on install * feat: multi-registry config with official/alternative sections and section name resolution * feat: implement universal protocol resolver with normalization engine and checksum notary (#23) * fix: CI integrity and .gitignore repairs across repos (#25) * feat: iterate mirrors and alternatives in search and update - search: queries all registries (primary, mirrors, alternatives) and merges results - update: checks all registries for latest version before updating - Added resolveConfig() helper for obtaining full registries list - Exported DefaultRegistries() from config package - Results tagged with registry name in search output
* Fix CI blockers: commit go.sum, fix errcheck, fix build paths, wire up CI * feat: add source validation with provider bug check on install * feat: multi-registry config with official/alternative sections and section name resolution * feat: implement universal protocol resolver with normalization engine and checksum notary (#23)
- New cmd/publish.go: reads .cgp, computes SHA-256, publishes to registry - New registry.Client.Publish() method: POST /v1/patches with JSON body - PublishRequest struct for metadata + checksum + download URL - Requires --download-url flag (notary mode, no file hosting) - Requires CPM_REGISTRY_TOKEN env var for auth - Supports --tag flag (repeatable)
* feat: initial cpm implementation * feat: initial cpm implementation All 8 commands: init, install (local + registry), remove, list, info, verify, search, update. Includes hardware audit, JSON Schema validation (embedded), dependency resolution, registries.toml config, structured logging, and CI pipeline. Tests: archive (4), schema (2), config (2), dep (3), audit (5) = 16 total * chore: remove committed binary, add to .gitignore * chore: attribute project to Jean Machuca with GitHub Sponsors * chore: add * 2.* pattern to .gitignore for editor backups * Release v0.1.0 (#2) (#4) * feat: initial cpm implementation * feat: initial cpm implementation All 8 commands: init, install (local + registry), remove, list, info, verify, search, update. Includes hardware audit, JSON Schema validation (embedded), dependency resolution, registries.toml config, structured logging, and CI pipeline. Tests: archive (4), schema (2), config (2), dep (3), audit (5) = 16 total * chore: remove committed binary, add to .gitignore * chore: attribute project to Jean Machuca with GitHub Sponsors * docs: add cross-repo navigation links to README (#7) * docs: add contributing section to README (#9) * fix: resolve merge conflict markers in README (#16) * Fix CI blockers: commit go.sum, fix errcheck, fix build paths, wire up CI * feat: add source validation with provider bug check on install * feat: multi-registry config with official/alternative sections and section name resolution * feat: implement universal protocol resolver with normalization engine and checksum notary (#23) * fix: CI integrity and .gitignore repairs across repos (#25) * feat: add cpm publish command for notary registry - New cmd/publish.go: reads .cgp, computes SHA-256, publishes to registry - New registry.Client.Publish() method: POST /v1/patches with JSON body - PublishRequest struct for metadata + checksum + download URL - Requires --download-url flag (notary mode, no file hosting) - Requires CPM_REGISTRY_TOKEN env var for auth - Supports --tag flag (repeatable)
* feat: initial cpm implementation * feat: initial cpm implementation All 8 commands: init, install (local + registry), remove, list, info, verify, search, update. Includes hardware audit, JSON Schema validation (embedded), dependency resolution, registries.toml config, structured logging, and CI pipeline. Tests: archive (4), schema (2), config (2), dep (3), audit (5) = 16 total * chore: remove committed binary, add to .gitignore * chore: attribute project to Jean Machuca with GitHub Sponsors * chore: add * 2.* pattern to .gitignore for editor backups * Release v0.1.0 (#2) (#4) * feat: initial cpm implementation * feat: initial cpm implementation All 8 commands: init, install (local + registry), remove, list, info, verify, search, update. Includes hardware audit, JSON Schema validation (embedded), dependency resolution, registries.toml config, structured logging, and CI pipeline. Tests: archive (4), schema (2), config (2), dep (3), audit (5) = 16 total * chore: remove committed binary, add to .gitignore * chore: attribute project to Jean Machuca with GitHub Sponsors * docs: add cross-repo navigation links to README (#7) * docs: add contributing section to README (#9) * fix: resolve merge conflict markers in README (#16) * Fix CI blockers: commit go.sum, fix errcheck, fix build paths, wire up CI * feat: add source validation with provider bug check on install * feat: multi-registry config with official/alternative sections and section name resolution * feat: implement universal protocol resolver with normalization engine and checksum notary
* feat: initial cpm implementation All 8 commands: init, install (local + registry), remove, list, info, verify, search, update. Includes hardware audit, JSON Schema validation (embedded), dependency resolution, registries.toml config, structured logging, and CI pipeline. Tests: archive (4), schema (2), config (2), dep (3), audit (5) = 16 total * chore: remove committed binary, add to .gitignore
* feat: initial cpm implementation * feat: initial cpm implementation All 8 commands: init, install (local + registry), remove, list, info, verify, search, update. Includes hardware audit, JSON Schema validation (embedded), dependency resolution, registries.toml config, structured logging, and CI pipeline. Tests: archive (4), schema (2), config (2), dep (3), audit (5) = 16 total * chore: remove committed binary, add to .gitignore * chore: attribute project to Jean Machuca with GitHub Sponsors * chore: add * 2.* pattern to .gitignore for editor backups * Release v0.1.0 (#2) (#4) * feat: initial cpm implementation * feat: initial cpm implementation All 8 commands: init, install (local + registry), remove, list, info, verify, search, update. Includes hardware audit, JSON Schema validation (embedded), dependency resolution, registries.toml config, structured logging, and CI pipeline. Tests: archive (4), schema (2), config (2), dep (3), audit (5) = 16 total * chore: remove committed binary, add to .gitignore * chore: attribute project to Jean Machuca with GitHub Sponsors * docs: add cross-repo navigation links to README (#7) * docs: add contributing section to README (#9) * fix: resolve merge conflict markers in README (#16) * Fix CI blockers: commit go.sum, fix errcheck, fix build paths, wire up CI * feat: add source validation with provider bug check on install
* feat: initial cpm implementation * feat: initial cpm implementation All 8 commands: init, install (local + registry), remove, list, info, verify, search, update. Includes hardware audit, JSON Schema validation (embedded), dependency resolution, registries.toml config, structured logging, and CI pipeline. Tests: archive (4), schema (2), config (2), dep (3), audit (5) = 16 total * chore: remove committed binary, add to .gitignore * chore: attribute project to Jean Machuca with GitHub Sponsors * chore: add * 2.* pattern to .gitignore for editor backups * Release v0.1.0 (#2) (#4) * feat: initial cpm implementation * feat: initial cpm implementation All 8 commands: init, install (local + registry), remove, list, info, verify, search, update. Includes hardware audit, JSON Schema validation (embedded), dependency resolution, registries.toml config, structured logging, and CI pipeline. Tests: archive (4), schema (2), config (2), dep (3), audit (5) = 16 total * chore: remove committed binary, add to .gitignore * chore: attribute project to Jean Machuca with GitHub Sponsors * docs: add cross-repo navigation links to README (#7) * docs: add contributing section to README (#9) * fix: resolve merge conflict markers in README (#16) * Fix CI blockers: commit go.sum, fix errcheck, fix build paths, wire up CI * feat: add source validation with provider bug check on install * feat: multi-registry config with official/alternative sections and section name resolution * feat: implement universal protocol resolver with normalization engine and checksum notary (#23) * fix: CI integrity and .gitignore repairs across repos
Adds: - cpm download-weights --provider hf --kind <raw|wide> --type <gguf|safetensors> <name> - weights.Provider interface for future providers (models.dev) - HF Hub search via public API (library=gguf, sorted by downloads) - Large-file streaming download with SHA-256 verification - Decoupled progress reporting (TextProgress/NoopProgress callbacks) - Auto-download when cpm install encounters manifest brain.*.weights.remote - cpm init --template gguf-model for model publishers - Raw model skip-if-exists; wide model always overwrites
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implements ADR-002: download-weights, auto-download in install, gguf-model template.