Skip to content

v1.7.1-beta.3 - Major Refactoring & Code Quality

Pre-release
Pre-release

Choose a tag to compare

@jwesleye jwesleye released this 05 Jan 19:44

πŸ—οΈ Major Architectural Refactoring

This beta release represents a significant code quality improvement with a 42% reduction in chat_loop.py complexity through component extraction.

✨ New Components (1,731 lines extracted)

  • ResponseStreamer (454 lines) - Agent interaction lifecycle management
  • SessionRestorer (567 lines) - Session loading and restoration
  • SessionPersister (463 lines) - Session saving and compaction
  • InputHandler (247 lines) - Multi-line input utilities with ESC/arrow key support

🎯 Key Improvements

  • Reduced chat_loop.py from 2,963 to 1,710 lines (42.3% reduction)
  • Fixed terminal double-output bug with OutputState enum pattern
  • Improved separation of concerns and testability
  • Enhanced code maintainability through focused components

πŸ”§ Code Quality

  • Applied consistent code formatting
  • Removed unused imports
  • All 510 tests passing

πŸ“¦ Components Created

Each component is now independently testable with clear responsibilities:

  • Input handling β†’ Streaming β†’ Rendering β†’ Persistence

πŸ§ͺ Testing

  • βœ“ 510 tests passing
  • βœ“ 13 tests skipped (expected)
  • βœ“ No regressions introduced

Full Changelog: v1.7.1-beta.2...v1.7.1-beta.3