Skip to content

chore(ci): agent ci skills and nightly build - #201

Merged
coryrylan merged 1 commit into
mainfrom
topic-nightly-build
Aug 12, 2026
Merged

coryrylan merged 1 commit into
mainfrom
topic-nightly-build

Conversation

@coryrylan

@coryrylan coryrylan commented Jul 31, 2026 •

Copy link
Copy Markdown
Collaborator

Summary by CodeRabbit

  • New Features

    • Added automated workflows for investigating CI failures and performing scoped maintenance tasks.
    • Added deterministic task selection for consistent upkeep activities.
    • CI now runs automatically each day at 11:07 PM Central Time.
  • Improvements

    • Standardized skill naming and availability-report tooling.
    • Expanded guidance for accessibility, CI auditing, code auditing, documentation, components, examples, patterns, tests, TypeScript, API design, and build systems.
    • Added guidance for handling transient, external, resolved, or unreproducible CI issues.
    • Clarified branch-naming guidance and accessibility testing expectations.

@coryrylan coryrylan self-assigned this Jul 31, 2026
Copilot AI lite review requested due to automatic review settings July 31, 2026 00:29

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

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@coryrylan
coryrylan requested a review from johnyanarella July 31, 2026 00:29
@github-actions github-actions Bot added scope(ci) github_actions Pull requests that update GitHub Actions code labels Jul 31, 2026
@coderabbitai

coderabbitai Bot commented Jul 31, 2026 •

Copy link
Copy Markdown

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

The PR renames agent skills, adds CI failure investigation and upkeep workflows, implements deterministic upkeep task selection, and schedules daily CI runs.

Changes

Agent skill naming and guidance

