Skip to content

feat(jira): add --ci flag to jira:solve for non-interactive automation - #290

Merged
openshift-merge-bot[bot] merged 3 commits into
openshift-eng:mainfrom
bryan-cox:jira-solve-ci-flag
Jan 14, 2026
Merged

openshift-merge-bot[bot] merged 3 commits into
openshift-eng:mainfrom
bryan-cox:jira-solve-ci-flag

Conversation

@bryan-cox

@bryan-cox bryan-cox commented Jan 14, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Add optional --ci flag ($3) to jira:solve command that skips all user interaction points
  • Enables running jira:solve in CI automation without user prompts

Changes

When --ci flag is passed:

  • Skip asking for issue grooming when required sections are missing (proceed with available info)
  • Skip plan review and proceed immediately with implementation
  • Skip PR description review after creation

Usage

/jira:solve OCPBUGS-12345 origin --ci

Test plan

  • Test jira:solve without --ci flag still prompts for approval
  • Test jira:solve with --ci flag proceeds automatically

🤖 Generated with Claude Code

Summary by CodeRabbit

  • New Features

    • Added an optional --ci flag to jira:solve; when set, the command runs non-interactively and skips prompts during analysis, implementation, and PR review.
  • Documentation

    • Updated command synopsis and help text to include the new --ci option and describe its non-interactive behavior.
  • Chores

    • Bumped plugin version to 0.0.4 across public metadata.

✏️ Tip: You can customize this high-level summary in your review settings.

@openshift-ci
openshift-ci Bot requested review from Prashanth684 and zaneb January 14, 2026 14:53
@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jan 14, 2026
@coderabbitai

coderabbitai Bot commented Jan 14, 2026

Copy link
Copy Markdown
Contributor

Walkthrough

Adds an optional --ci flag to the jira:solve command to enable a non-interactive path (skip grooming, plan review, and PR description review) and bumps the Jira plugin version to 0.0.4 in manifest and docs.

Changes

Cohort / File(s) Summary
CI Mode Documentation
plugins/jira/commands/solve.md, docs/data.json
Adds an optional --ci flag to /jira:solve <jira-issue-id> [remote] [--ci] and documents non-interactive behavior: skip grooming prompts, skip plan review prompt, and skip PR description review. (solve.md: +14/-9, docs/data.json: +2/-2)
Plugin Version Bumps
plugins/jira/.claude-plugin/plugin.json, .claude-plugin/marketplace.json, docs/data.json
Bumps Jira plugin version from 0.0.3 to 0.0.4 across plugin manifest and marketplace metadata. (each: +1/-1 where applicable)

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

🚥 Pre-merge checks | ✅ 8
✅ Passed checks (8 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and specifically describes the main change: adding a --ci flag to the jira:solve command for non-interactive automation.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
No Real People Names In Style References ✅ Passed Pull request contains no references to real people by name in style references, commands, or documentation. All changes are technical in nature, documenting the new --ci flag functionality.
No Assumed Git Remote Names ✅ Passed The solve command correctly treats git remote as a user-supplied parameter rather than hardcoding values like 'origin'.
Git Push Safety Rules ✅ Passed No executable git push commands present. Documentation describes pushing to feature branches only, with no force push operations or autonomous execution.
No Untrusted Mcp Servers ✅ Passed Pull request contains only documentation updates and version bumps with no MCP server installations or untrusted external dependencies.
Ai-Helpers Overlap Detection ✅ Passed The pull request adds an optional --ci flag to the jira:solve command with zero functional overlap with other open PRs, scoring 0% overlap against the 60% threshold.

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



📜 Recent review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Cache: Disabled due to data retention organization setting

Knowledge base: Disabled due to data retention organization setting

📥 Commits

Reviewing files that changed from the base of the PR and between ae4eeb7 and 234ab6a.

📒 Files selected for processing (4)
  • .claude-plugin/marketplace.json
  • docs/data.json
  • plugins/jira/.claude-plugin/plugin.json
  • plugins/jira/commands/solve.md
🚧 Files skipped from review as they are similar to previous changes (3)
  • plugins/jira/commands/solve.md
  • plugins/jira/.claude-plugin/plugin.json
  • .claude-plugin/marketplace.json
🔇 Additional comments (2)
docs/data.json (2)

136-140: LGTM!

The synopsis update correctly documents the new --ci flag as an optional argument, maintaining consistency with the existing convention of using brackets for optional parameters.


235-235: Version bump to 0.0.4 is appropriate and consistent across all manifest files.

The version has been updated consistently in plugins/jira/.claude-plugin/plugin.json, .claude-plugin/marketplace.json, and docs/data.json.

✏️ Tip: You can disable this entire section by setting review_details to false in your review settings.


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

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In `@plugins/jira/commands/solve.md`:
- Line 136: Update the docs for the /jira:solve command to explicitly show that
the remote ($2) defaults to "origin" and that the --ci flag ($3) can be passed
without specifying the remote; add a concise usage example such as "/jira:solve
OCPBUGS-12345 --ci" (and optionally show the equivalent with explicit remote
"/jira:solve OCPBUGS-12345 origin --ci") next to the $3 description so readers
clearly see the default-remote behavior.
🧹 Nitpick comments (1)
plugins/jira/commands/solve.md (1)

19-24: Consider adding a usage example with the --ci flag.

The current usage examples section only shows the basic usage without the --ci flag. Adding an example that demonstrates CI automation mode would improve clarity and help users understand when and how to use this new feature.

