feat: optimize and enhance IssueActivity class - Issue #126
Enhanced IssueActivity dataclass with convenient methods and properties: - Added activity_type_value, activity_type_display properties - Added formatted_date, formatted_datetime properties - Added truncated_details property for display - Added contains_keyword() and has_implementation_activity() methods - Added to_dict() method for clean serialization Simplified code across the codebase: - Reduced JSON serialization from 18 lines to 1 line (94% reduction) - Reduced implementation detection from 13 lines to 3 lines (77% reduction) - Improved table formatting using property access - Fixed test inconsistencies using proper IssueActivity objects - Removed complex helper code for dict/dataclass handling Benefits: - Single source of truth for all IssueActivity operations - Consistent interface across all usage patterns - Better encapsulation and maintainability - Enhanced code readability and reliability - All tests passing (1329/1329) 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -132,8 +132,7 @@ class IssueWrapUpService:
|
||||
)
|
||||
|
||||
has_implementation = any(
|
||||
'implement' in (activity.activity_type.value if activity.activity_type else '').lower() or
|
||||
'code' in (activity.activity_details or '').lower()
|
||||
activity.has_implementation_activity()
|
||||
for activity in activities
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user