Skip to content

fix: chore(attribution, review, multi-agent and five more): call the cascade's personal layer the - #13333

Closed
melodic-automation-lanes[bot] wants to merge 5 commits into
mainfrom
work-resolve-issue/issue-13191-41889151702-1
Closed

melodic-automation-lanes[bot] wants to merge 5 commits into
mainfrom
work-resolve-issue/issue-13191-41889151702-1

Conversation

@melodic-automation-lanes

Copy link
Copy Markdown
Contributor

Closes #13191

Summary

Opened by the work-resolve-issue lane. The run's own summary:

The eight plugins now call the config cascade's personal layer (the gitignored <plugin>.local.* file) the personal override everywhere outside their CHANGELOGs and synced lib/ copies: setup and other skill text, config references, READMEs, resolver and setup scripts with their tests, retirements.yaml, evals and eval samples. Two output labels changed with their tests and readers. multi-agent's resolve-roles.sh names the layer personal-override in source, layers and notes, matching the token style of user-global, and setup.sh's check row and candidate sed follow it. review's digest policy labels it personal override &lt;path&gt;, matching the shared view-settings library's warnings. Both get a minor bump. code-metrics keeps its local label; only its generic merge variable overlay was renamed to values/upper. discipline's sweep-all batch overlay (the batch_* userConfig options) is a different sense, so it keeps its name: following the policy/catalog/agentic-overlay precedent, the change adds a \bbatch\[- \]overlays?\b allowlist phrase to scripts/vocabulary-senses.json, with its required row in scripts/test_check_vocabulary.py.

The run went past its turn budget (turns=171 max-turns=150): the work may be too big for one run.

Not verified

  • The Demo command itself (scripts/check-vocabulary.py --sense overlay over the eight plugins) could not run here, because this lane has no wrapper for it. A Grep emulation of its rule and allowlist stood in for it; CI or a reviewer should run the real command
  • The eight plugins' shell, node and python test suites (resolve-roles.test.sh, setup.test.sh, concat-gotchas.test.sh, setup-check.test.sh, attribution audit .test.sh files, review explain-change.test.mjs, code-metrics python tests) and scripts/test_check_vocabulary.py were not run: no interpreter is…
  • Tidy skipped: the change is ~82 files across many areas and touches scripts/ and docs/conventions/, over every tidy cutoff
  • .claude/skills/control-claude-code-plugins/features/attribution/README.md:8 quotes attribution setup's old description ('gitignored local overlay'). It is outside the eight plugins and write-denied to this lane, so it is now stale and needs a separate follow-up
  • Untracked empty dotfiles in the checkout root (.bash_profile, .bashrc, .gitconfig, .idea, .mcp.json, .profile, .ripgreprc, .vscode, .zprofile, .zshrc) were not created by this change; they look like sandbox mount points and should not go into the patch

