FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

fix(github): classify new skills before Barnacle close by Patrick-Erichsen · Pull Request #132225 · openclaw/openclaw · GitHub

Repository navigation

fix(github): classify new skills before Barnacle close - #132225

Merged
Patrick-Erichsen merged 2 commits into
mainfrom
fix/barnacle-skill-auto-close
Aug 29, 2026
Merged

Patrick-Erichsen merged 2 commits into
mainfrom
fix/barnacle-skill-auto-close

Conversation

Copy link
Copy Markdown
Contributor

What Problem This Solves

Barnacle treated the path-routing label r: skill as proof that a pull request added a new distributable skill. Because the labeler applied it to every change under src/skills/**, core bug fixes and test-only changes were closed with the ClawHub message. This affected #127941, #127946, and #132199 while addressing #127931.

Why This Change Was Made

  • Removes the destructive r: skill rule from the generic path labeler.
  • Derives r: skill inside Barnacle only when the diff adds skills/<slug>/SKILL.md.
  • Revalidates and removes stale automated r: skill labels from PRs that do not add a bundled skill.
  • Preserves an explicitly applied human r: skill close and avoids duplicate responses to Barnacle's own label event.

User Impact

Test-only and core implementation changes under src/skills/** remain open for normal review. Genuine new bundled skills still receive the existing ClawHub close response. No separate Barnacle deployment is required: the workflow executes the script from the default-branch revision.

Evidence

  • Pre-fix regression run: the new tests fail against origin/main for stale-label removal and deterministic new-skill classification.
  • node scripts/run-vitest.mjs run test/scripts/barnacle-auto-response.test.ts test/scripts/labeler-extension-coverage.test.ts — 49 passed.
  • node scripts/run-vitest.mjs run test/scripts/ci-workflow-guards.test.ts -t "isolates auto-response per item and ignores ClawSweeper PR label feedback" — passed.
  • pnpm lint:scripts — passed (0 warnings/errors).
  • check:changed completed all checks through the root test typecheck; that check is blocked by the shared checkout's stale dependency install (pako declaration missing), unrelated to this diff.

Fixes the Barnacle classification defect reported against #127931.

clawsweeper Bot commented Aug 29, 2026

Copy link
Copy Markdown
Contributor

🦞👀
ClawSweeper picked this up.

Pull request received. I will update this pull request when review starts.

openclaw-barnacle Bot added scripts Repository scripts size: S maintainer Maintainer-authored PR labels Aug 29, 2026
Patrick-Erichsen marked this pull request as ready for review August 29, 2026 00:09
Patrick-Erichsen force-pushed the fix/barnacle-skill-auto-close branch from 19a3223 to 4072803 Compare August 29, 2026 00:12
Patrick-Erichsen force-pushed the fix/barnacle-skill-auto-close branch from 4072803 to cdc663f Compare August 29, 2026 00:16
clawsweeper Bot added merge-risk: 🚨 automation 🚨 May affect CI, automerge, proof capture, label sync, or maintainer automation. P2 Normal backlog priority with limited blast radius. rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. status: ⏳ waiting on author ClawSweeper has contributor-facing work open and is waiting for author action. labels Aug 29, 2026

clawsweeper Bot commented Aug 29, 2026 •
edited
Loading

Copy link
Copy Markdown
Contributor

Codex review: needs maintainer review before merge. Reviewed August 28, 2026, 8:45 PM ET / August 29, 2026, 00:45 UTC.

ClawSweeper review

What this changes

Moves the r: skill auto-close decision from generic path labeling to added bundled skill manifests, while clearing stale automated labels and preventing duplicate responses.

Regression provenance

Possible regression — probable (reviewed change; known regression link). No predecessor PR is attributed.

Merge readiness

⚠️ Ready for maintainer review - 4 items remain

Keep open. Current main still has the broad path-based close classification, while this focused maintainer-authored PR moves the terminal decision to Barnacle and addresses the prior grouped-skill finding.

Priority: P2
Reviewed head: ecd696adabbcca0aaab01471df2fb6ea3c524510

Review scores

Measure Result What it means
Overall readiness 🐚 platinum hermit (4/6) A focused owner-boundary repair with the prior grouped-layout blocker addressed and targeted regression coverage added.
Proof confidence 🌊 off-meta tidepool Not applicable: This maintainer-authored automation PR is exempt from the external-contributor real-behavior gate; its body reports focused before/after test evidence, while this read-only review did not execute repository code.
Patch quality 🐚 platinum hermit (4/6) No actionable review findings were identified.

Verification

Check Result Evidence
Real behavior Not applicable Not applicable: This maintainer-authored automation PR is exempt from the external-contributor real-behavior gate; its body reports focused before/after test evidence, while this read-only review did not execute repository code.
Evidence reviewed 7 items Automation entry point: The pull-request-target workflow loads Barnacle from the checked-out default-branch revision and invokes its event handler with write-scoped issue and pull-request permissions.
Current defect and current-main status: The introduced-diff baseline shows the existing r: skill path rule matched all of src/skills/**; git diff --quiet found no change to the three relevant files between the pinned PR base and fetched main, so current main has not already absorbed this repair.
Owner-boundary repair: The classifier now derives the terminal label from an added manifest under the repository skill root, rather than from a generic path label; the matcher accepts nested organizational directories.
Findings None None.
Security None None.

How this fits together

Barnacle is the GitHub event handler that labels and can close pull requests. It receives a pull-request event and changed-file list, classifies the work, then applies labels and any matching close response.

flowchart LR
  A[Pull request event] --> B[Changed-file list]
  B --> C[Candidate label classifier]
  C --> D[Skill manifest decision]
  D --> E[Label cleanup or application]
  E --> F[Barnacle close response]
Loading

Before merge

  • Resolve merge risk (P1) - This changes a write-capable automatic-close decision: an untested future manifest layout could either falsely close a core PR or fail to route a new bundled skill, although the focused cases cover direct and grouped manifests plus label-event cleanup.
  • Resolve merge risk (P1) - Production automation grows by net 13 lines; the added classifier and label-event guards are necessary to distinguish terminal close eligibility from generic routing and are covered by focused regressions.
  • Resolve merge risk (P1) - Exact-head CI was still in progress in the captured review state.
  • Complete next step (P2) - No repair lane is needed: this is an active, focused maintainer-authored implementation; the remaining merge prerequisite is exact-head CI completion.
Agent review details

Security

None.

PR surface

Tests +110, Config -10, Other +23. Total +123 across 3 files.

View PR surface stats
Area Files Added Removed Net
Source 0 0 0 0
Tests 1 110 0 +110
Docs 0 0 0 0
Config 1 0 10 -10
Generated 0 0 0 0
Other 1 27 4 +23
Total 3 137 14 +123

Review metrics

Metric Value Why it matters
Production versus test delta production +27/-14 (net +13); tests +110/-0 The production growth is confined to the classifier and event handling needed to replace a broad auto-close rule, with focused regression coverage for four event outcomes.

Root-cause cluster

Relationship: canonical
Canonical: #132225
Summary: This PR is the canonical repair for the false-positive auto-close behavior; the linked Windows test reports are evidence of that routing failure but are distinct from the underlying symlink defect.

Members:

Proposal only: this assessment does not dispatch repair, suppress jobs, mutate sibling items, close, or merge anything.

Merge-risk options

Maintainer options:

  1. Complete exact-head automation validation (recommended)
    Wait for the remaining checks on this head to finish successfully before merging a change that can label and close pull requests.

Technical review

Best possible solution:

Keep generic path labels non-terminal and let Barnacle assign the close label only when an added repository skills/**/SKILL.md manifest proves the PR adds a bundled skill.

Do we have a high-confidence way to reproduce the issue?

Yes—source provides a high-confidence event path: a change under src/skills/** receives the broad label, then Barnacle selects its existing close rule. Current main retains that path while the PR's focused tests model its removal.

Is this the best way to solve the issue?

Yes. The close decision belongs in Barnacle because it has file status and can distinguish an added skill manifest from incidental paths; deleting only the labeler rule would not preserve the intended handling for new bundled skills.

AGENTS.md: found and applied where relevant.

Codex review notes: model internal, reasoning high; reviewed against 80944da38fc8.

Labels

Label changes:

  • add rating: 🐚 platinum hermit: Overall readiness is 🐚 platinum hermit; proof is 🌊 off-meta tidepool and patch quality is 🐚 platinum hermit.
  • add status: 👀 ready for maintainer look: ClawSweeper has no concrete contributor-facing blocker left for this PR. Not applicable: This maintainer-authored automation PR is exempt from the external-contributor real-behavior gate; its body reports focused before/after test evidence, while this read-only review did not execute repository code.
  • remove rating: 🦐 gold shrimp: Current PR rating is rating: 🐚 platinum hermit, so this older rating label is no longer current.
  • remove status: ⏳ waiting on author: Current PR status label is status: 👀 ready for maintainer look.

Label justifications:

  • P2: This is a contained automation defect that can incorrectly close otherwise valid pull requests.
  • merge-risk: 🚨 automation: The PR changes Barnacle's label and automatic-close routing for pull-request events.
  • rating: 🐚 platinum hermit: Overall readiness is 🐚 platinum hermit; proof is 🌊 off-meta tidepool and patch quality is 🐚 platinum hermit.
  • status: 👀 ready for maintainer look: ClawSweeper has no concrete contributor-facing blocker left for this PR. Not applicable: This maintainer-authored automation PR is exempt from the external-contributor real-behavior gate; its body reports focused before/after test evidence, while this read-only review did not execute repository code.

Evidence

What I checked:

Likely related people:

  • Peter Steinberger: Introduced the custodian-skills change associated with the original broad label rule and has recent history in the Barnacle automation path. (role: feature owner and recent automation contributor; confidence: high; commits: 44736749eb0c, cb696a1bb3b6; files: .github/labeler.yml, scripts/github/barnacle-auto-response.mjs)

Rank-up moves

Optional improvements that raise the rating; they are not merge blockers.

  • Let the remaining exact-head automation checks complete before merge.

Rating scale

Score Internal tier Crab rank Meaning
6/6 S 🦀 challenger crab Exceptional readiness
5/6 A 🦞 diamond lobster Very strong readiness
4/6 B 🐚 platinum hermit Good normal PR; ordinary maintainer review
3/6 C 🦐 gold shrimp Useful, but confidence is limited
2/6 D 🦪 silver shellfish Proof or implementation needs work
1/6 F 🧂 unranked krab Not merge-ready
N/A NA 🌊 off-meta tidepool Rating does not apply

Overall follows the weaker of proof and patch quality.
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics.

Workflow

  • ClawSweeper keeps one durable marker-backed review comment per issue or PR.
  • Re-runs edit this comment so the latest verdict, findings, and automation markers stay together instead of adding duplicate bot comments.
  • A fresh review can be triggered by eligible @clawsweeper re-review comments, exact-item GitHub events, scheduled/background review runs, or manual workflow dispatch.
  • PR/issue authors and users with repository write access can comment @clawsweeper re-review or @clawsweeper re-run on an open PR or issue to request a fresh review only.
  • Maintainers can also comment @clawsweeper review to request a fresh review only.
  • Fresh-review commands do not start repair, autofix, rebase, CI repair, or automerge.
  • Maintainer-only repair and merge flows require explicit commands such as @clawsweeper autofix, @clawsweeper automerge, @clawsweeper fix ci, or @clawsweeper address review.
  • Maintainers can comment @clawsweeper explain to ask for more context, or @clawsweeper stop to stop active automation.

History

Review history (1 earlier review cycle)
  • reviewed 2026-08-29T00:24:42.592Z sha cdc663f :: needs changes before merge. :: [P1] Classify grouped bundled skill manifests

clawsweeper Bot added rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. and removed rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. status: ⏳ waiting on author ClawSweeper has contributor-facing work open and is waiting for author action. labels Aug 29, 2026
Patrick-Erichsen merged commit 6886458 into main Aug 29, 2026
160 checks passed
Patrick-Erichsen deleted the fix/barnacle-skill-auto-close branch August 29, 2026 01:04

Copy link
Copy Markdown
Contributor Author

Merged via squash.

This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

maintainer Maintainer-authored PR merge-risk: 🚨 automation 🚨 May affect CI, automerge, proof capture, label sync, or maintainer automation. P2 Normal backlog priority with limited blast radius. rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. scripts Repository scripts size: S status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant


Back | FazBrowse Home | New Git URL