refactor(audits): route all report writes to .claude/audits/

Before: SEO.md, GEO.md, HARDEN.md, VALIDATE.md, BUGS-FOUND.md landed
at project root. After: all five go to .claude/audits/. Covers both
dispatcher write paths and the dispatcher bash commands that parse
each report (test -s, grep score, wc) — otherwise the dispatcher
would look for the file at the old location.

- skills/seo,geo,harden,validate,code-clean — write paths + console
  summaries ("Report: .claude/audits/X.md")
- skills/harden,validate — bash parsing commands (test/grep/wc) aligned
- agents/seo-analyzer,validator-analyzer,code-cleaner — agent-side refs
- agents/validator-analyzer frontmatter description updated

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
bastien
2026-04-23 16:06:54 +02:00
co-authored by Claude Opus 4.7
parent 32ccceb548
commit 7b57b2e091
8 changed files with 41 additions and 44 deletions
+3 -3
View File
@@ -141,7 +141,7 @@ Do NOT call the `/refactor` skill — invoke the agent directly.
If cleanup reveals actual bugs (not style issues — real defects):
- Append each bug to `BUGS-FOUND.md` at project root:
- Append each bug to `.claude/audits/BUGS-FOUND.md` (run `mkdir -p .claude/audits` first):
```
## [date] Bug found during code-clean
- **File**: <file:line>
@@ -178,7 +178,7 @@ REFACTORED:
SKIPPED (user decision):
- <item> — <reason>
BUGS FOUND: <N> (logged to BUGS-FOUND.md)
BUGS FOUND: <N> (logged to .claude/audits/BUGS-FOUND.md)
TESTS: passing / no test suite / <failures>
```
@@ -192,7 +192,7 @@ TESTS: passing / no test suite / <failures>
- No "while we're here" scope creep. Only fix approved items.
- Exported/public API symbols require explicit per-item user confirmation
before deletion — even if they appear unused.
- Bugs go to BUGS-FOUND.md, not fixed in this workflow.
- Bugs go to .claude/audits/BUGS-FOUND.md, not fixed in this workflow.
- If the codebase has no tests and the changes are non-trivial,
warn the user about the risk before executing.
- No plugin check (lightweight skill, not an orchestrator).
+1 -1
View File
@@ -877,7 +877,7 @@ SEO AGENT RESULT (depth: <LOCAL|FULL>)
```
**If standalone `/seo` on a project without `/geo`**: write/update
`SEO.md` at project root. Structure matches classic format, with §7
`.claude/audits/SEO.md` (run `mkdir -p .claude/audits` first). Structure matches classic format, with §7
(GEO) marked as "Not audited — run /geo for GEO/AI optimization".
```markdown
+5 -6
View File
@@ -1,6 +1,6 @@
---
name: validator-analyzer
description: Web standards audit agent — W3C HTML validity (validator.nu), W3C CSS validity (jigsaw.w3.org), WCAG 2.1 accessibility (axe-core, pa11y, WAVE). Dispatched from /validate. Produces scored VALIDATE.md report with concrete diffs for auto-fixable issues and user actions for judgment-required fixes. Complementary to /harden (security), /seo (indexability), /geo (AI extraction).
description: Web standards audit agent — W3C HTML validity (validator.nu), W3C CSS validity (jigsaw.w3.org), WCAG 2.1 accessibility (axe-core, pa11y, WAVE). Dispatched from /validate. Produces scored .claude/audits/VALIDATE.md report with concrete diffs for auto-fixable issues and user actions for judgment-required fixes. Complementary to /harden (security), /seo (indexability), /geo (AI extraction).
tools: Read, Edit, Write, Bash, Grep, Glob, WebFetch
---
@@ -287,7 +287,7 @@ RGAA 4.1 (French public sector).
---
## STEP 4 — Score + VALIDATE.md
## STEP 4 — Score + .claude/audits/VALIDATE.md
### Scoring
@@ -306,7 +306,7 @@ Base 100. Deductions :
Clamp to [0, 100].
### Report structure — write to `<PROJECT_ROOT>/VALIDATE.md`
### Report structure — write to `<PROJECT_ROOT>/.claude/audits/VALIDATE.md` (run `mkdir -p .claude/audits` first)
```markdown
# Validation Report — <project name>
@@ -455,7 +455,7 @@ READY TO APPLY — awaiting dispatcher confirmation
- **Single agent, narrow scope.** W3C HTML + W3C CSS + WCAG 2.1 only.
Drop anything else (meta tags, JSON-LD, perf, security, generic linting).
- **Degrade gracefully.** Missing tools → fall back to static checks.
Never fail hard. Always produce VALIDATE.md, even in degraded mode.
Never fail hard. Always produce .claude/audits/VALIDATE.md, even in degraded mode.
- **Framework awareness.** For SPA/JS frameworks (Next/Astro/Vite/
SvelteKit/Nuxt), validate built output (`dist/`, `_site/`, `build/`,
`out/`), not JSX/TSX source. Note "Validated against built HTML at
@@ -464,8 +464,7 @@ READY TO APPLY — awaiting dispatcher confirmation
STOP, return control via `READY TO APPLY`.
- **Cite evidence.** Every finding : `file:line` + tool output quote.
Empty findings or hand-waving = bug.
- **One report.** `VALIDATE.md` at project root (or `docs/VALIDATE.md`
if convention exists). On re-run, move previous content to a
- **One report.** `.claude/audits/VALIDATE.md`. On re-run, move previous content to a
`## Historique` section — do not overwrite silently.
- **External validators are authoritative.** If validator.nu disagrees
with `html-validate`, trust validator.nu. If jigsaw disagrees with