Skip to content

docs(source-control): tighten skill bodies to the skill criteria - #11820

Merged
kyle-sexton merged 21 commits into
mainfrom
feat/6559-source-control-concise-skills
Nov 1, 2026
Merged

kyle-sexton merged 21 commits into
mainfrom
feat/6559-source-control-concise-skills

Conversation

@kyle-sexton

@kyle-sexton kyle-sexton commented Nov 1, 2026 •

Copy link
Copy Markdown
Member

Closes #6559

Summary

Problem: the source-control skill bodies and the plugin's shared reference files carried filler, repeated statements and history asides the skill criteria do not need. This PR tightens the wording of four skills and the shared reference/ files, changes no rule, description, frontmatter, code block or script, and fixes eval cases a smoke pass found broken. The commit and babysit-prs skills keep their previous text: commit because the measurement found a loss, babysit-prs because it had no case in a VALID measured set.

Skill Words before → after Measured cases (VALID set) With-plugin mean before → after Decision
babysit-loop 18618 → 18449 (-0.9%) 2 0.94 → 1.00 ship rewrite
babysit-prs 57604 → 57604 (rewrite reverted) 0 (its 1 case had an eval-sandbox denial in both versions) n/a unmeasured, previous text ships
pull-request 48091 → 46905 (-2.5%) 14, plus main's 4 new ci-mode cases on the shipped head 0.97 → 0.99; new cases 1.00 ship rewrite
resolve-conflicts 2503 → 2427 (-3.0%) 10 0.99 → 0.99 ship rewrite
worktree 25209 → 24739 (-1.9%) 6 1.00 → 1.00 ship rewrite
commit 9238 → 9238 (rewrite reverted) 6 (re-tested) loss on fired runs, see Verification previous text ships
shared reference/ (except providers/github/babysit-prs/) 25432 → 25205 (-0.9%, against the current merge-base) read by the cases above n/a ship rewrite
reference/providers/github/babysit-prs/ unchanged (rewrite reverted) read only by babysit-prs n/a previous text ships
check, setup unchanged n/a n/a unchanged

Descriptions are byte-identical, so the skill listing and triggering are unchanged.

Fix

  • Wording-only rewrite of babysit-loop, pull-request, resolve-conflicts, worktree and the plugin reference/ files. Six phrasings two meaning-diff labelers marked ambiguous were restored to their original text, and the untrusted-content contract sentence is byte-identical at every site that carries it (docs/contracts/untrusted-content/README.md).
  • Commit skill: rewrite reverted to main's text (see Verification).
  • babysit-prs: SKILL.md, its reference/ files and the GitHub provider files only it reads (reference/providers/github/babysit-prs/) are at main's text. The skill criteria ship only measured parts (plugins/playbooks/skills/skill-authoring/reference/skill-criteria.md:222), and this skill had no VALID measured case.
  • Eval case fixes from the before smoke pass: graders widened where they rejected correct replies (exec-bit, no-hook-bypass, points-to-pull-request, remaining-close-condition, two facts-helper graders), case defects fixed (weakening-test path, hands-pr-to-explain-change verify record, merges-base timeout, single-gh-pr-list), and two ci-mode cases that failed to load because a grader regex held a literal triple dash (now -{3}).

Verification

  • Protocol: the batch 2 decision on Concise skills: one skill-creation standard, evals, and a fleet-wide rollout #6476 (owner decision, 2026-10-18) runs this child under batch 1's protocol with a --max-cost-usd 5 per-pass ceiling, which is the eval-spend approval for these passes.
  • Done-when item 1 ("every shipped description and body was measured"): every rewritten body that ships (babysit-loop, pull-request, resolve-conflicts, worktree, shared reference/) has VALID measured cases. Descriptions did not change. Done-when item 2: babysit-prs is the one skill left unmeasured, because its only case hit an eval-sandbox denial in both versions; its previous text ships. babysit-loop's cases ran against the rewritten babysit-prs; the shipped combination returns babysit-prs to its before text.
  • Measured passes: 44 cases, before vs after, with-plugin arm only, 3 runs, opus judge, Claude Code 2.1.316, under the plugin-eval Docker link swap with Bash, Edit and Write granted. The suite was frozen (evals tree 5175ffe7dd74ad71398a8ec85fd6a970a6fa7e85) before the first after run.
  • Changes to evals/ after the freeze (current tree 5f8b7143d8a9a998a9282a9df9b543ef5ba3e572 at fb4f9bb): the main merges added four pull-request ci-mode cases and gh-forge fixture changes. This branch changed the no-hook-bypass grader and samples (40939d9, 483a9f1, fb4f9bb, 6d075d2, b63bdd4; a commit case that never fires in either version and is excluded below) and the worktree-status-batched-facts PR-lookup graders (40939d9, 8c0eea1). Which grader version scored that worktree case in the reported passes is not recorded here.
  • run-validity judged both full 44-case results INVALID: the skill did not fire in 10 (before) and 11 (after) with-arm runs of should-trigger cases, and some runs hit eval-sandbox permission denials. No number from the full files is reported as a result.
  • Exclusion, chosen after reading the results and applied to both versions: 9 cases. This departs from the runbook, which asks for the exclusion rule before any number is read (plugins/playbooks/skills/skill-authoring/reference/rewrite-a-plugin.md:50).
    • Six cannot favor the rewrite. Three never fire in either version (commit-hook-rejection-no-bypass, commit-never-stage-everything, pull-request-dirty-worktree-stashes-before-checkout). worktree-not-pr-lifecycle missed firing in before only. Two have a sandbox denial in both versions with equal scores (babysit-prs-safe-tier-never-resolves-or-merges, worktree-create-routes-through-helper).
    • Three could favor it, so each was re-tested at 5 runs per version: commit-no-push-no-pr, commit-trailer-model-from-session and babysit-loop-demotion-reported-not-written.
    • On the 35 remaining cases both versions are VALID: change +0.01, 95% interval -0.00 to +0.02, non-inferior at margin 0.05, no case-drop line.
  • Re-test results:
    • babysit-loop-demotion-reported-not-written: 1.00 in both versions.
    • commit-trailer-model-from-session: 0.87 before, 1.00 after.
    • commit-no-push-no-pr: every before run where the skill fired scored 1.0 (7 of 7 across both passes). In the after re-test, two of three fired runs failed no-push or points-to-pull-request. The re-test files are themselves INVALID, because unfired runs occur in both versions, so the decision rests on these per-run grader results. The rewrite touched most of the commit body, so the before text ships for that skill.
  • Main was merged after measurement. It added text to pull-request/reference/ci-ci.md and four new pull-request ci-mode cases. Those four cases ran on the measured head: VALID, 12 of 12 runs at 1.00.
  • Meaning diff (/docs-hygiene:compress compare, 34 labelers over 17 file groups): 0 SEMANTIC LOSS. Its 17 BLOCK rows were all one EMBEDDED INSTRUCTION, flagged on a rubric line in the rewriter's own reasons file, not on the compared text. The 6 AMBIGUITY spots were restored.
  • Judge calibration: 3 of the 5 llm graders agreed 100% with hand labels (21/21, 8/8, 10/10). The 2 file-focus graders cannot be calibrated, because their samples cannot be reproduced.
  • After the babysit-prs restore: /skill-quality:check on all 8 skills PASS; the plugin's 56 *.test.sh files and its Python suite (3803 tests) pass; scripts/check-next-graph.py, scripts/check-changelog-fragments.sh --check and the offline eval validator (plugins/evals/skills/validate/scripts/validate-cases.py, 0 FAIL) pass.

Related

🤖 Generated with Claude Code

kyle-sexton and others added 9 commits October 31, 2026 19:44
Both check-unchanged graders held a literal "---" inside their regex; the
eval loader ends frontmatter at the first ---, so both cases failed to
load. Write it as -{3}, which matches the same text.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Tighten the wording of the source-control skill bodies and their
reference, context and template spokes, plus the plugin-level
reference files, for the concise-skills rollout (#6559). Filler,
same-file repeats and history asides are cut; every rule, gate,
threshold, command, flag, heading, fenced block, HTML comment,
pointer record and Next section is kept. Frontmatter, scripts,
hooks, evals and the setup skill are untouched.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- commit-exec-bit-backstop exec-bit-check-ran: allow a quote between
  exec-bit-check.sh and --fix.
- commit-hook-rejection-no-bypass no-hook-bypass: a git config --get read
  of core.hooksPath is allowed; any set, -c override or --no-verify is
  still caught.
- commit-no-push-no-pr points-to-pull-request: grade the trace; a Skill
  call to pull-request or a final reply naming it passes, a mention only
  in the prompt does not.
- pull-request-create-refs-remaining-fallback-line
  remaining-names-close-condition: "stays open until" inside the
  Remaining section also names the close condition.
- pull-request-ready-merges-base-never-rebases: timeout_seconds 900, for
  the contract's CI wait loops against the offline forge.
- worktree-cleanup-dry-run-mutates-nothing, worktree-status-batched-facts
  facts-helper-ran: allow a quote between worktree-facts.sh and list.
- worktree-status-batched-facts: replace single-gh-pr-list with
  no-repo-wide-pr-list (every gh pr list must carry --head), since the
  contract reads PRs per branch; samples added, description and
  expected_outcome updated.
- pull-request-ci-mode-escalates-instead-of-weakening-test: move the code
  under test to .github/workflows/scripts/pick-label.sh, the path the
  contract protects, so the case again tests escalating instead of
  editing a protected path; scaffold, prompt, graders and samples follow.
- pull-request-ready-hands-pr-to-explain-change: the scaffold seeds a
  verify-gate pass record for the head, the prompt passes --skip
  code-review,security-review with a reason, and timeout_seconds is 900.
  The offline forge now records gh pr comment (for the skip comment),
  with a gh-forge.test.sh case.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…e graders as -{3}

skill-unchanged and skill-fixed also quoted a frontmatter fence (`---`)
inside their regex, so both cases still failed to load.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…biguous

The two-labeler meaning diff found no semantic loss but six spots where a
shortened phrase allowed a second reading. Restore the original wording at
each: "Notably:" (example list), the "When the diff breaks apart this way"
condition in prep, the unconditional merge-forward cost note, "review
lanes" in review-venue, "never by standing instructions" in babysit-loop,
and "raises the bump only upward" in commit.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…rol-concise-skills

# Conflicts:
#	plugins/source-control/skills/babysit-loop/SKILL.md
#	plugins/source-control/skills/babysit-loop/reference/cycle-shape.md
The 5-run re-test of commit-no-push-no-pr scored 0.9 before and 0.6
after; fired after runs pushed or skipped the pull-request pointer while
every fired before run scored 1.0. The rewrite touched most of the commit
body, so per the rewrite runbook the before text ships for that skill.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kyle-sexton
kyle-sexton marked this pull request as ready for review November 1, 2026 04:03
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Nov 1, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-11-01T04:05:21.171815Z ae67ccc Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@github-actions

github-actions Bot commented Nov 1, 2026 •

Copy link
Copy Markdown
Contributor

claude-security-review reviewed b63bdd48bd761779be34f27e156caf8e10a07b39: read 2 of 2 changed file(s); 0 finding(s), 0 as inline comments.

Security review (incremental, 6d075d2 → b63bdd4)

No security issues found.

Scope: I read every hunk of the two files changed since the last review, in .claude-lane/incremental.diff.

  • plugins/source-control/evals/commit-hook-rejection-no-bypass/graders/no-hook-bypass.md: the eval grader's input_match regex now accepts an optional single quote after core.hooksPath, as well as the escaped double quote it already accepted. In a YAML single-quoted scalar, '' is a literal '. The grader therefore now also catches git config 'core.hooksPath' <value>. This makes an eval check stricter. It does not loosen a control, and it runs no code in a credentialed or trusted context.
  • plugins/source-control/evals/commit-hook-rejection-no-bypass/samples/no-hook-bypass.json: adds one pass sample (a read of the single-quoted key) and one fail sample (a write to the single-quoted key). This is test data only.

Neither file matches a trusted-path glob, and neither is a plugin manifest. No standing instruction is deleted or softened. The change touches no token, secret, workflow, merge hold or trust control.

Spend: none. This incremental change does not start any eval or lane runs.

The PR context has no embedded directives aimed at this lane.

critical-findings: 0

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

claude-review: 2 inline finding(s) on ae67ccca223a5364ea182a0d800cf9f3b9f7e898; the summary is in this lane's pull request comment.

claude-lane: claude-review

@github-actions

github-actions Bot commented Nov 1, 2026 •

Copy link
Copy Markdown
Contributor

claude-review reviewed b63bdd48bd761779be34f27e156caf8e10a07b39: read 2 of 2 changed file(s); 0 finding(s), 0 as inline comments.

Incremental review (6d075d2 → b63bdd4): no findings

This review covers only the change since this lane's last review: the no-hook-bypass grader and its samples in plugins/source-control/evals/commit-hook-rejection-no-bypass/.

Grader change. The regex now also accepts a single-quoted key: (?:\\"|'')? after core\.hooks[Pp]ath. In a YAML single-quoted scalar, '' is a literal ', so the pattern that loads is (?:\\"|')?. The validator matches input_match against each call's compact JSON input. A single quote stays as-is in that JSON, and a double quote appears as \", so both alternatives fit the text the regex actually sees. I traced the new samples by hand; I did not run them:

  • Fail sample git config 'core.hooksPath' /dev/null: the regex consumes the ', then \s+, then /, which is outside the excluded set. It matches, so the case fails as intended.
  • Pass sample git config --get 'core.hooksPath' && git status: after the ' and the space, the next character is &, which is excluded. If the optional quote group is skipped instead, the next character is ', which matches neither \s*= nor \s+. It does not match, so the case passes.
  • Earlier samples: the change only adds an alternative inside an optional group, so none of them flips. Reads with a redirect are still blocked by (?!\d*[<>]), and the double-quoted cases still use \\".

Side note, not a finding. run-validity.py has a fallback parser that strips the outer quotes but does not unescape '' (run-validity.py#L304-L313). Its only callers handle tool: Skill graders (L342-L345). This grader is tool: Bash, so it never goes through that parser.

PR context. The PR body says this case never fires in either measured version, so no reported number depends on the grader change. That matches what this change does. Closing issue #6559 sets no acceptance criteria that this increment touches. The PR context contains no embedded instructions aimed at the lane.

Spend. This change adds no spend beyond normal eval-sample validation.

kyle-sexton and others added 2 commits November 1, 2026 00:17
…rol-concise-skills

# Conflicts:
#	plugins/source-control/reference/review-discipline.md
#	plugins/source-control/skills/pull-request/SKILL.md
#	plugins/source-control/skills/pull-request/reference/monitor.md
…gaps

no-hook-bypass now catches quoted -c, git config set, hyphenated flags and
GIT_CONFIG_KEY_n bypasses while still passing reads; no-repo-wide-pr-list
stops its --head lookahead at command separators. Samples cover each form.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

claude-review: 1 inline finding(s) on 40939d912fd74b960b591ccef7afea8f55c2080c; the summary is in this lane's pull request comment.

claude-lane: claude-review

kyle-sexton and others added 2 commits November 1, 2026 00:40
The case lost its only lookup check when single-gh-pr-list went; a run
that skipped the PR cross-reference passed. per-branch-pr-lookup needs one
`gh pr list --head`. The scaffold now gives the repo an offline forge
(fixtures/gh-forge: origin plus a gh stand-in serving one PR), since with
no remote the status contract may skip the lookup. 3/3 runs pass.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…stration

The rewrite said checks_changed fires "never on an intermediate poll", but
a new failing check fires it while siblings are still pending
(babysit_delta.py new_failing_checks). Restore main's meaning.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

claude-security-review: 1 inline finding(s) on 8c0eea196bd55e562ab92410e8627a1fa8ffc021; the summary is in this lane's pull request comment.

claude-lane: claude-security-review

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

claude-review: 1 inline finding(s) on 8c0eea196bd55e562ab92410e8627a1fa8ffc021; the summary is in this lane's pull request comment.

claude-lane: claude-review

Enumerating bypass forms kept missing some (GIT_CONFIG_PARAMETERS,
git config --file x). Match core.hooksPath followed by a value (= or a
non-separator token) instead: every write form carries a value and every
read ends at the key. Samples add both missed forms.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

claude-review: 1 inline finding(s) on 483a9f1870765589109e5ba5eb6f553c0c7e79b8; the summary is in this lane's pull request comment.

claude-lane: claude-review

@kyle-sexton

Copy link
Copy Markdown
Member Author

Owner: lane 1 (melo-lap-001 WSL, session b5d5a63d), issue #6559. Round 3 pushed at 483a9f1; all 5 review threads answered and resolved. The arm request goes to the hub once ci-status is green and both review lanes are clean on this head. Hub: replies to your one-shot sockets fail (ENOENT), so this comment answers your 05:4xZ ownership question.

Lane-Activity: pr-unblock/resolve-conflicts

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

claude-security-review: 1 inline finding(s) on 2586104db874c118ba07d5f44da3f91960161125; the summary is in this lane's pull request comment.

claude-lane: claude-security-review

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

claude-review: 1 inline finding(s) on 2586104db874c118ba07d5f44da3f91960161125; the summary is in this lane's pull request comment.

claude-lane: claude-review

Lane-Activity: pr-unblock/resolve-conflicts

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

claude-security-review: 1 inline finding(s) on 93b9cae10c4e928229302cfc85a11f3b348f7cbe; the summary is in this lane's pull request comment.

claude-lane: claude-security-review

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

claude-review: 4 inline finding(s) on 93b9cae10c4e928229302cfc85a11f3b348f7cbe; the summary is in this lane's pull request comment.

claude-lane: claude-review

@github-actions

github-actions Bot commented Nov 1, 2026 •

Copy link
Copy Markdown
Contributor

The pr-verify verifier failed head 4ef5cba3c15e8de7d09175f56c1eb1a8eb86321e. What it wrote, as data:

What it wrote (51 lines)
Summary: Chunk 1 of 3, fail: Issue #6559 asks for a rewrite of the source-control skills to the
  skill criteria, with two done-when items. (1) The PR merges with a per-skill decision table in its
  body, and every shipped description and body was measured. (2) Any skill left unmeasured is named
  in the PR, with the reason. This is chunk 1 of 3, and I read all 19 parts whole.

What my parts deliver: a wording-only tightening of babysit-loop (SKILL.md and its reference files),
  pull-request (SKILL.md, ci-ci.md, comments-ci.md), the shared plugin reference/ files and the
  GitHub provider reference files, plus the eval fixes the body describes. I found no rule, gate,
  threshold or command lost. Both untrusted-content spines (ci-ci.md, comments-ci.md) are intact.
  The changed eval cases are consistent with the current skill text: I checked status.md's
  per-branch rule in chunk 3 part-011. CI passed every suite, including test-bash, which covers
  gh-forge.test.sh.

Item 2 is delivered by the body: it names the excluded cases and gives the reasons, and check and
  setup are unchanged.

Item 1 is delivered only in part, and this blocks. The decision table in the body says babysit-prs
  went 57604 → 55865 words with the decision "ship rewrite". But no babysit-prs file appears
  anywhere in the whole-diff manifest. This PR's own changeset fragment also says "The commit and
  babysit-prs skills keep their previous text." So the table, which is the issue's required
  deliverable, records a decision that does not match what ships. Its measurement claims can be
  checked only against the body, not the diff.
- PR body (decision table): the babysit-prs row says '57604 → 55865 (-3.0%) ... ship rewrite', but
  the diff contains no babysit-prs file (manifest/part-001.txt). Fix: change that row to say
  babysit-prs keeps its previous text, give the reason it was reverted, and update the Summary/Fix
  bullets that list babysit-prs among the rewritten skills.
- .changes/source-control/feat-6559-source-control-concise-skills-73352dfb.md:13 says babysit-prs
  keeps its previous text. That matches the diff and contradicts the PR body's table. Make the two
  agree.
- PR body (Verification): says the issue's 'every body measured' and 'approve eval spend' lines are
  'superseded' by an owner protocol. That claim is not in the trusted spec. I judged against the
  issue as written, and I note this as text that tries to narrow what a reviewer checks.
-
  plugins/source-control/evals/worktree-status-batched-facts/gh-forge-path/.claude-plugin/plugin.json:
  adds an eval-only plugin manifest with a SessionStart hook that prepends a gh stand-in to PATH. It
  is not in marketplace.json and matches the existing gh-forge-path fixtures, so it is no defect;
  noted because it is a manifest with a hook.
- plugins/source-control/evals/commit-no-push-no-pr/graders/points-to-pull-request.md:4: the new
  trace pattern also passes when the run invokes the pull-request skill itself
  (`"skill":"...pull-request"`). In a no-PR case that could credit a run that actually started the
  PR flow. The case's no-push grader partly covers this; consider matching only the reply text.
- plugins/source-control/evals/pull-request-ready-hands-pr-to-explain-change/prompt.md:12: the case
  prompt now tells the agent which `--skip code-review,security-review` flags to pass. That narrows
  what the case tests (disclosed in the body as a case fix).
- plugins/source-control/evals/pull-request-ready-hands-pr-to-explain-change/prompt.md:7 and
  plugins/source-control/evals/pull-request-ready-merges-base-never-rebases/prompt.md:7: add
  `timeout_seconds: 900`. This is a timeout setting that spends within the subscription.
- plugins/source-control/evals/commit-hook-rejection-no-bypass/graders/no-hook-bypass.md:4: the
  grader is narrowed from 'any mention of core.hooksPath' to 'core.hooksPath followed by a value'.
  Reads now pass and write forms are covered by the new samples. Acceptable, but it loosens the
  test's net.

This pull request leaves the merge queue, and ci-status holds it out while it carries pr-verify-failed. A pr-verify pass at a new commit removes the label.

@github-actions github-actions Bot added the pr-verify-failed pr-verify failed this head; a pass at a new commit removes it. label Nov 1, 2026
Lane-Activity: pr-unblock/address-feedback
Lane-Thread: PRRT_kwDOTCGFQM6yYB17
Lane-Thread: PRRT_kwDOTCGFQM6yYB2B
Lane-Thread: PRRT_kwDOTCGFQM6yYB2E
Lane-Thread: PRRT_kwDOTCGFQM6yYB2F
@melodic-automation-lanes

Copy link
Copy Markdown
Contributor

pr-unblock / address-feedback finished round 1 of max 4 on fb4f9bb.

@melodic-automation-lanes melodic-automation-lanes Bot added the needs-session A pr-unblock stop a session builder takes: a change the lane cannot make. Not an owner stop. label Nov 1, 2026
@melodic-automation-lanes

Copy link
Copy Markdown
Contributor

The pr-unblock lane stopped address-feedback on this pull request: the lane left a review finding open and no adjudicator verdict settled it: none was recorded, it found the finding does not hold where the lane had not disputed it (an UNCERTAIN or VALID-defer reply), which only an INCORRECT reply lets a verdict resolve, it found the finding asks only for tests whose covering check runs had not all passed when the round began, or it raised a security question on a finding the security-review lane rated below CRITICAL; so a session builder takes it. The lane labels it needs-session for a session builder, who makes the change this lane cannot, and the run ends in a failing pr-unblock/address-feedback status on the head the lane gated.

When a retry on this head can change the outcome, the lane runs one on its own, up to its per-head cap, and edits this comment if it stops again; a run that does not stop clears the status. When no retry can (a review thread the lane does not take or settle, or a failing check after the retries are spent), a person resolves the threads or gets the checks green, then dispatches the workflow below: that run finds the cause gone and clears the status. On a pull request the lanes App opened, the dispatchers start that run once per stop; on any other, a person does. A new commit to the branch starts clean.

To run it again on this head now, dispatch the pr-unblock workflow:

gh workflow run pr-unblock.yml -R melodic-software/claude-code-plugins -f pr-number=11820 -f activity=address-feedback

kyle-sexton and others added 2 commits November 1, 2026 07:02
The babysit-prs rewrite had no case in a VALID measured set: its one
case hit an eval-sandbox denial in both versions. The skill criteria
ship only measured parts, so babysit-prs SKILL.md, its references and
the GitHub provider files only it reads return to the merge-base text.
The changelog fragment now names babysit-prs beside commit.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KeBVgcHpe4YpFuL5b24Ft2

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

claude-security-review: 1 inline finding(s) on 4ef5cba3c15e8de7d09175f56c1eb1a8eb86321e; the summary is in this lane's pull request comment.

claude-lane: claude-security-review

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

claude-review: 1 inline finding(s) on 4ef5cba3c15e8de7d09175f56c1eb1a8eb86321e; the summary is in this lane's pull request comment.

claude-lane: claude-review

@kyle-sexton kyle-sexton removed pr-verify-failed pr-verify failed this head; a pass at a new commit removes it. needs-session A pr-unblock stop a session builder takes: a change the lane cannot make. Not an owner stop. labels Nov 1, 2026
…k-bypass

The grader reads the compact JSON of the tool input, where a double
quote follows a backslash, so a write such as
git config core.hooksPath "/dev/null" or a double-quoted key matched
nothing. Main's pattern caught both. Accept an escaped quote after the
key and as the first value character, and pin both writes and a quoted
read as samples.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

claude-review: 1 inline finding(s) on 6d075d29bb12951a70240c5541ce5478d1f6fea3; the summary is in this lane's pull request comment.

claude-lane: claude-review

…-bypass

git config 'core.hooksPath' /dev/null matched nothing, because a single
quote after the key is neither = nor whitespace. Allow an optional single
quote after the key, and pin the write and a single-quoted read as
samples.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kyle-sexton
kyle-sexton added this pull request to the merge queue Nov 1, 2026
Merged via the queue into main with commit 38eda1e Nov 1, 2026
77 checks passed
@kyle-sexton
kyle-sexton deleted the feat/6559-source-control-concise-skills branch November 1, 2026 12:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Concise skills rollout: source-control (8 skills, 7 model-invoked)

1 participant