Commit Graph
324 Commits
Author SHA1 Message Date
ilia 2dab2aa7f9 Merge pull request 'PunimTag Web Application - Major Feature Release' (#1) from dev into master
CI / skip-ci-check (push) Successful in 6s
CI / docker-ci (push) Successful in 9s
CI / secret-scan (push) Successful in 12s
Reviewed-on: #1
2026-07-09 12:20:31 -05:00
ilia d69ad1576d Merge pull request 'chore: merge master into dev (sync homelab CI bootstrap)' (#50) from chore/sync-ci-from-master into dev
CI / skip-ci-check (pull_request) Successful in 10s
CI / docker-ci (pull_request) Successful in 11s
CI / secret-scan (pull_request) Successful in 16s
2026-05-29 21:52:46 -05:00
ilia f0529e8274 chore: merge master into dev (sync homelab CI bootstrap)
CI / skip-ci-check (pull_request) Successful in 9s
CI / docker-ci (pull_request) Successful in 11s
CI / secret-scan (pull_request) Successful in 15s
Resolve add/add conflicts in CI files by adopting the homelab Gitea
Actions workflow from master (#48), replacing the legacy dev ci.yml.
2026-05-29 22:52:19 -04:00
ilia 5144d9a3b0 Merge pull request 'Add homelab Gitea Actions CI (generic)' (#48) from ci/bootstrap-gitea-actions-docker into master
CI / skip-ci-check (push) Successful in 11s
CI / docker-ci (push) Successful in 11s
CI / secret-scan (push) Successful in 16s
CI / skip-ci-check (pull_request) Successful in 10s
CI / docker-ci (pull_request) Successful in 11s
CI / secret-scan (pull_request) Successful in 16s
2026-05-29 21:46:27 -05:00
ilia 2db7ee88c9 ci: sync gitleaks allowlist
CI / skip-ci-check (pull_request) Successful in 9s
CI / docker-ci (pull_request) Successful in 11s
CI / secret-scan (pull_request) Successful in 19s
2026-05-29 21:31:59 -05:00
ilia c0b09b1d6b ci: refresh workflow (re-run pipelines) 2026-05-29 21:31:56 -05:00
ilia 2658bc7b07 ci: sync gitleaks allowlist
CI / skip-ci-check (pull_request) Successful in 10s
CI / docker-ci (pull_request) Successful in 12s
CI / secret-scan (pull_request) Successful in 18s
2026-05-29 21:28:30 -05:00
ilia 7279c57955 ci: refresh workflow (re-run pipelines) 2026-05-29 21:28:28 -05:00
ilia e2f980ad1a ci: sync gitleaks allowlist
CI / skip-ci-check (pull_request) Successful in 12s
CI / docker-ci (pull_request) Successful in 14s
CI / secret-scan (pull_request) Successful in 18s
2026-05-29 21:24:22 -05:00
ilia 60c57bc351 ci: refresh workflow (re-run pipelines) 2026-05-29 21:24:13 -05:00
ilia ef5d4df233 ci: add homelab gitleaks allowlist
CI / skip-ci-check (pull_request) Successful in 10s
CI / docker-ci (pull_request) Successful in 11s
CI / secret-scan (pull_request) Successful in 21s
2026-05-29 21:19:59 -05:00
ilia d876a67244 ci: refresh workflow (re-run pipelines) 2026-05-29 21:19:56 -05:00
ilia 4fd6c4f24c ci: refresh workflow (re-run pipelines)
CI / skip-ci-check (pull_request) Successful in 9s
CI / docker-ci (pull_request) Successful in 11s
CI / secret-scan (pull_request) Failing after 27s
2026-05-29 20:31:01 -05:00
ilia eaa03d115b ci: refresh workflow (re-run pipelines)
CI / skip-ci-check (pull_request) Successful in 10s
CI / docker-ci (pull_request) Successful in 12s
CI / secret-scan (pull_request) Failing after 31s
2026-05-29 20:28:42 -05:00
ilia e6bd689a22 ci: sync workflow template
CI / skip-ci-check (pull_request) Successful in 9s
CI / docker-ci (pull_request) Successful in 11s
CI / secret-scan (pull_request) Failing after 36s
2026-05-29 20:26:18 -05:00
ilia d21741c5b0 ci: refresh workflow (re-run pipelines)
CI / skip-ci-check (pull_request) Successful in 10s
CI / docker-ci (pull_request) Successful in 11s
CI / secret-scan (pull_request) Failing after 25s
2026-05-29 20:20:47 -05:00
ilia 9cfe05bd96 ci: sync workflow template (node container + host fixes)
CI / skip-ci-check (pull_request) Successful in 9s
CI / docker-ci (pull_request) Successful in 14s
CI / secret-scan (pull_request) Failing after 25s
2026-05-29 20:15:07 -05:00
ilia c6fe7cbd3a ci: add homelab Gitea Actions workflow (ci-docker.yml)
CI / skip-ci-check (pull_request) Failing after 8s
CI / docker-ci (pull_request) Has been skipped
CI / secret-scan (pull_request) Has been skipped
2026-05-29 16:15:08 -05:00
tanyar09 ccfd83e0f1 Merge pull request 'feat: web video transcoding, admin playback, and viewer fixes' (#41) from feat/web-playback-viewer-admin into dev
Reviewed-on: #41
2026-03-25 14:47:08 -05:00
Tanya ff47c87e41 feat: web video transcoding, admin playback, and viewer fixes
CI / skip-ci-check (pull_request) Successful in 1m4s
CI / lint-and-type-check (pull_request) Has been cancelled
CI / python-lint (pull_request) Has been cancelled
CI / test-backend (pull_request) Has been cancelled
CI / build (pull_request) Has been cancelled
CI / secret-scanning (pull_request) Has been cancelled
CI / dependency-scan (pull_request) Has been cancelled
CI / sast-scan (pull_request) Has been cancelled
CI / workflow-summary (pull_request) Has been cancelled
Add on-demand H.264/AAC web playback (RQ, ffmpeg) with API routes and
Next.js proxies; extend admin UI with WebPlaybackVideo and shared hooks.
Store transcode cache beside pending-photos (WEB_VIDEO_CACHE_DIR / UPLOAD_DIR)
and ignore data/web_videos. Centralize FastAPI URL helpers, optional Vite
and Next base paths for subfolder deploy, and fix modal reopen by using
router.replace when closing the home photo viewer. Include migration,
install scripts, deployment doc updates, and CI admin build env tweak.

Made-with: Cursor
2026-03-25 15:33:05 -04:00
tanyar09 c316da02a4 Merge pull request 'feat: implement email sending functionality with SMTP and Resend fallback' (#40) from feature/viewer-smtp-primary-resend-fallback into dev
Reviewed-on: #40
2026-03-23 14:30:43 -05:00
tanyar09 fc1914fe7a Merge pull request 'docs: add appendix for permanent path redirect fixes in cPanel deployment guide' (#39) from fix/hide-delete-for-inactive-users into dev
Reviewed-on: #39
2026-03-23 14:27:32 -05:00
Tanya a5838a8373 feat: implement email sending functionality with SMTP and Resend fallback
CI / skip-ci-check (pull_request) Successful in 29s
CI / lint-and-type-check (pull_request) Has been cancelled
CI / python-lint (pull_request) Has been cancelled
CI / test-backend (pull_request) Has been cancelled
CI / build (pull_request) Has been cancelled
CI / secret-scanning (pull_request) Has been cancelled
CI / dependency-scan (pull_request) Has been cancelled
CI / sast-scan (pull_request) Has been cancelled
CI / workflow-summary (pull_request) Has been cancelled
- Added support for sending emails using SMTP configuration or Resend API as a fallback.
- Updated environment variables in .env_example for SMTP settings.
- Enhanced email confirmation process with improved error handling and fallback logic.
- Introduced a test script to validate email sending configuration and functionality.
2026-03-23 15:23:55 -04:00
Tanya bda13fde67 docs: add appendix for permanent path redirect fixes in cPanel deployment guide
CI / skip-ci-check (pull_request) Successful in 31s
CI / lint-and-type-check (pull_request) Has been cancelled
CI / python-lint (pull_request) Has been cancelled
CI / test-backend (pull_request) Has been cancelled
CI / build (pull_request) Has been cancelled
CI / secret-scanning (pull_request) Has been cancelled
CI / dependency-scan (pull_request) Has been cancelled
CI / sast-scan (pull_request) Has been cancelled
CI / workflow-summary (pull_request) Has been cancelled
- Document long-term solutions for handling path prefixes in PunimTag deployments.
- Outline steps to configure viewer base path, align environment variables, and enforce consistent URL patterns.
- Include validation checklist and recommended deployment policy to ensure stable setups.
2026-03-23 14:11:44 -04:00
tanyar09 064daf47f7 documentation 2026-03-20 15:46:00 +00:00
tanyar09 5d5e828980 Merge pull request 'fix: remove unused isPlaying state variable in VideoPlayer' (#38) from fix/video-player-typescript-error into dev
CI / skip-ci-check (pull_request) Has been cancelled
CI / lint-and-type-check (pull_request) Has been cancelled
CI / python-lint (pull_request) Has been cancelled
CI / test-backend (pull_request) Has been cancelled
CI / build (pull_request) Has been cancelled
CI / secret-scanning (pull_request) Has been cancelled
CI / dependency-scan (pull_request) Has been cancelled
CI / sast-scan (pull_request) Has been cancelled
CI / workflow-summary (pull_request) Has been cancelled
Reviewed-on: #38
2026-02-11 12:28:31 -05:00
Tanya fae8afaf84 fix: remove unused isPlaying state variable in VideoPlayer
CI / skip-ci-check (pull_request) Successful in 17s
CI / lint-and-type-check (pull_request) Successful in 1m1s
CI / python-lint (pull_request) Successful in 41s
CI / test-backend (pull_request) Successful in 2m45s
CI / build (pull_request) Successful in 3m31s
CI / secret-scanning (pull_request) Successful in 25s
CI / dependency-scan (pull_request) Successful in 21s
CI / sast-scan (pull_request) Successful in 1m38s
CI / workflow-summary (pull_request) Successful in 16s
- Remove unused isPlaying state that was causing TypeScript error TS6133
- Component only needs showPlayButton to control play button overlay visibility
- Fixes build error: 'isPlaying' is declared but its value is never read
2026-02-11 12:26:35 -05:00
tanyar09 2aac3befd4 Merge pull request 'feature/video-player-play-button' (#37) from feature/video-player-play-button into dev
CI / skip-ci-check (pull_request) Has been cancelled
CI / lint-and-type-check (pull_request) Has been cancelled
CI / python-lint (pull_request) Has been cancelled
CI / test-backend (pull_request) Has been cancelled
CI / build (pull_request) Has been cancelled
CI / secret-scanning (pull_request) Has been cancelled
CI / dependency-scan (pull_request) Has been cancelled
CI / sast-scan (pull_request) Has been cancelled
CI / workflow-summary (pull_request) Has been cancelled
Reviewed-on: #37
2026-02-11 12:18:35 -05:00
Tanya 726b36db80 feat: add informational message for bulk auto-match operation
CI / skip-ci-check (pull_request) Successful in 17s
CI / lint-and-type-check (pull_request) Successful in 1m1s
CI / python-lint (pull_request) Successful in 44s
CI / test-backend (pull_request) Successful in 2m51s
CI / build (pull_request) Failing after 3m29s
CI / secret-scanning (pull_request) Successful in 24s
CI / dependency-scan (pull_request) Successful in 21s
CI / sast-scan (pull_request) Successful in 1m37s
CI / workflow-summary (pull_request) Failing after 15s
- Show confirmation dialog before starting auto-match operation
- Inform users that it's a bulk operation processing entire photo library
- Warn that some matches may not be 100% accurate
- Recommend reviewing results after completion
2026-02-11 12:15:44 -05:00
Tanya 4d8158ab94 feat: add Play button overlay for videos in search results
- Create VideoPlayer component with centered Play button overlay
- Add /video/:id route to display videos with Play button
- Update Search page to open videos in VideoPlayer page instead of direct URL
- Play button shows when video is paused/stopped and hides when playing
- Button includes hover effects and doesn't interfere with native controls
2026-02-11 12:12:34 -05:00
tanyar09 7d415c56fe Merge pull request 'feat: enhance tag addition functionality in PhotoTagDialog' (#36) from tags-tsx-updates into dev
CI / skip-ci-check (pull_request) Has been cancelled
CI / lint-and-type-check (pull_request) Has been cancelled
CI / python-lint (pull_request) Has been cancelled
CI / test-backend (pull_request) Has been cancelled
CI / build (pull_request) Has been cancelled
CI / secret-scanning (pull_request) Has been cancelled
CI / dependency-scan (pull_request) Has been cancelled
CI / sast-scan (pull_request) Has been cancelled
CI / workflow-summary (pull_request) Has been cancelled
Reviewed-on: #36
2026-02-10 13:55:40 -05:00
tanyar09 8992c07c8e feat: enhance tag addition functionality in PhotoTagDialog
CI / skip-ci-check (pull_request) Successful in 16s
CI / lint-and-type-check (pull_request) Successful in 1m0s
CI / python-lint (pull_request) Successful in 40s
CI / test-backend (pull_request) Successful in 3m42s
CI / build (pull_request) Successful in 3m31s
CI / secret-scanning (pull_request) Successful in 23s
CI / dependency-scan (pull_request) Successful in 21s
CI / sast-scan (pull_request) Successful in 1m35s
CI / workflow-summary (pull_request) Successful in 14s
- Introduced a new input field for entering new tag names alongside selecting existing tags.
- Updated the handleAddTag function to support adding multiple tags at once.
- Improved user experience with alerts for empty tag submissions and success feedback.
- Enhanced UI with clear labeling and instructions for tag management.
2026-02-10 18:54:26 +00:00
tanyar09 c5c3059409 Merge pull request 'fix/auto-match-stricter-filtering' (#35) from fix/auto-match-stricter-filtering into dev
CI / skip-ci-check (pull_request) Has been cancelled
CI / lint-and-type-check (pull_request) Has been cancelled
CI / python-lint (pull_request) Has been cancelled
CI / test-backend (pull_request) Has been cancelled
CI / build (pull_request) Has been cancelled
CI / secret-scanning (pull_request) Has been cancelled
CI / dependency-scan (pull_request) Has been cancelled
CI / sast-scan (pull_request) Has been cancelled
CI / workflow-summary (pull_request) Has been cancelled
Reviewed-on: #35
2026-02-10 13:29:26 -05:00
Tanya cc74599959 refactor: simplify developer mode to use environment variable
CI / skip-ci-check (pull_request) Successful in 16s
CI / lint-and-type-check (pull_request) Successful in 59s
CI / python-lint (pull_request) Successful in 40s
CI / test-backend (pull_request) Successful in 3m57s
CI / build (pull_request) Successful in 3m36s
CI / secret-scanning (pull_request) Successful in 25s
CI / dependency-scan (pull_request) Successful in 21s
CI / sast-scan (pull_request) Successful in 1m40s
CI / workflow-summary (pull_request) Successful in 14s
- Replace localStorage-based dev mode with VITE_DEVELOPER_MODE env var
- Remove setDeveloperMode function and localStorage logic
- Update Settings page to show status instead of toggle
- Add VITE_DEVELOPER_MODE to vite-env.d.ts type definitions
- Update .env_example with developer mode documentation

Developer mode is now controlled by setting VITE_DEVELOPER_MODE=true
in admin-frontend/.env file (requires rebuild to take effect)
2026-02-10 13:26:13 -05:00
Tanya a6ba78cd54 feat: add debug mode, distance-based thresholds, and improve pose detection
- Add debug mode support for encoding statistics in API responses
  - Debug info includes encoding length, min/max/mean/std, and first 10 values
  - Frontend logs encoding stats to browser console when debug enabled
  - Identify page enables debug mode by default

- Implement distance-based confidence thresholds for stricter matching
  - Borderline distances require higher confidence (70-95% vs 50%)
  - Applied when use_distance_based_thresholds=True (auto-match)
  - Reduces false positives for borderline matches

- Dual tolerance system for auto-match
  - Default tolerance 0.6 for regular browsing (more lenient)
  - Run auto-match button uses 0.5 tolerance with distance-based thresholds (stricter)
  - Auto-accept threshold updated to 85% (from 70%)

- Enhance pose detection with single-eye detection
  - Profile threshold reduced from 30° to 15° (stricter)
  - Detect single-eye visibility for extreme profile views
  - Infer profile direction from landmark visibility
  - Improved face width threshold (20px vs 10px)

- Clean up debug code
  - Remove test photo UUID checks from production code
  - Remove debug print statements
  - Replace print statements with proper logging
2026-02-10 13:20:07 -05:00
Tanya 6b6b1449b2 Modified files:
backend/config.py - Added MIN_AUTO_MATCH_FACE_SIZE_RATIO = 0.005
backend/services/face_service.py - Multiple changes:
Added load_face_encoding() function (supports float32 and float64)
Added _calculate_face_size_ratio() function
Updated find_similar_faces() to filter small faces
Updated find_auto_match_matches() to exclude small reference faces
Fixed reference face quality calculation (use actual quality, not hardcoded 0.5)
Fixed duplicate detection (exclude faces from same photo)
Updated confidence threshold from 40% to 50%
Updated confidence calibration (moderate version)
backend/api/faces.py - Updated default tolerance to 0.5 for auto-match endpoints
backend/schemas/faces.py - Updated default tolerance to 0.5
admin-frontend/src/pages/AutoMatch.tsx - Updated default tolerance to 0.5
admin-frontend/src/api/faces.ts - Added tolerance parameter support
2026-02-06 14:16:11 -05:00
tanyar09 863b6188b4 Merge pull request 'feature/extend-people-search-and-fix-port-binding' (#34) from feature/extend-people-search-and-fix-port-binding into dev
CI / skip-ci-check (pull_request) Successful in 8s
CI / lint-and-type-check (pull_request) Successful in 52s
CI / python-lint (pull_request) Successful in 35s
CI / test-backend (pull_request) Successful in 2m30s
CI / build (pull_request) Successful in 3m25s
CI / secret-scanning (pull_request) Successful in 15s
CI / dependency-scan (pull_request) Successful in 13s
CI / sast-scan (pull_request) Successful in 1m30s
CI / workflow-summary (pull_request) Successful in 6s
Reviewed-on: #34
2026-02-05 12:51:36 -05:00
tanyar09 d0dd5c82ea feat: add click logging for admin frontend
CI / skip-ci-check (pull_request) Successful in 8s
CI / lint-and-type-check (pull_request) Successful in 54s
CI / test-backend (pull_request) Has been cancelled
CI / build (pull_request) Has been cancelled
CI / secret-scanning (pull_request) Has been cancelled
CI / dependency-scan (pull_request) Has been cancelled
CI / sast-scan (pull_request) Has been cancelled
CI / workflow-summary (pull_request) Has been cancelled
CI / python-lint (pull_request) Has been cancelled
- Add backend click logging utility with file rotation and retention
- Add POST /api/v1/log/click endpoint for logging click events
- Add frontend click logger service with batching and context extraction
- Add global click handler in App.tsx for authenticated users
- Add log cleanup script for old log files
- Update QUICK_LOG_REFERENCE.md with click log documentation

Logs are written to /opt/punimtag/logs/admin-clicks.log with:
- Auto-rotation at 10MB (keeps 5 backups)
- 30-day retention
- Format: timestamp | username | page | element_type | element_id | element_text | context
2026-02-05 17:50:15 +00:00
tanyar09 b0c9ad8d5d feat: enhance tag management in Tags page
CI / skip-ci-check (pull_request) Successful in 10s
CI / lint-and-type-check (pull_request) Successful in 56s
CI / python-lint (pull_request) Successful in 35s
CI / test-backend (pull_request) Successful in 3m44s
CI / build (pull_request) Successful in 3m26s
CI / secret-scanning (pull_request) Successful in 15s
CI / dependency-scan (pull_request) Successful in 16s
CI / sast-scan (pull_request) Successful in 1m29s
CI / workflow-summary (pull_request) Successful in 6s
- Added functionality to create new tags and update existing tags in bulk.
- Implemented local state management for tags to improve user experience.
- Updated UI to allow users to enter new tag names alongside selecting existing ones.
- Ensured tags are reloaded in the parent component after creation for synchronization.
2026-02-05 17:27:41 +00:00
tanyar09 09ee8712aa feat: extend people search to first/middle/last/maiden names and fix port binding issue
- Backend: Updated list_people_with_faces to search by first_name, middle_name, last_name, and maiden_name
- Frontend: Updated Modify page search UI and API client to support extended search
- Frontend: Updated Help page documentation for new search capabilities
- Infrastructure: Added start-api.sh wrapper script to prevent port 8000 binding conflicts
- Infrastructure: Updated PM2 config with improved kill_timeout and restart_delay settings
2026-02-05 16:57:47 +00:00
tanyar09 041d3728a1 Merge pull request 'feat: Enhance logging and error handling for job streaming and photo uploads' (#29) from feature/log-management-and-updates into dev
CI / skip-ci-check (pull_request) Has been cancelled
CI / lint-and-type-check (pull_request) Has been cancelled
CI / python-lint (pull_request) Has been cancelled
CI / test-backend (pull_request) Has been cancelled
CI / build (pull_request) Has been cancelled
CI / secret-scanning (pull_request) Has been cancelled
CI / dependency-scan (pull_request) Has been cancelled
CI / sast-scan (pull_request) Has been cancelled
CI / workflow-summary (pull_request) Has been cancelled
Reviewed-on: #29
2026-02-04 14:32:14 -05:00
tanyar09 7a981b069a feat: Enhance logging and error handling for job streaming and photo uploads
CI / skip-ci-check (pull_request) Successful in 8s
CI / lint-and-type-check (pull_request) Successful in 1m12s
CI / python-lint (pull_request) Successful in 36s
CI / test-backend (pull_request) Successful in 3m47s
CI / build (pull_request) Successful in 3m28s
CI / secret-scanning (pull_request) Successful in 14s
CI / dependency-scan (pull_request) Successful in 13s
CI / sast-scan (pull_request) Successful in 1m33s
CI / workflow-summary (pull_request) Successful in 5s
- Added new logging scripts for quick access to service logs and troubleshooting.
- Updated job streaming API to support authentication via query parameters for EventSource.
- Improved photo upload process to capture and validate EXIF dates and original modification times.
- Enhanced error handling for file uploads and EXIF extraction failures.
- Introduced new configuration options in ecosystem.config.js to prevent infinite crash loops.
2026-02-04 19:30:05 +00:00
tanyar09 4adf4f607c Merge pull request '- Add radio buttons to choose between 'Scan from Local' and 'Scan from Network'' (#17) from feature/scan-folder-local-network-modes into dev
CI / skip-ci-check (pull_request) Successful in 10s
CI / lint-and-type-check (pull_request) Successful in 1m12s
CI / python-lint (pull_request) Successful in 36s
CI / test-backend (pull_request) Successful in 2m35s
CI / build (pull_request) Successful in 3m48s
CI / secret-scanning (pull_request) Successful in 17s
CI / dependency-scan (pull_request) Successful in 17s
CI / sast-scan (pull_request) Successful in 1m28s
CI / workflow-summary (pull_request) Successful in 9s
Reviewed-on: #17
2026-01-30 14:07:35 -05:00
tanyar09 46dffc6ade - Add radio buttons to choose between 'Scan from Local' and 'Scan from Network'
CI / skip-ci-check (pull_request) Successful in 10s
CI / python-lint (pull_request) Has been cancelled
CI / test-backend (pull_request) Has been cancelled
CI / build (pull_request) Has been cancelled
CI / secret-scanning (pull_request) Has been cancelled
CI / dependency-scan (pull_request) Has been cancelled
CI / sast-scan (pull_request) Has been cancelled
CI / workflow-summary (pull_request) Has been cancelled
CI / lint-and-type-check (pull_request) Has been cancelled
- Local mode: Use File System Access API (Chrome/Edge/Safari) or webkitdirectory (Firefox) to read folders from browser
- Local mode: Browser reads files and uploads them via HTTP (no server-side filesystem access needed)
- Network mode: Type network paths or use Browse Network button for server-side scanning
- Add 'Start Scanning' button for local mode (separate from folder selection)
- Update API client to handle FormData uploads correctly (remove Content-Type header)
- Update Help page documentation with new scan mode options
- Add progress tracking for local file uploads"
2026-01-30 19:06:57 +00:00
tanyar09 7cfee99350 Merge pull request 'feat: Add exifread library for enhanced EXIF date extraction' (#16) from fix/exif-date-extraction-improvements into dev
CI / skip-ci-check (pull_request) Successful in 10s
CI / lint-and-type-check (pull_request) Successful in 1m10s
CI / python-lint (pull_request) Successful in 35s
CI / test-backend (pull_request) Successful in 2m35s
CI / build (pull_request) Successful in 3m48s
CI / secret-scanning (pull_request) Successful in 18s
CI / dependency-scan (pull_request) Successful in 15s
CI / sast-scan (pull_request) Successful in 1m29s
CI / workflow-summary (pull_request) Successful in 9s
Reviewed-on: #16
2026-01-30 12:20:37 -05:00
tanyar09 42101ea7e7 feat: Add exifread library for enhanced EXIF date extraction
CI / skip-ci-check (pull_request) Successful in 10s
CI / python-lint (pull_request) Has been cancelled
CI / test-backend (pull_request) Has been cancelled
CI / build (pull_request) Has been cancelled
CI / secret-scanning (pull_request) Has been cancelled
CI / dependency-scan (pull_request) Has been cancelled
CI / sast-scan (pull_request) Has been cancelled
CI / workflow-summary (pull_request) Has been cancelled
CI / lint-and-type-check (pull_request) Has been cancelled
- Introduced the exifread library to improve reliability in extracting EXIF date from images.
- Updated the extract_exif_date function to prioritize exifread for date extraction.
- Enhanced logging for successful and failed date extractions.
- Added validation for extracted dates to ensure they fall within a valid range.
2026-01-30 17:19:52 +00:00
tanyar09 92c7712973 Merge pull request 'refactor: Enhance EXIF date extraction in photo_service' (#15) from fix/exif-date-extraction into dev
CI / skip-ci-check (pull_request) Successful in 10s
CI / lint-and-type-check (pull_request) Failing after 57s
CI / python-lint (pull_request) Successful in 36s
CI / test-backend (pull_request) Successful in 2m30s
CI / build (pull_request) Successful in 3m40s
CI / secret-scanning (pull_request) Successful in 17s
CI / dependency-scan (pull_request) Successful in 16s
CI / sast-scan (pull_request) Successful in 1m32s
CI / workflow-summary (pull_request) Failing after 8s
Reviewed-on: #15
2026-01-30 11:32:38 -05:00
tanyar09 d89238facf refactor: Enhance EXIF date extraction in photo_service
CI / skip-ci-check (pull_request) Successful in 10s
CI / python-lint (pull_request) Has been cancelled
CI / test-backend (pull_request) Has been cancelled
CI / build (pull_request) Has been cancelled
CI / secret-scanning (pull_request) Has been cancelled
CI / dependency-scan (pull_request) Has been cancelled
CI / sast-scan (pull_request) Has been cancelled
CI / workflow-summary (pull_request) Has been cancelled
CI / lint-and-type-check (pull_request) Has been cancelled
- Improved logging for EXIF date extraction process, including success and failure messages.
- Updated methods to access EXIF data using modern and deprecated APIs.
- Added validation for extracted dates to ensure they fall within a valid range.
- Enhanced error handling for various exceptions during EXIF data access and date parsing.
2026-01-30 16:31:48 +00:00
tanyar09 41bed0b680 Merge pull request 'feat: Implement directory browsing functionality' (#14) from feature/server-side-folder-browser into dev
CI / skip-ci-check (pull_request) Successful in 9s
CI / lint-and-type-check (pull_request) Successful in 1m12s
CI / python-lint (pull_request) Successful in 36s
CI / test-backend (pull_request) Successful in 2m33s
CI / build (pull_request) Successful in 3m50s
CI / secret-scanning (pull_request) Successful in 18s
CI / dependency-scan (pull_request) Successful in 18s
CI / sast-scan (pull_request) Successful in 1m30s
CI / workflow-summary (pull_request) Successful in 8s
Reviewed-on: #14
2026-01-30 11:10:45 -05:00
tanyar09 f4bdb5d9b3 feat: Implement directory browsing functionality
CI / skip-ci-check (pull_request) Successful in 10s
CI / python-lint (pull_request) Has been cancelled
CI / test-backend (pull_request) Has been cancelled
CI / build (pull_request) Has been cancelled
CI / secret-scanning (pull_request) Has been cancelled
CI / dependency-scan (pull_request) Has been cancelled
CI / sast-scan (pull_request) Has been cancelled
CI / workflow-summary (pull_request) Has been cancelled
CI / lint-and-type-check (pull_request) Has been cancelled
- Add `browseDirectory` API endpoint to list directory contents.
- Create `FolderBrowser` component for user interface to navigate directories.
- Update `Scan` page to integrate folder browsing feature.
- Define `DirectoryItem` and `BrowseDirectoryResponse` schemas for API responses.
2026-01-30 16:09:24 +00:00