docs: update VERSION and SESSION_STATE for v1.14.5 - Original Image Storage
This commit is contained in:
@@ -1,9 +1,45 @@
|
||||
# CURRENT AI WORKING SESSION — HANDOVER
|
||||
|
||||
**Active AI:** Claude Haiku 4.5
|
||||
**Last Updated:** 2026-04-22 (Session 30 - Image Pipeline Finalization)
|
||||
**Current Version:** v1.14.4 (Image pipeline complete: rotation applied, URLs fixed, preview stable)
|
||||
**Branch:** dev (Phase 3 production-ready with full image pipeline)
|
||||
**Last Updated:** 2026-04-22 (Session 31 - Original Image Storage for Debugging)
|
||||
**Current Version:** v1.14.5 (Added original EXIF-stripped image storage for debug panel)
|
||||
**Branch:** dev (Phase 3 production-ready with debug image storage)
|
||||
|
||||
---
|
||||
|
||||
## SESSION 31 SUMMARY — Original Image Storage for Debug Panel
|
||||
|
||||
### Problem Identified
|
||||
The debug panel was showing the processed (cropped + rotated) image, not the original. This made it impossible to verify that crop bounds and rotation values were correct, since the visualization was of the final result, not the raw input.
|
||||
|
||||
### Solution Implemented
|
||||
Store the original EXIF-stripped image (before crop/rotation) separately for debugging purposes, accessible from the debug panel.
|
||||
|
||||
### Changes Made
|
||||
|
||||
**v1.14.5 (Debug Image Storage)**
|
||||
|
||||
1. **backend/routers/items.py - `_auto_save_photo_from_extraction()`**:
|
||||
- Before calling `processor.process_photo()`, save the EXIF-stripped `image_bytes` with variant `_debug_original`
|
||||
- Store `original_debug_path` in `db_item.labels_data.image_processing.original_photo_path`
|
||||
- Also store `crop_bounds` and `rotation_degrees` in labels_data for reference
|
||||
|
||||
2. **frontend/components/DebugRotationPanel.tsx**:
|
||||
- Add `originalPhotoPath` prop to component interface
|
||||
- Use `displayImageUrl = originalPhotoPath || imageUrl` to prefer original if available
|
||||
- Update useEffect dependency to use `displayImageUrl`
|
||||
|
||||
3. **frontend/components/ItemDetailModal.tsx**:
|
||||
- Extract `original_photo_path` from `labels_data.image_processing`
|
||||
- Build full URL using `buildPhotoUrl()` helper
|
||||
- Pass `originalPhotoPath` prop to DebugRotationPanel
|
||||
|
||||
### Testing Performed
|
||||
- Frontend TypeScript build: ✅ No errors
|
||||
- Database structure: ✅ Using existing `labels_data` JSON field (no migrations needed)
|
||||
- Component integration: ✅ Props correctly passed through modal → debug panel
|
||||
|
||||
**Status:** ✅ **READY FOR TESTING** — Original images now stored and accessible in debug panel
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user