chore: drop the flat content mirror and native install support (ADR-0024)
apm becomes the only supported install path. The flat mirror at each plugin root existed solely so Claude Code's native `claude plugin install` could convention-scan plugin content (ADR-0017). With no native consumers, it cost ~20,000 tracked lines plus ~2,100 lines of sync tooling and ~88s of every push to guard content apm never reads — and its only automated gate, `claude plugin validate --strict`, passes on a plugin with zero content, so it could not detect the defect ADR-0017 was created to fix. Removes the mirror (213 files), the six per-plugin manifest pairs, sync-plugin-content.sh, its 1,289-line test, the orphaned marketplace-plugins.sh, and the check-plugin-content-sync and validate-plugins pre-push hooks. The root `marketplace:` block and .claude-plugin/ catalogue stay: apm's own marketplace consumers read that same file, so `<name>@holocron` short names keep working. tests/run-bats.sh now excludes .claude/skills/. apm installs from .apm/, which carries the tests/ dirs the mirror stripped, so deployed .bats files would otherwise be discovered and double-run. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01YR2CjVumUbEGWcMikcoXBD
This commit is contained in:
@@ -460,11 +460,11 @@ fi
|
||||
# - tests/*.sh — the runners and every regression test
|
||||
# - plugins/*/.apm/**/*.sh — the scripts plugins ship to users
|
||||
# - providers/**/*.sh — the scripts install.sh deploys to user machines
|
||||
# plugins/*/skills/** is deliberately NOT scanned: it is the generated mirror of
|
||||
# .apm/, so scanning both double-reports every finding, and mirror-vs-source
|
||||
# drift is already sync-plugin-content.sh --check's job. Scanning .apm/ is what
|
||||
# closed the gap where skill-audit's vale-wrap.sh was covered but agent-audit's
|
||||
# byte-identical copy of it was not.
|
||||
# .apm/ is the only plugin content scanned, and it is the only plugin content
|
||||
# there is: the generated flat plugins/*/skills/** mirror was deleted with
|
||||
# native plugin-install support, so there is no second copy to double-report.
|
||||
# Scanning .apm/ is what closed the gap where skill-audit's vale-wrap.sh was
|
||||
# covered but agent-audit's byte-identical copy of it was not.
|
||||
# providers/**/*.sh was excluded until issue #96: statusline-command.sh seeded
|
||||
# `parts=()` empty and expanded it unguarded, a real latent hazard rather than a
|
||||
# false positive, in a file this case did not own. That expansion is now guarded,
|
||||
|
||||
Reference in New Issue
Block a user