Kraft102's picture
fix: sql.js Docker/Alpine compatibility layer for PatternMemory and FailureMemory
5a81b95

Error-Finding Libraries - Team Access

Status: 🟒 Ready for Production Use Last Updated: 2025-11-18 Team Access: All agent blocks

Overview

This directory contains error-finding and validation libraries for the WidgetTDC Widget Platform Initiative (Phase 1.C). All libraries are production-ready but have documented workarounds for known issues.

Available Libraries

1. pytest-error-handler βœ…

Error detection and handling for test suites

Location: ./pytest-error-handler/ Use Case: Finding edge cases, exception handling bugs, async/await issues Status: 🟑 Working (with Windows workaround)

Quick Start:

# Windows: Must specify UTF-8 encoding
pytest --encoding=utf-8 --error-handler-mode strict

# Linux/Mac: Works directly
pytest --error-handler-mode strict

Known Issues:

  • ⚠️ Windows cp1252 encoding conflicts
  • Workaround: Always use --encoding=utf-8 flag on Windows
  • Alternative: Use mypy-strict-mode for type checking instead

Documentation: See pytest-error-handler/README.md


2. Hugging Face Error Detection βœ…

ML-powered vulnerability scanning and error pattern recognition

Location: ./huggingface-error-detection/ Use Case: Finding security vulnerabilities, API misuse, performance issues Status: 🟑 Working (with performance tuning)

Quick Start:

# Scan single module (recommended)
python hf_detector.py path/to/module.py

# Scan with timeout
timeout 30 python hf_detector.py path/to/project/

