Skip to content

feat: implement issue #1323 — [Fleet Monitor] petry-projects/.github-private — .github/workflows/lint.yml - #1324

Merged
don-petry merged 2 commits into
mainfrom
dev-lead/issue-1323-20260719-0847
Jul 19, 2026
Merged

don-petry merged 2 commits into
mainfrom
dev-lead/issue-1323-20260719-0847

Conversation

@don-petry

Copy link
Copy Markdown
Collaborator

Closes #1323

Implemented by dev-lead agent. Please review.

Copilot AI review requested due to automatic review settings July 19, 2026 08:53
@don-petry
don-petry requested a review from a team as a code owner July 19, 2026 08:53
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@coderabbitai

coderabbitai Bot commented Jul 19, 2026 •

Copy link
Copy Markdown

Warning

Review limit reached

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

Next review available in: 57 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: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: 7deb21aa-c2ec-44b3-adec-425de59ba0e0

📥 Commits

Reviewing files that changed from the base of the PR and between 8f1c471 and 33c6aa7.

📒 Files selected for processing (2)
  • scripts/verify-persona-teams.sh
  • tests/verify_persona_teams.bats
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch dev-lead/issue-1323-20260719-0847

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.

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

Copy link
Copy Markdown

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 introduces a preflight credential check to the verify-persona-teams.sh script, allowing the live persona team check to be skipped with a warning instead of failing when run in environments without GitHub credentials (such as Dependabot or fork PRs). It also adds corresponding unit tests to verify this behavior. The reviewer suggested refactoring a short-circuit && operator in the test stub to a standard if statement to improve readability and avoid potential issues with set -e.

Comment thread tests/verify_persona_teams.bats
@don-petry

Copy link
Copy Markdown
Collaborator Author

Dev-Lead — waiting on PR blockers (intent: review-changes)

PR: #1324
No changes were committed, but the PR still has blocking checks or reviews (failing or cancelled checks, or changes-requested reviews). The retry cron will re-attempt automatically. Next attempt after: 2026-07-19T09:25:58Z

@don-petry

Copy link
Copy Markdown
Collaborator Author

Note

@don-petry I reviewed this PR and no code changes were needed, but it still has blocking checks or reviews (failing or cancelled checks, or changes-requested reviews), so I cannot mark it done yet. I'll re-check automatically.
Next attempt after: 2026-07-19T09:25:58Z

@don-petry
don-petry enabled auto-merge (squash) July 19, 2026 08:56

Copilot AI 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.

Pull request overview

This PR addresses issue #1323 by making the verify-persona-teams live org-team validation degrade gracefully (skip with a visible warning) when gh is not authenticated—most notably on Dependabot or fork PRs where org-scoped secrets are withheld—so .github/workflows/lint.yml stops failing due to missing credentials.

Changes:

  • Add a gh auth status credential preflight to scripts/verify-persona-teams.sh and skip the live team check with a ::warning:: when unauthenticated.
  • Extend the hermetic Bats test suite to cover the new “no credential → skip” behavior and ensure API errors still fail closed when authenticated.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
scripts/verify-persona-teams.sh Adds credential preflight and skip-with-warning behavior when gh is unauthenticated.
tests/verify_persona_teams.bats Updates the gh stub and adds regression tests for the new credential-skip path.

Comment thread scripts/verify-persona-teams.sh
@don-petry
don-petry disabled auto-merge July 19, 2026 10:05
@don-petry

Copy link
Copy Markdown
Collaborator Author

Dev-Lead — review-changes (applied)

Changes committed and pushed.

@don-petry
don-petry enabled auto-merge (squash) July 19, 2026 10:07
@don-petry
don-petry disabled auto-merge July 19, 2026 10:08
@sonarqubecloud

Copy link
Copy Markdown

@don-petry

Copy link
Copy Markdown
Collaborator Author

Dev-Lead — waiting on PR blockers (intent: fix-reviews)

PR: #1324
No changes were committed, but the PR still has blocking checks or reviews (failing or cancelled checks, or changes-requested reviews). The retry cron will re-attempt automatically. Next attempt after: 2026-07-19T17:49:08Z

@don-petry
don-petry enabled auto-merge (squash) July 19, 2026 17:19

@donpetry-bot donpetry-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.

Automated review — APPROVED ✓

Risk: MEDIUM
Reviewed commit: 33c6aa7008be1db8d5d316cdcc01119dcc1cda1f
Review mode: triage-approved (single reviewer)

Summary

Adds a credential preflight to scripts/verify-persona-teams.sh so the LIVE persona-team check skips with a visible ::warning:: when gh is unauthenticated (Dependabot/fork PRs where the org-scoped token is withheld), instead of reddening the Lint workflow. The fail-closed path on API errors with a credential present is preserved and regression-tested; three new bats tests cover the skip, fail-closed, and no-address paths.

Linked issue analysis

Closes #1323 ([Fleet Monitor] lint.yml DEGRADED at 22.2% failure rate). The Lint failures trace to verify-persona-teams failing on token-less (Dependabot/fork) PRs where the live GitHub API check cannot run. Converting that case to an explicit skip-with-warning — matching the token-degradation posture used elsewhere in this repo — substantively addresses the reported degradation while keeping the check fully enforced on credential-bearing PRs and post-merge.

Findings

  • No blocking findings.
  • Prior bot feedback addressed: Gemini's suggestion (replace && short-circuit with nested if in the test gh stub) and Copilot's (reword/shorten the warning, avoid hard-coding a single secret name) were both fixed in follow-up commits; both review threads are resolved.
  • Minor, non-blocking observation: gh auth status failing due to an expired/invalid token (not just an absent one) would also trigger the skip path. The ::warning:: annotation keeps this visible in run logs, and post-merge runs would surface it, so this is acceptable.
  • Secret scan: run_secret_scanning MCP tool not available in this environment; gitleaks CI check is green. No secret values appear in the diff (only secret names in comments).

CI status

All checks green: Lint, shellcheck, bats (19 tests), unit-tests, CodeQL, actionlint, SonarCloud, AgentShield, gitleaks, holdout-guard, template-drift, and all validate-* checks SUCCESS. A few CANCELLED entries (dev-lead/dispatch, Dismiss, ci-relay) are superseded duplicate runs whose latest run of the same name succeeded. Skipped checks are ecosystem audits not applicable to this diff.


Reviewed automatically by the PR-review agent (single-reviewer mode: fable 5). Reply if you need a human review.

@don-petry
don-petry merged commit a122ee5 into main Jul 19, 2026
67 of 74 checks passed
@don-petry
don-petry deleted the dev-lead/issue-1323-20260719-0847 branch July 19, 2026 17:51
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.

[Fleet Monitor] petry-projects/.github-private — .github/workflows/lint.yml

3 participants