Layer / File(s) Summary
Skill metadata and guidance updates
.agents/skills/*/SKILL.md, .agents/skills/audit-ci/references/optimization-playbook.md
Renames skills and updates headings, descriptions, activation criteria, terminology, and script references.

Scheduled CI debugging

Layer / File(s) Summary
CI debugging workflow and schedule
.agents/skills/agent-debug-ci/SKILL.md, .github/workflows/ci.yml
Defines procedures for investigating, reproducing, fixing, validating, and reporting scheduled CI failures. CI runs daily at 11:07 PM America/Chicago.

Deterministic upkeep selection

Layer / File(s) Summary
Upkeep operating contract
.agents/skills/agent-upkeep/SKILL.md, AGENTS.md
Defines scoped upkeep tasks, task procedures, validation, branch and pull-request conventions, statelessness rules, stop conditions, and branch-naming exceptions.
Candidate discovery and ranking
.agents/skills/agent-upkeep/scripts/select-task.js
Discovers and ranks eligible coverage, ESLint suppression, and quarantined-test candidates while checking repository state and excluded paths.
Task selection output
.agents/skills/agent-upkeep/scripts/select-task.js
Selects one task through rotation or forced ordering, rejects in-flight upkeep branches, and emits structured target and rationale metadata.

Estimated code review effort: 4 (Complex) | ~45 minutes

Sequence Diagram(s)

sequenceDiagram
  participant select-task.js
  participant Git remote
  participant Repository filesystem
  select-task.js->>Git remote: Check remote upkeep branches
  Git remote-->>select-task.js: Return branch status
  select-task.js->>Repository filesystem: Discover eligible task candidates
  Repository filesystem-->>select-task.js: Return candidate metadata
  select-task.js-->>select-task.js: Rank and emit one task
Loading

Suggested labels: scope(internals)

Suggested reviewers: copilot

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 22.22% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the added agent CI skills and nightly CI schedule, which are key changes in the pull request.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch topic-nightly-build

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

@coderabbitai coderabbitai 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.

Actionable comments posted: 8

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.agents/skills/agent-debug-ci/SKILL.md:
- Around line 65-79: Update the `pnpm run ci:reset` instruction in the debugging
workflow to invoke the command through `mise exec`, consistent with the other
repository toolchain commands. Preserve the existing guidance to use it only
when stale generated output or cache state is indicated.
- Around line 87-88: Update the workflow guidance in the relevant debugging
instructions so agents explicitly fetch or refresh origin/main before verifying
the failure or creating a fix branch, then base all investigation on that
updated reference.

In @.agents/skills/agent-upkeep/scripts/select-task.js:
- Around line 109-114: Update inFlightBranches so any failure from the git fetch
refresh is propagated or causes a non-zero exit instead of being swallowed. Only
perform the upkeep branch selection after the remote branch list has been
refreshed successfully; preserve the existing branch detection behavior on
successful fetches.
- Around line 260-270: Update the test-discovery regex in the source-scanning
logic to match only it.skip, it.todo, it.fails, test.skip, test.todo, and
test.fails calls. Exclude describe and all other suite-level modifiers while
preserving the existing candidate construction, title extraction, and
visual-baseline weighting behavior.

In @.agents/skills/agent-upkeep/SKILL.md:
- Line 12: Update the pull-request contract in the agent-upkeep skill to allow
an authenticated GitHub integration/tool for creating draft pull requests and
applying the required upkeep label; alternatively, explicitly change the
workflow to stop after pushing the branch and remove any requirements that
cannot be fulfilled with git-only tooling.
- Around line 29-47: Ensure coverage task selection uses fresh coverage data:
update .agents/skills/agent-upkeep/SKILL.md lines 29-47 to make coverage
generation or freshness validation occur before selection, and update
.agents/skills/agent-upkeep/scripts/select-task.js lines 174-188 to generate or
validate fresh coverage before ranking candidates, emitting no coverage task
when freshness cannot be established.
- Around line 67-90: Make Mode A actionable by requiring selector-provided
package targets and invocation context instead of emitting only the shared
ESLint config. Update .agents/skills/agent-upkeep/SKILL.md lines 67-90 to
instruct agents to use only the affected packages, working directories, and
suppression-file locations supplied by the selector. Update
.agents/skills/agent-upkeep/scripts/select-task.js lines 318-326 to discover and
emit that complete package-specific context, including each workingDirectory and
suppressionsFile; no direct change is needed elsewhere.

In @.github/workflows/ci.yml:
- Around line 8-10: Update the scheduled workflow cron expression under schedule
to run at an off-hour minute, such as 01:17 America/Chicago, instead of exactly
01:00. Preserve the existing daily cadence and timezone.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Enterprise

Run ID: ca576ddf-97f4-4bcf-ae83-98826b951ebf

📥 Commits

Reviewing files that changed from the base of the PR and between 651abf3 and b9a7e1c.

📒 Files selected for processing (6)
  • .agents/skills/agent-availability-report/SKILL.md
  • .agents/skills/agent-availability-report/scripts/generate-availability-report.js
  • .agents/skills/agent-debug-ci/SKILL.md
  • .agents/skills/agent-upkeep/SKILL.md
  • .agents/skills/agent-upkeep/scripts/select-task.js
  • .github/workflows/ci.yml

Comment thread .agents/skills/agent-debug-ci/SKILL.md
Comment thread .agents/skills/agent-debug-ci/SKILL.md
Comment thread .agents/skills/agent-upkeep/scripts/select-task.js Outdated
Comment thread .agents/skills/agent-upkeep/scripts/select-task.js
Comment thread .agents/skills/agent-upkeep/SKILL.md Outdated
Comment thread .agents/skills/agent-upkeep/SKILL.md Outdated
Comment thread .agents/skills/agent-upkeep/SKILL.md Outdated
Comment thread .github/workflows/ci.yml
@coryrylan
coryrylan force-pushed the topic-nightly-build branch from b9a7e1c to f225bf5 Compare July 31, 2026 02:35
Copilot AI review requested due to automatic review settings July 31, 2026 02:35

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

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@coderabbitai coderabbitai 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.

Actionable comments posted: 4

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.agents/skills/agent-debug-ci/SKILL.md:
- Around line 31-37: Update the documented gh run view --log-failed command to
include the resolved attempt number when inspecting rerun workflows. Use the
attempt value returned by the preceding run metadata query, while preserving the
existing run identifier and failed-log behavior.
- Around line 69-75: Update the scheduled CI reproduction guidance in the skill
to run both commands with PAGES_BASE_URL="/elements/": pnpm run ci followed by
projects/internals/ci/cache-validate.js ci only after the first succeeds.
Preserve the existing isolation and environment-matching guidance while
documenting the complete command sequence.

In @.agents/skills/agent-upkeep/scripts/select-task.js:
- Around line 315-325: Preserve Mode B suppression-file context by updating
suppressionCandidates output handling in select-task.js
(.agents/skills/agent-upkeep/scripts/select-task.js:315-325) to emit
suppressionsFile relative to workingDirectory or as an absolute path. Update the
Mode B pruning commands in .agents/skills/agent-upkeep/SKILL.md:67-70 and
:94-101 to pass this value to --prune-suppressions using
--suppressions-location.

In @.agents/skills/agent-upkeep/SKILL.md:
- Line 120: Add the `text` language identifier to the fenced Markdown blocks at
the referenced locations in `SKILL.md`, including the block around line 120 and
the additional blocks around lines 190 and 205, while preserving their contents.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Enterprise

Run ID: fd2a9709-e599-4fa4-9efd-d741c185d2dd

📥 Commits

Reviewing files that changed from the base of the PR and between b9a7e1c and f225bf5.

📒 Files selected for processing (6)
  • .agents/skills/agent-availability-report/SKILL.md
  • .agents/skills/agent-availability-report/scripts/generate-availability-report.js
  • .agents/skills/agent-debug-ci/SKILL.md
  • .agents/skills/agent-upkeep/SKILL.md
  • .agents/skills/agent-upkeep/scripts/select-task.js
  • .github/workflows/ci.yml

Comment thread .agents/skills/agent-debug-ci/SKILL.md
Comment thread .agents/skills/agent-debug-ci/SKILL.md
Comment thread .agents/skills/agent-upkeep/scripts/select-task.js
Comment thread .agents/skills/agent-upkeep/SKILL.md Outdated
@coryrylan
coryrylan force-pushed the topic-nightly-build branch from f225bf5 to 40f9f03 Compare July 31, 2026 03:11
Copilot AI review requested due to automatic review settings July 31, 2026 03:11

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

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@coderabbitai coderabbitai 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.

Actionable comments posted: 6

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.agents/skills/agent-availability-report/SKILL.md:
- Line 2: Update renamed skill references in
.agents/skills/agent-upkeep/SKILL.md to use authoring-tests,
authoring-typescript, audit-code, and audit-accessibility instead of the old
identifiers. Align the metadata in .agents/skills/guidance-build-system/SKILL.md
(line 2) with name: guidance-build. The other cited metadata
sites—.agents/skills/agent-availability-report/SKILL.md (line 2),
.agents/skills/audit-accessibility/SKILL.md (line 2),
.agents/skills/audit-ci/SKILL.md (line 2),
.agents/skills/authoring-typescript/SKILL.md (line 2), and
.agents/skills/guidance-api-design/SKILL.md (line 2)—require no direct changes.

In @.agents/skills/agent-upkeep/scripts/select-task.js:
- Around line 271-280: Restrict automatic bug candidates in
.agents/skills/agent-upkeep/scripts/select-task.js lines 271-280 to it.skip and
test.skip, unless the emitted kind includes distinct executable steps for other
kinds. Update .agents/skills/agent-upkeep/SKILL.md lines 134-146 with separate
validation procedures before permitting .todo or .fails tasks; ensure .todo and
.fails are not treated like unskippable tests.
- Around line 221-228: Update the suppression candidate construction in the
Object.entries(data) loop to resolve each file and reject it when
path.relative(root, resolvedFile) indicates it escapes the repository root,
including absolute or parent-traversal keys. Only add candidates for
root-contained paths; preserve the existing count filtering and candidate fields
for valid files.

In @.agents/skills/agent-upkeep/SKILL.md:
- Around line 17-18: Update the scope rules in the Mode A guidance to explicitly
allow editing the shared ESLint config under projects/internals/ and
selector-provided generated suppression files in other projects, while requiring
hand-fixed source changes to remain within one project. Preserve the existing
four-file and 150-line diff cap.

In @.agents/skills/audit-accessibility/SKILL.md:
- Line 41: Update the visual-variant testing guidance in the accessibility skill
to require status and size coverage for all applicable components, while making
disabled-state tests conditional on whether the component supports disabled
behavior.

In @.agents/skills/audit-code/SKILL.md:
- Around line 2-6: Update all renamed skill references in
.agents/skills/agent-upkeep/SKILL.md: replace testing with authoring-tests at
lines 53 and 236, typescript with authoring-typescript at lines 105 and 237,
code-review with audit-code at lines 167 and 238, and accessibility with
audit-accessibility at line 239. The anchor .agents/skills/audit-code/SKILL.md
lines 2-6 and sibling .agents/skills/authoring-tests/SKILL.md lines 2-6 require
no direct changes.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Enterprise

Run ID: 8035479e-715b-437e-b0e8-04b1f804a3f5

📥 Commits

Reviewing files that changed from the base of the PR and between f225bf5 and 40f9f03.

📒 Files selected for processing (18)
  • .agents/skills/agent-availability-report/SKILL.md
  • .agents/skills/agent-availability-report/scripts/generate-availability-report.js
  • .agents/skills/agent-debug-ci/SKILL.md
  • .agents/skills/agent-upkeep/SKILL.md
  • .agents/skills/agent-upkeep/scripts/select-task.js
  • .agents/skills/audit-accessibility/SKILL.md
  • .agents/skills/audit-ci/SKILL.md
  • .agents/skills/audit-ci/references/optimization-playbook.md
  • .agents/skills/audit-code/SKILL.md
  • .agents/skills/authoring-components/SKILL.md
  • .agents/skills/authoring-documentation/SKILL.md
  • .agents/skills/authoring-examples/SKILL.md
  • .agents/skills/authoring-patterns/SKILL.md
  • .agents/skills/authoring-tests/SKILL.md
  • .agents/skills/authoring-typescript/SKILL.md
  • .agents/skills/guidance-api-design/SKILL.md
  • .agents/skills/guidance-build-system/SKILL.md
  • .github/workflows/ci.yml

Comment thread .agents/skills/agent-availability-report/SKILL.md
Comment thread .agents/skills/agent-upkeep/scripts/select-task.js
Comment thread .agents/skills/agent-upkeep/scripts/select-task.js
Comment thread .agents/skills/agent-upkeep/SKILL.md Outdated
Comment thread .agents/skills/audit-accessibility/SKILL.md Outdated
Comment thread .agents/skills/audit-code/SKILL.md
Comment thread .agents/skills/agent-upkeep/SKILL.md Outdated
Copilot AI review requested due to automatic review settings August 5, 2026 16:01
@coryrylan
coryrylan force-pushed the topic-nightly-build branch from 40f9f03 to e2c17ad Compare August 5, 2026 16:01
@coderabbitai

coderabbitai Bot commented Aug 5, 2026

Copy link
Copy Markdown

Note

GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer.

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

Pull request overview

Copilot reviewed 18 out of 18 changed files in this pull request and generated no new comments.

Suppressed comments (4)

.agents/skills/agent-upkeep/SKILL.md:105

  • This link references /.agents/skills/typescript/SKILL.md, but that skill file does not exist after the skill rename work in this PR. Update the link to the current TypeScript skill so the guidance remains reachable.
Most rules that start in the off list address type safety, so mode B often requires TypeScript work. When the rule is one of the `no-unsafe-*` family, `no-non-null-assertion`, `no-unnecessary-type-assertion`, or `no-redundant-type-constituents`, read the [typescript skill](/.agents/skills/typescript/SKILL.md) first and prefer, in this order:

.agents/skills/agent-upkeep/SKILL.md:167

  • This self-review step links to /.agents/skills/code-review/SKILL.md, but the code review skill was renamed to audit-code in this PR and the old path does not exist. Update the link so the referenced guidance is accessible.
Then self-review with the [code-review skill](/.agents/skills/code-review/SKILL.md) and fix anything it flags.

.agents/skills/agent-upkeep/SKILL.md:239

  • These reference links still point at pre-rename skill paths (testing, typescript, code-review, accessibility), which do not exist in this branch. Updating them avoids dead links and keeps the references aligned with the current skill names.
- [Testing](/.agents/skills/testing/SKILL.md)
- [TypeScript](/.agents/skills/typescript/SKILL.md)
- [Code Review](/.agents/skills/code-review/SKILL.md)
- [Accessibility](/.agents/skills/accessibility/SKILL.md)

.agents/skills/agent-upkeep/SKILL.md:53

  • This link points to /.agents/skills/testing/SKILL.md, but that skill file does not exist in this branch (skills have been renamed to authoring-tests, etc.). The link will be dead for readers and for any tooling that expects the path to resolve.

This issue also appears in the following locations of the same file:

  • line 105
  • line 167
  • line 236
- Read the [testing skill](/.agents/skills/testing/SKILL.md) and follow its guidance before writing any test.

@coderabbitai coderabbitai 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.

Actionable comments posted: 2

♻️ Duplicate comments (1)
.agents/skills/audit-accessibility/SKILL.md (1)

41-41: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Make disabled-state coverage conditional.

Not every component supports disabled behavior. Require disabled-state coverage only when the component supports it. Require coverage for every supported status and size variant.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.agents/skills/audit-accessibility/SKILL.md at line 41, Update the
accessibility audit requirements in the visual-variants testing guidance so
disabled-state coverage is required only for components that support disabled
behavior, while coverage remains mandatory for every supported status and size
variant.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.agents/skills/agent-upkeep/SKILL.md:
- Around line 157-163: Update the Mode A verification instructions to run lint
from every supplied packages[].workingDirectory after all changes, rather than
only from the target project directory. Run tests and type checks from the
project containing the hand-fixed source file, preserving the existing commands
and sequencing after the final change.
- Around line 79-88: Update the ESLint workflow instructions around the
selector-provided packages command to require a dry-run or equivalent inspection
of autofixes before applying --fix. Proceed only when all resulting changes fit
the one-file and diff-size constraints; otherwise restore the working tree and
skip that rule, preserving the existing suppressions workflow for permitted
fixes.

---

Duplicate comments:
In @.agents/skills/audit-accessibility/SKILL.md:
- Line 41: Update the accessibility audit requirements in the visual-variants
testing guidance so disabled-state coverage is required only for components that
support disabled behavior, while coverage remains mandatory for every supported
status and size variant.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Enterprise

Run ID: 7b777e06-879d-4bf1-9315-4ee04f68b7b0

📥 Commits

Reviewing files that changed from the base of the PR and between 4601239 and e2c17ad.

📒 Files selected for processing (18)
  • .agents/skills/agent-availability-report/SKILL.md
  • .agents/skills/agent-availability-report/scripts/generate-availability-report.js
  • .agents/skills/agent-debug-ci/SKILL.md
  • .agents/skills/agent-upkeep/SKILL.md
  • .agents/skills/agent-upkeep/scripts/select-task.js
  • .agents/skills/audit-accessibility/SKILL.md
  • .agents/skills/audit-ci/SKILL.md
  • .agents/skills/audit-ci/references/optimization-playbook.md
  • .agents/skills/audit-code/SKILL.md
  • .agents/skills/authoring-components/SKILL.md
  • .agents/skills/authoring-documentation/SKILL.md
  • .agents/skills/authoring-examples/SKILL.md
  • .agents/skills/authoring-patterns/SKILL.md
  • .agents/skills/authoring-tests/SKILL.md
  • .agents/skills/authoring-typescript/SKILL.md
  • .agents/skills/guidance-api-design/SKILL.md
  • .agents/skills/guidance-build-system/SKILL.md
  • .github/workflows/ci.yml

Comment thread .agents/skills/agent-upkeep/SKILL.md Outdated
Comment thread .agents/skills/agent-upkeep/SKILL.md Outdated
Copilot AI review requested due to automatic review settings August 6, 2026 02:15
@coryrylan
coryrylan force-pushed the topic-nightly-build branch from e2c17ad to 63b397c Compare August 6, 2026 02:15
@coderabbitai

coderabbitai Bot commented Aug 6, 2026

Copy link
Copy Markdown

Note

GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer.

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

Pull request overview

Copilot reviewed 19 out of 19 changed files in this pull request and generated no new comments.

Suppressed comments (4)

.agents/skills/agent-upkeep/scripts/select-task.js:144

  • disabledRules() assumes the closing pattern \n }, exists after the marker. If it doesn't, source.indexOf(...) returns -1 and the slice can accidentally scan the rest of the file, changing selection behavior silently. Fail fast when the end-of-block sentinel cannot be found.
  const start = source.indexOf(DISABLED_MARKER);
  if (start === -1) fail(`marker comment "${DISABLED_MARKER}" not found in ${ESLINT_CONFIG}`);
  const block = source.slice(start, source.indexOf('\n  },', start));
  const found = [...block.matchAll(/'([^']+)':\s*'off'/g)].map(m => m[1]);

.agents/skills/agent-upkeep/scripts/select-task.js:218

  • coverageCandidates() guards m.lines but then unconditionally reads m.branches.pct. If an entry is missing branches (or it’s null), the selector will crash instead of falling through to the next task.
      if (file === 'total' || !m.lines) continue;
      const uncovered = m.lines.total - m.lines.covered;
      const below = m.lines.pct < GUARDRAILS.coverageThreshold || m.branches.pct < GUARDRAILS.coverageThreshold;
      if (!below || uncovered < 1 || uncovered > GUARDRAILS.maxUncoveredLines) continue;
      candidates.push({ project, file, uncovered, lines: m.lines.pct, branches: m.branches.pct });

.agents/skills/agent-upkeep/scripts/select-task.js:326

  • When --task= is provided with an unexpected value, the script currently falls through and fails with a generic "no eligible task found" message. Validating the forced task up-front makes failures more actionable and avoids confusion during manual runs.
  const day = Math.floor((Date.now() - Date.UTC(new Date().getUTCFullYear(), 0, 0)) / 86400000);
  const offset = day % TASK_ROTATION.length;
  const rotated = forcedTask ? [forcedTask] : [...TASK_ROTATION.slice(offset), ...TASK_ROTATION.slice(0, offset)];

.github/workflows/ci.yml:10

  • The new nightly schedule is annotated as "11:07 PM America/Chicago", but scheduled workflows are typically evaluated in UTC (see .github/workflows/stale.yml which uses only cron). If timezone: is ignored or not supported by Actions, this will actually run at 23:07 UTC, not 23:07 Central. Consider removing timezone: and either (a) documenting the UTC time accurately or (b) adjusting the cron to the intended UTC offset (noting DST tradeoffs).
  schedule:
    - cron: '7 23 * * *' # 11:07 PM America/Chicago
      timezone: America/Chicago

@coderabbitai coderabbitai 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.

Actionable comments posted: 4

♻️ Duplicate comments (2)
.agents/skills/agent-debug-ci/SKILL.md (2)

93-94: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Fetch origin/main before using it as the baseline.

The skill requires the current origin/main, but it does not refresh the remote-tracking branch. A stale reference can cause verification against old code and produce an incorrect fix. Fetch origin/main before verifying the failure or creating the fix branch.

Proposed fix
+Before this step, run `git fetch --prune origin main`.
+
 1. Base the fix on current `origin/main`; first verify that the failure still
    exists there.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.agents/skills/agent-debug-ci/SKILL.md around lines 93 - 94, Update the
baseline workflow in the skill instructions to fetch the latest origin/main
before verifying the failure or creating the fix branch. Preserve the
requirement to verify the failure against current origin/main after refreshing
the remote-tracking reference.

33-36: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Pass the resolved attempt to both gh run view commands.

Line 17 resolves attempt, but Lines 34-36 omit --attempt <attempt>. After a rerun, the agent can inspect a different attempt than the triggering event. Add the attempt selector to the metadata and failed-log commands. GitHub CLI documents --attempt as the workflow-run attempt selector. (cli.github.com)

Proposed fix
 gh run view <run-id> \
+  --attempt <attempt> \
   --json databaseId,attempt,event,headBranch,headSha,status,conclusion,url,workflowName,jobs
-gh run view <run-id> --log-failed
+gh run view <run-id> --attempt <attempt> --log-failed
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.agents/skills/agent-debug-ci/SKILL.md around lines 33 - 36, Update both `gh
run view` commands in the CI debugging instructions to include the resolved
`--attempt <attempt>` selector, ensuring metadata and failed logs are retrieved
from the triggering workflow-run attempt.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.agents/skills/agent-debug-ci/SKILL.md:
- Around line 26-27: Update the ci:reset procedure in the agent-debug-ci
instructions to run git clean -ndX before cleanup, review every listed ignored
path, and confirm each is disposable. Preserve unrelated ignored work by using
targeted cleanup rather than blindly invoking the clean step, while retaining
the existing worktree-status check.

In @.agents/skills/agent-upkeep/scripts/select-task.js:
- Around line 115-120: Update the ref-enumeration error handling in the
task-selection flow around git and refs so a failed git for-each-ref call exits
with a non-zero result instead of returning an empty branch list. Ensure
selection stops immediately and cannot proceed when remote upkeep branches
cannot be listed.

In @.agents/skills/agent-upkeep/SKILL.md:
- Around line 56-61: Update the upkeep workflow instructions to require
rerunning `mise exec -- pnpm run test:coverage` after editing tests, so
`coverage-summary.json` reflects the changes. In the completion guidance,
require comparing the refreshed coverage with the recorded baseline before
declaring the task complete.

In @.agents/skills/audit-code/SKILL.md:
- Around line 26-28: Update the guideline map in the audit skill documentation
to include Markdown files, mapping *.md changes to the authoring-documentation
SKILL.md guidance so Vale and project terminology rules are applied.

---

Duplicate comments:
In @.agents/skills/agent-debug-ci/SKILL.md:
- Around line 93-94: Update the baseline workflow in the skill instructions to
fetch the latest origin/main before verifying the failure or creating the fix
branch. Preserve the requirement to verify the failure against current
origin/main after refreshing the remote-tracking reference.
- Around line 33-36: Update both `gh run view` commands in the CI debugging
instructions to include the resolved `--attempt <attempt>` selector, ensuring
metadata and failed logs are retrieved from the triggering workflow-run attempt.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Enterprise

Run ID: d88f8df3-3055-4d15-8e26-86dc92daf3f0

📥 Commits

Reviewing files that changed from the base of the PR and between c7e16a5 and 63b397c.

📒 Files selected for processing (19)
  • .agents/skills/agent-availability-report/SKILL.md
  • .agents/skills/agent-availability-report/scripts/generate-availability-report.js
  • .agents/skills/agent-debug-ci/SKILL.md
  • .agents/skills/agent-upkeep/SKILL.md
  • .agents/skills/agent-upkeep/scripts/select-task.js
  • .agents/skills/audit-accessibility/SKILL.md
  • .agents/skills/audit-ci/SKILL.md
  • .agents/skills/audit-ci/references/optimization-playbook.md
  • .agents/skills/audit-code/SKILL.md
  • .agents/skills/authoring-components/SKILL.md
  • .agents/skills/authoring-documentation/SKILL.md
  • .agents/skills/authoring-examples/SKILL.md
  • .agents/skills/authoring-patterns/SKILL.md
  • .agents/skills/authoring-tests/SKILL.md
  • .agents/skills/authoring-typescript/SKILL.md
  • .agents/skills/guidance-api-design/SKILL.md
  • .agents/skills/guidance-build-system/SKILL.md
  • .github/workflows/ci.yml
  • AGENTS.md

Comment thread .agents/skills/agent-debug-ci/SKILL.md
Comment thread .agents/skills/agent-upkeep/scripts/select-task.js Outdated
Comment thread .agents/skills/agent-upkeep/SKILL.md Outdated
Comment thread .agents/skills/audit-code/SKILL.md
@coryrylan
coryrylan force-pushed the topic-nightly-build branch from 63b397c to 5b3ca6b Compare August 11, 2026 15:29
@coryrylan
coryrylan force-pushed the topic-nightly-build branch from 5b3ca6b to 3794417 Compare August 11, 2026 16:44
Signed-off-by: Cory Rylan <crylan@nvidia.com>
@coryrylan
coryrylan force-pushed the topic-nightly-build branch from 3794417 to 0be1aeb Compare August 11, 2026 22:21
@coryrylan
coryrylan merged commit 58a64b2 into main Aug 12, 2026
15 checks passed
@coryrylan
coryrylan deleted the topic-nightly-build branch August 12, 2026 00:30
@coryrylan

Copy link
Copy Markdown
Collaborator Author

🎉 This issue has been resolved in version 2.3.1 🎉

Changelog

@coryrylan

Copy link
Copy Markdown
Collaborator Author

🎉 This issue has been resolved in version 2.0.1 🎉

Changelog

@coryrylan

Copy link
Copy Markdown
Collaborator Author

🎉 This issue has been resolved in version 2.1.3 🎉

Changelog

@coryrylan

Copy link
Copy Markdown
Collaborator Author

🎉 This issue has been resolved in version 2.4.0 🎉

Changelog

@coryrylan

Copy link
Copy Markdown
Collaborator Author

🎉 This issue has been resolved in version 2.2.0 🎉

Changelog

@coryrylan

Copy link
Copy Markdown
Collaborator Author

🎉 This issue has been resolved in version 2.0.3 🎉

Changelog

@coryrylan

Copy link
Copy Markdown
Collaborator Author

🎉 This issue has been resolved in version 1.0.1 🎉

Changelog

@coryrylan

Copy link
Copy Markdown
Collaborator Author

🎉 This issue has been resolved in version 2.0.7 🎉

Changelog

@coryrylan

Copy link
Copy Markdown
Collaborator Author

🎉 This issue has been resolved in version 2.1.0 🎉

Changelog

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

Labels

github_actions Pull requests that update GitHub Actions code released scope(ci)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants