devflow-kit 0.9.0 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +167 -29
- package/LICENSE +1 -1
- package/README.md +179 -310
- package/dist/cli.js +3 -1
- package/dist/commands/init.d.ts +21 -0
- package/dist/commands/init.js +311 -576
- package/dist/commands/list.d.ts +3 -0
- package/dist/commands/list.js +20 -0
- package/dist/commands/uninstall.d.ts +10 -0
- package/dist/commands/uninstall.js +351 -78
- package/dist/plugins.d.ts +46 -0
- package/dist/plugins.js +162 -0
- package/dist/utils/cli.d.ts +5 -0
- package/dist/utils/cli.js +14 -0
- package/dist/utils/installer.d.ts +41 -0
- package/dist/utils/installer.js +177 -0
- package/dist/utils/paths.d.ts +10 -0
- package/dist/utils/paths.js +23 -3
- package/dist/utils/post-install.d.ts +68 -0
- package/dist/utils/post-install.js +427 -0
- package/dist/utils/safe-delete-install.d.ts +22 -0
- package/dist/utils/safe-delete-install.js +156 -0
- package/dist/utils/safe-delete.d.ts +12 -0
- package/dist/utils/safe-delete.js +83 -0
- package/package.json +18 -8
- package/plugins/devflow-audit-claude/.claude-plugin/plugin.json +7 -0
- package/plugins/devflow-audit-claude/README.md +46 -0
- package/plugins/devflow-audit-claude/agents/claude-md-auditor.md +134 -0
- package/plugins/devflow-audit-claude/commands/audit-claude.md +85 -0
- package/plugins/devflow-code-review/.claude-plugin/plugin.json +31 -0
- package/plugins/devflow-code-review/README.md +73 -0
- package/plugins/devflow-code-review/agents/git.md +272 -0
- package/plugins/devflow-code-review/agents/reviewer.md +119 -0
- package/plugins/devflow-code-review/agents/synthesizer.md +204 -0
- package/plugins/devflow-code-review/commands/code-review-teams.md +262 -0
- package/plugins/devflow-code-review/commands/code-review.md +141 -0
- package/plugins/devflow-code-review/skills/accessibility/SKILL.md +229 -0
- package/plugins/devflow-code-review/skills/accessibility/references/detection.md +171 -0
- package/plugins/devflow-code-review/skills/accessibility/references/patterns.md +670 -0
- package/plugins/devflow-code-review/skills/accessibility/references/violations.md +419 -0
- package/plugins/devflow-code-review/skills/agent-teams/SKILL.md +124 -0
- package/plugins/devflow-code-review/skills/agent-teams/references/cleanup.md +104 -0
- package/plugins/devflow-code-review/skills/agent-teams/references/communication.md +122 -0
- package/plugins/devflow-code-review/skills/agent-teams/references/team-patterns.md +217 -0
- package/plugins/devflow-code-review/skills/architecture-patterns/SKILL.md +153 -0
- package/plugins/devflow-code-review/skills/architecture-patterns/references/detection.md +337 -0
- package/plugins/devflow-code-review/skills/architecture-patterns/references/patterns.md +873 -0
- package/plugins/devflow-code-review/skills/architecture-patterns/references/violations.md +575 -0
- package/plugins/devflow-code-review/skills/complexity-patterns/SKILL.md +143 -0
- package/plugins/devflow-code-review/skills/complexity-patterns/references/detection.md +264 -0
- package/plugins/devflow-code-review/skills/complexity-patterns/references/patterns.md +487 -0
- package/plugins/devflow-code-review/skills/complexity-patterns/references/violations.md +361 -0
- package/plugins/devflow-code-review/skills/consistency-patterns/SKILL.md +140 -0
- package/plugins/devflow-code-review/skills/consistency-patterns/references/detection.md +207 -0
- package/plugins/devflow-code-review/skills/consistency-patterns/references/patterns.md +202 -0
- package/plugins/devflow-code-review/skills/consistency-patterns/references/violations.md +213 -0
- package/plugins/devflow-code-review/skills/database-patterns/SKILL.md +134 -0
- package/plugins/devflow-code-review/skills/database-patterns/references/detection.md +208 -0
- package/plugins/devflow-code-review/skills/database-patterns/references/patterns.md +394 -0
- package/plugins/devflow-code-review/skills/database-patterns/references/violations.md +332 -0
- package/plugins/devflow-code-review/skills/dependencies-patterns/SKILL.md +141 -0
- package/plugins/devflow-code-review/skills/dependencies-patterns/references/detection.md +181 -0
- package/plugins/devflow-code-review/skills/dependencies-patterns/references/patterns.md +225 -0
- package/plugins/devflow-code-review/skills/dependencies-patterns/references/violations.md +247 -0
- package/plugins/devflow-code-review/skills/documentation-patterns/SKILL.md +125 -0
- package/plugins/devflow-code-review/skills/documentation-patterns/references/detection.md +190 -0
- package/plugins/devflow-code-review/skills/documentation-patterns/references/patterns.md +189 -0
- package/plugins/devflow-code-review/skills/documentation-patterns/references/violations.md +163 -0
- package/plugins/devflow-code-review/skills/frontend-design/SKILL.md +254 -0
- package/plugins/devflow-code-review/skills/frontend-design/references/detection.md +184 -0
- package/plugins/devflow-code-review/skills/frontend-design/references/patterns.md +511 -0
- package/plugins/devflow-code-review/skills/frontend-design/references/violations.md +453 -0
- package/plugins/devflow-code-review/skills/performance-patterns/SKILL.md +154 -0
- package/plugins/devflow-code-review/skills/performance-patterns/references/detection.md +351 -0
- package/plugins/devflow-code-review/skills/performance-patterns/references/patterns.md +503 -0
- package/plugins/devflow-code-review/skills/performance-patterns/references/violations.md +354 -0
- package/plugins/devflow-code-review/skills/react/SKILL.md +276 -0
- package/plugins/devflow-code-review/skills/react/references/patterns.md +1331 -0
- package/plugins/devflow-code-review/skills/react/references/violations.md +565 -0
- package/plugins/devflow-code-review/skills/regression-patterns/SKILL.md +146 -0
- package/plugins/devflow-code-review/skills/regression-patterns/references/detection.md +237 -0
- package/plugins/devflow-code-review/skills/regression-patterns/references/patterns.md +226 -0
- package/plugins/devflow-code-review/skills/regression-patterns/references/violations.md +225 -0
- package/plugins/devflow-code-review/skills/review-methodology/SKILL.md +119 -0
- package/plugins/devflow-code-review/skills/review-methodology/references/patterns.md +186 -0
- package/plugins/devflow-code-review/skills/review-methodology/references/report-template.md +142 -0
- package/plugins/devflow-code-review/skills/review-methodology/references/violations.md +125 -0
- package/plugins/devflow-code-review/skills/security-patterns/SKILL.md +156 -0
- package/plugins/devflow-code-review/skills/security-patterns/references/detection.md +287 -0
- package/plugins/devflow-code-review/skills/security-patterns/references/patterns.md +507 -0
- package/plugins/devflow-code-review/skills/security-patterns/references/violations.md +237 -0
- package/plugins/devflow-code-review/skills/test-patterns/SKILL.md +183 -0
- package/plugins/devflow-code-review/skills/test-patterns/references/detection.md +149 -0
- package/plugins/devflow-code-review/skills/test-patterns/references/patterns.md +220 -0
- package/plugins/devflow-code-review/skills/test-patterns/references/report-template.md +108 -0
- package/plugins/devflow-code-review/skills/test-patterns/references/violations.md +221 -0
- package/plugins/devflow-core-skills/.claude-plugin/plugin.json +27 -0
- package/plugins/devflow-core-skills/README.md +50 -0
- package/plugins/devflow-core-skills/skills/accessibility/SKILL.md +229 -0
- package/plugins/devflow-core-skills/skills/accessibility/references/detection.md +171 -0
- package/plugins/devflow-core-skills/skills/accessibility/references/patterns.md +670 -0
- package/plugins/devflow-core-skills/skills/accessibility/references/violations.md +419 -0
- package/plugins/devflow-core-skills/skills/core-patterns/SKILL.md +162 -0
- package/plugins/devflow-core-skills/skills/core-patterns/references/checklist.md +276 -0
- package/plugins/devflow-core-skills/skills/core-patterns/references/code-smell-violations.md +144 -0
- package/plugins/devflow-core-skills/skills/core-patterns/references/detection.md +303 -0
- package/plugins/devflow-core-skills/skills/core-patterns/references/patterns.md +576 -0
- package/plugins/devflow-core-skills/skills/core-patterns/references/violations.md +369 -0
- package/plugins/devflow-core-skills/skills/docs-framework/SKILL.md +134 -0
- package/plugins/devflow-core-skills/skills/docs-framework/references/patterns.md +346 -0
- package/plugins/devflow-core-skills/skills/docs-framework/references/violations.md +221 -0
- package/plugins/devflow-core-skills/skills/frontend-design/SKILL.md +254 -0
- package/plugins/devflow-core-skills/skills/frontend-design/references/detection.md +184 -0
- package/plugins/devflow-core-skills/skills/frontend-design/references/patterns.md +511 -0
- package/plugins/devflow-core-skills/skills/frontend-design/references/violations.md +453 -0
- package/plugins/devflow-core-skills/skills/git-safety/SKILL.md +122 -0
- package/plugins/devflow-core-skills/skills/git-safety/references/detection.md +290 -0
- package/plugins/devflow-core-skills/skills/git-safety/references/patterns.md +289 -0
- package/plugins/devflow-core-skills/skills/git-safety/references/violations.md +18 -0
- package/plugins/devflow-core-skills/skills/git-workflow/SKILL.md +158 -0
- package/plugins/devflow-core-skills/skills/git-workflow/references/commit-patterns.md +115 -0
- package/plugins/devflow-core-skills/skills/git-workflow/references/commit-violations.md +77 -0
- package/plugins/devflow-core-skills/skills/git-workflow/references/pr-patterns.md +127 -0
- package/plugins/devflow-core-skills/skills/git-workflow/references/pr-violations.md +96 -0
- package/plugins/devflow-core-skills/skills/github-patterns/SKILL.md +153 -0
- package/plugins/devflow-core-skills/skills/github-patterns/references/patterns.md +572 -0
- package/plugins/devflow-core-skills/skills/github-patterns/references/violations.md +298 -0
- package/plugins/devflow-core-skills/skills/input-validation/SKILL.md +148 -0
- package/plugins/devflow-core-skills/skills/input-validation/references/detection.md +283 -0
- package/plugins/devflow-core-skills/skills/input-validation/references/patterns.md +361 -0
- package/plugins/devflow-core-skills/skills/input-validation/references/violations.md +224 -0
- package/plugins/devflow-core-skills/skills/react/SKILL.md +276 -0
- package/plugins/devflow-core-skills/skills/react/references/patterns.md +1331 -0
- package/plugins/devflow-core-skills/skills/react/references/violations.md +565 -0
- package/plugins/devflow-core-skills/skills/test-patterns/SKILL.md +183 -0
- package/plugins/devflow-core-skills/skills/test-patterns/references/detection.md +149 -0
- package/plugins/devflow-core-skills/skills/test-patterns/references/patterns.md +220 -0
- package/plugins/devflow-core-skills/skills/test-patterns/references/report-template.md +108 -0
- package/plugins/devflow-core-skills/skills/test-patterns/references/violations.md +221 -0
- package/plugins/devflow-core-skills/skills/typescript/SKILL.md +176 -0
- package/plugins/devflow-core-skills/skills/typescript/references/patterns.md +1105 -0
- package/plugins/devflow-core-skills/skills/typescript/references/violations.md +433 -0
- package/plugins/devflow-debug/.claude-plugin/plugin.json +18 -0
- package/plugins/devflow-debug/README.md +65 -0
- package/plugins/devflow-debug/agents/git.md +272 -0
- package/plugins/devflow-debug/commands/debug-teams.md +231 -0
- package/plugins/devflow-debug/commands/debug.md +160 -0
- package/plugins/devflow-debug/skills/agent-teams/SKILL.md +124 -0
- package/plugins/devflow-debug/skills/agent-teams/references/cleanup.md +104 -0
- package/plugins/devflow-debug/skills/agent-teams/references/communication.md +122 -0
- package/plugins/devflow-debug/skills/agent-teams/references/team-patterns.md +217 -0
- package/plugins/devflow-debug/skills/git-safety/SKILL.md +122 -0
- package/plugins/devflow-debug/skills/git-safety/references/detection.md +290 -0
- package/plugins/devflow-debug/skills/git-safety/references/patterns.md +289 -0
- package/plugins/devflow-debug/skills/git-safety/references/violations.md +18 -0
- package/plugins/devflow-implement/.claude-plugin/plugin.json +21 -0
- package/plugins/devflow-implement/README.md +71 -0
- package/plugins/devflow-implement/agents/coder.md +122 -0
- package/plugins/devflow-implement/agents/git.md +272 -0
- package/plugins/devflow-implement/agents/scrutinizer.md +80 -0
- package/plugins/devflow-implement/agents/shepherd.md +94 -0
- package/plugins/devflow-implement/agents/simplifier.md +62 -0
- package/plugins/devflow-implement/agents/skimmer.md +88 -0
- package/plugins/devflow-implement/agents/synthesizer.md +204 -0
- package/plugins/devflow-implement/agents/validator.md +86 -0
- package/plugins/devflow-implement/commands/implement-teams.md +608 -0
- package/plugins/devflow-implement/commands/implement.md +426 -0
- package/plugins/devflow-implement/skills/accessibility/SKILL.md +229 -0
- package/plugins/devflow-implement/skills/accessibility/references/detection.md +171 -0
- package/plugins/devflow-implement/skills/accessibility/references/patterns.md +670 -0
- package/plugins/devflow-implement/skills/accessibility/references/violations.md +419 -0
- package/plugins/devflow-implement/skills/agent-teams/SKILL.md +124 -0
- package/plugins/devflow-implement/skills/agent-teams/references/cleanup.md +104 -0
- package/plugins/devflow-implement/skills/agent-teams/references/communication.md +122 -0
- package/plugins/devflow-implement/skills/agent-teams/references/team-patterns.md +217 -0
- package/plugins/devflow-implement/skills/frontend-design/SKILL.md +254 -0
- package/plugins/devflow-implement/skills/frontend-design/references/detection.md +184 -0
- package/plugins/devflow-implement/skills/frontend-design/references/patterns.md +511 -0
- package/plugins/devflow-implement/skills/frontend-design/references/violations.md +453 -0
- package/plugins/devflow-implement/skills/implementation-patterns/SKILL.md +162 -0
- package/plugins/devflow-implement/skills/implementation-patterns/references/patterns.md +1063 -0
- package/plugins/devflow-implement/skills/implementation-patterns/references/violations.md +483 -0
- package/plugins/devflow-implement/skills/self-review/SKILL.md +149 -0
- package/plugins/devflow-implement/skills/self-review/references/patterns.md +405 -0
- package/plugins/devflow-implement/skills/self-review/references/report-template.md +253 -0
- package/plugins/devflow-implement/skills/self-review/references/violations.md +308 -0
- package/plugins/devflow-resolve/.claude-plugin/plugin.json +19 -0
- package/plugins/devflow-resolve/README.md +65 -0
- package/plugins/devflow-resolve/agents/git.md +272 -0
- package/plugins/devflow-resolve/agents/resolver.md +131 -0
- package/plugins/devflow-resolve/agents/simplifier.md +62 -0
- package/plugins/devflow-resolve/commands/resolve-teams.md +298 -0
- package/plugins/devflow-resolve/commands/resolve.md +237 -0
- package/plugins/devflow-resolve/skills/agent-teams/SKILL.md +124 -0
- package/plugins/devflow-resolve/skills/agent-teams/references/cleanup.md +104 -0
- package/plugins/devflow-resolve/skills/agent-teams/references/communication.md +122 -0
- package/plugins/devflow-resolve/skills/agent-teams/references/team-patterns.md +217 -0
- package/plugins/devflow-resolve/skills/implementation-patterns/SKILL.md +162 -0
- package/plugins/devflow-resolve/skills/implementation-patterns/references/patterns.md +1063 -0
- package/plugins/devflow-resolve/skills/implementation-patterns/references/violations.md +483 -0
- package/plugins/devflow-resolve/skills/security-patterns/SKILL.md +156 -0
- package/plugins/devflow-resolve/skills/security-patterns/references/detection.md +287 -0
- package/plugins/devflow-resolve/skills/security-patterns/references/patterns.md +507 -0
- package/plugins/devflow-resolve/skills/security-patterns/references/violations.md +237 -0
- package/plugins/devflow-self-review/.claude-plugin/plugin.json +7 -0
- package/plugins/devflow-self-review/README.md +38 -0
- package/plugins/devflow-self-review/agents/scrutinizer.md +80 -0
- package/plugins/devflow-self-review/agents/simplifier.md +62 -0
- package/plugins/devflow-self-review/agents/validator.md +86 -0
- package/plugins/devflow-self-review/commands/self-review.md +126 -0
- package/plugins/devflow-self-review/skills/core-patterns/SKILL.md +162 -0
- package/plugins/devflow-self-review/skills/core-patterns/references/checklist.md +276 -0
- package/plugins/devflow-self-review/skills/core-patterns/references/code-smell-violations.md +144 -0
- package/plugins/devflow-self-review/skills/core-patterns/references/detection.md +303 -0
- package/plugins/devflow-self-review/skills/core-patterns/references/patterns.md +576 -0
- package/plugins/devflow-self-review/skills/core-patterns/references/violations.md +369 -0
- package/plugins/devflow-self-review/skills/self-review/SKILL.md +149 -0
- package/plugins/devflow-self-review/skills/self-review/references/patterns.md +405 -0
- package/plugins/devflow-self-review/skills/self-review/references/report-template.md +253 -0
- package/plugins/devflow-self-review/skills/self-review/references/violations.md +308 -0
- package/plugins/devflow-specify/.claude-plugin/plugin.json +15 -0
- package/plugins/devflow-specify/README.md +46 -0
- package/plugins/devflow-specify/agents/skimmer.md +88 -0
- package/plugins/devflow-specify/agents/synthesizer.md +204 -0
- package/plugins/devflow-specify/commands/specify-teams.md +314 -0
- package/plugins/devflow-specify/commands/specify.md +179 -0
- package/plugins/devflow-specify/skills/agent-teams/SKILL.md +124 -0
- package/plugins/devflow-specify/skills/agent-teams/references/cleanup.md +104 -0
- package/plugins/devflow-specify/skills/agent-teams/references/communication.md +122 -0
- package/plugins/devflow-specify/skills/agent-teams/references/team-patterns.md +217 -0
- package/scripts/hooks/background-memory-update.sh +167 -0
- package/scripts/hooks/pre-compact-memory.sh +81 -0
- package/scripts/hooks/session-start-memory.sh +84 -0
- package/scripts/hooks/stop-update-memory.sh +81 -0
- package/shared/agents/coder.md +122 -0
- package/shared/agents/git.md +272 -0
- package/shared/agents/resolver.md +131 -0
- package/shared/agents/reviewer.md +119 -0
- package/shared/agents/scrutinizer.md +80 -0
- package/shared/agents/shepherd.md +94 -0
- package/shared/agents/simplifier.md +62 -0
- package/shared/agents/skimmer.md +88 -0
- package/shared/agents/synthesizer.md +204 -0
- package/shared/agents/validator.md +86 -0
- package/shared/skills/accessibility/SKILL.md +229 -0
- package/shared/skills/accessibility/references/detection.md +171 -0
- package/shared/skills/accessibility/references/patterns.md +670 -0
- package/shared/skills/accessibility/references/violations.md +419 -0
- package/shared/skills/agent-teams/SKILL.md +124 -0
- package/shared/skills/agent-teams/references/cleanup.md +104 -0
- package/shared/skills/agent-teams/references/communication.md +122 -0
- package/shared/skills/agent-teams/references/team-patterns.md +217 -0
- package/shared/skills/architecture-patterns/SKILL.md +153 -0
- package/shared/skills/architecture-patterns/references/detection.md +337 -0
- package/shared/skills/architecture-patterns/references/patterns.md +873 -0
- package/shared/skills/architecture-patterns/references/violations.md +575 -0
- package/shared/skills/complexity-patterns/SKILL.md +143 -0
- package/shared/skills/complexity-patterns/references/detection.md +264 -0
- package/shared/skills/complexity-patterns/references/patterns.md +487 -0
- package/shared/skills/complexity-patterns/references/violations.md +361 -0
- package/shared/skills/consistency-patterns/SKILL.md +140 -0
- package/shared/skills/consistency-patterns/references/detection.md +207 -0
- package/shared/skills/consistency-patterns/references/patterns.md +202 -0
- package/shared/skills/consistency-patterns/references/violations.md +213 -0
- package/shared/skills/core-patterns/SKILL.md +162 -0
- package/shared/skills/core-patterns/references/checklist.md +276 -0
- package/shared/skills/core-patterns/references/code-smell-violations.md +144 -0
- package/shared/skills/core-patterns/references/detection.md +303 -0
- package/shared/skills/core-patterns/references/patterns.md +576 -0
- package/shared/skills/core-patterns/references/violations.md +369 -0
- package/shared/skills/database-patterns/SKILL.md +134 -0
- package/shared/skills/database-patterns/references/detection.md +208 -0
- package/shared/skills/database-patterns/references/patterns.md +394 -0
- package/shared/skills/database-patterns/references/violations.md +332 -0
- package/shared/skills/dependencies-patterns/SKILL.md +141 -0
- package/shared/skills/dependencies-patterns/references/detection.md +181 -0
- package/shared/skills/dependencies-patterns/references/patterns.md +225 -0
- package/shared/skills/dependencies-patterns/references/violations.md +247 -0
- package/shared/skills/docs-framework/SKILL.md +134 -0
- package/shared/skills/docs-framework/references/patterns.md +346 -0
- package/shared/skills/docs-framework/references/violations.md +221 -0
- package/shared/skills/documentation-patterns/SKILL.md +125 -0
- package/shared/skills/documentation-patterns/references/detection.md +190 -0
- package/shared/skills/documentation-patterns/references/patterns.md +189 -0
- package/shared/skills/documentation-patterns/references/violations.md +163 -0
- package/shared/skills/frontend-design/SKILL.md +254 -0
- package/shared/skills/frontend-design/references/detection.md +184 -0
- package/shared/skills/frontend-design/references/patterns.md +511 -0
- package/shared/skills/frontend-design/references/violations.md +453 -0
- package/shared/skills/git-safety/SKILL.md +122 -0
- package/shared/skills/git-safety/references/detection.md +290 -0
- package/shared/skills/git-safety/references/patterns.md +289 -0
- package/shared/skills/git-safety/references/violations.md +18 -0
- package/shared/skills/git-workflow/SKILL.md +158 -0
- package/shared/skills/git-workflow/references/commit-patterns.md +115 -0
- package/shared/skills/git-workflow/references/commit-violations.md +77 -0
- package/shared/skills/git-workflow/references/pr-patterns.md +127 -0
- package/shared/skills/git-workflow/references/pr-violations.md +96 -0
- package/shared/skills/github-patterns/SKILL.md +153 -0
- package/shared/skills/github-patterns/references/patterns.md +572 -0
- package/shared/skills/github-patterns/references/violations.md +298 -0
- package/shared/skills/implementation-patterns/SKILL.md +162 -0
- package/shared/skills/implementation-patterns/references/patterns.md +1063 -0
- package/shared/skills/implementation-patterns/references/violations.md +483 -0
- package/shared/skills/input-validation/SKILL.md +148 -0
- package/shared/skills/input-validation/references/detection.md +283 -0
- package/shared/skills/input-validation/references/patterns.md +361 -0
- package/shared/skills/input-validation/references/violations.md +224 -0
- package/shared/skills/performance-patterns/SKILL.md +154 -0
- package/shared/skills/performance-patterns/references/detection.md +351 -0
- package/shared/skills/performance-patterns/references/patterns.md +503 -0
- package/shared/skills/performance-patterns/references/violations.md +354 -0
- package/shared/skills/react/SKILL.md +276 -0
- package/shared/skills/react/references/patterns.md +1331 -0
- package/shared/skills/react/references/violations.md +565 -0
- package/shared/skills/regression-patterns/SKILL.md +146 -0
- package/shared/skills/regression-patterns/references/detection.md +237 -0
- package/shared/skills/regression-patterns/references/patterns.md +226 -0
- package/shared/skills/regression-patterns/references/violations.md +225 -0
- package/shared/skills/review-methodology/SKILL.md +119 -0
- package/shared/skills/review-methodology/references/patterns.md +186 -0
- package/shared/skills/review-methodology/references/report-template.md +142 -0
- package/shared/skills/review-methodology/references/violations.md +125 -0
- package/shared/skills/security-patterns/SKILL.md +156 -0
- package/shared/skills/security-patterns/references/detection.md +287 -0
- package/shared/skills/security-patterns/references/patterns.md +507 -0
- package/shared/skills/security-patterns/references/violations.md +237 -0
- package/shared/skills/self-review/SKILL.md +149 -0
- package/shared/skills/self-review/references/patterns.md +405 -0
- package/shared/skills/self-review/references/report-template.md +253 -0
- package/shared/skills/self-review/references/violations.md +308 -0
- package/shared/skills/test-patterns/SKILL.md +183 -0
- package/shared/skills/test-patterns/references/detection.md +149 -0
- package/shared/skills/test-patterns/references/patterns.md +220 -0
- package/shared/skills/test-patterns/references/report-template.md +108 -0
- package/shared/skills/test-patterns/references/violations.md +221 -0
- package/shared/skills/typescript/SKILL.md +176 -0
- package/shared/skills/typescript/references/patterns.md +1105 -0
- package/shared/skills/typescript/references/violations.md +433 -0
- package/src/templates/claudeignore.template +188 -0
- package/src/templates/managed-settings.json +146 -0
- package/src/templates/settings.json +59 -0
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js.map +0 -1
- package/dist/commands/init.d.ts.map +0 -1
- package/dist/commands/init.js.map +0 -1
- package/dist/commands/uninstall.d.ts.map +0 -1
- package/dist/commands/uninstall.js.map +0 -1
- package/dist/utils/git.d.ts.map +0 -1
- package/dist/utils/git.js.map +0 -1
- package/dist/utils/paths.d.ts.map +0 -1
- package/dist/utils/paths.js.map +0 -1
- package/src/claude/CLAUDE.md +0 -400
- package/src/claude/agents/devflow/audit-architecture.md +0 -132
- package/src/claude/agents/devflow/audit-complexity.md +0 -132
- package/src/claude/agents/devflow/audit-database.md +0 -132
- package/src/claude/agents/devflow/audit-dependencies.md +0 -132
- package/src/claude/agents/devflow/audit-documentation.md +0 -132
- package/src/claude/agents/devflow/audit-performance.md +0 -256
- package/src/claude/agents/devflow/audit-security.md +0 -259
- package/src/claude/agents/devflow/audit-tests.md +0 -132
- package/src/claude/agents/devflow/audit-typescript.md +0 -132
- package/src/claude/agents/devflow/brainstorm.md +0 -279
- package/src/claude/agents/devflow/catch-up.md +0 -345
- package/src/claude/agents/devflow/code-review.md +0 -307
- package/src/claude/agents/devflow/commit.md +0 -380
- package/src/claude/agents/devflow/debug.md +0 -476
- package/src/claude/agents/devflow/design.md +0 -491
- package/src/claude/agents/devflow/get-issue.md +0 -286
- package/src/claude/agents/devflow/pr-comments.md +0 -285
- package/src/claude/agents/devflow/project-state.md +0 -419
- package/src/claude/agents/devflow/pull-request.md +0 -493
- package/src/claude/agents/devflow/release.md +0 -1137
- package/src/claude/agents/devflow/tech-debt.md +0 -338
- package/src/claude/commands/devflow/brainstorm.md +0 -68
- package/src/claude/commands/devflow/breakdown.md +0 -125
- package/src/claude/commands/devflow/catch-up.md +0 -29
- package/src/claude/commands/devflow/code-review.md +0 -237
- package/src/claude/commands/devflow/commit.md +0 -17
- package/src/claude/commands/devflow/debug.md +0 -56
- package/src/claude/commands/devflow/design.md +0 -82
- package/src/claude/commands/devflow/devlog.md +0 -408
- package/src/claude/commands/devflow/get-issue.md +0 -16
- package/src/claude/commands/devflow/implement.md +0 -100
- package/src/claude/commands/devflow/plan.md +0 -223
- package/src/claude/commands/devflow/pull-request.md +0 -20
- package/src/claude/commands/devflow/release.md +0 -251
- package/src/claude/commands/devflow/resolve-comments.md +0 -583
- package/src/claude/scripts/statusline.sh +0 -47
- package/src/claude/settings.json +0 -6
- package/src/claude/skills/devflow/code-smell/SKILL.md +0 -428
- package/src/claude/skills/devflow/debug/SKILL.md +0 -119
- package/src/claude/skills/devflow/error-handling/SKILL.md +0 -597
- package/src/claude/skills/devflow/input-validation/SKILL.md +0 -514
- package/src/claude/skills/devflow/pattern-check/SKILL.md +0 -238
- package/src/claude/skills/devflow/research/SKILL.md +0 -138
- package/src/claude/skills/devflow/test-design/SKILL.md +0 -384
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
# Documentation Framework Violations
|
|
2
|
+
|
|
3
|
+
Common violations of documentation conventions with detection patterns and fixes.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Naming Convention Violations
|
|
8
|
+
|
|
9
|
+
| Violation | Bad Example | Correct Example | Fix |
|
|
10
|
+
|-----------|-------------|-----------------|-----|
|
|
11
|
+
| Wrong timestamp format | `2025-1-5` | `2025-01-05_1430` | Use `YYYY-MM-DD_HHMM` |
|
|
12
|
+
| Missing time in timestamp | `2025-01-05` | `2025-01-05_1430` | Include `_HHMM` suffix |
|
|
13
|
+
| Unsanitized branch slug | `feature/auth` | `feature-auth` | Replace `/` with `-` |
|
|
14
|
+
| Wrong case for artifacts | `Status-2025-01-05.md` | `2025-01-05_1430.md` | Use lowercase except special indexes |
|
|
15
|
+
| Wrong case for indexes | `index.md` | `INDEX.md` | UPPERCASE for special indexes |
|
|
16
|
+
| Files outside .docs | `docs/status.md` | `.docs/status/2025-01-05_1430.md` | Use `.docs/` root |
|
|
17
|
+
| Missing INDEX.md | Status files without index | Create `INDEX.md` | Every directory needs index |
|
|
18
|
+
| Special chars in slug | `oauth-2.0-auth` | `oauth-20-auth` | Strip non-alphanumeric except `-` |
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## Directory Structure Violations
|
|
23
|
+
|
|
24
|
+
### Wrong: Flat Structure
|
|
25
|
+
|
|
26
|
+
```
|
|
27
|
+
project/
|
|
28
|
+
├── status-2025-01-05.md # Wrong location
|
|
29
|
+
├── review-auth.md # Missing timestamp, wrong location
|
|
30
|
+
└── catch_up.md # Wrong case, wrong location
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
### Wrong: Non-standard Subdirectories
|
|
34
|
+
|
|
35
|
+
```
|
|
36
|
+
.docs/
|
|
37
|
+
├── logs/ # Should be status/
|
|
38
|
+
├── reports/ # Should be reviews/{branch-slug}/
|
|
39
|
+
└── notes.md # Should be in appropriate subdir
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
---
|
|
43
|
+
|
|
44
|
+
## Timestamp Violations
|
|
45
|
+
|
|
46
|
+
### Missing Leading Zeros
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
# WRONG
|
|
50
|
+
date +%Y-%m-%d_%H%M # Could produce: 2025-1-5_930
|
|
51
|
+
|
|
52
|
+
# RIGHT
|
|
53
|
+
date +%Y-%m-%d_%H%M # Always produces: 2025-01-05_0930
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
Note: `date` command handles padding, but manual timestamps often miss it.
|
|
57
|
+
|
|
58
|
+
### Wrong Separator
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
# WRONG
|
|
62
|
+
2025-01-05-1430 # Dash instead of underscore
|
|
63
|
+
2025/01/05_1430 # Slash in date
|
|
64
|
+
2025.01.05_1430 # Dot in date
|
|
65
|
+
|
|
66
|
+
# RIGHT
|
|
67
|
+
2025-01-05_1430 # Underscore separating date from time
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## Branch Slug Violations
|
|
73
|
+
|
|
74
|
+
### Unhandled Slash
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
# WRONG - produces invalid filename
|
|
78
|
+
BRANCH_SLUG=$(git branch --show-current)
|
|
79
|
+
# Result: feature/auth -> invalid path
|
|
80
|
+
|
|
81
|
+
# RIGHT - sanitizes slash
|
|
82
|
+
BRANCH_SLUG=$(git branch --show-current | sed 's/\//-/g')
|
|
83
|
+
# Result: feature/auth -> feature-auth
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
### Missing Fallback
|
|
87
|
+
|
|
88
|
+
```bash
|
|
89
|
+
# WRONG - fails in detached HEAD
|
|
90
|
+
BRANCH_SLUG=$(git branch --show-current)
|
|
91
|
+
# Result: empty string -> broken path
|
|
92
|
+
|
|
93
|
+
# RIGHT - with fallback
|
|
94
|
+
BRANCH_SLUG=$(git branch --show-current 2>/dev/null | sed 's/\//-/g' || echo "standalone")
|
|
95
|
+
# Result: (detached HEAD) -> standalone
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
---
|
|
99
|
+
|
|
100
|
+
## Topic Slug Violations
|
|
101
|
+
|
|
102
|
+
### Preserving Special Characters
|
|
103
|
+
|
|
104
|
+
```bash
|
|
105
|
+
# WRONG - special chars break filenames
|
|
106
|
+
TOPIC="Bug: Can't login (v2.0)"
|
|
107
|
+
SLUG="Bug:-Can't-login-(v2.0)"
|
|
108
|
+
|
|
109
|
+
# RIGHT - stripped and normalized
|
|
110
|
+
SLUG="bug-cant-login-v20"
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
### Not Truncating Long Names
|
|
114
|
+
|
|
115
|
+
```bash
|
|
116
|
+
# WRONG - excessively long filename
|
|
117
|
+
TOPIC="This is a very long topic name that describes the entire feature..."
|
|
118
|
+
SLUG="this-is-a-very-long-topic-name-that-describes-the-entire-feature"
|
|
119
|
+
|
|
120
|
+
# RIGHT - truncated at 50 chars
|
|
121
|
+
SLUG="this-is-a-very-long-topic-name-that-describes-the"
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
---
|
|
125
|
+
|
|
126
|
+
## File Type Violations
|
|
127
|
+
|
|
128
|
+
### Wrong Case for Special Files
|
|
129
|
+
|
|
130
|
+
```bash
|
|
131
|
+
# WRONG
|
|
132
|
+
catch_up.md # Should be CATCH_UP.md
|
|
133
|
+
index.md # Should be INDEX.md
|
|
134
|
+
knowledge_base.md # Should be KNOWLEDGE_BASE.md
|
|
135
|
+
|
|
136
|
+
# RIGHT - UPPERCASE for special indexes
|
|
137
|
+
CATCH_UP.md
|
|
138
|
+
INDEX.md
|
|
139
|
+
KNOWLEDGE_BASE.md
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
### Wrong Case for Artifacts
|
|
143
|
+
|
|
144
|
+
```bash
|
|
145
|
+
# WRONG
|
|
146
|
+
Status-2025-01-05_1430.md
|
|
147
|
+
Security-Report.md
|
|
148
|
+
|
|
149
|
+
# RIGHT - lowercase for artifacts
|
|
150
|
+
2025-01-05_1430.md
|
|
151
|
+
security-report.2025-01-05_1430.md
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
---
|
|
155
|
+
|
|
156
|
+
## Template Usage Violations
|
|
157
|
+
|
|
158
|
+
### Missing Required Sections
|
|
159
|
+
|
|
160
|
+
```markdown
|
|
161
|
+
# WRONG - missing key sections
|
|
162
|
+
|
|
163
|
+
# Status Update
|
|
164
|
+
|
|
165
|
+
Did some work today.
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
```markdown
|
|
169
|
+
# RIGHT - all required sections
|
|
170
|
+
|
|
171
|
+
# Status Update - 2025-01-05_1430
|
|
172
|
+
|
|
173
|
+
## Session Summary
|
|
174
|
+
Implemented user authentication feature.
|
|
175
|
+
|
|
176
|
+
## Branch Context
|
|
177
|
+
- **Branch**: feat/auth
|
|
178
|
+
- **Base**: main
|
|
179
|
+
- **Status**: 3 commits ahead
|
|
180
|
+
|
|
181
|
+
## Work Completed
|
|
182
|
+
- Added JWT validation middleware
|
|
183
|
+
- Created login endpoint
|
|
184
|
+
|
|
185
|
+
## Files Changed
|
|
186
|
+
- `src/auth/jwt.ts` - JWT utilities
|
|
187
|
+
- `src/routes/login.ts` - Login endpoint
|
|
188
|
+
|
|
189
|
+
## Next Steps
|
|
190
|
+
- [ ] Add refresh token support
|
|
191
|
+
- [ ] Write integration tests
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
---
|
|
195
|
+
|
|
196
|
+
## Detection Patterns
|
|
197
|
+
|
|
198
|
+
Use these patterns to find violations:
|
|
199
|
+
|
|
200
|
+
```bash
|
|
201
|
+
# Find files outside .docs/
|
|
202
|
+
find . -name "*.md" -path "*/docs/*" ! -path "*/.docs/*"
|
|
203
|
+
|
|
204
|
+
# Find wrong timestamp format (missing underscore)
|
|
205
|
+
grep -r "^\d{4}-\d{2}-\d{2}[^_]" .docs/
|
|
206
|
+
|
|
207
|
+
# Find lowercase special indexes
|
|
208
|
+
ls .docs/**/index.md .docs/**/catch_up.md 2>/dev/null
|
|
209
|
+
|
|
210
|
+
# Find uppercase artifacts (excluding special files)
|
|
211
|
+
find .docs -name "*.md" | grep -v "INDEX\|CATCH_UP\|KNOWLEDGE_BASE" | xargs -I {} basename {} | grep "^[A-Z]"
|
|
212
|
+
|
|
213
|
+
# Find unsanitized branch names in paths
|
|
214
|
+
find .docs/reviews -type d -name "*/*" 2>/dev/null
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
---
|
|
218
|
+
|
|
219
|
+
## Quick Reference
|
|
220
|
+
|
|
221
|
+
For correct patterns and templates, see [patterns.md](patterns.md).
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: documentation-patterns
|
|
3
|
+
description: Documentation analysis patterns for code review. Detects doc drift from code changes, missing documentation for public APIs, stale comments, and misleading README sections. Loaded by Reviewer agent when focus=documentation.
|
|
4
|
+
user-invocable: false
|
|
5
|
+
allowed-tools: Read, Grep, Glob
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Documentation Patterns
|
|
9
|
+
|
|
10
|
+
Domain expertise for documentation quality and alignment. Use alongside `review-methodology` for complete documentation reviews.
|
|
11
|
+
|
|
12
|
+
## Iron Law
|
|
13
|
+
|
|
14
|
+
> **DOCUMENTATION MUST MATCH REALITY**
|
|
15
|
+
>
|
|
16
|
+
> Outdated documentation is worse than no documentation. It actively misleads. Every code
|
|
17
|
+
> change that affects behavior requires a documentation check. Comments that explain "what"
|
|
18
|
+
> instead of "why" are noise. The best documentation is code that doesn't need documentation.
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## Documentation Categories
|
|
23
|
+
|
|
24
|
+
### 1. Code Documentation Issues
|
|
25
|
+
|
|
26
|
+
| Issue | Problem | Fix |
|
|
27
|
+
|-------|---------|-----|
|
|
28
|
+
| Missing docstrings | Complex functions without explanation | Add JSDoc with params, returns, throws |
|
|
29
|
+
| Outdated comments | Comments that contradict code | Update or remove |
|
|
30
|
+
| "What" comments | `// Loop through users` | Explain "why" instead |
|
|
31
|
+
| Magic algorithms | Complex logic without explanation | Document algorithm and rationale |
|
|
32
|
+
|
|
33
|
+
**Brief Example - Missing vs. Complete:**
|
|
34
|
+
```typescript
|
|
35
|
+
// BAD: No documentation on complex function
|
|
36
|
+
export function calculateProratedAmount(plan: Plan, startDate: Date, endDate: Date): number;
|
|
37
|
+
|
|
38
|
+
// GOOD: Purpose, params, returns, edge cases documented
|
|
39
|
+
/**
|
|
40
|
+
* Calculates prorated billing amount when switching plans mid-cycle.
|
|
41
|
+
* @param plan - The new plan to prorate to
|
|
42
|
+
* @returns Prorated amount in cents (can be negative for downgrades)
|
|
43
|
+
*/
|
|
44
|
+
export function calculateProratedAmount(plan: Plan, startDate: Date, endDate: Date): number;
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
### 2. API Documentation Issues
|
|
48
|
+
|
|
49
|
+
| Issue | Problem | Fix |
|
|
50
|
+
|-------|---------|-----|
|
|
51
|
+
| Missing params | Callers don't know valid values | Document all params with types and constraints |
|
|
52
|
+
| Missing returns | Return shape unknown | Describe return structure and units |
|
|
53
|
+
| Missing errors | Callers don't know what to catch | List all thrown error types |
|
|
54
|
+
|
|
55
|
+
**Brief Example - Incomplete vs. Complete:**
|
|
56
|
+
```typescript
|
|
57
|
+
// BAD: No params, no errors documented
|
|
58
|
+
/** Creates a subscription. */
|
|
59
|
+
async function createSubscription(userId: string, planId: string): Promise<Subscription>;
|
|
60
|
+
|
|
61
|
+
// GOOD: Full contract documented
|
|
62
|
+
/**
|
|
63
|
+
* @param userId - User's unique identifier
|
|
64
|
+
* @param planId - Plan ID from /plans endpoint
|
|
65
|
+
* @throws {UserNotFoundError} If userId doesn't exist
|
|
66
|
+
* @throws {PlanNotFoundError} If planId doesn't exist
|
|
67
|
+
*/
|
|
68
|
+
async function createSubscription(userId: string, planId: string): Promise<Subscription>;
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
### 3. Alignment Issues
|
|
72
|
+
|
|
73
|
+
| Issue | Problem | Fix |
|
|
74
|
+
|-------|---------|-----|
|
|
75
|
+
| Code-comment drift | Comment says 3 retries, code does 5 | Update comment or use constant |
|
|
76
|
+
| Stale README | Examples use removed functions | Keep README in sync with code |
|
|
77
|
+
| Missing changelog | Breaking changes undocumented | Document all notable changes |
|
|
78
|
+
|
|
79
|
+
**Brief Example - Drift vs. Aligned:**
|
|
80
|
+
```typescript
|
|
81
|
+
// BAD: Comment doesn't match code
|
|
82
|
+
// Retries up to 3 times
|
|
83
|
+
for (let i = 0; i < 5; i++) { /* ... */ }
|
|
84
|
+
|
|
85
|
+
// GOOD: Use constant to keep aligned
|
|
86
|
+
const MAX_RETRIES = 5;
|
|
87
|
+
for (let i = 0; i < MAX_RETRIES; i++) { /* ... */ }
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
## Extended References
|
|
93
|
+
|
|
94
|
+
For extended examples and detection commands:
|
|
95
|
+
|
|
96
|
+
- **[references/violations.md](references/violations.md)** - Extended violation examples with explanations
|
|
97
|
+
- **[references/patterns.md](references/patterns.md)** - Complete correct pattern examples
|
|
98
|
+
- **[references/detection.md](references/detection.md)** - Bash commands for finding issues
|
|
99
|
+
|
|
100
|
+
---
|
|
101
|
+
|
|
102
|
+
## Severity Guidelines
|
|
103
|
+
|
|
104
|
+
| Severity | Description | Examples |
|
|
105
|
+
|----------|-------------|----------|
|
|
106
|
+
| **CRITICAL** | Actively misleading | Comments contradict code; API docs with wrong types; README with broken steps; Changelog missing breaking changes |
|
|
107
|
+
| **HIGH** | Significant gaps | Public APIs undocumented; Complex algorithms unexplained; Errors not documented; Migration guides missing |
|
|
108
|
+
| **MEDIUM** | Moderate issues | Some params undocumented; Examples could be clearer; "What" comments instead of "why" |
|
|
109
|
+
| **LOW** | Minor improvements | Could add more examples; Formatting inconsistencies; Typos |
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
## Documentation Checklist
|
|
114
|
+
|
|
115
|
+
Before approving changes:
|
|
116
|
+
|
|
117
|
+
- [ ] All public APIs have JSDoc/docstrings
|
|
118
|
+
- [ ] Parameters and return values documented
|
|
119
|
+
- [ ] Error conditions documented
|
|
120
|
+
- [ ] Complex algorithms explained
|
|
121
|
+
- [ ] Comments explain "why", not "what"
|
|
122
|
+
- [ ] README reflects current state
|
|
123
|
+
- [ ] CHANGELOG updated for notable changes
|
|
124
|
+
- [ ] No TODO comments for completed work
|
|
125
|
+
- [ ] Examples work with current API
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
# Documentation Detection Patterns
|
|
2
|
+
|
|
3
|
+
Bash commands and search patterns for finding documentation issues.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Finding Missing Documentation
|
|
8
|
+
|
|
9
|
+
### Functions Without JSDoc
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
# Find exported functions without JSDoc comment above
|
|
13
|
+
grep -rn "export function\|export async function" --include="*.ts" | \
|
|
14
|
+
xargs -I {} sh -c 'grep -B1 "{}" | grep -v "/\*\*"'
|
|
15
|
+
|
|
16
|
+
# Find all exports, check for docs
|
|
17
|
+
grep -rn "^export " --include="*.ts" -A1 | grep -v "^--$" | grep -v "/\*\*"
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
### Classes Without Documentation
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
# Find classes without JSDoc
|
|
24
|
+
grep -rn "^export class\|^class " --include="*.ts" | \
|
|
25
|
+
while read line; do
|
|
26
|
+
file=$(echo "$line" | cut -d: -f1)
|
|
27
|
+
linenum=$(echo "$line" | cut -d: -f2)
|
|
28
|
+
prev=$((linenum - 1))
|
|
29
|
+
if ! sed -n "${prev}p" "$file" | grep -q "\*/"; then
|
|
30
|
+
echo "$line"
|
|
31
|
+
fi
|
|
32
|
+
done
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### Public Methods Without Documentation
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
# Find public methods (not private/protected) without JSDoc
|
|
39
|
+
grep -rn "^\s*public\|^\s*async\s\+[a-z]" --include="*.ts" | \
|
|
40
|
+
grep -v "private\|protected\|constructor"
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
## Finding Outdated Documentation
|
|
46
|
+
|
|
47
|
+
### TODO/FIXME Comments
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
# Find all TODO/FIXME comments
|
|
51
|
+
grep -rn "TODO\|FIXME\|HACK\|XXX" --include="*.ts" --include="*.tsx"
|
|
52
|
+
|
|
53
|
+
# Find TODOs older than 6 months (requires git)
|
|
54
|
+
git log --since="6 months ago" --all --pretty=format: --name-only --diff-filter=D | \
|
|
55
|
+
xargs -I {} grep -l "TODO\|FIXME" {} 2>/dev/null
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### Deprecated References
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
# Find @deprecated, @see, @link annotations that may be stale
|
|
62
|
+
grep -rn "@see\|@link\|@deprecated" --include="*.ts"
|
|
63
|
+
|
|
64
|
+
# Find references to potentially removed functions
|
|
65
|
+
grep -rn "@see.*#[a-zA-Z]" --include="*.ts"
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### Comment-Code Drift Indicators
|
|
69
|
+
|
|
70
|
+
```bash
|
|
71
|
+
# Find comments with numbers that might drift
|
|
72
|
+
grep -rn "// .*[0-9]\+.*times\|// .*[0-9]\+.*retries\|// .*[0-9]\+.*max" --include="*.ts"
|
|
73
|
+
|
|
74
|
+
# Find hardcoded numbers near comments
|
|
75
|
+
grep -rn "for.*[0-9]\+\|while.*[0-9]\+\|< [0-9]\+\|<= [0-9]\+" --include="*.ts" -B2
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
## Finding Documentation Smells
|
|
81
|
+
|
|
82
|
+
### Magic Numbers (Need Comments)
|
|
83
|
+
|
|
84
|
+
```bash
|
|
85
|
+
# Find magic numbers that likely need explanation
|
|
86
|
+
grep -rn "[^a-zA-Z_][0-9]\{3,\}[^a-zA-Z_0-9]" --include="*.ts" | \
|
|
87
|
+
grep -v "const\|enum\|type\|interface\|import"
|
|
88
|
+
|
|
89
|
+
# Find percentages, timeouts, limits
|
|
90
|
+
grep -rn "[0-9]\+%\|[0-9]\+ms\|[0-9]\+s\|Timeout\|Limit" --include="*.ts"
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### Comments Explaining "What"
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
# Find likely "what" comments (loop, check, get, set, etc.)
|
|
97
|
+
grep -rn "// [Ll]oop\|// [Cc]heck\|// [Gg]et\|// [Ss]et\|// [Aa]dd\|// [Rr]emove" --include="*.ts"
|
|
98
|
+
|
|
99
|
+
# Find single-word comments
|
|
100
|
+
grep -rn "// [A-Z][a-z]\+$" --include="*.ts"
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
### Empty Catch Blocks (Need Explanation)
|
|
104
|
+
|
|
105
|
+
```bash
|
|
106
|
+
# Find empty or minimal catch blocks
|
|
107
|
+
grep -rn "catch.*{" --include="*.ts" -A2 | grep -E "^\s*}\s*$|// ignore"
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
---
|
|
111
|
+
|
|
112
|
+
## README/Changelog Checks
|
|
113
|
+
|
|
114
|
+
### README Freshness
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
# Check if README mentions removed functions
|
|
118
|
+
# First, find removed exports in recent commits
|
|
119
|
+
git diff HEAD~50..HEAD --name-only -- "*.ts" | \
|
|
120
|
+
xargs -I {} git diff HEAD~50..HEAD -- {} | \
|
|
121
|
+
grep "^-export" | cut -d' ' -f3 | \
|
|
122
|
+
while read func; do
|
|
123
|
+
grep -l "$func" README.md 2>/dev/null && echo "README references removed: $func"
|
|
124
|
+
done
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
### Changelog Completeness
|
|
128
|
+
|
|
129
|
+
```bash
|
|
130
|
+
# Find recent breaking changes not in CHANGELOG
|
|
131
|
+
git log --oneline --since="1 month ago" | grep -i "breaking\|remove\|deprecate"
|
|
132
|
+
|
|
133
|
+
# Check CHANGELOG has recent version
|
|
134
|
+
head -20 CHANGELOG.md
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
### Example Code Validation
|
|
138
|
+
|
|
139
|
+
```bash
|
|
140
|
+
# Extract code blocks from README and try to validate imports
|
|
141
|
+
grep -A10 '```typescript\|```javascript' README.md | \
|
|
142
|
+
grep "import\|require" | \
|
|
143
|
+
while read line; do
|
|
144
|
+
# Check if imported module/function still exists
|
|
145
|
+
echo "Checking: $line"
|
|
146
|
+
done
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
---
|
|
150
|
+
|
|
151
|
+
## Automated Checks
|
|
152
|
+
|
|
153
|
+
### Pre-commit Hook
|
|
154
|
+
|
|
155
|
+
```bash
|
|
156
|
+
#!/bin/bash
|
|
157
|
+
# Add to .git/hooks/pre-commit
|
|
158
|
+
|
|
159
|
+
# Check for undocumented exports
|
|
160
|
+
undocumented=$(grep -rn "^export function\|^export class" --include="*.ts" | \
|
|
161
|
+
while read line; do
|
|
162
|
+
file=$(echo "$line" | cut -d: -f1)
|
|
163
|
+
linenum=$(echo "$line" | cut -d: -f2)
|
|
164
|
+
prev=$((linenum - 1))
|
|
165
|
+
if ! sed -n "${prev}p" "$file" | grep -q "\*/"; then
|
|
166
|
+
echo "$line"
|
|
167
|
+
fi
|
|
168
|
+
done)
|
|
169
|
+
|
|
170
|
+
if [ -n "$undocumented" ]; then
|
|
171
|
+
echo "ERROR: Undocumented exports found:"
|
|
172
|
+
echo "$undocumented"
|
|
173
|
+
exit 1
|
|
174
|
+
fi
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
### CI Check
|
|
178
|
+
|
|
179
|
+
```yaml
|
|
180
|
+
# Add to CI pipeline
|
|
181
|
+
documentation-check:
|
|
182
|
+
script:
|
|
183
|
+
- npm run docs:check # Runs typedoc or similar
|
|
184
|
+
- |
|
|
185
|
+
# Check for stale TODOs
|
|
186
|
+
old_todos=$(grep -rn "TODO" --include="*.ts" | wc -l)
|
|
187
|
+
if [ "$old_todos" -gt 50 ]; then
|
|
188
|
+
echo "WARNING: $old_todos TODO comments found"
|
|
189
|
+
fi
|
|
190
|
+
```
|