Severity: High (first item) / Medium (rest) — found during a deep project review (2026-07-06) of all 12 .claude/agents/*.md files against CLAUDE.md and the actual repo state. The duplicate docs-writer agent is tracked separately.
HIGH — All implementing agents rely on a pre-commit hook that does not exist
backend-developer.md:91,127,135,175, frontend-developer.md:90,103,155,194, product-architect.md:235, dev-team-lead.md:347, qa-integration-tester.md:175, e2e-test-engineer.md:239 all say variants of: "Do not run npm test manually. Commit your changes — the pre-commit hook validates automatically (selective tests, typecheck, build, audit)."
Verified: no hook exists — .git/hooks/ has only *.sample files, core.hooksPath unset, no husky/lefthook/prepare script. Meanwhile CLAUDE.md's Local Validation Policy mandates npm run lint:fix / npm run format / npm run lint before handback — and no dev agent file mentions these commands at all. Result: zero local validation happens before commit (consistent with the 235 latent stylelint errors and trailer drift found elsewhere in this review).
Cross-agent contradictions & stale references (checklist)
LOW (batch)
Severity: High (first item) / Medium (rest) — found during a deep project review (2026-07-06) of all 12
.claude/agents/*.mdfiles against CLAUDE.md and the actual repo state. The duplicate docs-writer agent is tracked separately.HIGH — All implementing agents rely on a pre-commit hook that does not exist
backend-developer.md:91,127,135,175,frontend-developer.md:90,103,155,194,product-architect.md:235,dev-team-lead.md:347,qa-integration-tester.md:175,e2e-test-engineer.md:239all say variants of: "Do not runnpm testmanually. Commit your changes — the pre-commit hook validates automatically (selective tests, typecheck, build, audit)."Verified: no hook exists —
.git/hooks/has only*.samplefiles,core.hooksPathunset, no husky/lefthook/preparescript. Meanwhile CLAUDE.md's Local Validation Policy mandatesnpm run lint:fix/npm run format/npm run lintbefore handback — and no dev agent file mentions these commands at all. Result: zero local validation happens before commit (consistent with the 235 latent stylelint errors and trailer drift found elsewhere in this review).Cross-agent contradictions & stale references (checklist)
CLAUDE.md" that CLAUDE.md doesn't contain (backend-developer.md:41,frontend-developer.md:44,qa-integration-tester.md:30,e2e-test-engineer.md:94,product-owner.md:168,security-engineer.md:39; onlyproduct-architect.md:128-137defines one locally).model: sonnet:(Sonnet 4.6)in dev-team-lead/translator/ux-designer vs(Sonnet 4.5)in qa/e2e/security — at most one is right; commit trailers misattribute the model.dev-team-lead.md:369PR-body template usesCo-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>— no agent name (violates the project's own trailer format) and names Opus although dev-team-lead ismodel: sonnet.:118) vs ux-designer "owns wiki/Style-Guide.md" (:27-33,174) vs CLAUDE.md "managed by product-architect and security-engineer" (with Style Guide in the list).product-architect.md:86references a wiki "Deployment page" that doesn't exist inwiki/.frontend-developer.md:109prescribesfeatures/work-items/directory convention;client/src/features/doesn't exist and contradicts the same file's own shared-component section.docs/package.json:6) is baredocusaurus start(default 3000 — collides with the app server's port 3000).LOW (batch)
product-owner.md:247cross-reference to "§6" — checklist lives in §8.dev-team-lead.md:8+ frontmatter omit translator and e2e-test-engineer from the implementation-agent list although its own spec format includes E2E Spec (:144) and Translator Spec (:173).security-engineer.md:3frontmatter examples reference stale paths (docs/architecture.md,src/routes/projects.ts).:174) vs "use Write/Edit to update your memory files" (:224).git checkout beta && git pull && git branch -d) in backend/frontend/product-architect conflicts with worktree sessions (can't checkout beta / delete the checked-out branch).e2e-test-engineer.md:3-30frontmatter description is a raw multiline quoted scalar that renders with a leading"in the agent registry; escaping style inconsistent across files.