Skip to content

ci: tolerate narration before triage sentinels — require them last, not alone - #342

Merged
allxsmith merged 1 commit into
mainfrom
claude/ai-auto-triage-gh-issues-cmbm7y
Jul 21, 2026
Merged

allxsmith merged 1 commit into
mainfrom
claude/ai-auto-triage-gh-issues-cmbm7y

Conversation

@allxsmith

Copy link
Copy Markdown
Owner

Pull Request

Description

Follow-up to #340, fixing a false positive its first live run exposed. After merging, I applied ai-triage to issue #330 as the post-merge verification: the session behaved correctly (found the issue closed, stopped per pre-check 1, emitted TRIAGE-RESULT: triage-dedupe skipped (issue not open), label auto-removed) — but run 29794090279 failed because the session prefixed one explanatory line before the sentinel, and the watchdog required the final message to be nothing but sentinel lines. This is exactly the chatter false-positive the deep adversarial review predicted (finding 5 in its review), with the loosening already scoped in the response.

The watchdog jq now requires the TRIAGE-RESULT: lines to be the last non-empty lines of the final message — exactly one per expected command (one for issues, two for PRs) and none elsewhere — instead of the only lines. Every protective property holds: a bailout emits no sentinels and fails; a bailout after a sentinel fails (sentinels no longer last); over- and under-counts fail. Leading narration no longer causes a false failure.

  • bulma-ui (@allxsmith/bestax-bulma)
  • create-bestax (create-bestax)
  • docs (@allxsmith/bestax-docs)
  • Other (please specify): CI workflow (.github/workflows/ai-triage.yml)

Related Issue(s)

Refs #338

Related to #340

Type of Change

  • Bug fix
  • Build tooling

Checklist

  • My code follows the project style guidelines
  • I have performed a self-review of my code
  • I have added tests that prove my fix is effective or that my feature works — no jest surface; the jq was verified against 13 execution-file fixtures, including the literal false-positive text from run 29794090279 (now passes) and all bailout/miscount shapes (still fail)
  • I have added/updated documentation as needed (workflow header + step comments)
  • I have updated Storybook stories as needed (bulma-ui) — n/a
  • My changes require a change to the documentation
  • All new and existing tests passed (prettier --check, YAML parse)
  • Any relevant dependencies are updated — n/a
  • If this PR changes commands, conventions, or package structure, the affected CLAUDE.md files are updated — n/a

Screenshots / Demos

n/a

Additional Context

🤖 Generated with Claude Code

https://claude.ai/code/session_01K1LrTrVRbtdh8paN7f67CB


Generated by Claude Code

…ot alone

The first live run after #340 (29794090279) false-failed: the session
correctly skipped closed issue #330 and emitted its sentinel, but
prefixed one explanatory line, which the nothing-but-sentinels check
rejected — the chatter false-positive the deep review predicted. The
watchdog now requires the TRIAGE-RESULT lines to be the LAST non-empty
lines of the final message, exactly one per expected command and none
elsewhere. Bailouts never emit sentinels and still fail; a bailout
after a sentinel fails (sentinels no longer last); over- and
under-counts still fail. Verified against 13 execution-file fixtures
including the real false-positive text.

Refs #338

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01K1LrTrVRbtdh8paN7f67CB
@coderabbitai

coderabbitai Bot commented Jul 21, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@allxsmith, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 36 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: fa4f90ed-e636-47d5-8bdc-9e71ee0746b2

📥 Commits

Reviewing files that changed from the base of the PR and between 48f0a60 and ad3ded7.

📒 Files selected for processing (1)
  • .github/workflows/ai-triage.yml
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch claude/ai-auto-triage-gh-issues-cmbm7y

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.

@github-actions

Copy link
Copy Markdown
Contributor

Preview Deployment

Preview URL: https://e7da2d5d.bestax.pages.dev

@allxsmith
allxsmith merged commit a7bb61d into main Jul 21, 2026
12 of 13 checks passed
@allxsmith
allxsmith deleted the claude/ai-auto-triage-gh-issues-cmbm7y branch July 21, 2026 02:18
@github-actions

Copy link
Copy Markdown
Contributor

🎉 This PR is included in version 3.5.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

@github-actions

Copy link
Copy Markdown
Contributor

🎉 This PR is included in version 5.8.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

@bestax-release-bot

Copy link
Copy Markdown

🎉 This PR is included in version 2.0.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

@bestax-release-bot

Copy link
Copy Markdown

🎉 This PR is included in version 1.0.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants