feat: Implement DeepWiki documentation generation tools

- Added `__init__.py` in `codexlens/tools` for documentation generation.
- Created `deepwiki_generator.py` to handle symbol extraction and markdown generation.
- Introduced `MockMarkdownGenerator` for testing purposes.
- Implemented `DeepWikiGenerator` class for managing documentation generation and file processing.
- Added unit tests for `DeepWikiStore` to ensure proper functionality and error handling.
- Created tests for DeepWiki TypeScript types matching.
This commit is contained in:
catlog22
2026-03-05 18:30:56 +08:00
parent 0bfae3fd1a
commit fb4f6e718e
62 changed files with 7500 additions and 68 deletions

View File

@@ -0,0 +1,17 @@
# Common UX Pitfalls
## Interaction Issues
- Buttons without loading states during async operations
- Missing error handling with user feedback
- State changes without visual updates
- Double-click vulnerabilities
## State Issues
- Stale data after mutations
- Race conditions in async operations
- Missing rollback for failed optimistic updates
## Feedback Issues
- Silent failures without user notification
- Generic error messages without actionable guidance
- Missing confirmation for destructive actions

View File

@@ -0,0 +1,14 @@
# State Management Patterns
## Local Component State
- Use for UI-only state (open/closed, hover, focus)
- Keep close to where it's used
## Shared State
- Lift state to lowest common ancestor
- Use context or state management library for deep trees
## Async State
- Track loading, error, and success states
- Handle race conditions with request cancellation
- Implement retry logic with exponential backoff

View File

@@ -0,0 +1,16 @@
# UI Feedback Patterns
## Loading States
- Use skeleton loaders for content areas
- Disable buttons during async operations
- Show progress indicators for long operations
## Error Handling
- Display errors inline when possible
- Provide actionable error messages
- Allow retry for transient failures
## Success Feedback
- Toast notifications for non-critical successes
- Inline confirmation for critical actions
- Auto-dismiss non-critical notifications

View File

@@ -0,0 +1,16 @@
# General UX Principles
## Feedback & Responsiveness
- Every user action should have immediate visual feedback
- Loading states must be shown for operations >200ms
- Success/error states should be clearly communicated
## State Management
- UI state should reflect the underlying data state
- Optimistic updates should have rollback mechanisms
- State changes should be atomic and predictable
## Accessibility
- Interactive elements must be keyboard accessible
- Color should not be the only indicator of state
- Focus states must be visible