You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Fix critical RBS runtime checking and validation issues
CRITICAL FIXES:
1. Runtime Type Checking Now Actually Works
- Changed from opt-in (never enabled) to enabled-by-default with opt-out
- Was: ENV["ENABLE_RBS_RUNTIME_CHECKING"] (never set anywhere)
- Now: Enabled by default, disable with DISABLE_RBS_RUNTIME_CHECKING=true
- This activates the third pillar of type safety (static, steep, runtime)
2. Improved Error Handling in RBS Validation
- Replace fragile stderr redirection with Open3.capture3
- Properly separates validation errors from warnings
- No longer hides real issues with 2>/dev/null
- Shows both stdout and stderr when validation fails
3. Remove Redundant bundle exec
- Removed unnecessary 'bundle exec' from rake tasks
- When running 'bundle exec rake', already in bundle context
- Reduces overhead and simplifies implementation
- Uses direct 'rbs' and 'steep' commands
DOCUMENTATION:
4. Comprehensive RBS Documentation in CLAUDE.md
- Added "RBS Type Checking" section with quick start
- Documents runtime checking behavior (enabled by default)
- Explains how to disable for faster test runs
- Step-by-step guide for adding new type signatures
- Lists files currently type-checked
- Pro package validation instructions
These fixes ensure runtime type checking actually runs in tests, providing
comprehensive type safety validation that catches errors static analysis misses.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <[email protected]>
0 commit comments