feat: restore tier-2 salvage items across nine plugins#192
Conversation
Restores owner-approved pre-migration behavior and guidance dropped at the medley cutover (salvage sweep items #2-#12 and drift items D1-D4), each genericized to the marketplace's repo-agnostic seams: - claude-config-audit 0.4.0: pre-computed context blocks (3 skills) + allowed-tools scoping, all paths via ${CLAUDE_PLUGIN_ROOT} - event-storming 0.3.0: design-level missing-prerequisite guard + eval; bare memory refs now use the ${CLAUDE_PLUGIN_DATA}/history.jsonl seam - planning 0.9.0: agent-team composition guidance in /architect Step 4.5; baseline capture routes to verify-improvement SSOT; devils-advocate regains the verify-changes pointer - session-flow 0.4.0: retro ecosystem-improvement catalog (hook-event table reconciled against current docs); handoff failure-pattern gotchas - review-toolkit 0.5.0: normalization-pipeline model assignment - implementation 0.5.0: optional tool-pin drift warning in /lint (+ ecosystem-commands contract 1.1.0 schema key); /implement over-correction trap logs to the session retro when installed - codebase-audit 0.2.0: background/unattended Phase 1 fan-out variant - code-tidying 0.4.0: stdlib-only frontmatter-fence integrity check - prototype 0.2.1: composition table + named handoff seam Per-plugin version bumps and CHANGELOG entries throughout; all nine plugins pass claude plugin validate, catalog passes --strict. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011xHkkNc7CR98L8Xz9Mu7ZA
|
Claude finished @kyle-sexton's task in 1s —— View job I'll analyze this and get back to you. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: c3e192c7df
ℹ️ 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".
… availability gating - event-storming: --design-level BC-name prerequisite check (run-state store lookup, no Miro needed) now explicitly precedes the Miro availability gate, making the missing-prerequisite branch reachable - planning: /architect agent-team routing gated on availability (experimental, default-off surface) with sub-agent/sequential fallback Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011xHkkNc7CR98L8Xz9Mu7ZA
|
Claude finished @kyle-sexton's task in 1s —— View job I'll analyze this and get back to you. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 411c7aa923
ℹ️ 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".
…ep-dive Bash(bash <path>*) is the P1 shape this plugin's own permission-hygiene criteria flag (auto mode drops it), and !-execution does not route through allowed-tools, so the grant only served body re-runs. Removed; CHANGELOG records the rationale. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011xHkkNc7CR98L8Xz9Mu7ZA
|
Claude finished @kyle-sexton's task in 1s —— View job I'll analyze this and get back to you. |
## Summary Restores the eval/test-coverage attrition identified by the salvage sweep (tier-3: items #13, #15–#23 plus the two flagged cosmetic-severity items), recreated genericized and validated against `plugins/skill-quality/reference/evals.schema.json`. Per-plugin version bumps + CHANGELOG entries. | Plugin | Version | Restored coverage | |---|---|---| | songwriting | 0.4.0 | All 13 medley behavioral evals mapped onto the multi-skill split (workflow 3, diagnosis 3, rhyme 2, song-form 2, co-write 2, object-writing 1); zero drops | | ai-briefing | 0.4.0 | 6 engine evals + 3 synthetic fixtures via the audience-defaults seam; the legacy Grok-preload case re-derived as an unreachable-RSS visible-degrade scenario (the flag never shipped; CI contract bans the token) | | event-storming | 0.4.0 | Offline board-export eval (id 8) + 74-line fixture for `--discover-bcs` — disjoint from the live-Miro-required eval, reconciliation noted inline | | codebase-audit | 0.3.0 | Scope-boundary eval: decline settings/MCP/hooks claim-extraction, route to `/claude-config-audit:settings-audit` | | discovery | 0.5.0 | Research floor-scaling ("floors are not targets") + broad-topic doubled-minimums evals, vendor-neutral | | source-control | 0.2.0 | Readiness security-gate eval + genericized fixture, mixed-actor (bot-fix-now vs human-pause) eval, three worktree evals (dry-run report-only, invalid-name rejection, batched-gh status + graceful degrade) | | docs-hygiene | 0.4.0 | Two self-contained fixture-backed cases (compress classification-table, declutter opt-out/section-exemption) — fixtures empirically verified against `detect.sh`; rename-references "add an eval case" clauses | | review-toolkit | 0.6.0 | code-review-fanout evals 6 → 20: dedup/severity-derivation, fix-pass safety fence (correctness never routed to /simplify), run-everything null-reconciliation + priority-ordering; 2 medley cases skipped (fixed-roster counts deliberately generalized away), their surviving assertions folded in | ## Verification - All 8 plugins pass `claude plugin validate`; `scripts/validate-plugin-contracts.mjs` passes (1311 files) - Every evals.json jq-parses and validates against the schema (ajv/check-jsonschema) - markdownlint-cli2 0 errors on new fixtures + CHANGELOGs; coupling grep (medley/consumer refs) clean - Rebased onto main post-#192; per-plugin validate re-run green after rebase 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_011xHkkNc7CR98L8Xz9Mu7ZA --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Summary
Executes the owner-approved tier-2 restores from the salvage sweep (items #2–#12 plus semantic-drift items D1–D4): pre-migration behavior and guidance dropped at the cutover, restored and genericized to the marketplace's repo-agnostic seams. Every touched plugin gets a version bump and CHANGELOG entry.
allowed-toolsscoping; all script paths${CLAUDE_PLUGIN_ROOT}-rooted; every!command empirically tested with fallbacks--design-levelmissing-prerequisite guard (never fabricate a process model) + eval id 7; bare "memory" refs swept to the${CLAUDE_PLUGIN_DATA}/history.jsonlseam/implementation:verify-improvementSSOT when installed; devils-advocate regains the/implementation:verify-changespointerreference/, 221 lines) — hook-event table reconciled against the current hooks doc (8 events added, 2 medley errors fixed); handoff failure-patterncontext/gotchas.mdtool-pinversion-drift warning in /lint + ecosystem-commands contract 1.1.0 (additive schema key, per the contract's own versioning rule); /implement over-correction trap logs to the session retro when installedwhen installedgating); namedsession-flow:handoffseam in the auto-invoke gatePlaybook compliance
disable-model-invocation/frontmatter,${CLAUDE_PLUGIN_ROOT}substitution scope ("Skill and agent content — anywhere the placeholder appears"), and the hook-event table were verified against code.claude.com docs this session.docs/conventions/ecosystem-commands/confirmed repo-owned (not a standards-managed materialization) before the schema edit.claude plugin validate; catalog passesclaude plugin validate --strict; new/changed markdown passes markdownlint-cli2 (0 errors); the new eval validates againstevals.schema.json.Security review note (claude-config-audit 0.4.0)
The pre-computed context blocks add a code-execution-at-skill-load surface:
!commands run when the skill is invoked. Scope check per the plugin-acceptance review: all commands invoke scripts bundled inside the plugin via${CLAUDE_PLUGIN_ROOT}(no../reach-outs, no absolute paths), are read-only inventory/count operations, carry|| echo-style fallbacks so load never hard-fails, and make no network calls. Theallowed-toolsentry pre-approves exactly the one bundled read-only script, nothing broader.🤖 Generated with Claude Code
https://claude.ai/code/session_011xHkkNc7CR98L8Xz9Mu7ZA