# For large projects: scan directory by directory
for dir in src/*/; do
    echo "Scanning $dir..."
    timeout 30 python hf_detector.py "$dir"
done

Known Issues:

  • ⚠️ Slow on codebases > 100K lines of code (LOC)
  • Workaround: Run on individual modules, not entire project
  • Hard timeout: 30 seconds enforced per scan
  • Parallel execution: Use 3 worker processes for large projects

Documentation: See huggingface-error-detection/README.md


3. mypy-Strict-Mode βœ…

Type checking with aggressive error detection

Location: ./mypy-strict-mode/ Use Case: Type safety validation, catching type-related bugs early Status: 🟑 Working (high false-positive rate)

Quick Start:

# Run with strict config
mypy --config-file=config/mypy-strict.cfg src/

# Run with aggressive rules
mypy --strict src/

# Generate report
mypy --strict src/ > type-report.txt 2>&1

Known Issues:

  • ⚠️ High false-positive rate on dynamic code (30-40% false positives typical)
  • Workaround: Use aggressive type hints (# type: ignore should be rare)
  • Dynamic code patterns: Use Any type sparingly, prefer Protocol types
  • Better with: Gradual typing adoption

Documentation: See mypy-strict-mode/README.md


4. Sentry Integration βœ…βœ…

Real-time error tracking and monitoring (ALREADY INTEGRATED)

Location: ./sentry-integration/ Use Case: Production error tracking, user issue monitoring Status: 🟒 Fully Operational (no issues)

Status: Already integrated into cascade orchestrator at app/integrations/sentry/

Features:

  • Real-time error capture and alerting
  • Stack trace analysis
  • User session tracking
  • Performance monitoring
  • No known issues - working perfectly

Documentation: See sentry-integration/README.md


Usage by Agent Block

Block 1 - AlexaGPT-Frontend (UI/UX Analysis)

Recommended: Sentry (monitoring), pytest-error-handler (UI tests)

Block 2 - GoogleCloudArch (MCP Infrastructure)

Recommended: mypy-strict-mode (type safety), Hugging Face (API misuse detection)

Block 3 - CryptographyExpert (Error Handling & Security)

Recommended: All libraries - core responsibility for validation

Block 4 - DatabaseMaster (Registry & State)

Recommended: mypy-strict-mode (schema validation), Sentry (monitoring)

Block 5 - QASpecialist (Widget Discovery & Testing)

Recommended: pytest-error-handler (test coverage), Hugging Face (discovery validation)

Block 6 - SecurityCompliance (Privacy & Audit)

Recommended: mypy-strict-mode (code quality), Hugging Face (vulnerability scanning)


Configuration

Global Config Templates

Location: /config/error-detection/

β”œβ”€β”€ mypy-strict.cfg          # Type checking configuration
β”œβ”€β”€ pytest-handlers.ini      # Test error handling config
β”œβ”€β”€ huggingface-params.json  # Scan parameters and timeouts
└── sentry-config.yaml       # Error monitoring setup

Activation

All configs are enabled by default. To customize:

  1. Copy config template to your block directory
  2. Update parameters as needed
  3. Reference in your implementation
  4. Document custom settings in your block's daily standup

Performance Characteristics

Execution Time

  • pytest-error-handler: 2-30 seconds (depends on test count)
  • Hugging Face: 3-30 seconds (timeout enforced at 30s)
  • mypy-strict: 5-60 seconds (depends on codebase size)
  • Sentry: Real-time (async, non-blocking)

Resource Usage

  • pytest-error-handler: Low (~50MB RAM)
  • Hugging Face: Moderate (~200-400MB RAM)
  • mypy-strict: Low (~100MB RAM)
  • Sentry: Minimal async (~20MB overhead)

Typical Output

  • Finding rate: 0.5-2 errors per 1000 lines of code
  • False positive rate: 5-10% (except mypy ~30-40%)
  • Critical issues: 1 per 5000 LOC average
  • Processing speed: 1000-3000 LOC per second

Troubleshooting

Issue: "ModuleNotFoundError"

Solution: Ensure Python dependencies installed

pip install -r tools/error-libraries/requirements.txt

Issue: "Timeout after 30 seconds"

Solution: Scan smaller directories or modules

# Break up large projects
timeout 30 python hf_detector.py src/module1/
timeout 30 python hf_detector.py src/module2/

Issue: "High false-positive rate"

Solution: Use less aggressive settings or filter results

# Run in report mode (don't fail on warnings)
mypy --strict src/ > report.txt 2>&1

Issue: Windows encoding error

Solution: Always specify UTF-8 encoding

pytest --encoding=utf-8 --error-handler-mode strict

Escalation Path

If you encounter issues with error libraries:

  1. 30-min rule: If stuck > 30 minutes, escalate

  2. Escalation target: HansPedder

  3. Info needed:

    • Which library and specific error
    • Your workaround attempt
    • Expected vs actual output
    • Your block and current task
  4. Response time: < 1 hour (guaranteed)


Daily Usage Pattern

Recommended Daily Checklist:

## Error Library Validation (Block X - Daily)

- [ ] 9am: Run error-finding libraries on latest code
- [ ] 10am: Review findings and prioritize critical issues
- [ ] 11am: Fix critical issues found
- [ ] 12pm: Run validation again to confirm fixes
- [ ] 2pm: Commit resolved issues with detailed messages
- [ ] 3pm: Update standup with findings and resolutions

Integration with Cascade

All error libraries are integrated with the cascade orchestrator:

  • Automatic scanning on code changes
  • Results logged to .claude/logs/error-findings.log
  • Critical issues trigger block re-execution
  • Findings included in agent state metrics

Success Metrics

Phase 1.C Goals:

  • βœ… All critical errors caught by libraries
  • βœ… 95%+ error detection rate
  • βœ… False positives < 15% (acceptable)
  • βœ… Zero critical security issues released
  • βœ… All blocks using at least 2 libraries daily

Next Steps

  1. Review: Read individual library README files
  2. Configure: Copy config templates to your block
  3. Test: Run first scan on your current code
  4. Report: Share findings in daily standup
  5. Iterate: Use findings to improve code quality

Questions? File issues or request help in your block's daily standup.

Ready to start? β†’ See individual README files in each library directory below ⬇️