Fix

  • plugins/attribution/skills/setup/SKILL.md, skills/setup/evals/evals.json (two eval names renamed; no other file references them), retirements.yaml (r002 successor/note text), six evals/*/samples/no-*write-config.json why strings,…
  • plugins/bugs/scripts/concat-gotchas.sh: layer heading label local overlay -> personal override, with concat-gotchas.test.sh fixture and expected heading updated together; README.md, reference/config.md, skills/{scan,write,setup}/SKILL.md, skills/setup/evals/evals.json: wording
  • plugins/code-metrics/scripts/resolve-config.py: docstring layer name, and the merge variable overlay renamed values/upper (layer label local unchanged); skills/setup/scripts/setup-check.sh row text and setup-check.test.sh names; scripts/fixtures/config/local.yaml comment; README.md,…
  • plugins/codebase-health: README.md, skills/audit/SKILL.md, skills/audit/reference/audit-checklist.md, skills/audit/evals/evals.json, skills/setup/SKILL.md, skills/setup/evals/evals.json, skills/setup/templates/config-template.md: wording (a phrase meaning a local or user-global layer now says so)
  • plugins/discipline/reference/config.md and skills/setup/SKILL.md: cascade-sense wording; skills/sweep-all/SKILL.md: The overlay reads -> The batch overlay reads
  • plugins/improvement: README.md, reference/config.md, skills/find/SKILL.md, skills/find/context/hotspots.md, skills/setup/SKILL.md, skills/setup/evals/evals.json (one eval name renamed; no other reference): wording
  • plugins/multi-agent/scripts/resolve-roles.sh: layer label overlay -> personal-override, variable OVERLAY -> PERSONAL_OVERRIDE, header comment; resolve-roles.test.sh expectations; skills/setup/scripts/setup.sh: check rows personal-override: and the candidate-note sed; setup.test.sh…
  • plugins/review/skills/explain-change/scripts/digest-policy.mjs: layer label overlay -> personal override, paths.overlay -> paths.personalOverride; tests/explain-change.test.mjs expectations and names; agents/ecosystem-specialist.md, reference/config.md, skills/setup/SKILL.md,…
  • docs/conventions/review-digest.md: the documented source label overlay &lt;path&gt; -> personal override &lt;path&gt;, to match digest-policy.mjs
  • scripts/vocabulary-senses.json: overlay-sense allowlist phrase for discipline's batch overlay; scripts/test_check_vocabulary.py: its ALLOWLIST row
  • .changes/{attribution,bugs,code-metrics,codebase-health,discipline,improvement}/work-resolve-issue-issue-13191-.md: patch fragments; .changes/{multi-agent,review}/work-resolve-issue-issue-13191-.md: minor fragments (output label change)

Verification

The runner ran each check from the base copy against 5d74488:

  • scripts/check-changelog-fragments.sh --check: passed
  • scripts/check-changed-skills.sh --merge-base: passed

The run reports:

  • Emulated the Demo with Grep over the eight plugin dirs: case-insensitive \boverlays?\b, excluding CHANGELOG.md, with every remaining hit checked by hand against the overlay sense's near regex and allowlist. The only remaining hits are discipline's batch-overlay lines; the three that carry a near…
  • check-changelog-fragments: all 12 fragments valid
  • check-changed-skills: 20 skills checked, 0 failed; every base-ref trigger phrase preserved
  • check-affected: 14 passed, 5 skipped, over 82 changed files
  • check-evals-quality on the 8 touched skill eval sets: PASS, 16 warnings (none from this change), no FAIL
  • Fresh-context review subagent over the whole diff: one confirmed defect (docs/conventions/review-digest.md still documented overlay &lt;path&gt;), fixed; three wording findings, fixed; header alignment nit in resolve-roles.sh, fixed. It found no stale reader of any changed label, no JSON/YAML…
  • The lane run: https://github.com/melodic-software/claude-code-plugins/actions/runs/41889151702

Left out: the items under Not verified.

Related

#13191

Lane-Activity: work-resolve-issue/resolve-issue
@github-actions

github-actions Bot commented Nov 4, 2026 •

Copy link
Copy Markdown
Contributor

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

Security review: no security issues found

critical-findings: 0

This review covers only what changed since 76520ff79cfd003f9900b37461f2179f03f01eb0. I read every hunk of all 8 files in the incremental scope. This lane had already reviewed an earlier head (blocking only: yes), so this review reports only CRITICAL and IMPORTANT findings. It found none.

What changed since the last review:

  • The 8 changelog fragments: every fragment under .changes/{attribution,bugs,code-metrics,codebase-health,discipline,improvement,multi-agent,review}/work-resolve-issue-issue-13191-*.md changed in the same way:
    • Its bump: value went from patch or minor to none.
    • Its ### Changed entry was replaced by a note. The note says the personal override rename is already on the base and recorded by another fragment.
  • Effect: this is release-note metadata only. It runs nothing, gates nothing, and grants nothing.

What I checked:

  • Trusted paths: none of the 8 files matches a TRUSTED PATHS glob.
  • Plugin manifests: none changed.
  • Workflows and trust controls: none changed. That covers the trusted-actor list, the lane token and broker, the kill switch, the merge holds and .github/actions/.
  • Instruction surface: no standing instruction is deleted, narrowed or softened.
  • Embedded text: neither the PR context nor the fragment text tells the review to pass the PR, skip a check or drop a finding.
  • Settled threads: the two threads (docs/conventions/review-digest.md and scripts/vocabulary-senses.json) are marked as unchanged since they were resolved, and this push does not touch either file.
  • Prior findings: the only earlier post is the summary comment (issuecomment-6639463717), which reported 0 findings. There is nothing to restate.

Spend: none. Nothing in this change draws on credits or can bill.

@github-actions

github-actions Bot commented Nov 4, 2026 •

Copy link
Copy Markdown
Contributor

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

Code review: changes since 76520ff (blocking only)

This lane has already reviewed an earlier head of this pull request, so this pass reports only blocking findings. This push changed eight files, the .changes/*/work-resolve-issue-issue-13191-41889151702-1-*.md fragments. I read every hunk of all eight and used the full diff only for context.

Fixed in this push

  • Fixed: the duplicate release fragments and the minor bumps. Last round's cross-file finding is resolved. Each of the eight fragments is now bump: none, with a one-line reason saying that main's chore-13191-personal-override-eight fragment already records the change. The multi-agent and review fragments are no longer bump: minor.
  • I found no new blocking problem in these hunks.

Settled threads

  • Neither earlier thread is raised again. Both are resolved and marked lines changed since resolution: no: the docs/conventions/review-digest.md:61 label and the batch overlay allowlist entry.

Closing issue #13191

  • Outcome and Demo: main's separate change delivers them. With this push, the PR is the doc-line fix in docs/conventions/review-digest.md plus eight bump: none fragments.
  • "Each touched plugin's release record follows AGENTS.md": now met. Each plugin has one releasable record, main's fragment.
  • "The Demo command exits 0" and "Each plugin's shell, node and python tests pass": I ran neither the Demo command, check-vocabulary, nor any test suite. The PR's verification is the author's claim and is unverified.

No embedded instructions were found in the PR context, settled-threads or prior-findings files.

@kyle-sexton
kyle-sexton added this pull request to the merge queue Nov 4, 2026
@melodic-automation-lanes

melodic-automation-lanes Bot commented Nov 4, 2026 •

Copy link
Copy Markdown
Contributor Author

Unattended merge: native auto-merge leaves this pull request unarmed at head 76520ff79cfd003f9900b37461f2179f03f01eb0. The lanes clear this reason on their own; the next scheduled run judges it again.

pr-merge's gate refuses its verifier verdict (verify:earlier-fail)

@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Nov 4, 2026
@melodic-automation-lanes

Copy link
Copy Markdown
Contributor Author

The unattended merge path armed native auto-merge at head 5d744886e424962ed34e9af078b58fd48ad3a520.

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-review: 2 inline finding(s) on 8b8daf3e2f38055cef1960668369355d30c71561; the summary is in this lane's pull request comment.

claude-lane: claude-review

Comment thread docs/conventions/review-digest.md Resolved
Comment thread scripts/vocabulary-senses.json Resolved

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.

The pr-verify verifier failed head 8b8daf3e2f38055cef1960668369355d30c71561. What it wrote, as data:

What it wrote (27 lines)
Summary: Issue #13191 asks that eight plugins (attribution, review, multi-agent, code-metrics,
  improvement, discipline, bugs, codebase-health) call the config cascade's personal layer the
  "personal override" everywhere: in setup text, config references, READMEs, resolver scripts and
  their tests, retirements.yaml, schemas and evals, so that `check-vocabulary --sense overlay` over
  those plugins exits 0. The pull request body says about 82 files changed. The judged diff (base
  249619c to head 8b8daf3) changes only eight `.changes/` fragments,
  `docs/conventions/review-digest.md` and the vocabulary allowlist
  (`scripts/vocabulary-senses.json`, `scripts/test_check_vocabulary.py`). It changes no file under
  `plugins/`. No credited sibling or person check excuses the missing work. So the Outcome and the
  first done-when item (the Demo exits 0) are not delivered by this diff, and the fragments describe
  changes the diff does not make. Two of them describe output-label changes and ask for minor bumps.
  The CI jobs that ran (test-bash, test-python, check-plugins, check-skills and the others) all
  passed. test-node was skipped, which is expected because the review plugin's Node suite runs
  through its `.test.sh` wrapper. The new `batch overlay` allowlist phrase is reasonable on its own
  and has its required test row. There was no capture summary.
- plugins/: the diff changes no plugin file. Add the plugin-side renames the issue asks for and the
  PR body lists to the branch: multi-agent's resolve-roles.sh and setup.sh, review's
  digest-policy.mjs and its tests, bugs' concat-gotchas.sh, code-metrics' resolve-config.py,
  discipline's sweep-all text, and the setup skill, config reference, README, retirements.yaml and
  eval text. Without them `check-vocabulary --sense overlay` over the eight plugins is not shown to
  exit 0.
- .changes/attribution, bugs, code-metrics, codebase-health, discipline, improvement (the six
  work-resolve-issue-issue-13191-* patch fragments): each describes wording changes in its plugin
  that are absent from the diff. Keep each fragment only together with the plugin change it records.
- .changes/multi-agent/work-resolve-issue-issue-13191-41889151702-1-aeca15ab.md: this minor fragment
  announces a `personal-override` label in resolve-roles.sh and setup.sh that this diff does not
  make. Either ship that change in the branch or remove the fragment.

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.

The pr-verify verifier failed head 8b8daf3e2f38055cef1960668369355d30c71561. What it wrote about this file, as data:

- .changes/review/work-resolve-issue-issue-13191-41889151702-1-0a4305b0.md: this minor fragment
  announces a `personal override <path>` source label in digest-policy.mjs that this diff does not
  make. Either ship that change in the branch or remove the fragment.

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.

The pr-verify verifier failed head 8b8daf3e2f38055cef1960668369355d30c71561. What it wrote about this file, as data:

- docs/conventions/review-digest.md:139: the documented source label `personal override <path>` must
  match what digest-policy.mjs emits. The diff does not change that script, so make the code change
  in the branch or keep the doc in line with what the code emits.

Lane-Activity: pr-unblock/address-feedback
Lane-Thread: PRRT_kwDOTCGFQM6zxtvA
Lane-Thread: PRRT_kwDOTCGFQM6zxtvm
@melodic-automation-lanes

Copy link
Copy Markdown
Contributor Author

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

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.

The pr-verify verifier failed head 1ba0fa776b89f72bcc48c844f8965dad4e3ffa90. What it wrote, as data:

What it wrote (29 lines)
Summary: Issue #13191 asks for eight plugins (attribution, review, multi-agent, code-metrics,
  improvement, discipline, bugs, codebase-health) to call the config cascade's personal layer the
  "personal override" in their setup text, config references, READMEs, resolver scripts and tests,
  retirements.yaml, schemas and evals, and for the `check-vocabulary --sense overlay` Demo over
  those plugins to exit 0. The diff from base 249619c to head 1ba0fa7 doesn't contain that work. It
  adds eight `.changes/` fragments and changes one line of `docs/conventions/review-digest.md`. None
  of the ~82 plugin, script and test edits the PR body lists are in it: no change to
  resolve-roles.sh, digest-policy.mjs, concat-gotchas.sh, resolve-config.py, setup scripts, tests,
  evals, scripts/vocabulary-senses.json or retirements.yaml. The spec has no credited_siblings or
  person_checks, so nothing excuses the missing items. The Demo item is unsettled because no job is
  shown to have run check-vocabulary. test-bash (0) passed
  (https://github.com/melodic-software/claude-code-plugins/actions/runs/41903407309/job/126831746501).
  test-node and test-python were skipped, which fits a diff with no code in it. As written, the
  fragments record behavior changes, including two minor bumps for output-label changes, that this
  diff does not make. The review fragment also disagrees with the doc line this PR changes. Nothing
  in the PR text looked like an attempt to steer the reviewer. No credentials, binary files or
  takeover-set files are touched.
- plugins/: the diff has none of the renames issue #13191 requires in the eight plugins (setup and
  skill text, config references, READMEs, resolve-roles.sh, digest-policy.mjs, concat-gotchas.sh,
  resolve-config.py, setup scripts and their tests, retirements.yaml, evals). Add these changes to
  the branch so the diff against base delivers them, or, if they are already at base through another
  PR, name that PR on a Siblings: line and drop the fragments that record its work.
- scripts/check-vocabulary.py: the done-when item 'the Demo command exits 0' is not shown to have
  run on this head. Make sure the diff contains the plugin changes the Demo checks, and that a CI
  job running check-vocabulary --sense overlay over the eight plugins passes.
