Skip to content

feat(model-lab): add model-lab command group (SDK 0.32.0)#606

Open
jack-edmonds-dd wants to merge 3 commits into
mainfrom
jack-edmonds-dd/model-lab
Open

feat(model-lab): add model-lab command group (SDK 0.32.0)#606
jack-edmonds-dd wants to merge 3 commits into
mainfrom
jack-edmonds-dd/model-lab

Conversation

@jack-edmonds-dd

Copy link
Copy Markdown
Collaborator

Summary

Implements the Model Lab API surface added in SDK 0.32.0, exposing ML experiment projects and training runs via two subcommand groups.

Changes

pup model-lab projects (src/commands/model_lab.rs):

  • list — list projects with optional filter/tags/sort/pagination
  • get <project_id> — fetch a project by ID
  • star <project_id> / unstar <project_id> — mark projects as starred
  • artifacts <project_id> — list project artifacts
  • facet-keys / facet-values — explore project facets (tag type)

pup model-lab runs:

  • list — list runs with rich filtering (project, status, tags, params, parent run)
  • get <run_id> — fetch a run by ID
  • delete <run_id> — delete a run
  • pin <run_id> / unpin <run_id> — pin runs for easy access
  • artifacts <run_id> — list run artifacts with optional path prefix filter
  • facet-keys / facet-values — explore run facets (parameter, attribute, tag, metric)

All 16 operations registered in UNSTABLE_OPS (src/client.rs). Also includes the pre-existing fix for a missing jq field in a test Config initializer (src/config.rs) introduced in PR #590.

Testing

  • 18 unit tests covering happy path and error cases for all operations
  • cargo clippy --all-targets -- -D warnings clean
  • cargo fmt --check clean

🤖 Generated with Claude Code

jack-edmonds-dd and others added 2 commits June 18, 2026 16:48
Implements the Model Lab API surface added in SDK 0.32.0:

Projects:
  - list: list projects with optional filter/tags/sort/pagination
  - get: fetch a project by ID
  - star / unstar: mark projects as starred
  - artifacts: list project artifacts
  - facet-keys / facet-values: explore project facets

Runs:
  - list: list runs with rich filtering (project, status, tags, params, parent)
  - get: fetch a run by ID
  - delete: delete a run
  - pin / unpin: pin runs for easy access
  - artifacts: list run artifacts with optional path prefix filter
  - facet-keys / facet-values: explore run facets

All 16 operations registered in UNSTABLE_OPS. 18 unit tests, all passing.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@jack-edmonds-dd jack-edmonds-dd requested a review from a team as a code owner June 18, 2026 20:56
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