Skip to content

GH#34289: fix(pulse): defer parent-close near reconcile budget (GH#34289) - #34292

Merged
vladimirdulov merged 2 commits into
mainfrom
feature/auto-20261011-004902-gh34289
Oct 10, 2026
Merged

vladimirdulov merged 2 commits into
mainfrom
feature/auto-20261011-004902-gh34289

Conversation

@alex-solovyev

Copy link
Copy Markdown
Collaborator

Summary

Add _pir_budget_allows_mutation (reserve 90s, RECONCILE_MUTATION_RESERVE_SECS) and gate _try_close_parent_tracker before its first re-read; logs deferral. Budget/outer caps unchanged. Close step extracted to keep function under 100 lines.

Files Changed

.agents/scripts/pulse-issue-reconcile-actions.sh, .agents/scripts/tests/test-pulse-issue-reconcile.sh

Runtime Testing

  • Risk level: Medium
  • Verification: self-assessed — test-pulse-issue-reconcile.sh 37/37 incl. new near-budget deferral case; shellcheck -x clean

Resolves #34289


aidevops.sh v3.39.1 plugin for OpenCode v1.18.34 with claude-sonnet-5-5 spent 3m and 8,399 tokens on this as a headless worker.

@alex-solovyev alex-solovyev added the origin:worker Created by headless/pulse worker session label Oct 10, 2026
@coderabbitai

coderabbitai Bot commented Oct 10, 2026 •

Copy link
Copy Markdown
Contributor

Important

Review skipped

Auto reviews are limited based on label configuration.

🏷️ Required labels (at least one) (1)

🚫 Excluded labels (none allowed) (1)
  • no-review

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration
  • Configuration used: Repository: marcusquinn/aidevops/.coderabbit.yaml
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 47f61023-5b5d-4561-bd76-022cb536fd0d

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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.

@alex-solovyev

alex-solovyev commented Oct 10, 2026 •

Copy link
Copy Markdown
Collaborator Author

Completion Summary

  • What: Add _pir_budget_allows_mutation (reserve 90s, RECONCILE_MUTATION_RESERVE_SECS) and gate _try_close_parent_tracker before its first re-read; logs deferral. Budget/outer caps unchanged. Close step extracted to keep function under 100 lines.
  • Issue: t18651: fix(pulse): reconcile single pass starts parent-close mutations it cannot finish before the 380s stage kill #34289
  • Files changed: .agents/scripts/pulse-issue-reconcile-actions.sh, .agents/scripts/tests/test-pulse-issue-reconcile.sh
  • Testing: test-pulse-issue-reconcile.sh 37/37 incl. new near-budget deferral case; shellcheck -x clean
  • Key decisions: none

aidevops.sh v3.39.1 plugin for OpenCode v1.18.34 with claude-sonnet-5-5 spent 3m and 8,399 tokens on this as a headless worker.


Merged via PR #34292 to main.
Merged by deterministic merge pass (pulse-wrapper.sh).

@alex-solovyev alex-solovyev added the status:in-review Non-draft PR ready for review/merge label Oct 10, 2026
@codacy-production

Copy link
Copy Markdown

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.

@github-actions

Copy link
Copy Markdown
Contributor

Bash 3.2 Compatibility Regression Gate

✅ No regression — no new bash 3.2-incompatible construct(s).

Metric Base (038d414) Head (4a54151)
Total bash 3.2-incompatible construct(s) 0 0

@github-actions

Copy link
Copy Markdown
Contributor

Shell Function Complexity Regression Gate

✅ No regression — no new function(s) >100 lines.

Metric Base (038d414) Head (4a54151)
Total function(s) >100 lines 0 0

@github-actions

Copy link
Copy Markdown
Contributor

Qlty Smell Regression Gate

✅ No change — smell count unchanged.

Metric Base (038d414) Head (4a54151) Delta
Total smells 65 65 +0

@github-actions

Copy link
Copy Markdown
Contributor

🔍 Code Quality Report

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

SonarCloud: 0 bugs, 0 vulnerabilities, 1 code smells

Sat Oct 10 22:55:07 UTC 2026: Code review monitoring started
Sat Oct 10 22:55:07 UTC 2026: SonarCloud - Bugs: 0, Vulnerabilities: 0, Code Smells: 1
Sat Oct 10 22:57:25 UTC 2026: Codacy analysis completed - issues found (exit 2)

📈 Current Quality Metrics

  • BUGS: 0
  • CODE SMELLS: 1
  • VULNERABILITIES: 0

Generated on: Sat Oct 10 22:57:26 UTC 2026


Generated by AI DevOps Framework Code Review Monitoring

@github-actions

Copy link
Copy Markdown
Contributor

Shell Nesting Depth Regression Gate

✅ No regression — no new file(s) with nesting depth >8.

Metric Base (038d414) Head (4a54151)
Total file(s) with nesting depth >8 0 0

@vladimirdulov vladimirdulov left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Auto-approved by pulse runner @vladimirdulov — author @alex-solovyev confirmed collaborator, pre-merge gates passed.


aidevops.sh v3.39.0 automated scan.

@github-actions

Copy link
Copy Markdown
Contributor

File Size Regression Gate

✅ No regression — no new non-README Markdown file(s) >1000 lines at root / >500 elsewhere.

Metric Base (038d414) Head (4a54151)
Total non-README Markdown file(s) >1000 lines at root / >500 elsewhere 0 0

@vladimirdulov
vladimirdulov merged commit b020815 into main Oct 10, 2026
79 of 81 checks passed
@vladimirdulov
vladimirdulov deleted the feature/auto-20261011-004902-gh34289 branch October 10, 2026 23:03
@github-actions github-actions Bot added status:done Task is complete and removed status:in-review Non-draft PR ready for review/merge labels Oct 10, 2026
alex-solovyev added a commit that referenced this pull request Oct 10, 2026
* fix: explain tag-push release evidence failures (GH#34286)

* test: cover tag-push release diagnostic safety (GH#34286)

* GH#34287: fix(pulse): resume interrupted async housekeeping and reconcile before blocker catch-up (#34291)

* GH#34287: fix(pulse): resume interrupted async housekeeping and reconcile before blocker catch-up

* GH#34287: fix(pulse): initialise housekeeping lock/state locals for unbound-var lint

* GH#34289: fix(pulse): defer parent-close near reconcile budget (GH#34289) (#34292)

* fix(pulse): defer parent-close when reconcile budget is below mutation reserve (GH#34289)

* refactor: extract parent close postcondition helper to stay under complexity limit

* GH#34293: docs: keep Qlty on organisation repos and skip its out-of-minutes check

---------

Co-authored-by: Marcus Quinn <6428977+marcusquinn@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

origin:worker Created by headless/pulse worker session status:done Task is complete

Projects

None yet

Development

Successfully merging this pull request may close these issues.

t18651: fix(pulse): reconcile single pass starts parent-close mutations it cannot finish before the 380s stage kill

2 participants