- Restructure SAM rough mask workflow for sidebar preview
- Add playwright tests for SAM workflow
- Add ORA files for forest path and graveyard rooms
- Update playwright config with trace on retry
- Add roughMaskThumbnailScale state with $watch to sync with main scale slider
- Update sidebar thumbnail to use transform:scale() for consistent zoom between views
- Modify openRoughMaskInNewWindow() to create HTML page with matching scale
- Add denoise strength slider (10-100%) visible only when rough mask exists
- Backend already supports denoise_strength parameter in prepare_mask_workflow_with_start()
- Rough mask auto-clears after successful extraction
- Add Playwright tests for UI changes and API parameter acceptance
- Add count selector (1-10) for generating multiple mask variations
- Each mask gets a unique random seed
- Add left/right arrow navigation in mask preview modal when multiple masks exist
- Batch storage system for tracking multiple concurrent extractions
- Webhook handler now uses batch_id:mask_index for routing responses
- Polygon points are now draggable for editing after drawing
- Allow points to be placed slightly outside image bounds (-0.1 to 1.1)
- Save button shows notification with file path
- Open in Krita shows modal with copyable path instead of blocked file:// URL
- Added instructions for dragging points after drawing
- Layer visibility toggles now show/hide individual layer images on canvas
- Added tint red checkbox per layer for manual mask verification
- Mask preview modal uses CSS mask-image to show red overlay only on selected areas (white pixels become semi-transparent red, black pixels remain transparent)
- Added spinner icons to Open and Extract Mask buttons during long operations
- Added console.log statements for debugging frontend interactions
- Fixed canvas setup with proper logging
- Added logging to polygon drawing and mask extraction
- Mask extraction now properly loads and passes base image to ComfyUI
- Polygon overlay support when using polygon hint
- Added ora_editor __init__.py for proper package imports
- Updated README with debugging instructions and improved documentation
- Added console.log statements for debugging throughout the app
- Fixed canvas setup with proper logging
- Added logging to startDrawing and addPolygonPoint
- Polygon canvas click handler improved
- Backend logging added to mask extraction, polygon storage
- Mask extraction now properly loads and passes image to ComfyUI
- Polygon overlay support for ComfyUI workflow
- Added logging throughout the application
- Updated mask extraction to load and pass base image to ComfyUI
- Added polygon overlay support for mask extraction
- Added urllib.parse import for URL encoding
- Better error handling and status reporting
- oraEditor function now defined in <head> before x-data directive
- Added <body> tag with x-data attribute
- Added canvas click handler using () to access Alpine instance
- Added id to imageContainer for canvas interaction
- All tests passing (16/16)
- Restored x-data, x-model, x-show, x-for, x-if directives
- All methods defined in Alpine data component
- Canvas click handler properly uses () to access Alpine store
- Open button now works with @click handler
- Created 45 new room scenes from specs
- Added proper .tscn and .gd files for each room
- Wired up transitions based on spec exit information
- Connected to existing rooms (017, 022, 028, 030, 031) where applicable
- Rooms include: dwarfs areas, caves, swamp, castle, and more
- Added kq4_051_ogres_closet scene
- East exit to room 049 (Ogre's Cottage) - bidirectional connection
- Updated room 049 to fix transition to room 051
- Added kq4_050_ogress_kitchen scene
- West exit to room 049 (Ogre's Cottage) - bidirectional connection
- Updated room 049 to fix transition to room 050
- Added kq4_044_inside_whale scene with exit to room 031
- Updated room 031 to add transition to room 044 (bidirectional connection)
- Both transitions validated with exit checker
- Added kq4_043_desert_island scene with 4 exits (north, east, south, west) to room 031
- Updated room 031 to add transition to room 043 (bidirectional connection)
- All 4 exits from room 043 validated with exit checker