Skip to content

t1085.5: Pulse integration — wire Phase 14 AI pipeline into pulse.sh#1617

Merged
marcusquinn merged 1 commit intomainfrom
feature/t1085.5
Feb 18, 2026
Merged

t1085.5: Pulse integration — wire Phase 14 AI pipeline into pulse.sh#1617
marcusquinn merged 1 commit intomainfrom
feature/t1085.5

Conversation

@marcusquinn
Copy link
Owner

Wire Phase 14 AI supervisor reasoning + action execution pipeline into pulse.sh.

Changes

  • pulse.sh Phase 14: Calls run_ai_actions_pipeline() on a configurable pulse interval

    • SUPERVISOR_AI_INTERVAL env var (default: 15 pulses = ~30min at 2-min cron cadence)
    • File-based pulse counter ($SUPERVISOR_DIR/ai-pulse-count) persists between pulses
    • Timestamp tracking via $SUPERVISOR_DIR/ai-supervisor-last-run
    • Dedicated log: $SUPERVISOR_DIR/logs/ai-supervisor.log with timestamped run headers
    • SUPERVISOR_AI_ENABLED=false disables Phase 14 entirely
    • Graceful: all errors logged, never breaks the pulse cycle
  • supervisor-helper.sh ai-status: Enhanced with pulse counter and next-run countdown

    • Shows current pulse count vs interval (e.g., 7/15 (8 pulses / ~16min until next run))
    • Shows last-run timestamp from file (falls back to DB state_log)
    • Shows log file path for easy debugging
    • Documents new env vars in usage/help output

Depends on

  • t1085.2: AI context builder (ai-context.sh)
  • t1085.3: AI action executor (ai-actions.sh)

Testing

  • ShellCheck: zero violations on both modified files
  • bash -n: syntax OK on both files

Ref #1604

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Feb 18, 2026

Warning

Rate limit exceeded

@marcusquinn has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 18 minutes and 16 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feature/t1085.5

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.

@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 integrates the Phase 14 AI supervisor reasoning and action execution pipeline into the pulse.sh script, enabling automated AI operations on a configurable interval. It also enhances the supervisor-helper.sh script with new commands to manually trigger the AI pipeline and monitor its status, providing better control and visibility over the AI's autonomous actions.

Highlights

  • AI Pipeline Integration: The pulse.sh script now includes "Phase 14" which periodically executes the AI reasoning and action pipeline (run_ai_actions_pipeline).
  • Configurable Execution: The AI pipeline's execution is controlled by new environment variables: SUPERVISOR_AI_ENABLED (to enable/disable) and SUPERVISOR_AI_INTERVAL (to set the pulse frequency).
  • State Persistence: A file-based pulse counter (ai-pulse-count) and last-run timestamp (ai-supervisor-last-run) are introduced to maintain state across pulse.sh executions.
  • Enhanced Status Monitoring: The supervisor-helper.sh ai-status command has been updated to provide detailed information about the AI supervisor, including its enabled status, interval, current pulse count, and next-run countdown.
  • Manual Pipeline Execution: A new supervisor-helper.sh ai-pipeline command allows for manual triggering of the AI reasoning and action pipeline.
  • Dedicated Logging: A specific log file ($SUPERVISOR_DIR/logs/ai-supervisor.log) is used to record the activity and results of the AI supervisor runs.
Changelog
  • .agents/scripts/supervisor-helper.sh
    • Added ai-pipeline and ai-status commands to the usage instructions.
    • Documented new environment variables SUPERVISOR_AI_ENABLED, SUPERVISOR_AI_INTERVAL, and AI_MAX_ACTIONS_PER_CYCLE.
    • Updated ai-status command to display AI supervisor status, including pulse count, next-run countdown, and log file path, reading from file-based state.
  • .agents/scripts/supervisor/pulse.sh
    • Implemented 'Phase 14' to integrate the AI supervisor reasoning and action execution pipeline.
    • Added logic to check SUPERVISOR_AI_ENABLED and SUPERVISOR_AI_INTERVAL for conditional execution.
    • Introduced file-based pulse counting and last-run timestamp tracking for the AI pipeline.
    • Included error handling and logging for the AI pipeline execution, capturing start/end timestamps and results.
    • Parsed JSON output from run_ai_actions_pipeline to log executed, failed, and skipped actions.
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.

