feat: nemoclaw maintainer community response skill#1861
feat: nemoclaw maintainer community response skill#1861
Conversation
…salvage A suite of 8 agent skills and 4 TypeScript scripts that automate the NemoClaw maintainer workflow: triage open PRs, check merge gates, salvage near-ready contributions, detect hotspots, and close test gaps. Skills: - nemoclaw-maintainer-loop: orchestrator for /loop integration - nemoclaw-maintainer-triage: deterministic queue builder (calls gh-pr-merge-now) - nemoclaw-maintainer-merge-gate: 4-gate approval checker - nemoclaw-maintainer-salvage-pr: near-ready PR rescue with fork push support - nemoclaw-maintainer-security-sweep: security-focused review routing - nemoclaw-maintainer-test-gaps: targeted test coverage for risky code - nemoclaw-maintainer-hotspots: churn/conflict pressure detection - nemoclaw-maintainer-sequence-work: large issue decomposition Scripts (node --experimental-strip-types): - triage.ts: calls gh-pr-merge-now, enriches with risky-area detection, scores - check-gates.ts: CI, conflicts, CodeRabbit, risky-code-tested gates - hotspots.ts: 30-day git churn + open PR file overlap analysis - state.ts: local state file CRUD (init, exclude, history, set-queue) Signed-off-by: Carlos Villela <cvillela@nvidia.com> Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace 9 separate maintainer skills with 3 phase-based skills matching the daily ship cycle: morning (triage + label), day (execute + loop), evening (handoff + tag). Inner workflows become reference docs under the day skill with progressive disclosure. Key changes: - Extract shared.ts to deduplicate RISKY_PATTERNS, run(), scoring weights - Fail-closed gate checker (was defaulting to pass on API error) - Named scoring constants with documented rationale - Add PR-REVIEW-PRIORITIES.md codifying the review priority order - Add version-label-based daily cadence (label items with target tag, bump stragglers at EOD, cut patch tag for overnight QA) - stderr logging in shell helpers instead of silent swallowing Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…w issues New scripts for deterministic operations that were previously inline: - version-target.ts: compute next patch version + find stragglers - version-progress.ts: shipped vs open for a version label - bump-stragglers.ts: move open items from one version label to next - handoff-summary.ts: commits since last tag + risky areas + QA focus Review fixes: - Remove duplicated scoring table from morning (reference PR-REVIEW-PRIORITIES.md) - Security sweep uses triage-identified items instead of re-running find-review-pr - Evening uses state.ts script command for state updates - Morning uses version-target.ts for straggler discovery (no ambiguous placeholder) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Both version-progress.ts and triage.ts now include ageDays as a computed field in their JSON output, so triage tables never depend on Claude doing date arithmetic from raw ISO timestamps. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
At a daily ship cadence most PRs are <24h old, making ageDays show 0 for everything. ageHours gives useful resolution. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Remove external gh-pr-merge-now dependency from triage script. The script now fetches open PRs directly via gh CLI, classifies them as merge-ready / near-miss / blocked, and scores them using the same weighted model. Key changes: - Fetch basic PR data first (lightweight), then enrich top candidates with statusCheckRollup individually to avoid GraphQL timeouts - Add single retry with 3s delay for transient GitHub API failures - Add labels array to QueueItem output for version-label awareness - Classification logic: merge-now requires approved + green CI + clean merge state; near-miss allows up to 2 fixable blockers Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
GitHub's GraphQL API returns 502 when requesting too many PRs with rich fields (statusCheckRollup, mergeStateStatus, reviewDecision). Limit to 50 most recent PRs which is sufficient for daily triage. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Three bugs in the triage classifier: - BLOCKED merge state was treated as a conflict (it means "missing required reviews", not a conflict — DIRTY is the actual conflict) - StatusContext checks (CodeRabbit) use state/context fields, not conclusion/status — handle both shapes from gh CLI - No bucket existed between "approved + merge-ready" and "needs salvage", so most OSS PRs fell to blocked Add review-ready bucket (green CI, not draft, no conflicts) scored at +35, between merge-now (+40) and near-miss (+30). Also simplify by fetching statusCheckRollup in the initial query (works at limit 50) instead of per-PR enrichment. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace single gh pr list (capped at 50 by GraphQL) with gh api --paginate using the REST endpoint. Fetches all open PRs as lightweight NDJSON, then enriches only the top candidates with CI/review data via per-PR GraphQL calls. Previous: 50 PRs visible, missed older security PRs Now: all 243 open PRs visible, oldest items no longer invisible to triage Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The salvage workflow was biased toward "ask the contributor and wait" which blocks the daily ship cadence. Now defaults to maintainer does the work (rebase, fix conflicts, add tests, push). Only defer to contributor when intent is ambiguous from the diff. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
GitHub invalidates approvals when new commits are pushed. Approving a PR with conflicts is wasted effort since the rebase push resets it. Merge gate now explicitly: do not approve DIRTY PRs. Correct sequence is salvage (rebase) → CI green → approve → report ready for merge. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
PRs with GitHub labels now score higher in triage: - "security" label: +15 - "priority: high" label: +10 This produces clear score tiers: security+high+risky (80) > high+risky (65) > unlabeled+risky (55) > unlabeled clean (35). Previously all review-ready PRs with risky files scored identical 55. Also fix stale return type in scoreItem and nextAction text. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The CLAUDE.md guideline said all .agents/skills/nemoclaw-*/*.md is autogenerated and should never be edited directly. This is true for docs-derived skills but not for the hand-authored maintainer skills (morning/day/evening). CodeRabbit was flagging valid edits based on this overly broad rule. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace the overly broad "nemoclaw-*/*.md is autogenerated" rule with an explicit list of the skills that docs-to-skills.py actually produces. All other skills (maintainer-*, cut-release-tag, etc.) are clearly documented as hand-authored. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Main replaced CLAUDE.md with a symlink to AGENTS.md and reorganized skills into audience buckets (nemoclaw-user-*, nemoclaw-maintainer-*, nemoclaw-contributor-*). The narrower autogenerated rule (nemoclaw-user-* only) is already in main's AGENTS.md, making our explicit-list change redundant. Accept main's version. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add parseStringArg/parseIntArg helpers to shared.ts for safe CLI arg parsing with validation and fallback defaults. Update all 6 scripts. - Wrap JSON.parse in state.ts cmdSetQueue/cmdSetHotspots with try-catch for clear error on malformed piped input. - Fix cmdExclude docstring to match behavior (PR-only, not PR+issue). - Document enrichment cap (limit*3) as intentional in triage.ts. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
… errors Three CodeRabbit findings on version-target.ts: - Future version labels (e.g. v0.0.11) were incorrectly flagged as stragglers. Now uses semver comparison (compareSemver < 0) to only catch labels older than the target. - Empty catch blocks silently hid gh parse failures. Now logs to stderr. - Documented that --repo controls gh queries while git tags always come from the local checkout. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Adds the community engagement guide (full + snippet), the nemoclaw-maintainer-community-response agent skill, and gitignores .nemoclaw-maintainer/ for local response logs. Guide covers 9 situations: won't-fix, superseded PR, poorly designed PR, duplicates, feature requests, Discussion redirects, triage acknowledgment, needs-info (label + close), and response time norms. Skill produces a recommended action + draft comment for each item, logs approved responses locally. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Maps each situation to the correct NemoClaw Development Tracker project status (Won't Fix, Duplicate, Backlog, In Progress, Needs Review, Done, NVQA, No Status) so maintainers set the right status instead of defaulting to Done. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…flow Adds docs/project-workflow.md covering: - Project board status semantics (No Status → Backlog → In Progress → Done) - Three-tier label structure (Type + Sub-type + Dimension) - Step-by-step board setup for Enhancement Parking and Platform/Integration views - Main board filter instructions (hide unreviewed enhancements) Updates community response skill to read project-workflow.md at runtime, suggest the correct label combination for feature requests, and set project status to No Status (not Backlog) for new unreviewed items. Updates maintainer guide § 6 and snippet to match. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Log now saves to ~/development/daily-rhythm/activity/nemoclaw-community-responses.md so it is persisted to GitLab over time rather than staying local in the NemoClaw repo. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…ished Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
PRs requiring rebase or author check-in now use the rebase nudge action, which posts a comment and applies status: needs-info via gh pr edit. Follows the existing 7-day needs-info closure policy. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
Note Reviews pausedIt 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 Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
📝 WalkthroughWalkthroughAdds a NemoClaw maintainer community-response skill and DEVLOG, plus three documentation pages (quick-reference snippet, full maintainer guide, and project-workflow) that define classification, response templates, project-status semantics, label taxonomy, board views, runtime-doc reads, and activity logging. Changes
Sequence Diagram(s)sequenceDiagram
participant User as User
participant Skill as NemoClaw Skill
participant Docs as Reference Docs
participant GitHub as GitHub API
participant Log as Activity Log
User->>Skill: Invoke skill with issue/PR context
Skill->>Docs: Read `docs/maintainer-guide.md` & `docs/project-workflow.md`
Skill-->>Skill: Classify item & select recommended action/status
Skill->>User: Present recommended action, draft response, label edits
User->>Skill: Approve recommendations
Skill->>GitHub: Post comment / edit labels / modify PR
Skill->>Log: Append standardized entry to daily-rhythm activity file
GitHub-->>User: Reflect comment/label changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 4
🧹 Nitpick comments (7)
docs/maintainer-guide-snippet.md (3)
19-25: Reduce routine bold emphasis in the intro checklist.This block overuses bold for non-warning statements. LLM pattern detected.
As per coding guidelines, "Unnecessary bold on routine instructions ... should be flagged. LLM pattern detected."
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/maintainer-guide-snippet.md` around lines 19 - 25, The checklist fragment overuses bold for routine items (e.g., "**Always explain why**", "**Acknowledge contributors**", "**Security reporters get credit**", "**Be specific when declining**", "**Route, don't reject**", "**Name what you need**") which triggers an LLM-style formatting flag; update the snippet to remove or reduce bold on non-critical routine instructions by converting those bolded phrases to plain text (or reserve bold only for true warnings/critical actions), keeping emphasis only where necessary and ensuring the list remains clear and consistent.
28-28: Use H2 section anchors and keep H3 for subsections.This page jumps straight into H3 headings. Add H2-level section structure to match the docs page layout rules.
As per coding guidelines, "Sections use H2 and H3, each starting with an introductory sentence."
Also applies to: 40-40, 52-52, 62-62, 70-70, 82-82, 88-88, 94-94, 106-106
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/maintainer-guide-snippet.md` at line 28, The document uses H3 headings like "Closing Won't Fix / Out of Scope" without a parent H2; add an H2 section header (e.g., "Resolution and Scope" or a clear H2 that introduces the group) immediately before this H3 and include one introductory sentence for the H2 as per the style guide, then keep "Closing Won't Fix / Out of Scope" as an H3 subsection under that H2; apply the same pattern for the other mentioned headings at lines 40, 52, 62, 70, 82, 88, 94, and 106 so each H3 has a preceding H2 with an intro sentence.
36-36: Split this into one sentence per source line.This line contains multiple sentences; docs style requires one sentence per line for cleaner diffs.
As per coding guidelines, "One sentence per line in source (makes diffs readable). Flag paragraphs where multiple sentences appear on the same line."
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/maintainer-guide-snippet.md` at line 36, The single source line containing four sentences should be split so each sentence is on its own source line; locate the line starting "Thanks for raising this. After review, we're closing as **[label]** because [one sentence]. See [CONTRIBUTING.md](../CONTRIBUTING.md) for scope guidance. We appreciate you taking the time." and break it into four lines: "Thanks for raising this." "After review, we're closing as **[label]** because [one sentence]." "See [CONTRIBUTING.md](../CONTRIBUTING.md) for scope guidance." "We appreciate you taking the time." preserving punctuation, emphasis and the link text exactly as shown.docs/maintainer-guide.md (2)
23-29: Trim bold usage in routine checklist statements.This section uses bold emphasis for normal instructions instead of warnings/UI tokens. LLM pattern detected.
As per coding guidelines, "Unnecessary bold on routine instructions ... should be flagged. LLM pattern detected."
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/maintainer-guide.md` around lines 23 - 29, The checklist items ("Always explain why", "Acknowledge contributors", "Security reporters get credit", "Be specific when declining", "Route, don't reject", "Name what you need") use bold for routine instructions; remove the bold markup around these normal checklist statements so they are plain text (reserve bold only for true warnings or UI token names), keep the phrasing and punctuation unchanged, and ensure consistent styling across the list in docs/maintainer-guide.md.
32-32: Drop numeric prefixes from section titles.Numbered section headings violate the documentation heading style rules.
As per coding guidelines, "Do not number section titles. Flag 'Section 1: ...', 'Step 3: ...', etc."
Also applies to: 58-58, 80-80, 107-107, 122-122, 139-139, 166-166, 181-181, 196-196, 219-219
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/maintainer-guide.md` at line 32, The heading "## 1. Closing Issues as Won't Fix or Out of Scope" (and other headings that start with "## <number>. ...") violate the docs style—remove the numeric prefixes so the heading reads "## Closing Issues as Won't Fix or Out of Scope" and apply the same change to all other numbered section titles that match the pattern "## <number>. ..." to ensure consistent non-numbered headings; also update any Table of Contents or cross-references that relied on the numeric form to use the new heading text.docs/project-workflow.md (2)
125-125: Avoid colons in section titles.
View 1: Enhancement ParkingandView 2: Platform & Integration Requestsshould be retitled without colons.As per coding guidelines, "No colons in titles. Flag 'Inference: Cloud and Local' — should be 'Cloud and Local Inference.'"
Also applies to: 135-135
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/project-workflow.md` at line 125, Rename the section headings that contain colons to remove the colon and adjust wording: change "View 1: Enhancement Parking" to "View 1 Enhancement Parking", change "View 2: Platform & Integration Requests" to "View 2 Platform & Integration Requests", and change "Inference: Cloud and Local" to "Cloud and Local Inference"; update any matching header strings in docs/project-workflow.md so they follow the "no colons in titles" guideline and preserve surrounding punctuation/formatting.
23-23: Remove numeric prefixes from section headings.These headings use numbered titles (
1.,2., etc.), which violates the docs heading style.As per coding guidelines, "Do not number section titles. Flag 'Section 1: ...', 'Step 3: ...', etc."
Also applies to: 53-53, 121-121, 162-162
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/project-workflow.md` at line 23, Remove numeric prefixes from section headings that currently include leading numbers (e.g., change "## 1. Project Status Semantics" to "## Project Status Semantics"); edit all other headings flagged (the ones starting with "## <number>. ...") to drop the numeric prefix so they read as plain titles (for example replace "## 2. ..." and "## 3. ..." with "## ..."); ensure no section headings contain leading numbers anywhere in the document to match the docs heading style.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@docs/maintainer-guide.md`:
- Line 74: The markdown link target "../SECURITY.md" (anchor text "coordinated
disclosure process") in docs/maintainer-guide.md is not resolvable by the docs
toolchain; replace that relative target with a docs-resolvable path (for example
"SECURITY.md" or "/SECURITY.md" or an absolute URL) so the cross-reference
builds correctly, and apply the same change to the other occurrence mentioned
(the one at the second reported location).
- Line 3: Frontmatter title ("NemoClaw Maintainer Guide") does not exactly match
the H1 heading; update the document so the top-level H1 text is exactly
"NemoClaw Maintainer Guide" (matching capitalization, spacing and punctuation)
so it equals the frontmatter title.page value, and apply the same fix to the
other occurrence noted (the H1 at the other location referenced).
In `@docs/project-workflow.md`:
- Around line 38-44: The fenced code block containing the workflow diagram ("No
Status → Backlog → In Progress → Done ... Duplicate (superseded)") is missing a
language tag; update the triple-backtick fence to include a language (e.g., add
`text` or `plain`) so the block becomes a typed fenced code block and satisfies
the docs lint rule for code block language.
- Line 3: The H1 heading in the Markdown does not exactly match the frontmatter
title "NemoClaw Project Workflow Reference"; update the H1 (the top-level "#
..." heading) to match the frontmatter title exactly (including capitalization
and punctuation) or vice versa by updating the frontmatter `title` value so both
are identical; ensure the first-level heading and `title` frontmatter are
strictly identical.
---
Nitpick comments:
In `@docs/maintainer-guide-snippet.md`:
- Around line 19-25: The checklist fragment overuses bold for routine items
(e.g., "**Always explain why**", "**Acknowledge contributors**", "**Security
reporters get credit**", "**Be specific when declining**", "**Route, don't
reject**", "**Name what you need**") which triggers an LLM-style formatting
flag; update the snippet to remove or reduce bold on non-critical routine
instructions by converting those bolded phrases to plain text (or reserve bold
only for true warnings/critical actions), keeping emphasis only where necessary
and ensuring the list remains clear and consistent.
- Line 28: The document uses H3 headings like "Closing Won't Fix / Out of Scope"
without a parent H2; add an H2 section header (e.g., "Resolution and Scope" or a
clear H2 that introduces the group) immediately before this H3 and include one
introductory sentence for the H2 as per the style guide, then keep "Closing
Won't Fix / Out of Scope" as an H3 subsection under that H2; apply the same
pattern for the other mentioned headings at lines 40, 52, 62, 70, 82, 88, 94,
and 106 so each H3 has a preceding H2 with an intro sentence.
- Line 36: The single source line containing four sentences should be split so
each sentence is on its own source line; locate the line starting "Thanks for
raising this. After review, we're closing as **[label]** because [one sentence].
See [CONTRIBUTING.md](../CONTRIBUTING.md) for scope guidance. We appreciate you
taking the time." and break it into four lines: "Thanks for raising this."
"After review, we're closing as **[label]** because [one sentence]." "See
[CONTRIBUTING.md](../CONTRIBUTING.md) for scope guidance." "We appreciate you
taking the time." preserving punctuation, emphasis and the link text exactly as
shown.
In `@docs/maintainer-guide.md`:
- Around line 23-29: The checklist items ("Always explain why", "Acknowledge
contributors", "Security reporters get credit", "Be specific when declining",
"Route, don't reject", "Name what you need") use bold for routine instructions;
remove the bold markup around these normal checklist statements so they are
plain text (reserve bold only for true warnings or UI token names), keep the
phrasing and punctuation unchanged, and ensure consistent styling across the
list in docs/maintainer-guide.md.
- Line 32: The heading "## 1. Closing Issues as Won't Fix or Out of Scope" (and
other headings that start with "## <number>. ...") violate the docs style—remove
the numeric prefixes so the heading reads "## Closing Issues as Won't Fix or Out
of Scope" and apply the same change to all other numbered section titles that
match the pattern "## <number>. ..." to ensure consistent non-numbered headings;
also update any Table of Contents or cross-references that relied on the numeric
form to use the new heading text.
In `@docs/project-workflow.md`:
- Line 125: Rename the section headings that contain colons to remove the colon
and adjust wording: change "View 1: Enhancement Parking" to "View 1 Enhancement
Parking", change "View 2: Platform & Integration Requests" to "View 2 Platform &
Integration Requests", and change "Inference: Cloud and Local" to "Cloud and
Local Inference"; update any matching header strings in docs/project-workflow.md
so they follow the "no colons in titles" guideline and preserve surrounding
punctuation/formatting.
- Line 23: Remove numeric prefixes from section headings that currently include
leading numbers (e.g., change "## 1. Project Status Semantics" to "## Project
Status Semantics"); edit all other headings flagged (the ones starting with "##
<number>. ...") to drop the numeric prefix so they read as plain titles (for
example replace "## 2. ..." and "## 3. ..." with "## ..."); ensure no section
headings contain leading numbers anywhere in the document to match the docs
heading style.
🪄 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: CHILL
Plan: Pro Plus
Run ID: 0baf0822-d4da-4c8a-b971-a52dcfa61ad8
📒 Files selected for processing (5)
.agents/skills/nemoclaw-maintainer-community-response/DEVLOG.md.agents/skills/nemoclaw-maintainer-community-response/SKILL.mddocs/maintainer-guide-snippet.mddocs/maintainer-guide.mddocs/project-workflow.md
|
🚀 Docs preview ready! |
There was a problem hiding this comment.
Actionable comments posted: 2
♻️ Duplicate comments (3)
docs/project-workflow.md (2)
38-44:⚠️ Potential issue | 🟠 MajorAdd a language tag to the fenced block.
Use a typed fence (for example
text) for the promotion-flow block.Proposed fix
-``` +```text No Status → Backlog → In Progress → Done ↓ Won't Fix (declined) ↓ Duplicate (superseded)</details> As per coding guidelines, "Missing SPDX header, broken cross-references, or incorrect code block language: flag as issues." <details> <summary>🤖 Prompt for AI Agents</summary>Verify each finding against the current code and only fix it if needed.
In
@docs/project-workflow.mdaround lines 38 - 44, The fenced diagram block
lacks a language tag; update the code fence surrounding the promotion-flow
diagram (the triple-backtick block containing "No Status → Backlog → In Progress
→ Done ... Duplicate (superseded)") to use a typed fence such as "text" (e.g.,guidelines.
17-17:⚠️ Potential issue | 🟡 MinorMake H1 exactly match frontmatter title.
The H1 includes an em dash that is not in
title.As per coding guidelines, "H1 heading matches the
title.pagefrontmatter value."🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/project-workflow.md` at line 17, Update the top-level H1 so it exactly matches the frontmatter key title.page (remove the em dash and any other characters that differ); locate the document's H1 line (the line that currently reads "NemoClaw — Project Workflow Reference") and change it to the exact string from title.page so the H1 and the frontmatter title.page are identical.docs/maintainer-guide.md (1)
17-17:⚠️ Potential issue | 🟡 MinorMatch H1 exactly to frontmatter title.
The H1 includes “— Community Engagement” but
titledoes not, so they are not identical.As per coding guidelines, "H1 heading matches the
title.pagefrontmatter value."🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/maintainer-guide.md` at line 17, The H1 heading ("# NemoClaw Maintainer Guide — Community Engagement") must exactly match the frontmatter title value (the frontmatter key `title.page`/`title`); update the H1 to remove or add text so it exactly equals the frontmatter `title.page` string (or alternatively update the `title.page` value to match the existing H1) so the H1 and `title.page` are identical.
🧹 Nitpick comments (6)
docs/maintainer-guide.md (2)
152-152: UsemacOSinstead ofMacOSin the label example.Update the sample label text to match the approved term.
As per coding guidelines, "Correct: ... Incorrect (flag these): ...
macOSis required (notMacOS)."🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/maintainer-guide.md` at line 152, Update the example Tier 3 dimension label text by replacing the incorrect "Platform: MacOS" string with the approved casing "Platform: macOS" so the sample label reads "Platform: macOS", keeping the rest of the line ("Integration: Slack", "Provider: NVIDIA") unchanged.
32-219: Remove numeric prefixes from section headings.Headings like
## 1. ...violate the docs heading style and should be plain text titles.As per coding guidelines, "Do not number section titles. Flag 'Section 1: ...', 'Step 3: ...', etc."
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/maintainer-guide.md` around lines 32 - 219, Several top-level section headings include numeric prefixes (e.g., "## 1. Closing Issues as Won't Fix or Out of Scope", "## 2. Merging a PR..." through "## 10. References"); remove the numeric prefixes so headings read like "## Closing Issues as Won't Fix or Out of Scope", "## Merging a PR That Makes Another PR Redundant", etc. Update every heading that starts with "## <number>. " in this file to drop the "<number>. " prefix and scan for any internal references that mention those numbered titles so they point to the new non-numbered headings (adjust text or links as needed).docs/maintainer-guide-snippet.md (1)
76-76: Correct OS casing in label examples.Change
Platform: MacOStoPlatform: macOS.As per coding guidelines, "Correct: ...
macOS... Incorrect (flag these): ...MacOS."🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/maintainer-guide-snippet.md` at line 76, Update the label example text that currently reads "Platform: MacOS" to use the correct casing "Platform: macOS" (look for the string "Platform: MacOS" in the maintainer guide snippet and replace it with "Platform: macOS").docs/project-workflow.md (3)
91-91: FixmacOScasing in platform labels/examples.Replace
MacOSwithmacOSin both occurrences.As per coding guidelines, "Correct: ...
macOS... Incorrect (flag these): ...MacOS."Also applies to: 105-105
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/project-workflow.md` at line 91, Replace the incorrect "MacOS" casing in the platform labels/examples by changing all occurrences of the backticked `Platform: MacOS` (and any other backticked `MacOS` mentions) to `macOS`; search for the symbol string "Platform: MacOS" or plain "MacOS" in the document and update both occurrences (including the second occurrence noted in the comment) so they use the correct `macOS` casing.
125-153: Avoid colons in section titles.Titles like
### View 1: Enhancement Parkingshould be rewritten without colons.As per coding guidelines, "No colons in titles. Flag 'Inference: Cloud and Local' — should be 'Cloud and Local Inference.'"
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/project-workflow.md` around lines 125 - 153, Headings in this file use colons and must be rewritten without them; update the three headings "### View 1: Enhancement Parking", "### View 2: Platform & Integration Requests", and "### Main Board (update existing)" to remove colons (e.g., "### View 1 Enhancement Parking", "### View 2 Platform & Integration Requests", "### Main Board (update existing)") and also update any other titled phrases following the same pattern (for example change "Inference: Cloud and Local" to "Cloud and Local Inference"); ensure any internal references or links to these headings are adjusted to match the new titles.
23-162: Remove numbering from section headings.Headings should not be prefixed with numeric indices.
As per coding guidelines, "Do not number section titles. Flag 'Section 1: ...', 'Step 3: ...', etc."
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/project-workflow.md` around lines 23 - 162, Remove numeric prefixes from the top-level section headings in docs/project-workflow.md: rename "## 1. Project Status Semantics" to "## Project Status Semantics", "## 2. Label Structure" to "## Label Structure", "## 3. Board Setup Instructions" to "## Board Setup Instructions", and "## 4. Triage Checklist" to "## Triage Checklist"; also strip any numbered prefixes on subheadings such as "### Tier 1 — Issue Type (always apply one)" only if they include leading numbers, leaving the descriptive text (Tier 1, Tier 2, Promotion Flow, etc.) intact so heading semantics and links remain consistent.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@docs/maintainer-guide-snippet.md`:
- Line 28: The "Closing Won't Fix / Out of Scope" heading is currently H3 but
should be H2 and include an introductory sentence per the guidelines; change the
heading markup from H3 to H2 (make it "## Closing Won't Fix / Out of Scope") and
add one short introductory sentence immediately beneath that heading to explain
the section's purpose so the document follows H1 → H2 → H3 hierarchy and the
rule "Sections use H2 and H3, each starting with an introductory sentence."
- Line 17: The H1 "NemoClaw — Community Engagement Quick Reference" should
exactly match the frontmatter title "NemoClaw Community Engagement Quick
Reference"; update the document's top-level heading (the H1) to remove the em
dash and any punctuation/variation so it equals the frontmatter title string
exactly, ensuring the H1 now matches title.page per the guideline.
---
Duplicate comments:
In `@docs/maintainer-guide.md`:
- Line 17: The H1 heading ("# NemoClaw Maintainer Guide — Community Engagement")
must exactly match the frontmatter title value (the frontmatter key
`title.page`/`title`); update the H1 to remove or add text so it exactly equals
the frontmatter `title.page` string (or alternatively update the `title.page`
value to match the existing H1) so the H1 and `title.page` are identical.
In `@docs/project-workflow.md`:
- Around line 38-44: The fenced diagram block lacks a language tag; update the
code fence surrounding the promotion-flow diagram (the triple-backtick block
containing "No Status → Backlog → In Progress → Done ... Duplicate
(superseded)") to use a typed fence such as "text" (e.g., ```text) so the block
is explicitly marked and follows the repo's coding guidelines.
- Line 17: Update the top-level H1 so it exactly matches the frontmatter key
title.page (remove the em dash and any other characters that differ); locate the
document's H1 line (the line that currently reads "NemoClaw — Project Workflow
Reference") and change it to the exact string from title.page so the H1 and the
frontmatter title.page are identical.
---
Nitpick comments:
In `@docs/maintainer-guide-snippet.md`:
- Line 76: Update the label example text that currently reads "Platform: MacOS"
to use the correct casing "Platform: macOS" (look for the string "Platform:
MacOS" in the maintainer guide snippet and replace it with "Platform: macOS").
In `@docs/maintainer-guide.md`:
- Line 152: Update the example Tier 3 dimension label text by replacing the
incorrect "Platform: MacOS" string with the approved casing "Platform: macOS" so
the sample label reads "Platform: macOS", keeping the rest of the line
("Integration: Slack", "Provider: NVIDIA") unchanged.
- Around line 32-219: Several top-level section headings include numeric
prefixes (e.g., "## 1. Closing Issues as Won't Fix or Out of Scope", "## 2.
Merging a PR..." through "## 10. References"); remove the numeric prefixes so
headings read like "## Closing Issues as Won't Fix or Out of Scope", "## Merging
a PR That Makes Another PR Redundant", etc. Update every heading that starts
with "## <number>. " in this file to drop the "<number>. " prefix and scan for
any internal references that mention those numbered titles so they point to the
new non-numbered headings (adjust text or links as needed).
In `@docs/project-workflow.md`:
- Line 91: Replace the incorrect "MacOS" casing in the platform labels/examples
by changing all occurrences of the backticked `Platform: MacOS` (and any other
backticked `MacOS` mentions) to `macOS`; search for the symbol string "Platform:
MacOS" or plain "MacOS" in the document and update both occurrences (including
the second occurrence noted in the comment) so they use the correct `macOS`
casing.
- Around line 125-153: Headings in this file use colons and must be rewritten
without them; update the three headings "### View 1: Enhancement Parking", "###
View 2: Platform & Integration Requests", and "### Main Board (update existing)"
to remove colons (e.g., "### View 1 Enhancement Parking", "### View 2 Platform &
Integration Requests", "### Main Board (update existing)") and also update any
other titled phrases following the same pattern (for example change "Inference:
Cloud and Local" to "Cloud and Local Inference"); ensure any internal references
or links to these headings are adjusted to match the new titles.
- Around line 23-162: Remove numeric prefixes from the top-level section
headings in docs/project-workflow.md: rename "## 1. Project Status Semantics" to
"## Project Status Semantics", "## 2. Label Structure" to "## Label Structure",
"## 3. Board Setup Instructions" to "## Board Setup Instructions", and "## 4.
Triage Checklist" to "## Triage Checklist"; also strip any numbered prefixes on
subheadings such as "### Tier 1 — Issue Type (always apply one)" only if they
include leading numbers, leaving the descriptive text (Tier 1, Tier 2, Promotion
Flow, etc.) intact so heading semantics and links remain consistent.
🪄 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: CHILL
Plan: Pro Plus
Run ID: 14977c4d-9c41-4594-8455-46304cd66f0f
📒 Files selected for processing (3)
docs/maintainer-guide-snippet.mddocs/maintainer-guide.mddocs/project-workflow.md
| <!-- SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved. --> | ||
| <!-- SPDX-License-Identifier: Apache-2.0 --> | ||
|
|
||
| # NemoClaw — Community Engagement Quick Reference |
There was a problem hiding this comment.
Align H1 text with frontmatter title.
title is “NemoClaw Community Engagement Quick Reference,” but H1 adds an em dash variant.
As per coding guidelines, "H1 heading matches the title.page frontmatter value."
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@docs/maintainer-guide-snippet.md` at line 17, The H1 "NemoClaw — Community
Engagement Quick Reference" should exactly match the frontmatter title "NemoClaw
Community Engagement Quick Reference"; update the document's top-level heading
(the H1) to remove the em dash and any punctuation/variation so it equals the
frontmatter title string exactly, ensuring the H1 now matches title.page per the
guideline.
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@docs/project-workflow.md`:
- Line 23: Remove the numeric prefixes from the section headings so they read
without numbers: change "1. Project Status Semantics" to "Project Status
Semantics", "3. Board Setup Instructions" to "Board Setup Instructions" and "4.
Triage Checklist" to "Triage Checklist"; update any other occurrences mentioned
(the headings at the other indicated locations) to match this non-numbered style
and ensure internal references or TOC entries, if any, are updated to the new
heading text (look for the exact heading strings to locate the edits).
🪄 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: CHILL
Plan: Pro Plus
Run ID: fbc69473-ed6b-4584-869e-45a4fad2e122
📒 Files selected for processing (2)
docs/maintainer-guide-snippet.mddocs/project-workflow.md
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (2)
docs/maintainer-guide.md (2)
23-29: End each TL;DR sentence with a period.These bullet lines are full sentences but do not consistently end with periods.
As per coding guidelines, "Every sentence must end with a period."🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/maintainer-guide.md` around lines 23 - 29, The TL;DR bullet sentences in the maintainer guide are missing terminal periods; update each bullet (the items starting with "Always explain why", "Acknowledge contributors", "Security reporters get credit", "Be specific when declining", "Route, don't reject", and "Name what you need") to end with a period so every sentence follows the "Every sentence must end with a period" rule, and run a quick pass to ensure no other list items in docs/maintainer-guide.md violate this punctuation rule.
32-32: Remove numeric prefixes from section titles.The H2 titles are numbered (
## 1. ...,## 2. ..., etc.), which violates the docs heading style rule. Use unnumbered titles for all sections.
As per coding guidelines, "Do not number section titles. Flag 'Section 1: ...', 'Step 3: ...', etc."Also applies to: 59-59, 81-81, 109-109, 124-124, 142-142, 171-171, 187-187, 203-203, 227-227
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/maintainer-guide.md` at line 32, Several H2 headings like "## 1. Closing Issues as Won't Fix or Out of Scope" include numeric prefixes which violate the docs heading style; remove the leading numbers and dot from these section titles (e.g., change "## 1. ..." to "## Closing Issues as Won't Fix or Out of Scope") and apply the same change to the other affected H2 headings (those currently prefixed with "## <number>.") by stripping the "<number>. " prefix while keeping the rest of the title text intact.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@docs/maintainer-guide.md`:
- Around line 36-40: The maintainer-guide's close-reason table lists labels
(`status: won't-fix`, `status: out-of-scope`, `status: needs-design`, `status:
duplicate`) that conflict with the project's status-label taxonomy in
docs/project-workflow.md (`status: triage`, `status: needs-info`); either update
this table in maintainer-guide.md to use only the canonical labels (`status:
triage`, `status: needs-info`) or, if those additional statuses are intended,
add them to the workflow taxonomy in docs/project-workflow.md in the same PR so
both files remain consistent; update the table rows (the Close reason / When to
use / Label entries) and any mention of `status: won't-fix`, `status:
out-of-scope`, `status: needs-design`, or `status: duplicate` to match the
chosen canonical labels.
---
Nitpick comments:
In `@docs/maintainer-guide.md`:
- Around line 23-29: The TL;DR bullet sentences in the maintainer guide are
missing terminal periods; update each bullet (the items starting with "Always
explain why", "Acknowledge contributors", "Security reporters get credit", "Be
specific when declining", "Route, don't reject", and "Name what you need") to
end with a period so every sentence follows the "Every sentence must end with a
period" rule, and run a quick pass to ensure no other list items in
docs/maintainer-guide.md violate this punctuation rule.
- Line 32: Several H2 headings like "## 1. Closing Issues as Won't Fix or Out of
Scope" include numeric prefixes which violate the docs heading style; remove the
leading numbers and dot from these section titles (e.g., change "## 1. ..." to
"## Closing Issues as Won't Fix or Out of Scope") and apply the same change to
the other affected H2 headings (those currently prefixed with "## <number>.") by
stripping the "<number>. " prefix while keeping the rest of the title text
intact.
🪄 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: CHILL
Plan: Pro Plus
Run ID: afe5941d-0f64-482c-81c2-4f348e6839a8
📒 Files selected for processing (2)
.agents/skills/nemoclaw-maintainer-community-response/DEVLOG.mddocs/maintainer-guide.md
✅ Files skipped from review due to trivial changes (1)
- .agents/skills/nemoclaw-maintainer-community-response/DEVLOG.md
|
@wscurran can you ask your agent to "validate the skill against https://platform.claude.com/docs/en/agents-and-tools/agent-skills/best-practices.md"? usually leads to good edits! |
- Remove log path from description (impl detail, already in step 7) - Remove close+comment from description (table already clarifies close = close+comment) - Add needs-info day-7 warning row to situation table in step 3 - Fix needs-info close row: 7+ days → 14 days (3-stage flow) - Remove Response Time Check section (stale values; skill reads guide at step 1)
|
@coderabbitai review |
✅ Actions performedReview triggered.
|
There was a problem hiding this comment.
🧹 Nitpick comments (7)
docs/maintainer-guide-snippet.md (3)
76-76: UsemacOScasing in prose/examples.
Platform: MacOSshould usemacOSfor Apple OS naming consistency.As per coding guidelines, "Follow style guide in
docs/CONTRIBUTING.mdfor documentation."🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/maintainer-guide-snippet.md` at line 76, Update the casing for Apple OS references in the labels guidance: replace any instances of "Platform: MacOS" with "Platform: macOS" and ensure prose/examples use "macOS" consistently; update the text that lists label examples (the line containing "**Labels:** ... `Platform: MacOS`") to use the correct "macOS" casing throughout.
64-64: Split multi-sentence lines into one sentence per line.These lines contain multiple sentences; split them for maintainable docs diffs.
As per coding guidelines, "One sentence per line in source (makes diffs readable)."
Also applies to: 90-90
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/maintainer-guide-snippet.md` at line 64, The quoted doc line contains multiple sentences on one line ("Thanks for the report. This is a duplicate of #[N] — all discussion is happening there. Closing in favor of the original thread. Feel free to add context or subscribe to #[N] to follow along."); split this into one sentence per line so each of those sentences becomes its own line in docs/maintainer-guide-snippet.md; apply the same one-sentence-per-line change to the other occurrence referenced (around line 90) to keep diffs readable and follow the repository guideline.
102-102: Remove hedge wording from user-facing templates.“Just a heads-up” uses hedge phrasing; use direct language instead.
As per coding guidelines, "No hedge words: flag 'simply,' 'just,' 'easily,' 'of course.'"
Also applies to: 114-114
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/maintainer-guide-snippet.md` at line 102, Remove hedge wording "Just a heads-up —" from the user-facing template line containing "Just a heads-up — we haven't heard back yet..." and replace it with a direct phrasing such as "We haven't heard back yet." Also update the duplicate occurrence on the other instance (line 114) so the template reads: "We haven't heard back yet. If this is still affecting you, please share [repeat specific ask]. We'll close this in 7 days if we don't hear back." Ensure no hedge words like "just," "simply," or "of course" remain..agents/skills/nemoclaw-maintainer-community-response/SKILL.md (1)
93-93: UsemacOSin the label example for consistency.
Platform: MacOSshould bePlatform: macOS.As per coding guidelines, "Use consistent formatting and structure for agent documentation."
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In @.agents/skills/nemoclaw-maintainer-community-response/SKILL.md at line 93, Update the tier-3 label example in the SKILL.md content by replacing the inconsistent casing "Platform: MacOS" with "Platform: macOS"; locate the example string in the SKILL.md text (the line that reads "3. Suggest Tier 3 dimension label(s) if platform-, integration-, or provider-specific (e.g., `Integration: Slack`, `Platform: MacOS`)") and change the embedded label to `Platform: macOS` to match the documentation style guidelines and maintain consistent formatting.docs/maintainer-guide.md (3)
32-253: Remove numbering from section titles.Headings like
## 1. ...through## 10. ...violate the docs heading style; keep titles unnumbered.As per coding guidelines, "Do not number section titles."
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/maintainer-guide.md` around lines 32 - 253, The headings in maintainer-guide.md are numbered (e.g., "## 1. Closing Issues as Won't Fix or Out of Scope", "## 2. Merging a PR That Makes Another PR Redundant", etc.); remove the leading numeric prefixes from each top-level section title so they become unnumbered headings (e.g., "## Closing Issues as Won't Fix or Out of Scope", "## Merging a PR That Makes Another PR Redundant", ...), update any internal references or templates that reference the numeric labels to use the new unnumbered titles, and run a quick pass to ensure heading order and any cross-links (like "§ 1" references) are updated to unnumbered forms or clear textual references.
193-193: Use one sentence per line in source.This line contains multiple sentences on one line; split each sentence onto its own line for doc diff readability.
As per coding guidelines, "One sentence per line in source (makes diffs readable)."
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/maintainer-guide.md` at line 193, The line containing "Thanks for the detailed report — we've confirmed this and added it to our backlog. We don't have a timeline to share yet, but we've got it on our radar. We'll update this issue when work begins." needs to be split so each sentence is on its own source line; edit the maintainer-guide.md entry to place each sentence on a separate line (preserve punctuation and spacing) to follow the "one sentence per line" guideline for readable diffs.
215-241: Avoid hedge wording in templates.The phrase “Just a heads-up” appears in responder templates; replace it with direct wording.
As per coding guidelines, "No hedge words: flag 'simply,' 'just,' 'easily,' 'of course.'"
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/maintainer-guide.md` around lines 215 - 241, Replace hedge phrasing "Just a heads-up" in the responder templates with direct language: locate the template lines "Just a heads-up — we haven't heard back yet..." and "Just a heads-up — this PR still needs a rebase..." in maintainer-guide.md (Situation 2 and Stage 2) and change them to a direct phrase such as "Please note —" or "Reminder —"; also scan nearby templates for other hedges ("simply", "just", "easily", "of course") and replace them with direct wording to comply with the no-hedge rule.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Nitpick comments:
In @.agents/skills/nemoclaw-maintainer-community-response/SKILL.md:
- Line 93: Update the tier-3 label example in the SKILL.md content by replacing
the inconsistent casing "Platform: MacOS" with "Platform: macOS"; locate the
example string in the SKILL.md text (the line that reads "3. Suggest Tier 3
dimension label(s) if platform-, integration-, or provider-specific (e.g.,
`Integration: Slack`, `Platform: MacOS`)") and change the embedded label to
`Platform: macOS` to match the documentation style guidelines and maintain
consistent formatting.
In `@docs/maintainer-guide-snippet.md`:
- Line 76: Update the casing for Apple OS references in the labels guidance:
replace any instances of "Platform: MacOS" with "Platform: macOS" and ensure
prose/examples use "macOS" consistently; update the text that lists label
examples (the line containing "**Labels:** ... `Platform: MacOS`") to use the
correct "macOS" casing throughout.
- Line 64: The quoted doc line contains multiple sentences on one line ("Thanks
for the report. This is a duplicate of #[N] — all discussion is happening there.
Closing in favor of the original thread. Feel free to add context or subscribe
to #[N] to follow along."); split this into one sentence per line so each of
those sentences becomes its own line in docs/maintainer-guide-snippet.md; apply
the same one-sentence-per-line change to the other occurrence referenced (around
line 90) to keep diffs readable and follow the repository guideline.
- Line 102: Remove hedge wording "Just a heads-up —" from the user-facing
template line containing "Just a heads-up — we haven't heard back yet..." and
replace it with a direct phrasing such as "We haven't heard back yet." Also
update the duplicate occurrence on the other instance (line 114) so the template
reads: "We haven't heard back yet. If this is still affecting you, please share
[repeat specific ask]. We'll close this in 7 days if we don't hear back." Ensure
no hedge words like "just," "simply," or "of course" remain.
In `@docs/maintainer-guide.md`:
- Around line 32-253: The headings in maintainer-guide.md are numbered (e.g.,
"## 1. Closing Issues as Won't Fix or Out of Scope", "## 2. Merging a PR That
Makes Another PR Redundant", etc.); remove the leading numeric prefixes from
each top-level section title so they become unnumbered headings (e.g., "##
Closing Issues as Won't Fix or Out of Scope", "## Merging a PR That Makes
Another PR Redundant", ...), update any internal references or templates that
reference the numeric labels to use the new unnumbered titles, and run a quick
pass to ensure heading order and any cross-links (like "§ 1" references) are
updated to unnumbered forms or clear textual references.
- Line 193: The line containing "Thanks for the detailed report — we've
confirmed this and added it to our backlog. We don't have a timeline to share
yet, but we've got it on our radar. We'll update this issue when work begins."
needs to be split so each sentence is on its own source line; edit the
maintainer-guide.md entry to place each sentence on a separate line (preserve
punctuation and spacing) to follow the "one sentence per line" guideline for
readable diffs.
- Around line 215-241: Replace hedge phrasing "Just a heads-up" in the responder
templates with direct language: locate the template lines "Just a heads-up — we
haven't heard back yet..." and "Just a heads-up — this PR still needs a
rebase..." in maintainer-guide.md (Situation 2 and Stage 2) and change them to a
direct phrase such as "Please note —" or "Reminder —"; also scan nearby
templates for other hedges ("simply", "just", "easily", "of course") and replace
them with direct wording to comply with the no-hedge rule.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: 0abc8f30-e3a7-475a-9b7f-81ed2f05ced0
📒 Files selected for processing (4)
.agents/skills/nemoclaw-maintainer-community-response/DEVLOG.md.agents/skills/nemoclaw-maintainer-community-response/SKILL.mddocs/maintainer-guide-snippet.mddocs/maintainer-guide.md
✅ Files skipped from review due to trivial changes (1)
- .agents/skills/nemoclaw-maintainer-community-response/DEVLOG.md
Label renamed on GitHub to match Apple's official casing.
Replace 'Just a heads-up —' with direct opening across both needs-info and needs-rebase warning templates in snippet and guide.
|
@cv Resolved nits but skipped one (not relevant). |
There was a problem hiding this comment.
This doesn't seem relevant to the skill itself, and might lead agents reading it down the wrong path. Why do we need this file?
There was a problem hiding this comment.
Yes, that should be in .gitignore, will change.
DEVLOG.md files are local only and should never be committed to the repo.
gh cli can fetch issue/PR body directly from a URL or number.
…or ID, batch mode (#1921) ## Summary - **Rebase verification gate:** Mandatory `gh api` check before any rebase nudge — only proceed when `mergeable_state=dirty`; never nudge on `blocked`, `unstable`, or `unknown` - **Integration hold action:** PRs with any `Integration: *` label route to the integration evaluation holding comment; `status: rebase` is never applied to integration PRs - **Author identification:** Check NVIDIA org membership before drafting; surface as `Author: username (NVIDIA|external)` in draft headers - **Open date in draft headers:** Always show `Opened: YYYY-MM-DD (N days ago)` in the presentation header - **Batch mode:** Present a PR analysis table (author, NV?, opened, action, notes) before drafting any responses in multi-PR sessions - **Git fetch / session resume:** Re-fetch before supersession checks; verify PR state before acting on queued items after a break - **Hedged language rule:** Use "could be", "may", "potentially" for risks — not assertive claims - **Needs-info simplified:** Remove day-7 warning step; single close at 7+ days of no response - **Response Time Check section:** SLA targets with "at risk" threshold at 80% elapsed ## Test plan - [ ] Trigger on a PR with `mergeable_state=blocked` — confirm no rebase nudge is sent - [ ] Trigger on a PR with an `Integration: *` label — confirm integration hold comment, no `status: rebase` - [ ] Trigger on any PR — confirm draft header shows Author (NVIDIA/external) and Opened date - [ ] Process 3+ PRs in one session — confirm batch table appears before drafting begins - [ ] Resume skill after a 2h+ break — confirm git fetch + PR state validation runs first 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
…mat v2 (#1935) ## Summary ### Supersession verification gate (primary change) The skill was classifying PRs as superseded based on keyword matches in `git log` alone. This produced false positives — most notably, a PR was initially flagged as superseded when the team had actually tried that approach and deliberately reverted it. The gate now requires three explicit checks before any supersession classification is presented: 1. Confirm the superseding work is actually merged to main (`git log origin/main`) 2. Confirm the target files still exist and were touched by the superseding PR (file list check) 3. Confirm the core intent is covered, not just surface-level keyword overlap — read both PR bodies If any check fails or is ambiguous, the skill stops and asks the maintainer how to proceed rather than presenting a potentially wrong recommendation. ### Stale sweep (three-stage lifecycle) Adds a `## Stale Sweep` mode that finds all open items carrying `status: needs-info` or `status: rebase` and classifies them: - **Stage 2 (7–13 days since label)**: post warning comment, leave open - **Stage 3 (14+ days since label)**: close with friendly comment, invite re-open For `status: needs-info` items: checks whether the author commented *after* the label was applied. If yes, the item is surfaced for maintainer re-triage rather than automated warning/close. Author activity check does not apply to `status: rebase` — a comment doesn't resolve merge conflicts. First-contact comments (needs-info and rebase nudge) now include a one-sentence 7-day notice so contributors know the follow-up timeline. ### Log format v2 Step 7 updated to: - Read log directory from `~/.claude/skills/nemoclaw-maintainer-community-response/config.md` (portable across machines/repos) - Write to monthly files (`{dir}/{YYYY-MM}.md`) instead of a single file - Richer field set: Time (PDT), Author handle, Action (pipe-separated for compound), Resolution, Labels - Batch entry format for multi-PR sessions - Verify entry landed with `tail -25` ## Test plan - [ ] Classify a PR as superseded — confirm all three gate checks run before the recommendation appears - [ ] Classify a PR where superseding work is on a branch but not yet merged to main — confirm gate blocks it - [ ] Run stale sweep — confirm Stage 2 items get a warning comment and stay open - [ ] Run stale sweep — confirm Stage 3 items are closed with the appropriate template - [ ] Run stale sweep on a needs-info item where the author commented after labeling — confirm it goes to the re-triage group, not warning/close - [ ] Confirm log entry uses format v2 and writes to the correct monthly file 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
- Remove numeric prefixes from all H2/H3 section headings (docs style rule) - Remove colons from View titles in project-workflow.md board setup section - Match H1 headings to frontmatter title in maintainer-guide.md and project-workflow.md - Split multi-sentence blockquote lines to one sentence per line in maintainer-guide-snippet.md Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Summary
.agents/skills/nemoclaw-maintainer-community-response/— a Claude Code skill for drafting and logging community-facing responses to GitHub issues and PRsdocs/project-workflow.md— project board status semantics, three-tier label structure, board setup instructions for Enhancement Parking and Platform/Integration viewsdocs/maintainer-guide.mdanddocs/maintainer-guide-snippet.md— expanded from 4 to 9 response situations including duplicates, feature requests, Discussions redirects, triage acknowledgment, and needs-info (two-situation pattern)Skill behavior
comment,close,request changes,rebase nudge,escalate) and project board status for each itemenhancement+ sub-label + dimension)status: rebaseautomatically on rebase nudge comments; notes joint rebase when the same contributor has multiple stale PRsstatus: needs-infofor first-contact info requests; closes after 7 days with no responseTest plan
status: rebaselabel applied on rebase nudgeproject-workflow.md🤖 Generated with Claude Code
Summary by CodeRabbit
New Features
Documentation