egg
|
eff9b0bcd5
|
feat: refactor dual-track architecture (Phase 1-5)
## Backend Changes
- **Service Layer Refactoring**:
- Add ProcessingOrchestrator for unified document processing
- Add PDFTableRenderer for table rendering extraction
- Add PDFFontManager for font management with CJK support
- Add MemoryPolicyEngine (73% code reduction from MemoryGuard)
- **Bug Fixes**:
- Fix Direct Track table row span calculation
- Fix OCR Track image path handling
- Add cell_boxes coordinate validation
- Filter out small decorative images
- Add covering image detection
## Frontend Changes
- **State Management**:
- Add TaskStore for centralized task state management
- Add localStorage persistence for recent tasks
- Add processing state tracking
- **Type Consolidation**:
- Merge shared types from api.ts to apiV2.ts
- Update imports in authStore, uploadStore, ResultsTable, SettingsPage
- **Page Integration**:
- Integrate TaskStore in ProcessingPage and TaskDetailPage
- Update useTaskValidation hook with cache sync
## Testing
- Direct Track: edit.pdf (3 pages, 1.281s), edit3.pdf (2 pages, 0.203s)
- Cell boxes validation: 43 valid, 0 invalid
- Table merging: 12 merged cells verified
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-12-07 07:18:27 +08:00 |
|
egg
|
1afdb822c3
|
feat: implement hybrid image extraction and memory management
Backend:
- Add hybrid image extraction for Direct track (inline image blocks)
- Add render_inline_image_regions() fallback when OCR doesn't find images
- Add check_document_for_missing_images() for detecting missing images
- Add memory management system (MemoryGuard, ModelManager, ServicePool)
- Update pdf_generator_service to handle HYBRID processing track
- Add ElementType.LOGO for logo extraction
Frontend:
- Fix PDF viewer re-rendering issues with memoization
- Add TaskNotFound component and useTaskValidation hook
- Disable StrictMode due to react-pdf incompatibility
- Fix task detail and results page loading states
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-11-26 10:56:22 +08:00 |
|