Skip to content

fix(release): include aidevops.sh in version updates#78

Merged
marcusquinn merged 1 commit intomainfrom
bugfix/aidevops-sh-version
Jan 14, 2026
Merged

fix(release): include aidevops.sh in version updates#78
marcusquinn merged 1 commit intomainfrom
bugfix/aidevops-sh-version

Conversation

@marcusquinn
Copy link
Owner

@marcusquinn marcusquinn commented Jan 14, 2026

Summary

The aidevops.sh CLI script was not being updated during releases, causing npm installs to have outdated version strings (e.g., v2.13.0 instead of v2.54.0).

Changes

  • Add aidevops.sh to update_version_in_files()
  • Add aidevops.sh to validate_version_consistency()
  • Add aidevops.sh to git add in commit_version_changes()
  • Update aidevops.sh to current version 2.54.0

Testing

After merge, the next release will automatically update aidevops.sh version string.

Summary by CodeRabbit

  • Chores
    • Updated version to 2.54.0.
    • Enhanced version consistency validation and tracking across components.

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

The aidevops.sh CLI script was not being updated during releases,
causing npm installs to have outdated version strings.

Changes:
- Add aidevops.sh to update_version_in_files()
- Add aidevops.sh to validate_version_consistency()
- Add aidevops.sh to git add in commit_version_changes()
- Update aidevops.sh to current version 2.54.0
@gemini-code-assist
Copy link

Summary of Changes

Hello @marcusquinn, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request addresses a critical issue where the aidevops.sh CLI script was not being properly updated during the release process, leading to outdated version information for users. The changes integrate aidevops.sh into the existing version management system, ensuring its version string is consistently validated, updated, and committed alongside other project files during releases.

Highlights

  • Version Consistency Validation: The aidevops.sh CLI script has been integrated into the validate_version_consistency() function, ensuring its version string is checked against the expected release version during validation.
  • Automated Version Updates: The update_version_in_files() function now includes logic to automatically update the version string within aidevops.sh to the new release version.
  • Git Staging for Version Changes: The aidevops.sh file is now explicitly added to the git add command within commit_version_changes(), ensuring its version updates are staged and committed with other release-related files.
  • Initial Version Update: The aidevops.sh file has been manually updated in this PR to reflect the current version 2.54.0 from 2.13.0.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 14, 2026

Walkthrough

Extended version management script to include aidevops.sh in version validation and update workflows. Version header in aidevops.sh bumped from 2.13.0 to 2.54.0. No functional behavioral changes detected—this is a version synchronization update across the DevOps framework.

Changes

Cohort / File(s) Summary
Version Manager Enhancements
.agent/scripts/version-manager.sh
Extended validate_version_consistency to validate aidevops.sh version alongside other files; updated update_version_in_files to modify aidevops.sh when present; modified commit_version_changes to stage aidevops.sh in commits (+17/-1)
Version Bump
aidevops.sh
Version header updated from 2.13.0 to 2.54.0 (+1/-1)

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~5 minutes

Poem

🚀 Version scripts align with care,
Another file joins the version affair,
From 2.13 to 2.54 we leap,
DevOps automation runs clean and deep,
Zero debt preserved, the standards stay bright! ✨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 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 summarizes the main change: including aidevops.sh in the version update process during releases.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.

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

✨ Finishing touches
  • 📝 Generate docstrings

📜 Recent review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 3c4f815 and ff33957.

📒 Files selected for processing (2)
  • .agent/scripts/version-manager.sh
  • aidevops.sh
🧰 Additional context used
📓 Path-based instructions (3)
**/*.sh

📄 CodeRabbit inference engine (AGENTS.md)

**/*.sh: Use local var="$1" pattern for shell variable assignments
Use explicit returns in shell scripts
Run ShellCheck on all scripts with zero violations required

Files:

  • aidevops.sh
**/.agent/scripts/version-manager.sh

📄 CodeRabbit inference engine (AGENTS.md)

Use .agent/scripts/version-manager.sh release [major|minor|patch] for releases

Files:

  • .agent/scripts/version-manager.sh
.agent/scripts/*.sh

⚙️ CodeRabbit configuration file

.agent/scripts/*.sh: Automation scripts - focus on:

  • Reliability and robustness
  • Clear logging and feedback
  • Proper exit codes
  • Error recovery mechanisms

Files:

  • .agent/scripts/version-manager.sh
🧠 Learnings (6)
📓 Common learnings
Learnt from: CR
Repo: marcusquinn/aidevops PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-01-06T15:57:56.027Z
Learning: Applies to **/.agent/scripts/version-manager.sh : Use .agent/scripts/version-manager.sh release [major|minor|patch] for releases
Learnt from: CR
Repo: marcusquinn/aidevops PR: 0
File: templates/home/git/AGENTS.md:0-0
Timestamp: 2025-12-22T01:25:03.138Z
Learning: Use standardized patterns as defined in the authoritative DevOps repository at ~/Git/aidevops/
Learnt from: CR
Repo: marcusquinn/aidevops PR: 0
File: templates/home/AGENTS.md:0-0
Timestamp: 2025-12-22T01:24:53.937Z
Learning: Reference the authoritative repository at ~/Git/aidevops/ for all detailed AI assistant instructions and configurations
Learnt from: CR
Repo: marcusquinn/aidevops PR: 0
File: templates/home/AGENTS.md:0-0
Timestamp: 2025-12-22T01:24:53.937Z
Learning: Follow all security protocols and working directory specifications defined in ~/Git/aidevops/AGENTS.md
📚 Learning: 2025-12-22T01:24:53.937Z
Learnt from: CR
Repo: marcusquinn/aidevops PR: 0
File: templates/home/AGENTS.md:0-0
Timestamp: 2025-12-22T01:24:53.937Z
Learning: Reference the authoritative repository at ~/Git/aidevops/ for all detailed AI assistant instructions and configurations

Applied to files:

  • aidevops.sh
📚 Learning: 2025-12-22T01:25:03.138Z
Learnt from: CR
Repo: marcusquinn/aidevops PR: 0
File: templates/home/git/AGENTS.md:0-0
Timestamp: 2025-12-22T01:25:03.138Z
Learning: Use standardized patterns as defined in the authoritative DevOps repository at ~/Git/aidevops/

Applied to files:

  • aidevops.sh
📚 Learning: 2025-12-22T01:24:53.937Z
Learnt from: CR
Repo: marcusquinn/aidevops PR: 0
File: templates/home/AGENTS.md:0-0
Timestamp: 2025-12-22T01:24:53.937Z
Learning: Follow all security protocols and working directory specifications defined in ~/Git/aidevops/AGENTS.md

Applied to files:

  • aidevops.sh
📚 Learning: 2026-01-06T15:57:56.027Z
Learnt from: CR
Repo: marcusquinn/aidevops PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-01-06T15:57:56.027Z
Learning: Applies to **/.agent/scripts/version-manager.sh : Use .agent/scripts/version-manager.sh release [major|minor|patch] for releases

Applied to files:

  • .agent/scripts/version-manager.sh
📚 Learning: 2026-01-06T15:57:56.027Z
Learnt from: CR
Repo: marcusquinn/aidevops PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-01-06T15:57:56.027Z
Learning: Applies to **/.agent/scripts/linters-local.sh : Run quality checks before committing using .agent/scripts/linters-local.sh

Applied to files:

  • .agent/scripts/version-manager.sh
🧬 Code graph analysis (1)
.agent/scripts/version-manager.sh (1)
aidevops.sh (2)
  • print_success (29-29)
  • print_error (31-31)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: Codacy Static Code Analysis
🔇 Additional comments (4)
aidevops.sh (1)

6-6: Version header synchronized—critical fix for npm installs.

This brings the CLI in line with the actual release version. The 41-version gap (2.13.0 → 2.54.0) confirms the script was severely out of sync, causing confusing version output for users installing via npm.

The format # Version: 2.54.0 correctly matches the sed pattern in version-manager.sh, ensuring future releases will auto-update this header.

.agent/scripts/version-manager.sh (3)

398-406: Validation logic correctly mirrors existing file checks.

The structure follows the established pattern used for setup.sh (lines 388-396):

  • Conditional file existence check
  • Grep for version string pattern
  • Success/error logging with proper error counter increment

This ensures aidevops.sh version mismatches are caught during validation and will block releases with inconsistent versions.


458-462: Version update logic follows established conventions.

The sed pattern s/# Version: .*/# Version: $new_version/ correctly matches the header format in aidevops.sh (line 6: # Version: 2.54.0).

Consistent with the setup.sh update block at lines 452-456—file existence check, sed substitution, success log.


517-517: Staging list now includes aidevops.sh for release commits.

Adding aidevops.sh to the git add command ensures the updated version header is committed alongside other version-bumped files. The 2>/dev/null suffix gracefully handles cases where optional files (like aidevops.sh) might not exist in future repository configurations.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

@sonarqubecloud
Copy link

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request correctly addresses the issue of aidevops.sh not being included in the version update process. The changes are logical and consistently applied across the validation, update, and commit functions in version-manager.sh. I've added a couple of suggestions to refactor the newly added logic, which is duplicated in several places, into helper functions. This would improve the maintainability of the script. Overall, this is a good fix.