📝 Suggested addition
 **Usage Examples:**
 
 1. **Solve a specific JIRA issue**:
    ```
    /jira:solve OCPBUGS-12345 origin
    ```
+
+2. **Solve a JIRA issue in CI automation mode (non-interactive)**:
+   ```
+   /jira:solve OCPBUGS-12345 origin --ci
+   ```
📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Cache: Disabled due to data retention organization setting

Knowledge base: Disabled due to data retention organization setting

📥 Commits

Reviewing files that changed from the base of the PR and between 53afa04 and ea23b07.

📒 Files selected for processing (1)
  • plugins/jira/commands/solve.md
🔇 Additional comments (4)
plugins/jira/commands/solve.md (4)

10-10: LGTM!

The synopsis correctly documents the --ci flag as an optional third parameter using standard CLI documentation conventions.


47-48: LGTM!

The conditional behavior for issue grooming is clearly documented. The non-interactive path appropriately proceeds with available information when --ci is set, which aligns with CI automation requirements.


62-63: LGTM!

The conditional behavior for plan review is clearly documented and consistent with the overall non-interactive automation approach when --ci is set.


123-130: LGTM!

The PR description review section clearly documents both the interactive and non-interactive flows. The detailed prompts for the interactive case provide good guidance for implementation.

✏️ Tip: You can disable this entire section by setting review_details to false in your review settings.

## Arguments:
- $1: The JIRA issue to solve (required)
- $2: The remote repository to push the branch. Defaults to "origin".
- $3: Optional `--ci` flag for non-interactive CI automation mode. When set, skips all user prompts and proceeds automatically.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🏁 Script executed:

fd -type f \( -name "solve*" -o -name "*solve*" \) plugins/jira/

Repository: openshift-eng/ai-helpers

Length of output: 238


🏁 Script executed:

fd -e sh -e bash "solve" plugins/jira/

Repository: openshift-eng/ai-helpers

Length of output: 50


🏁 Script executed:

ls -la plugins/jira/

Repository: openshift-eng/ai-helpers

Length of output: 428


🏁 Script executed:

ls -la plugins/jira/commands/

Repository: openshift-eng/ai-helpers

Length of output: 859


🏁 Script executed:

cat -n plugins/jira/commands/solve.md

Repository: openshift-eng/ai-helpers

Length of output: 9132


🏁 Script executed:

ls -la plugins/jira/skills/

Repository: openshift-eng/ai-helpers

Length of output: 1079


🏁 Script executed:

git ls-files | grep -i solve

Repository: openshift-eng/ai-helpers

Length of output: 98


🏁 Script executed:

ls -la plugins/jira/.claude-plugin/ && cat plugins/jira/.claude-plugin/*

Repository: openshift-eng/ai-helpers

Length of output: 394


🏁 Script executed:

head -100 plugins/jira/README.md

Repository: openshift-eng/ai-helpers

Length of output: 4455


🏁 Script executed:

find . -name "*.md" -type f | xargs grep -l "Claude Code" | head -5

Repository: openshift-eng/ai-helpers

Length of output: 150


🏁 Script executed:

grep -A 20 -B 5 "argument\|positional\|parameter\|\$[0-9]" ./PLUGINS.md | head -80

Repository: openshift-eng/ai-helpers

Length of output: 2936


Clarify how the --ci flag can be used with the default remote.

The documentation indicates that $2 (remote) defaults to "origin" and $3 is the optional --ci flag. However, it's unclear whether users can run /jira:solve OCPBUGS-12345 --ci (omitting the remote) or if they must explicitly specify the remote (e.g., /jira:solve OCPBUGS-12345 origin --ci).

Add a usage example that demonstrates using the --ci flag with the default remote to clarify this behavior for users.

🤖 Prompt for AI Agents
In `@plugins/jira/commands/solve.md` at line 136, Update the docs for the
/jira:solve command to explicitly show that the remote ($2) defaults to "origin"
and that the --ci flag ($3) can be passed without specifying the remote; add a
concise usage example such as "/jira:solve OCPBUGS-12345 --ci" (and optionally
show the equivalent with explicit remote "/jira:solve OCPBUGS-12345 origin
--ci") next to the $3 description so readers clearly see the default-remote
behavior.

@celebdor

Copy link
Copy Markdown
Contributor

/lgtm

@openshift-ci openshift-ci Bot added lgtm Indicates that a PR is ready to be merged. and removed lgtm Indicates that a PR is ready to be merged. labels Jan 14, 2026
@openshift-merge-robot openshift-merge-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jan 14, 2026
bryan-cox and others added 3 commits January 14, 2026 10:28
Add optional --ci flag ($3) that skips all user interaction points:
- Skip asking for issue grooming when required sections are missing
- Skip plan review and proceed immediately with implementation
- Skip PR description review after creation

This enables running jira:solve in CI automation without user prompts.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@openshift-merge-robot openshift-merge-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jan 14, 2026
@celebdor

Copy link
Copy Markdown
Contributor

/lgtm

@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label Jan 14, 2026
@openshift-ci

openshift-ci Bot commented Jan 14, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: bryan-cox, celebdor

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-merge-bot
openshift-merge-bot Bot merged commit 4711204 into openshift-eng:main Jan 14, 2026
5 checks passed
@bryan-cox
bryan-cox deleted the jira-solve-ci-flag branch January 14, 2026 15:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. lgtm Indicates that a PR is ready to be merged.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants