Skip to content

feat(bugs)!: rename the bug-report plugin to bugs - #3232

Merged
kyle-sexton merged 3 commits into
mainfrom
claude/bug-finding-skill-f2vst1
Aug 23, 2026
Merged

kyle-sexton merged 3 commits into
mainfrom
claude/bug-finding-skill-f2vst1

Conversation

@kyle-sexton

Copy link
Copy Markdown
Contributor

No linked issue

Summary

Renames the bug-report plugin to bugs — with scan (landed in #3208) beside write, the plugin's identity is the front half of the bug lifecycle (find them, report them), and the old name described only the second half. Follow-up to #3208 by owner request: hard rename, no aliasing/retirement machinery, breaking changes accepted. Plugin 0.8.0 → 0.9.0.

Fix

  • plugins/bug-report/ → plugins/bugs/ (15 tracked renames); skills are now /bugs:scan, /bugs:write, /bugs:setup; marketplace entry, .claude/settings.json enablement, and the skill-leaf-name registry updated.
  • Tracked team config surface renames with the plugin: .claude/bug-report.md → .claude/bugs.md (same keys, cascade, and merge semantics per reference/config.md); convention registries (config-cascade, plugin-data-report-keying) updated.
  • Cross-fleet live references swept: claude-ops:known-issues (0.37.1) and work-items:track (0.39.19) with their own changelog entries per the published-version-reuse gate.
  • Deliberately unchanged: the persisted report frontmatter type: bug-report (storage-format identifiers stay stable across renames — ADR 0013), the bug-reports/ plugin-data subdir literal, the 'bug-report this' trigger phrase, and historical changelog/upstream/topic-slice records, which retain the old name as immutable history. The old-name marketplace tag is kept as a search alias.

Verification

Fresh-context verifier audited the rename against 8 criteria: file-census parity (15/15 carried), manifest/marketplace/settings state, byte-identical changelog history under the new 0.9.0 entry, a classified residual-reference sweep (only deliberate keeps remain), cross-fleet surface updates with the keying-convention citation still resolving, and gates. Its one FAIL (unversioned cross-plugin edits) and one scope flag (type: identifier drift) are fixed in d67519b. Local gates all exit 0: validate-plugins.sh, all four check-changelog-parity.sh modes, check-changed-skills.sh origin/main (5 skills PASS), catalog + cheat-sheet --check, markdownlint, typos, editorconfig-checker.

Related

🤖 Generated with Claude Code

https://claude.ai/code/session_01JMRQbnTGgw3zxsd1fUDstX


Generated by Claude Code

claude added 2 commits August 23, 2026 20:33
BREAKING: plugin id bug-report -> bugs; skills are now /bugs:scan,
/bugs:write, /bugs:setup; the tracked team config surface renames to
.claude/bugs.md; the plugin-data root moves with the plugin name. No
aliasing shim shipped by request. Live references swept fleet-wide
(fences, convention registries, leaf-name registry, settings,
marketplace, generated docs); historical changelog entries, the
upstream port record, and topic-slice snapshots retain the old name
as immutable history. The bug-reports/ data subdir literal and the
'bug-report this' trigger phrase are unchanged by design.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JMRQbnTGgw3zxsd1fUDstX
Verifier findings: claude-ops 0.37.1 and work-items 0.39.19 entries
cover their swept cross-references (published-version-reuse gate), and
the persisted report frontmatter reverts to type: bug-report per the
storage-format stability precedent (ADR 0013).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JMRQbnTGgw3zxsd1fUDstX
@claude

claude Bot commented Aug 23, 2026 •

Copy link
Copy Markdown
Contributor

Claude finished @kyle-sexton's task in 47s —— View job


Security review (/review:security-review)

  • Gather context (PR is a plugin rename: bug-report → bugs, cross-fleet reference sweep)
  • Run /review:security-review
  • Post findings

Skip gate hit: no security-relevant surface.

Reviewed the full diff (gh pr diff 3232, all 29 changed files against origin/main). This PR is a mechanical rename of the bug-report plugin to bugs:

  • Renamed plugin directory (plugins/bug-report/ → plugins/bugs/) with matching plugin.json, README.md, CHANGELOG.md, reference/config.md, skill SKILL.md files, and evals.json fixtures — all text/identifier substitutions (bug-report → bugs, .claude/bug-report.md → .claude/bugs.md, /bug-report:* → /bugs:*).
  • Marketplace entry, .claude/settings.json plugin-enablement key, docs/CATALOG.md, docs/SKILL-CHEAT-SHEET.md, and two convention docs updated to match.
  • Cross-plugin reference updates in claude-ops (known-issues) and work-items (track), each with its own version bump and changelog entry.
  • scripts/skill-leaf-name-registry.txt comment/entry updated.

No GitHub Actions workflow files are touched, no executable code paths change, no new command construction, file I/O, network calls, or trust-boundary logic is introduced — every diff hunk is a documentation/identifier substitution or a version/changelog bump. The persisted report frontmatter (type: bug-report) is deliberately left unchanged, so no stored-data format shifts either.

No security findings to report.

@github-actions

Copy link
Copy Markdown
Contributor

Last security-reviewed head: d67519b7065f1f469c3ba9a40a1fe8c50ccad791. On the next push, the relevance gate compares only the commits since this SHA; delete this comment to force a full re-review.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: d67519b706

ℹ️ 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".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread plugins/bugs/CHANGELOG.md Outdated
Comment thread plugins/bugs/CHANGELOG.md Outdated
@kyle-sexton
kyle-sexton enabled auto-merge (squash) August 23, 2026 20:48
@kyle-sexton
kyle-sexton merged commit 3b2225b into main Aug 23, 2026
50 checks passed
@kyle-sexton
kyle-sexton deleted the claude/bug-finding-skill-f2vst1 branch August 23, 2026 20:53
kyle-sexton added a commit to melodic-software/.github that referenced this pull request Aug 23, 2026
The marketplace renamed the `bug-report` plugin to `bugs` upstream
(melodic-software/claude-code-plugins#3232, plugin 0.9.0) as a hard rename
with no aliasing, so the old id no longer resolves and the entry enabled a
plugin this repo could neither install nor update.

Renames the `enabledPlugins` entry in place — `bugs` keeps the same
alphabetical slot. No other tracked file referenced the old name, and the
plugin ships no tracked team config layer here.
@claude

claude Bot commented Aug 23, 2026 •

Copy link
Copy Markdown
Contributor

Claude finished @kyle-sexton's task in 34s —— View job


Code review (/review:code-review)

Skip gate hit: PR is already merged.

Per the pre-fetched context, this PR is in state MERGED. The /review:code-review skip gate stops review when "PR is closed or not open" — nothing further to review since these changes are already on main.

For context, a security-review lane already ran on this PR and found no findings (mechanical rename, no security-relevant surface). Separately, an automated Codex review left two suggestions on the CHANGELOG migration notes:

  • P1: the migration steps should tell existing users to explicitly install bugs@<marketplace>, since renaming the enabled-plugin key alone doesn't install the new plugin ID.
  • P2: the migration steps should also cover renaming the user-global (~/.claude/bugs.md) and local-overlay (.claude/bugs.local.md) config layers, not just the tracked team file.

Those are pre-existing PR-body/CHANGELOG content questions, not new code-review findings against this (merged) diff — worth a follow-up PR if the maintainers want the migration notes tightened, but out of scope for this closed lane.

@github-actions

Copy link
Copy Markdown
Contributor

Claude has reviewed this PR 1 time. The lane skips further automatic reviews after 5; deleting this comment resets the count.

cursor Bot pushed a commit that referenced this pull request Sep 27, 2026
Closes #4589

## Summary

Renames the `provenance` plugin to `attribution`, so the name says what
the plugin gets you: prose
that restates an external source attributes it. `provenance` stays for
one release as a
deprecation shim, because a plugin id that disappears without a
`renames` entry reports
`Plugin "<name>" not found in marketplace` to everyone who has it
installed
([host-marketplace, "Uninstall removed plugins from users'
machines"](https://code.claude.com/docs/en/plugins/host-marketplace)).

## Fix

- `plugins/provenance/` moved to `plugins/attribution/` with `git mv`
(67 files). The plugin is now
  at 0.6.0, and its CHANGELOG notes each breaking change:
  - Install id `attribution@melodic-software`.
  - Skills `/attribution:audit` and `/attribution:setup`.
  - Rule ids `attribution/audit/rule-*`.
- Config file `.claude/attribution.json` (user, team and `.local`
layers). A leftover
    `provenance*.json` prints a one-line warning and is never read.
  - Findings file `<ts>-attribution.md`.
- The README marker example is `attribution:source`. Existing
`provenance:source` fences still
work, because the breadcrumb extractor matches any URL-carrying comment
fence rather than a
    literal.
- A new `plugins/provenance/` 0.6.0 shim:
  - A CHANGELOG with every earlier heading kept.
  - A README that explains the migration.
- Two stub skills with `disable-model-invocation: true` that point to
`attribution:*`.
  - Minimal evals.
  - Excluded from the cheat sheet.
- Repo wiring:
- `marketplace.json`: an attribution entry plus the deprecated shim
entry. `renames` is
    unchanged.
  - `AGENTS.md` row.
  - `.claude/provenance.json` renamed to `.claude/attribution.json`.
- `scripts/skill-leaf-name-registry.txt`,
`scripts/em-dash-purged-paths.txt`,
    `scripts/cheatsheet-config.mjs`.
  - The unhobble manifest mirror's paths.
  - `docs/conventions/detector-findings` rows, with a 3.1.2 entry.
  - Regenerated `docs/catalog.md`.
- Reference-only edits, each with a patch bump and a CHANGELOG entry:
docs-hygiene 0.23.2, review
0.30.5 (crosswalk rule ids), codebase-health 0.10.1, code-tidying
0.23.3, playbooks 0.13.2.
- Kept as they were:
  - Past CHANGELOG sections and `docs/specs/provenance-*`, as history.
  - The word "provenance" where it means origin.
  - The JSON `provenance` fields in other plugins.

## Verification

PENDING

## Related

- This was an unattended interview. The lane lead answered each open
question with the default
from the item or the lane notes, and a fresh-context validator
challenged the answers without
seeing the reasoning. The full register is in the branch's PLAN (local).
- Q1: rename cleanly or ship a shim? Shim, and the validator confirmed
it. Conflict for the
owner to decide: `docs/migration-playbook.md` says a rename "is a clean
breaking change
carried by a version bump and a changelog note" and a retirement gets
"No tombstone", and
    #3232 (bug-report -> bugs) was a hard rename.
- Q2 (skill ids), Q3 (rule-id prefix), Q4 (config filename, with the
warning the validator
added), Q5 (findings filename), Q6 (keep `provenance` as a tag), Q7
(unhobble paths):
    confirmed.
- Q8: the validator overturned keeping the `provenance:source` marker
example.
- USER-RESERVED, left out of this PR:
- Adding a `renames` entry (`provenance` -> `attribution`). Upstream
calls the map append-only,
    and it reverses the frozen-map doctrine.
  - The dotfiles `.chezmoidata/claude.json` seed.
- `components/cloud-environment/fleet-plugins.json` in
melodic-software/standards.
  - Each machine's `enabledPlugins`.
- The data directory
`~/.claude/plugins/data/provenance-melodic-software/`.
- Follow-up: remove the `provenance` shim (its directory, marketplace
entry, cheat-sheet
  exclusion and leaf-registry owner) in a later release.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: Kyle Sexton <kyle-sexton@users.noreply.github.com>
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.

2 participants