Comment on lines +399 to +406
if [[ -f "$REPO_ROOT/aidevops.sh" ]]; then
if grep -q "# Version: $expected_version" "$REPO_ROOT/aidevops.sh"; then
print_success "aidevops.sh: $expected_version ✓"
else
print_error "aidevops.sh does not contain version $expected_version"
errors=$((errors + 1))
fi
fi

Choose a reason for hiding this comment

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

medium

This block correctly validates the version in aidevops.sh. However, it's very similar to the other validation blocks in this function (e.g., the one for marketplace.json that follows). To improve maintainability and reduce code duplication, consider refactoring this logic into a helper function.

For example, you could create a function like this:

_validate_file_version() {
    local file_path="$1"
    local grep_pattern="$2"
    local file_desc="$3"
    local expected_version="$4"

    if [[ -f "$file_path" ]]; then
        if grep -q "$grep_pattern" "$file_path"; then
            print_success "$file_desc: $expected_version"
        else
            print_error "$file_desc does not contain version $expected_version"
            errors=$((errors + 1))
        fi
    fi
}

Then you could call it for each file:

_validate_file_version "$REPO_ROOT/aidevops.sh" "# Version: $expected_version" "aidevops.sh" "$expected_version"
_validate_file_version "$REPO_ROOT/.claude-plugin/marketplace.json" '"version": "$expected_version"' "Claude Code plugin" "$expected_version"

This would make the validate_version_consistency function much cleaner and easier to extend in the future.

Comment on lines +459 to +462
if [[ -f "$REPO_ROOT/aidevops.sh" ]]; then
sed -i '' "s/# Version: .*/# Version: $new_version/" "$REPO_ROOT/aidevops.sh"
print_success "Updated aidevops.sh"
fi

Choose a reason for hiding this comment

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

medium

This block correctly updates the version in aidevops.sh. Similar to the validation function, this logic is repeated for several files. To make the code more DRY (Don't Repeat Yourself), you could abstract this into a helper function.

For example:

_update_file_version() {
    local file_path="$1"
    local sed_expr="$2"
    local file_desc="$3"

    if [[ -f "$file_path" ]]; then
        sed -i '' "$sed_expr" "$file_path"
        print_success "Updated $file_desc"
    fi
}

And then call it like this:

_update_file_version "$REPO_ROOT/aidevops.sh" "s/# Version: .*/# Version: $new_version/" "aidevops.sh"

This would simplify the update_version_in_files function and make it easier to add more files to the versioning process in the future.

@github-actions
Copy link

🔍 Code Quality Report

�[0;35m[MONITOR]�[0m Code Review Monitoring Report

�[0;34m[INFO]�[0m Latest Quality Status:
SonarCloud: 0 bugs, 0 vulnerabilities, 260 code smells

�[0;34m[INFO]�[0m Recent monitoring activity:
Wed Jan 14 01:24:28 UTC 2026: Code review monitoring started
Wed Jan 14 01:24:28 UTC 2026: SonarCloud - Bugs: 0, Vulnerabilities: 0, Code Smells: 260
Wed Jan 14 01:24:28 UTC 2026: Qlty - 0 issues found, auto-formatting applied
Wed Jan 14 01:24:30 UTC 2026: Codacy analysis completed with auto-fixes

📈 Current Quality Metrics

  • BUGS: 0
  • CODE SMELLS: 260
  • VULNERABILITIES: 0

Generated on: Wed Jan 14 01:25:09 UTC 2026


Generated by AI DevOps Framework Code Review Monitoring

@augmentcode
Copy link

augmentcode bot commented Jan 14, 2026

🤖 Augment PR Summary

Summary: Ensures the release/version bump automation updates the root aidevops.sh CLI script so installs don’t ship an outdated embedded version.

Changes: Adds aidevops.sh to version consistency checks, automated version updates, and the staged files list; bumps the current aidevops.sh version string to 2.54.0.

🤖 Was this summary useful? React with 👍 or 👎

Copy link

@augmentcode augmentcode bot left a comment

Choose a reason for hiding this comment

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

Review completed. 1 suggestions posted.

Fix All in Augment

Comment augment review to trigger a new review at any time.


# Check aidevops.sh CLI
if [[ -f "$REPO_ROOT/aidevops.sh" ]]; then
if grep -q "# Version: $expected_version" "$REPO_ROOT/aidevops.sh"; then
Copy link

Choose a reason for hiding this comment

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

grep -q treats . as “any character”, so version strings like 2.54.0 can match unintended text; consider grep -Fq for a fixed-string match (also applies to the other version consistency checks).

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎

@marcusquinn marcusquinn merged commit 6eb1c1a into main Jan 14, 2026
15 of 17 checks passed
@marcusquinn marcusquinn deleted the bugfix/aidevops-sh-version branch January 14, 2026 01:32
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