Skip to content

[API-234] Add runs update command for modifying tags#61

Merged
lorenjphillips merged 1 commit into
mainfrom
feat/runs-update-tags
Apr 21, 2026
Merged

[API-234] Add runs update command for modifying tags#61
lorenjphillips merged 1 commit into
mainfrom
feat/runs-update-tags

Conversation

@lorenjphillips

@lorenjphillips lorenjphillips commented Apr 21, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Adds coval runs update <run-id> --tags foo,bar — PATCHes /v1/runs/{id} (backend API-230).
  • Tags are full-replacement (mirrors API). --tags "" clears all tags.
  • Bumps version to 0.3.10.

Test plan

  • cargo test (33 passed)
  • cargo clippy -- -D warnings clean
  • cargo fmt --check clean
  • New integration test: test_runs_update_tags asserts PATCH is issued and response is rendered

Summary by CodeRabbit

  • New Features
    • Added ability to update run tags through a new CLI command.

Adds `coval runs update <run-id> --tags foo,bar` which PATCHes
/v1/runs/{id} (API-230). Tags are full-replacement; pass `--tags ""`
to clear. Bumps version to 0.3.10.
@coderabbitai

coderabbitai Bot commented Apr 21, 2026

Copy link
Copy Markdown

Caution

Review failed

Pull request was closed or merged during review

📝 Walkthrough

Walkthrough

A new feature to update run tags is implemented. A RunsClient::update method is added to issue PATCH requests to /v1/runs/{id}. Corresponding request and response model types are introduced. A CLI subcommand runs update is added to accept run IDs and comma-delimited tags. An integration test validates the end-to-end functionality.

Changes

Cohort / File(s) Summary
Version Management
Cargo.toml
Incremented crate version from 0.3.9 to 0.3.10.
API Client & Models
src/client/mod.rs, src/client/models/run.rs
Added RunsClient::update method for PATCH requests to /v1/runs/{id}, plus UpdateRunRequest and UpdateRunResponse model structs for serialization and deserialization.
CLI Command
src/commands/runs.rs
Added RunCommands::Update variant and UpdateArgs struct to support runs update <run_id> --tags <tags> command with tag normalization.
Test Coverage
tests/cli_tests.rs
Added test_runs_update_tags integration test validating the CLI command with mocked API endpoint and tag assertions.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~15 minutes

Poem

🐰 A little hop to update those tags so fine,
PATCH requests dance in a line,
CLI commands now can play,
Tags updated every day!
coval hops with glee—feature complete! ✨

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 37.50% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main change: adding a new runs update command for modifying tags, which is the primary feature implemented across the codebase changes.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/runs-update-tags

Comment @coderabbitai help to get the list of available commands and usage tips.

@lorenjphillips lorenjphillips merged commit eb18626 into main Apr 21, 2026
6 of 7 checks passed
@lorenjphillips lorenjphillips deleted the feat/runs-update-tags branch April 21, 2026 23:13
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.

2 participants