plantuml-validatelisted
Install: claude install-skill MrBogomips/claude-code
# PlantUML Validate
Render-aware validation across `.puml` × declared targets, with three
levels of stringency.
## Args
- `mode=check` (default) — compare current render against baseline.
- `mode=bless` — capture current render as new baseline.
- `level=checkonly` (default) — `plantuml -checkonly`, deterministic
cross-machine, no image output.
- `level=svg-hash` — render SVG, normalize, hash. Stable cross-machine if
fonts are pinned.
- `level=png-perceptual` — opt-in, fragile across systems. Not implemented
in v1.0.0; the renderer agent returns `unsupported`.
## Flow
1. **Read Policy** from `CLAUDE.md` § "PlantUML Policy". Extract Primary +
Additional targets. Abort with a clear message if Policy missing.
2. **Enumerate** `.puml` files (excluding `.plantuml/_*.puml`).
3. **Compute matrix** `file × target`.
4. **Compute baseline path** for each cell:
`tests/plantuml-baselines/<flat-relpath>--<target>.<level>`
where `<flat-relpath>` is the file path relative to the project root with
`/` replaced by `__` and the `.puml` extension dropped (e.g.
`diagrams/auth/Foo.puml` → `diagrams__auth__Foo`). This avoids silent
collisions when two diagrams share a stem in different directories.
5. **For `mode=check`**: if any baseline is missing, abort and tell the
user `"no baselines found, run with mode=bless to capture current state"`.
(If only some are missing, list them; do not silently skip.)
6. **Dispatch** each cell to `puml-renderer` via `Task` in par