Merge pull request 'fix: post-evolution cleanup — stale references and migration guide fixes (v9.0.1)' (#446) from fix/post-evolution-cleanup into development

Reviewed-on: #446
This commit was merged in pull request #446.
This commit is contained in:
2026-02-07 20:26:23 +00:00
16 changed files with 91 additions and 58 deletions

View File

@@ -6,7 +6,7 @@
}, },
"metadata": { "metadata": {
"description": "Project management plugins with Gitea and NetBox integrations", "description": "Project management plugins with Gitea and NetBox integrations",
"version": "9.0.0" "version": "9.0.1"
}, },
"plugins": [ "plugins": [
{ {

View File

@@ -6,6 +6,25 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
## [Unreleased] ## [Unreleased]
## [9.0.1] - 2026-02-06
### Fixed
- **claude-config-maintainer:** `claude-config-audit-settings.md` Step 4 referenced deleted hooks.json files (doc-guardian, project-hygiene, data-platform, contract-validator) — updated to current hook inventory (code-sentinel, git-flow, cmdb-assistant, clarity-assist)
- **claude-config-maintainer:** `maintainer.md` agent referenced project-hygiene PostToolUse hooks — updated to current hook types
- **claude-config-maintainer:** `claude-config-audit-settings.md` output format referenced doc-guardian review layer — updated to git-flow, cmdb-assistant, clarity-assist
- **claude-config-maintainer:** `claude-config-audit-settings.md` Mermaid diagram referenced doc-guardian — updated to git-flow
- **claude-config-maintainer:** `claude-config-optimize-settings.md` reviewed profile prerequisites referenced doc-guardian PostToolUse — updated to git-flow PreToolUse
- **project-hygiene:** `claude-md-integration.md` described PostToolUse hook behavior that was removed in v8.1.0 — rewritten for manual `/hygiene check` command
- **doc-guardian:** `doc-sync.md` referenced doc-guardian hooks — updated to reference `/doc audit`
- **doc-guardian:** `sync-workflow.md` referenced PostToolUse hook — updated to note removal per Decision #29
- **projman:** `task-sizing.md` example referenced PostToolUse — updated to PreToolUse
- **docs:** `MIGRATION-v9.md` listed `/pm-debug`, `/suggest-version`, `/proposal-status` as renamed to `/projman` sub-commands — corrected to show as **Removed** (these were deleted in v8.1.0, not renamed in v9.0.0)
- **docs:** `CONFIGURATION.md` listed doc-guardian as "Commands and hooks only" — corrected to "Commands only"
- **scripts:** `setup.sh` referenced old `/labels-sync` command — updated to `/labels sync`
## [9.0.0] - 2026-02-06
### Added ### Added
- **Phase 3: 8 new plugin scaffolds** - **Phase 3: 8 new plugin scaffolds**

View File

@@ -154,7 +154,7 @@ When user says "fix the sprint plan command", edit the SOURCE code.
## Project Overview ## Project Overview
**Repository:** leo-claude-mktplace **Repository:** leo-claude-mktplace
**Version:** 9.0.0 **Version:** 9.0.1
**Status:** Production Ready **Status:** Production Ready
A plugin marketplace for Claude Code containing: A plugin marketplace for Claude Code containing:

View File

@@ -1,4 +1,4 @@
# Leo Claude Marketplace - v9.0.0 # Leo Claude Marketplace - v9.0.1
A collection of Claude Code plugins for project management, infrastructure automation, and development workflows. A collection of Claude Code plugins for project management, infrastructure automation, and development workflows.

View File

@@ -485,7 +485,7 @@ Not all plugins have MCP servers. The install script handles this automatically:
| projman | ✓ (via gitea) | Issue, wiki, PR tools | | projman | ✓ (via gitea) | Issue, wiki, PR tools |
| pr-review | ✓ (via gitea) | PR review tools | | pr-review | ✓ (via gitea) | PR review tools |
| git-flow | ✗ | Commands only | | git-flow | ✗ | Commands only |
| doc-guardian | ✗ | Commands and hooks only | | doc-guardian | ✗ | Commands only |
| code-sentinel | ✗ | Commands and hooks only | | code-sentinel | ✗ | Commands and hooks only |
| clarity-assist | ✗ | Commands only | | clarity-assist | ✗ | Commands only |

View File

@@ -21,10 +21,10 @@ v9.0.0 standardizes all commands to the `/<noun> <action>` sub-command pattern.
| `/pm-review` | `/sprint review` | Moved under `/sprint` | | `/pm-review` | `/sprint review` | Moved under `/sprint` |
| `/pm-test` | `/sprint test` | Moved under `/sprint` | | `/pm-test` | `/sprint test` | Moved under `/sprint` |
| `/pm-setup` | `/projman setup` | Moved under `/projman` | | `/pm-setup` | `/projman setup` | Moved under `/projman` |
| `/pm-debug` | `/projman debug` | Moved under `/projman` | | `/pm-debug` | **Removed** | Deleted in v8.1.0 — migrated to `debug-mcp` plugin (Decision #11) |
| `/labels-sync` | `/labels sync` | | | `/labels-sync` | `/labels sync` | |
| `/suggest-version` | `/projman suggest-version` | Moved under `/projman` | | `/suggest-version` | **Removed** | Deleted in v8.1.0 — migrated to `ops-release-manager` plugin (Decision #18) |
| `/proposal-status` | `/projman proposal-status` | Moved under `/projman` | | `/proposal-status` | **Removed** | Deleted in v8.1.0 — absorbed into `/project status` (Decision #19) |
| `/rfc <sub>` | `/rfc <sub>` | Unchanged | | `/rfc <sub>` | `/rfc <sub>` | Unchanged |
| `/project <sub>` | `/project <sub>` | Unchanged | | `/project <sub>` | `/project <sub>` | Unchanged |
| `/adr <sub>` | `/adr <sub>` | Unchanged | | `/adr <sub>` | `/adr <sub>` | Unchanged |

View File

@@ -0,0 +1,9 @@
# Prompt Index
Tracks execution status of structured prompts used for marketplace evolution and maintenance.
| ID | Title | Status | Date | Version |
|----|-------|--------|------|---------|
| 001 | Phase 1 Evolution — Domain Metadata + Hook Migration | executed | 2026-02-06 | 8.0.0 → 8.1.0 |
| 002 | Phase 1b — Command Consolidation + 8 New Plugins | executed | 2026-02-06 | 8.1.0 → 9.0.0 |
| 003 | Post-Evolution Cleanup — Stale References and Migration Guide Fixes | executed | 2026-02-06 | 9.0.0 → 9.0.1 |

View File

@@ -96,7 +96,7 @@ Use this mapping to identify active plugins:
| `gitea` | projman | | `gitea` | projman |
| `netbox` | cmdb-assistant | | `netbox` | cmdb-assistant |
Also check for hook-based plugins (project-hygiene uses `PostToolUse` hooks). Also check for hook-based plugins (code-sentinel, git-flow, cmdb-assistant use `PreToolUse` safety hooks; clarity-assist uses `UserPromptSubmit` quality hook).
**Step 2: Check CLAUDE.md for Plugin References** **Step 2: Check CLAUDE.md for Plugin References**
@@ -151,7 +151,7 @@ Evaluate using `skills/settings-optimization.md`:
Before recommending auto-allow patterns, verify active review layers: Before recommending auto-allow patterns, verify active review layers:
1. Read `plugins/*/hooks/hooks.json` for each installed plugin 1. Read `plugins/*/hooks/hooks.json` for each installed plugin
2. Map hook types (PreToolUse, PostToolUse) to tool matchers (Write, Edit, Bash) 2. Map hook types (PreToolUse, UserPromptSubmit) to tool matchers (Write, Edit, MultiEdit, Bash, MCP patterns)
3. Confirm plugins are listed in `.claude-plugin/marketplace.json` 3. Confirm plugins are listed in `.claude-plugin/marketplace.json`
4. Only recommend auto-allow for scopes covered by ≥2 verified review layers 4. Only recommend auto-allow for scopes covered by ≥2 verified review layers

View File

@@ -62,21 +62,20 @@ Using `settings-optimization.md` Section 3, detect:
### Step 4: Detect Active Marketplace Hooks ### Step 4: Detect Active Marketplace Hooks
Read `plugins/*/hooks/hooks.json` files: Read `plugins/*/hooks/hooks.json` files (post-Decision #29 — only PreToolUse safety hooks and UserPromptSubmit quality hooks exist):
```bash ```bash
# Check each plugin's hooks # Check each plugin's hooks (exhaustive post-v8.1.0 inventory)
plugins/code-sentinel/hooks/hooks.json # PreToolUse security plugins/code-sentinel/hooks/hooks.json # PreToolUse: Write|Edit|MultiEdit → security-check.sh
plugins/doc-guardian/hooks/hooks.json # PostToolUse drift detection plugins/git-flow/hooks/hooks.json # PreToolUse: Bash → branch-check.sh, commit-msg-check.sh
plugins/project-hygiene/hooks/hooks.json # PostToolUse cleanup plugins/cmdb-assistant/hooks/hooks.json # PreToolUse: MCP create/update → validate-input.sh
plugins/data-platform/hooks/hooks.json # PostToolUse schema diff plugins/clarity-assist/hooks/hooks.json # UserPromptSubmit → vagueness-check.sh
plugins/contract-validator/hooks/hooks.json # Plugin validation
``` ```
Parse each to identify: Parse each to identify:
- Hook event type (PreToolUse, PostToolUse) - Hook event type (PreToolUse or UserPromptSubmit only — no other types should exist)
- Tool matchers (Write, Edit, MultiEdit, Bash) - Tool matchers (Write, Edit, MultiEdit, Bash, MCP patterns)
- Whether hook is command type (reliable) or prompt type (unreliable) - Whether hook is command type (must be — prompt type is forbidden)
### Step 5: Map Review Layers to Directory Scopes ### Step 5: Map Review Layers to Directory Scopes
@@ -118,9 +117,9 @@ Issues Found:
Active Review Layers Detected: Active Review Layers Detected:
✓ code-sentinel (PreToolUse: Write|Edit|MultiEdit) ✓ code-sentinel (PreToolUse: Write|Edit|MultiEdit)
doc-guardian (PostToolUse: Write|Edit|MultiEdit) git-flow (PreToolUse: Bash — branch naming + commit format)
project-hygiene (PostToolUse: Write|Edit) cmdb-assistant (PreToolUse: MCP create/update)
✗ data-platform schema-diff (not detected) ✓ clarity-assist (UserPromptSubmit: vagueness detection)
Recommendations: Recommendations:
1. [specific action with pattern] 1. [specific action with pattern]
@@ -146,7 +145,7 @@ When `--diagram` is specified, generate a Mermaid flowchart showing:
**Color coding:** **Color coding:**
- PreToolUse hooks: Blue - PreToolUse hooks: Blue
- PostToolUse hooks: Green - UserPromptSubmit hooks: Green
- Sprint Approval: Amber - Sprint Approval: Amber
- PR Review: Purple - PR Review: Purple
@@ -161,7 +160,7 @@ flowchart LR
subgraph Review Layers subgraph Review Layers
CS[code-sentinel] CS[code-sentinel]
DG[doc-guardian] GF[git-flow]
PR[pr-review] PR[pr-review]
end end
@@ -172,18 +171,17 @@ flowchart LR
end end
W --> CS W --> CS
W --> DG
E --> CS E --> CS
E --> DG B --> GF
CS --> A CS --> A
DG --> A GF --> A
B --> P B --> P
classDef preHook fill:#e3f2fd classDef preHook fill:#e3f2fd
classDef postHook fill:#e8f5e9 classDef userPrompt fill:#e8f5e9
classDef prReview fill:#f3e5f5 classDef prReview fill:#f3e5f5
class CS preHook class CS preHook
class DG postHook class GF preHook
class PR prReview class PR prReview
``` ```

View File

@@ -171,7 +171,7 @@ Switching to reviewed profile...
Prerequisites verified: Prerequisites verified:
✓ code-sentinel hook active (PreToolUse) ✓ code-sentinel hook active (PreToolUse)
doc-guardian hook active (PostToolUse) git-flow hook active (PreToolUse)
✓ 2+ review layers detected ✓ 2+ review layers detected
This profile: This profile:

View File

@@ -351,15 +351,20 @@ To verify which review layers are active, read these files:
```json ```json
{ {
"hooks": {
"PreToolUse": [
{
"matcher": "Write|Edit|MultiEdit",
"hooks": [ "hooks": [
{ {
"event": "PreToolUse",
"type": "command", "type": "command",
"command": "./hooks/security-check.sh", "command": "./hooks/security-check.sh"
"tools": ["Write", "Edit", "MultiEdit"]
} }
] ]
} }
]
}
}
``` ```
### Review Layer Count ### Review Layer Count

View File

@@ -5,7 +5,7 @@ description: Synchronize all pending documentation updates in a single commit
# /doc sync # /doc sync
Apply all pending documentation updates detected by doc-guardian hooks. Apply all pending documentation updates detected by `/doc audit`.
## Skills to Load ## Skills to Load

View File

@@ -12,7 +12,7 @@ Defines how to synchronize documentation with code changes.
## When to Use ## When to Use
- **doc sync**: Apply pending documentation updates - **doc sync**: Apply pending documentation updates
- **PostToolUse hook**: Queue drift for later sync - **doc audit**: Detect drift manually (PostToolUse hook removed per Decision #29)
--- ---

View File

@@ -1,14 +1,23 @@
## Project Cleanup (project-hygiene) ## Project Cleanup (project-hygiene)
This project uses the **project-hygiene** plugin for automated post-task cleanup. This project uses the **project-hygiene** plugin for file organization and cleanup checks.
### How It Works ### How It Works
The plugin automatically runs after file Write or Edit operations to: Run `/hygiene check` to scan for common project cleanliness issues:
1. **Delete temporary files** - Removes `*.tmp`, `*.bak`, `__pycache__/`, `.pytest_cache/`, etc. 1. **Temp file detection** — finds `*.tmp`, `*.bak`, `*.swp`, `*~` files
2. **Warn about unexpected root files** - Alerts when files are created outside expected locations 2. **Misplaced files** — files outside their expected directories
3. **Identify orphaned files** - Detects supporting files that may no longer be needed 3. **Empty directories** — directories with no files
4. **Large files** — files exceeding reasonable size thresholds
5. **Debug artifacts** — leftover debug logs, console.log, print statements
### Usage
```
/hygiene check # Run all checks
/hygiene check --fix # Auto-fix safe issues (delete temp files, remove empty dirs)
```
### Configuration ### Configuration
@@ -23,14 +32,7 @@ The plugin can be configured via `.hygiene.json` in the project root:
} }
``` ```
### Hook Events ### Notes
The plugin registers on the following events: - This was previously a PostToolUse hook (automatic). Since v8.1.0 (Decision #29), it runs manually via `/hygiene check`.
- `PostToolUse` (matcher: `Write|Edit`) - Runs cleanup after file modifications - Add `/hygiene check` as an explicit step in your prompt files where project cleanliness matters.
### Usage Guidelines
- Let the hook run automatically - no manual intervention needed
- Review warnings about unexpected root files
- Configure `.hygiene.json` to customize cleanup behavior for your project
- Check cleanup output if files seem to disappear unexpectedly

View File

@@ -82,7 +82,7 @@ Labels: Efforts/S
[Sprint 3] chore: Register hook in hooks.json [Sprint 3] chore: Register hook in hooks.json
Labels: Efforts/XS Labels: Efforts/XS
- [ ] Add PostToolUse:Edit hook entry - [ ] Add PreToolUse:Edit hook entry
``` ```
--- ---

View File

@@ -219,10 +219,10 @@ setup_labels() {
if [[ -f "$labels_file" ]]; then if [[ -f "$labels_file" ]]; then
log_success "Label reference file exists" log_success "Label reference file exists"
log_info "Run '/labels-sync' command after setup to sync with Gitea" log_info "Run '/labels sync' command after setup to sync with Gitea"
else else
log_error "Label reference file not found at $labels_file" log_error "Label reference file not found at $labels_file"
log_todo "Run '/labels-sync' to create label reference from Gitea" log_todo "Run '/labels sync' to create label reference from Gitea"
fi fi
} }