This directory contains low-quality intake issues that were rejected but preserved for training and improvement.
- Training data — Use rejected cases to improve the scoring algorithm
- Pattern recognition — Identify common low-quality patterns
- Contributor guidance — Generate improvement suggestions
- Avoid repetition — Prevent same mistakes in future submissions
badcase/
├── README.md # This file
├── index.json # Index of all badcases
├── {issue-number}/ # One directory per issue
│ ├── intake.md # Original intake content
│ ├── metadata.json # Scoring details
│ └── reasons.md # Rejection reasons
Issues are categorized by rejection reason:
| Category | Description | Count |
|---|---|---|
incomplete |
Missing required sections | — |
vague |
Too short or unclear | — |
test |
Test/heartbeat submissions | — |
spam |
Promotional or off-topic | — |
When an intake issue receives a score below 40, it is automatically archived here with:
intake.md— The original contentmetadata.json— Detailed scoring breakdownreasons.md— Specific rejection reasons and suggestions
Badcases are used to:
- Extract features — What makes a low-quality submission
- Adjust weights — Tune scoring dimensions
- Add rules — Create new rejection patterns
- Generate tests — Create test cases for validation
Run analysis on badcases:
python3 scripts/analyze_badcases.pyThis generates:
- Common rejection reasons
- Feature importance rankings
- Suggested weight adjustments
Each badcase includes specific suggestions:
## Suggestions for Improvement
- Add an 'Error' section with error messages
- Include code blocks with examples
- Add verification steps in '## Verification'
- Remove user-specific paths
- Add more technical detailBadcases are permanently retained as:
- Training data for algorithm improvement
- Reference examples for contributor guidance
- Historical record of submission quality
- Monthly: Review new badcases for patterns
- Quarterly: Update improvement suggestions
- Annually: Archive old badcases to cold storage