@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, 20 code smells

�[0;34m[INFO]�[0m Recent monitoring activity:
Wed Feb 18 02:01:01 UTC 2026: Code review monitoring started
Wed Feb 18 02:01:02 UTC 2026: SonarCloud - Bugs: 0, Vulnerabilities: 0, Code Smells: 20

📈 Current Quality Metrics

  • BUGS: 0
  • CODE SMELLS: 20
  • VULNERABILITIES: 0

Generated on: Wed Feb 18 02:01:04 UTC 2026


Generated by AI DevOps Framework Code Review Monitoring

- Add Phase 14 to pulse.sh: runs run_ai_actions_pipeline() on configurable
  interval (SUPERVISOR_AI_INTERVAL, default 15 pulses = ~30min)
- File-based pulse counter (ai-pulse-count) tracks pulses between AI runs
- Timestamp tracking via ai-supervisor-last-run file
- Dedicated log: $SUPERVISOR_DIR/logs/ai-supervisor.log with run headers
- SUPERVISOR_AI_ENABLED=false disables Phase 14 entirely
- Enhance ai-status command: shows pulse counter, next-run countdown,
  log file path, and total runs/actions from DB
- Add SUPERVISOR_AI_ENABLED/SUPERVISOR_AI_INTERVAL to usage env docs
- Add ai-pipeline and ai-status to show_usage() command list
@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, 20 code smells

�[0;34m[INFO]�[0m Recent monitoring activity:
Wed Feb 18 02:04:00 UTC 2026: Code review monitoring started
Wed Feb 18 02:04:00 UTC 2026: SonarCloud - Bugs: 0, Vulnerabilities: 0, Code Smells: 20

📈 Current Quality Metrics

  • BUGS: 0
  • CODE SMELLS: 20
  • VULNERABILITIES: 0

Generated on: Wed Feb 18 02:04:03 UTC 2026


Generated by AI DevOps Framework Code Review Monitoring

@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

The pull request successfully integrates the Phase 14 AI pipeline into pulse.sh and enhances the supervisor-helper.sh ai-status command. The implementation is robust, follows shell scripting best practices, and handles various edge cases for file operations and error reporting. The new environment variables are well-documented. A minor improvement opportunity exists in centralizing the default value for SUPERVISOR_AI_INTERVAL to enhance maintainability.

local run_count
run_count=$(db "$SUPERVISOR_DB" "SELECT COUNT(*) FROM state_log WHERE task_id = 'ai-supervisor' AND to_state = 'complete';" 2>/dev/null || echo 0)
local action_count
action_count=$(db "$SUPERVISOR_DB" "SELECT COUNT(*) FROM state_log WHERE task_id = 'ai-supervisor' AND from_state = 'actions';" 2>/dev/null || echo 0)

Choose a reason for hiding this comment

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

medium

The default value 15 for SUPERVISOR_AI_INTERVAL is hardcoded here. To improve maintainability and ensure consistency, consider defining this as a shared constant in shared-constants.sh if it's used in multiple places or if its value is subject to change. This aligns with the principle of avoiding magic numbers.

# Dedicated log: $SUPERVISOR_DIR/logs/ai-supervisor.log
local ai_enabled="${SUPERVISOR_AI_ENABLED:-true}"
if [[ "$ai_enabled" == "true" ]]; then
local ai_interval="${SUPERVISOR_AI_INTERVAL:-15}"

Choose a reason for hiding this comment

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

medium

The default value 15 for SUPERVISOR_AI_INTERVAL is hardcoded here. To improve maintainability and ensure consistency, consider defining this as a shared constant in shared-constants.sh if it's used in multiple places or if its value is subject to change. This aligns with the principle of avoiding magic numbers.

@marcusquinn marcusquinn merged commit e102ac5 into main Feb 18, 2026
19 checks passed
@marcusquinn marcusquinn deleted the feature/t1085.5 branch February 18, 2026 02:21
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