- .changes/attribution/work-resolve-issue-issue-13191-41889151702-1-4462e5d9.md: this fragment and
  the bugs, code-metrics, codebase-health, discipline and improvement fragments describe wording and
  script changes that are not in this diff. Each fragment must describe a change the PR actually
  makes; drop or rewrite any that don't.

Lane-Activity: pr-unblock/address-feedback
Lane-Thread: VNOTE_2
@melodic-automation-lanes

Copy link
Copy Markdown
Contributor Author

pr-unblock / address-feedback finished round 2 of max 4 on 76520ff.

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.

The pr-verify verifier failed head 76520ff79cfd003f9900b37461f2179f03f01eb0. What it wrote, as data:

What it wrote (25 lines)
Summary: Issue #13191 asks for eight plugins (attribution, review, multi-agent, code-metrics,
  improvement, discipline, bugs, codebase-health) to call the config cascade's personal layer the
  "personal override" in their skill text, config references, READMEs, resolver and setup scripts
  with their tests, retirements.yaml, schemas and evals, with `check-vocabulary --sense overlay`
  exiting 0 over those plugins. The PR body describes about 82 changed files. The judged diff (base
  249619c to head 76520ff) changes only nine: eight new `.changes/*` fragments and one line in
  docs/conventions/review-digest.md. No file under plugins/ is touched, so resolve-roles.sh,
  digest-policy.mjs, concat-gotchas.sh, setup.sh, the SKILL.md files, the evals and the tests that
  the fragments describe are not in this diff. Nothing in the diff shows the Demo outcome is met.
  Consistent with that, test-node and test-python were skipped and nothing ran the plugin suites.
  The fragments therefore describe changes this diff does not ship, which makes the release records
  inaccurate unless the work is already at the base. If it is, the fragments duplicate it. No
  capture summary was present. No secrets, takeover-set files or steering text found.
- plugins/: the diff has no change under any of the eight plugins. Restore or re-apply the rename,
  so the head actually delivers the Outcome and `check-vocabulary --sense overlay` exits 0 over the
  eight plugins. That means the label changes in multi-agent resolve-roles.sh and setup.sh, review
  digest-policy.mjs and bugs concat-gotchas.sh with their tests, plus the skill, reference, README,
  retirements.yaml and eval wording. Alternatively, show that the base already has this work and
  drop the duplicate fragments.
- .changes/attribution, .changes/code-metrics, .changes/codebase-health, .changes/discipline,
  .changes/improvement: each patch fragment describes wording changes that are absent from the diff.
  Ship the matching plugin edits, or remove the fragments.
- .changes/bugs/work-resolve-issue-issue-13191-41889151702-1-9d2b4dc9.md: this fragment says
  concat-gotchas.sh now prints `#### personal override (...)`, but concat-gotchas.sh and its test
  are not in the diff. Ship those changes, or remove the fragment.

Lane-Activity: pr-unblock/address-feedback
Lane-Thread: VNOTE_1
Lane-Thread: VNOTE_2
Lane-Thread: VNOTE_3
Lane-Thread: VNOTE_4
Lane-Thread: VNOTE_5
@melodic-automation-lanes

Copy link
Copy Markdown
Contributor Author

pr-unblock / address-feedback finished round 3 of max 4 on 26ee192.

@kyle-sexton kyle-sexton added the do-not-merge Hard merge gate: do not merge while applied. label Nov 4, 2026
@kyle-sexton

Copy link
Copy Markdown
Member

Hold: #13338 already landed the #13191 rename (merged 19:41:54Z; #13191 is closed). This PR's remaining diff is eight bump-none fragments plus one real line, docs/conventions/review-digest.md:61 overlay -> personal-override, which PR Lane is folding into the #13337 replacement. Releases when: that replacement merges, then this PR closes as superseded.

@kyle-sexton

Copy link
Copy Markdown
Member

Superseded: #13338 delivered #13191's rename (merged 19:41:54Z), and this PR's one remaining real change, docs/conventions/review-digest.md overlay -> personal-override, landed in #13368 (merged 2026-11-04T21:25:36Z). The other eight files were bump-none fragments.

@kyle-sexton kyle-sexton closed this Nov 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

do-not-merge Hard merge gate: do not merge while applied.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

chore(attribution, review, multi-agent and five more): call the cascade's personal layer the personal override

1 participant