Loading...
Loading...
Validate Technical.md for vague rules, linter overlaps, and effectiveness issues
npx skill4agent add ron-myers/candid candid-validate-standards./Technical.md./.candid/Technical.md❌ No Technical.md found.
Looked in:
- ./Technical.md
- ./.candid/Technical.md
Create one with: /candid-init# JavaScript/TypeScript
ls .eslintrc* eslint.config.* .prettierrc* biome.json 2>/dev/null
# Python
ls .flake8 pyproject.toml setup.cfg .ruff.toml ruff.toml 2>/dev/null
# Go
ls .golangci.yml .golangci.yaml 2>/dev/null
# Ruby
ls .rubocop.yml 2>/dev/null-*##| Vague Term | Why It's Vague |
|---|---|
| "clean" | Subjective, no definition |
| "good" | Subjective |
| "proper" / "appropriate" | Undefined standard |
| "well-designed" / "well-structured" | No criteria |
| "readable" / "maintainable" | Without metrics |
| "best practices" | Circular reference |
| "when necessary" / "when appropriate" | Undefined trigger |
| "avoid" (alone) | No guidance on alternatives |
| "consider" | Not a requirement |
| Pattern | Issue |
|---|---|
| "small functions" | How small? |
| "short methods" | How short? |
| "limit parameters" | To how many? |
| "minimal dependencies" | What's minimal? |
| "few levels of nesting" | How few? |
| "reasonable timeout" | What's reasonable? |
❌ "Functions should be small, well-documented, and handle errors properly"
✓ Split into three rules# Technical.md Validation Report
**File:** ./Technical.md
**Rules analyzed:** [N]
**Issues found:** [M]
---
## 🔴 Critical Issues
Rules that won't be effective in reviews.
### 🌫️ Vague Language
| Line | Rule | Issue |
|------|------|-------|
| 12 | "Write clean code" | "clean" is subjective |
| 24 | "Use appropriate error handling" | "appropriate" undefined |
### 📏 Missing Thresholds
| Line | Rule | Issue |
|------|------|-------|
| 18 | "Keep functions small" | No size specified |
| 31 | "Limit nesting depth" | No depth specified |
---
## 🟡 Warnings
Rules that may have issues.
### 🔧 Linter Overlap
| Line | Rule | Linter |
|------|------|--------|
| 8 | "Use semicolons" | ESLint handles this |
| 15 | "Sort imports alphabetically" | Prettier/ESLint handles this |
### 🎯 Multiple Concerns
| Line | Rule | Suggestion |
|------|------|------------|
| 22 | "Functions should be pure, small, and documented" | Split into 3 rules |
---
## ✅ Good Rules
[List of rules that passed validation]--fix## 💡 Suggested Rewrites
### Line 12: "Write clean code"
**Original:** Write clean code
**Suggested:**
- Functions must be under 50 lines
- No single-letter variable names except loop counters
- Maximum 3 levels of nesting
### Line 18: "Keep functions small"
**Original:** Keep functions small
**Suggested:** Functions must be under 50 lines (warning at 30)
### Line 24: "Use appropriate error handling"
**Original:** Use appropriate error handling
**Suggested:**
- All async functions must have try/catch or .catch()
- Errors must be logged with context before re-throwing
- User-facing errors must not expose stack traces---
## Summary
- **[X] rules** are effective and specific ✅
- **[Y] rules** need thresholds or specifics 📏
- **[Z] rules** overlap with linters 🔧
- **[W] rules** are too vague to enforce 🌫️
### Recommended Actions
1. Remove [Z] linter-overlap rules (your linter handles these)
2. Add numbers to [Y] threshold rules
3. Rewrite [W] vague rules with specific criteria
Run `/candid-validate-standards --fix` for suggested rewrites.✅ Technical.md Validation Passed
File: ./Technical.md
Rules analyzed: 24
Issues found: 0
All rules are specific and verifiable. Nice work!⚠️ Technical.md Validation: 8 issues found
File: ./Technical.md
Rules analyzed: 24
Issues found: 8
🌫️ Vague Language (3)
Line 12: "clean code" - subjective term
Line 18: "proper error handling" - "proper" undefined
Line 31: "when necessary" - undefined trigger
📏 Missing Thresholds (2)
Line 15: "small functions" - no size specified
Line 22: "limit nesting" - no depth specified
🔧 Linter Overlap (3)
Line 5: semicolons - handled by ESLint
Line 8: quote style - handled by Prettier
Line 11: import order - handled by ESLint
Run `/candid-validate-standards --fix` for suggested rewrites.clean, good, proper, appropriate, suitable, adequate
well-designed, well-structured, well-organized, well-written
readable, maintainable, scalable, flexible, robust
best practices, industry standards, conventions
simple, straightforward, intuitive, obvious
reasonable, sensible, meaningful, significant
when necessary, when appropriate, when needed, as needed
avoid, prefer, consider, try to, should (without specifics)
minimal, few, some, many, several, varioussmall/short/brief + (function|method|class|file|module)
limit/restrict/cap + (parameters|arguments|nesting|depth|complexity)
maximum/minimum + (without number following)
too many/too few + (without threshold)
keep ... under/below + (without number)
no more than + (without number)