PunimTag Web Application - Major Feature Release #1

Open
tanyar09 wants to merge 106 commits from dev into master

106 Commits

Author SHA1 Message Date
5d5e828980 Merge pull request 'fix: remove unused isPlaying state variable in VideoPlayer' (#38) from fix/video-player-typescript-error into dev
Some checks failed
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
fae8afaf84 fix: remove unused isPlaying state variable in VideoPlayer
All checks were successful
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
2aac3befd4 Merge pull request 'feature/video-player-play-button' (#37) from feature/video-player-play-button into dev
Some checks failed
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
726b36db80 feat: add informational message for bulk auto-match operation
Some checks failed
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
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
7d415c56fe Merge pull request 'feat: enhance tag addition functionality in PhotoTagDialog' (#36) from tags-tsx-updates into dev
Some checks failed
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
All checks were successful
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
c5c3059409 Merge pull request 'fix/auto-match-stricter-filtering' (#35) from fix/auto-match-stricter-filtering into dev
Some checks failed
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
cc74599959 refactor: simplify developer mode to use environment variable
All checks were successful
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
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
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
863b6188b4 Merge pull request 'feature/extend-people-search-and-fix-port-binding' (#34) from feature/extend-people-search-and-fix-port-binding into dev
All checks were successful
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
Some checks failed
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
All checks were successful
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
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
Some checks failed
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
All checks were successful
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
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
All checks were successful
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'
Some checks failed
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
7cfee99350 Merge pull request 'feat: Add exifread library for enhanced EXIF date extraction' (#16) from fix/exif-date-extraction-improvements into dev
All checks were successful
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
Some checks failed
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
92c7712973 Merge pull request 'refactor: Enhance EXIF date extraction in photo_service' (#15) from fix/exif-date-extraction into dev
Some checks failed
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
Some checks failed
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
41bed0b680 Merge pull request 'feat: Implement directory browsing functionality' (#14) from feature/server-side-folder-browser into dev
All checks were successful
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
Some checks failed
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
920fe97c09 Merge pull request 'feature/postgresql-remote-connection-docs' (#13) from feature/postgresql-remote-connection-docs into dev
All checks were successful
CI / skip-ci-check (pull_request) Successful in 8s
CI / lint-and-type-check (pull_request) Successful in 1m10s
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 16s
CI / dependency-scan (pull_request) Successful in 14s
CI / sast-scan (pull_request) Successful in 1m33s
CI / workflow-summary (pull_request) Successful in 7s
Reviewed-on: #13
2026-01-29 14:54:26 -05:00
tanyar09
6688a654d3 chore: Clean up documentation and update various files
Some checks failed
CI / skip-ci-check (pull_request) Successful in 8s
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
- Remove obsolete documentation files
- Update .env_example
- Update ManageUsers components
- Update pending_photos API
- Add verify-all-users script
2026-01-29 19:52:48 +00:00
tanyar09
6cf5b0dae1 docs: Add PostgreSQL remote connection configuration steps
- Add PostgreSQL remote connection setup section to DEPLOY_FROM_SCRATCH.md
- Update deploy_from_scratch.sh to display PostgreSQL remote connection instructions
- Remove blocking pause from deployment script (informational only)
- Update admin-frontend API client to handle empty VITE_API_URL for proxy setups
2026-01-29 19:51:45 +00:00
tanyar09
31d2415b86 docs: remove issue/symptom/cause sections, keep only configuration steps
Simplify reverse proxy documentation to focus on configuration
instructions only, removing explanatory issue/symptom/cause sections.
2026-01-29 19:33:17 +00:00
tanyar09
e0712ea520 docs: add reverse proxy setup instructions for HTTPS deployment
- Add Step 11 with Caddy and nginx configuration examples
- Update Step 2.2 to explain VITE_API_URL setup for proxy vs direct access
- Add common fix for API requests returning HTML instead of JSON
- Document the critical requirement to route /api/* before static files

This documents the fixes for HTTPS proxy deployment where API requests
were being served as HTML instead of being forwarded to the backend.
2026-01-29 19:30:22 +00:00
fe9dbc77e5 Merge pull request 'docs: add from-scratch deploy script and env templates' (#12) from chore/deploy-script-from-scratch into dev
All checks were successful
CI / skip-ci-check (pull_request) Successful in 7s
CI / lint-and-type-check (pull_request) Successful in 51s
CI / python-lint (pull_request) Successful in 31s
CI / test-backend (pull_request) Successful in 2m30s
CI / build (pull_request) Successful in 3m18s
CI / secret-scanning (pull_request) Successful in 15s
CI / dependency-scan (pull_request) Successful in 13s
CI / sast-scan (pull_request) Successful in 1m24s
CI / workflow-summary (pull_request) Successful in 6s
Reviewed-on: #12
2026-01-28 14:40:07 -05:00
tanyar09
f224a160e3 docs: add from-scratch deploy script and env templates
Some checks failed
CI / skip-ci-check (pull_request) Successful in 7s
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
2026-01-28 19:20:35 +00:00
bfc07fcde5 Merge pull request 'fix: cast date filters in viewer search' (#11) from fix/viewer-search-date-filter into dev
Some checks failed
CI / skip-ci-check (pull_request) Successful in 7s
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
Reviewed-on: #11
2026-01-28 13:17:39 -05:00
tanyar09
1d35f4ab5a fix: cast date filters in viewer search
Some checks failed
CI / skip-ci-check (pull_request) Successful in 7s
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
2026-01-28 18:15:51 +00:00
1eeecbf275 Merge pull request 'feat: Update video thumbnail handling in viewer frontend' (#10) from fix/viewer-video-thumbnails into dev
All checks were successful
CI / skip-ci-check (pull_request) Successful in 7s
CI / lint-and-type-check (pull_request) Successful in 51s
CI / python-lint (pull_request) Successful in 31s
CI / test-backend (pull_request) Successful in 2m27s
CI / build (pull_request) Successful in 3m22s
CI / secret-scanning (pull_request) Successful in 15s
CI / dependency-scan (pull_request) Successful in 12s
CI / sast-scan (pull_request) Successful in 1m27s
CI / workflow-summary (pull_request) Successful in 6s
Reviewed-on: #10
2026-01-28 12:56:59 -05:00
tanyar09
830c7bcaa6 feat: Update video thumbnail handling in viewer frontend
Some checks failed
CI / skip-ci-check (pull_request) Successful in 6s
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
- Refactored video thumbnail generation logic to fetch thumbnails from the backend instead of generating them locally.
- Removed unused placeholder generation code for remote video URLs.
- Improved error handling for backend thumbnail fetch failures, returning appropriate responses.
- Enhanced caching strategy for fetched thumbnails to optimize performance.

These changes streamline the video thumbnail process and improve the overall user experience in the viewer interface.
2026-01-28 17:55:58 +00:00
2f640b7b8d Merge pull request 'feat: Enhance photo and video handling in admin frontend' (#9) from fix/video-range-streaming into dev
All checks were successful
CI / skip-ci-check (pull_request) Successful in 6s
CI / lint-and-type-check (pull_request) Successful in 51s
CI / python-lint (pull_request) Successful in 33s
CI / test-backend (pull_request) Successful in 2m30s
CI / build (pull_request) Successful in 3m22s
CI / secret-scanning (pull_request) Successful in 15s
CI / dependency-scan (pull_request) Successful in 12s
CI / sast-scan (pull_request) Successful in 1m24s
CI / workflow-summary (pull_request) Successful in 6s
Reviewed-on: #9
2026-01-28 12:47:25 -05:00
tanyar09
70923e0ecf feat: Enhance photo and video handling in admin frontend
Some checks failed
CI / skip-ci-check (pull_request) Successful in 7s
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
- Added media_type to PhotoSearchResult interface to distinguish between images and videos.
- Updated PhotoViewer component to support video playback, including URL handling and preloading logic.
- Modified openPhoto function in Search page to open videos correctly.
- Enhanced backend API to serve video files with range request support for better streaming experience.

These changes improve the user experience by allowing seamless viewing of both images and videos in the application.
2026-01-28 17:45:45 +00:00
5b8e22d9d1 Merge pull request 'fix: support HTTPS proxy by using relative API paths' (#8) from fix/https-proxy-api-routing into dev
All checks were successful
CI / skip-ci-check (pull_request) Successful in 1m52s
CI / lint-and-type-check (pull_request) Successful in 2m31s
CI / python-lint (pull_request) Successful in 2m19s
CI / test-backend (pull_request) Successful in 4m7s
CI / build (pull_request) Successful in 4m58s
CI / secret-scanning (pull_request) Successful in 2m0s
CI / dependency-scan (pull_request) Successful in 2m0s
CI / sast-scan (pull_request) Successful in 3m6s
CI / workflow-summary (pull_request) Successful in 1m50s
Reviewed-on: #8
2026-01-23 14:04:32 -05:00
tanyar09
70cfd63ca1 fix: support HTTPS proxy by using relative API paths
All checks were successful
CI / skip-ci-check (pull_request) Successful in 1m51s
CI / lint-and-type-check (pull_request) Successful in 2m32s
CI / python-lint (pull_request) Successful in 2m16s
CI / test-backend (pull_request) Successful in 4m11s
CI / build (pull_request) Successful in 4m59s
CI / secret-scanning (pull_request) Successful in 1m59s
CI / dependency-scan (pull_request) Successful in 1m58s
CI / sast-scan (pull_request) Successful in 3m7s
CI / workflow-summary (pull_request) Successful in 1m50s
- Update API client to use relative paths when VITE_API_URL is empty
- Fix EventSource URLs to use window.location.origin for proxy compatibility
- Update image/video URL construction to use relative paths
- Add debug logging for API response troubleshooting
- All API calls now work correctly when served through HTTPS proxy

This fixes mixed content errors and allows the admin frontend to work
when accessed via HTTPS domain with reverse proxy (Caddy/nginx).
2026-01-23 18:59:46 +00:00
49ae9728f3 Merge pull request 'chore: Improve CI workflow with retry logic for package installation' (#6) from fix/ci-apt-retry-logic into dev
All checks were successful
CI / skip-ci-check (pull_request) Successful in 1m50s
CI / lint-and-type-check (pull_request) Successful in 2m30s
CI / python-lint (pull_request) Successful in 2m15s
CI / test-backend (pull_request) Successful in 5m6s
CI / build (pull_request) Successful in 4m56s
CI / secret-scanning (pull_request) Successful in 1m57s
CI / dependency-scan (pull_request) Successful in 1m56s
CI / sast-scan (pull_request) Successful in 3m7s
CI / workflow-summary (pull_request) Successful in 1m49s
Reviewed-on: #6
2026-01-22 13:50:49 -05:00
6dc5407e84 Merge pull request 'feat: Enhance photo handling in admin frontend' (#7) from fix/image-urls-and-tag-display into dev
Some checks failed
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: #7

     ## Changes

     ### Admin Frontend
     - Fixed image URLs in multiple pages to use absolute backend URLs (port 8000)
     - Added SPA routing support with --single flag in serve.sh
     - Fixed photo links in Tags page to open in new window

     ### Viewer Frontend
     - Fixed tag display in TagSelectionDialog to handle serialized tag names
     - Fixed Prisma field names in tag-linkages route
     - Created upload directory structure for pending photos
2026-01-22 13:44:23 -05:00
tanyar09
afaacf7403 feat: Enhance photo handling in admin frontend
All checks were successful
CI / skip-ci-check (pull_request) Successful in 1m51s
CI / lint-and-type-check (pull_request) Successful in 2m29s
CI / python-lint (pull_request) Successful in 2m15s
CI / test-backend (pull_request) Successful in 4m10s
CI / build (pull_request) Successful in 4m56s
CI / secret-scanning (pull_request) Successful in 1m58s
CI / dependency-scan (pull_request) Successful in 1m57s
CI / sast-scan (pull_request) Successful in 3m3s
CI / workflow-summary (pull_request) Successful in 1m49s
- Added a new API method to fetch photo images as blobs, enabling direct image retrieval.
- Updated image source paths in multiple components to use the base URL from the API client for consistency.
- Implemented cleanup for blob URLs in the ReportedPhotos component to prevent memory leaks.
- Improved user experience by displaying loading states for images in the ReportedPhotos component.

These changes improve the efficiency and reliability of photo handling in the admin interface.
2026-01-22 18:33:44 +00:00
ac05c00bd6 chore: Improve CI workflow with retry logic for package installation
All checks were successful
CI / skip-ci-check (pull_request) Successful in 1m50s
CI / lint-and-type-check (pull_request) Successful in 2m28s
CI / python-lint (pull_request) Successful in 2m14s
CI / test-backend (pull_request) Successful in 4m8s
CI / build (pull_request) Successful in 4m55s
CI / secret-scanning (pull_request) Successful in 1m58s
CI / dependency-scan (pull_request) Successful in 1m55s
CI / sast-scan (pull_request) Successful in 3m2s
CI / workflow-summary (pull_request) Successful in 1m49s
This commit enhances the CI workflow by adding retry logic for package installation in the Debian environment. It addresses transient issues with Debian mirror sync by allowing up to three attempts to install necessary packages, improving the reliability of the CI process. Additionally, it cleans the apt cache before retrying to ensure a fresh attempt.

Also, it removes unused local patterns configuration from the Next.js setup and adds an unoptimized prop to the PhotoGrid component for better image handling based on the URL state.
2026-01-22 11:40:16 -05:00
tanyar09
845273cfd3 Merge branch 'dev' of https://git.levkin.ca/ilia/punimtag into dev
Some checks failed
CI / skip-ci-check (pull_request) Successful in 1m49s
CI / lint-and-type-check (pull_request) Successful in 2m28s
CI / python-lint (pull_request) Successful in 2m15s
CI / test-backend (pull_request) Successful in 4m7s
CI / build (pull_request) Failing after 2m48s
CI / secret-scanning (pull_request) Successful in 1m57s
CI / dependency-scan (pull_request) Successful in 1m54s
CI / sast-scan (pull_request) Successful in 3m3s
CI / workflow-summary (pull_request) Failing after 1m47s
2026-01-21 19:59:27 +00:00
6adc1f4a5c Merge pull request 'feat: Add photo management API endpoints for fetching, favoriting, reporting, and tagging photos' (#5) from fix/photos-paths into dev
All checks were successful
CI / skip-ci-check (pull_request) Successful in 1m49s
CI / lint-and-type-check (pull_request) Successful in 2m29s
CI / python-lint (pull_request) Successful in 2m13s
CI / test-backend (pull_request) Successful in 4m5s
CI / build (pull_request) Successful in 4m56s
CI / secret-scanning (pull_request) Successful in 1m56s
CI / dependency-scan (pull_request) Successful in 1m57s
CI / sast-scan (pull_request) Successful in 3m1s
CI / workflow-summary (pull_request) Successful in 1m47s
Reviewed-on: #5
2026-01-21 14:49:48 -05:00
dd8dd0808e feat: Add photo management API endpoints for fetching, favoriting, reporting, and tagging photos
All checks were successful
CI / skip-ci-check (pull_request) Successful in 1m49s
CI / lint-and-type-check (pull_request) Successful in 2m28s
CI / python-lint (pull_request) Successful in 2m14s
CI / test-backend (pull_request) Successful in 4m7s
CI / build (pull_request) Successful in 4m58s
CI / secret-scanning (pull_request) Successful in 2m0s
CI / dependency-scan (pull_request) Successful in 1m54s
CI / sast-scan (pull_request) Successful in 3m6s
CI / workflow-summary (pull_request) Successful in 1m47s
- Implemented GET endpoint to retrieve photo details by ID, including associated faces and tags.
- Added GET endpoint for fetching adjacent photos based on date taken.
- Created POST endpoint to toggle favorites for photos, including user authentication checks.
- Developed POST and GET endpoints for reporting photos, with caching for report statuses.
- Introduced POST endpoint for bulk toggling of favorites.
- Implemented batch processing for checking report statuses.
- Added endpoint for managing tag linkages, including validation and error handling.
- Created upload endpoint for handling photo uploads with size and type validation.

These changes enhance the photo management capabilities of the application, allowing users to interact with photos more effectively.
2026-01-21 14:33:59 -05:00
f879e660a4 Merge pull request 'fix: prevent server crashes during photo processing' (#4) from fix/database-connection-crash-prevention into dev
All checks were successful
CI / skip-ci-check (pull_request) Successful in 1m49s
CI / lint-and-type-check (pull_request) Successful in 2m28s
CI / python-lint (pull_request) Successful in 2m17s
CI / test-backend (pull_request) Successful in 4m9s
CI / build (pull_request) Successful in 5m9s
CI / secret-scanning (pull_request) Successful in 1m56s
CI / dependency-scan (pull_request) Successful in 1m55s
CI / sast-scan (pull_request) Successful in 3m0s
CI / workflow-summary (pull_request) Successful in 1m47s
Reviewed-on: #4
2026-01-21 12:58:07 -05:00
f9fafcbb1a fix: prevent server crashes during photo processing
All checks were successful
CI / skip-ci-check (pull_request) Successful in 1m49s
CI / lint-and-type-check (pull_request) Successful in 2m28s
CI / python-lint (pull_request) Successful in 2m12s
CI / test-backend (pull_request) Successful in 4m5s
CI / build (pull_request) Successful in 4m53s
CI / secret-scanning (pull_request) Successful in 1m56s
CI / dependency-scan (pull_request) Successful in 1m54s
CI / sast-scan (pull_request) Successful in 3m2s
CI / workflow-summary (pull_request) Successful in 1m48s
- Add database connection health checks every 10 photos
- Add session refresh logic to recover from connection errors
- Improve error handling for database disconnections/timeouts
- Add explicit image cleanup to prevent memory leaks
- Add connection error detection throughout processing pipeline
- Gracefully handle database connection failures instead of crashing

Fixes issue where server would crash during long-running photo processing
tasks when database connections were lost or timed out.
2026-01-21 12:47:37 -05:00
tanyar09
ddc50efd7c Merge branch 'dev' of https://git.levkin.ca/ilia/punimtag into dev 2026-01-19 20:43:09 +00:00
tanyar09
42fbf8d496 chore: Add PM2 ecosystem config to .gitignore
This commit updates the .gitignore file to include the PM2 ecosystem configuration file, ensuring that server-specific paths are ignored during version control. This change helps maintain a cleaner repository by excluding environment-specific configurations.
2026-01-19 20:38:31 +00:00
7d2cd78a9a Merge pull request 'update linting rules to ignore non-critical style issues' (#3) from ci/ignore-linting-errors into dev
All checks were successful
CI / skip-ci-check (pull_request) Successful in 1m46s
CI / lint-and-type-check (pull_request) Successful in 2m25s
CI / python-lint (pull_request) Successful in 2m11s
CI / test-backend (pull_request) Successful in 4m3s
CI / build (pull_request) Successful in 4m54s
CI / secret-scanning (pull_request) Successful in 1m53s
CI / dependency-scan (pull_request) Successful in 1m50s
CI / sast-scan (pull_request) Successful in 2m58s
CI / workflow-summary (pull_request) Successful in 1m45s
Reviewed-on: #3
2026-01-19 15:30:04 -05:00
51081c1b5d chore: Add deployment checklist and PM2 configuration examples
Some checks failed
CI / test-backend (pull_request) Successful in 5m30s
CI / build (pull_request) Has been skipped
CI / secret-scanning (pull_request) Has been skipped
CI / dependency-scan (pull_request) Has been skipped
CI / sast-scan (pull_request) Has been skipped
CI / lint-and-type-check (pull_request) Has been cancelled
CI / python-lint (pull_request) Has been cancelled
CI / workflow-summary (pull_request) Has been cancelled
CI / skip-ci-check (pull_request) Has been cancelled
This commit introduces a new `DEPLOYMENT_CHECKLIST.md` file that outlines the necessary steps for configuring server-specific settings after pulling from Git. It includes instructions for environment files, PM2 configuration, firewall rules, database setup, and building frontends. Additionally, it adds an example `ecosystem.config.js.example` file for PM2 configuration, providing a template for users to customize for their deployment environment. The `.gitignore` file is updated to include the new PM2 ecosystem config file.
2026-01-19 15:20:39 -05:00
5073c22f03 chore: Refine CI workflow output handling for linting and type-checking
All checks were successful
CI / skip-ci-check (pull_request) Successful in 1m42s
CI / lint-and-type-check (pull_request) Successful in 2m21s
CI / python-lint (pull_request) Successful in 2m7s
CI / test-backend (pull_request) Successful in 5m12s
CI / build (pull_request) Successful in 4m45s
CI / secret-scanning (pull_request) Successful in 1m48s
CI / dependency-scan (pull_request) Successful in 1m47s
CI / sast-scan (pull_request) Successful in 2m54s
CI / workflow-summary (pull_request) Successful in 1m39s
This commit improves the CI workflow by modifying the output handling for linting and type-checking processes. It ensures that the results are captured correctly and displayed only if there are errors or warnings, enhancing clarity in the CI logs. Additionally, it updates the flake8 output section to provide a summary when no issues are found, further improving the visibility of code quality checks.
2026-01-16 15:39:32 -05:00
edfefb3f00 chore: Enhance CI workflow with detailed linting and type-checking outputs
Some checks failed
CI / skip-ci-check (pull_request) Successful in 1m42s
CI / lint-and-type-check (pull_request) Successful in 2m21s
CI / python-lint (pull_request) Successful in 2m5s
CI / test-backend (pull_request) Successful in 3m56s
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 / build (pull_request) Has been cancelled
This commit updates the CI workflow to provide more comprehensive output for linting and type-checking processes. It modifies the commands to capture and display results, including error and warning counts, improving visibility into code quality issues. Additionally, it adds new flake8 error codes to ignore in the Python linting command, ensuring a more robust linting process.
2026-01-16 15:30:54 -05:00
b287d1f0e1 chore: Enhance Python linting rules in CI and package configurations
Some checks failed
CI / skip-ci-check (pull_request) Successful in 1m41s
CI / lint-and-type-check (pull_request) Successful in 2m20s
CI / python-lint (pull_request) Failing after 2m5s
CI / test-backend (pull_request) Successful in 3m55s
CI / build (pull_request) Successful in 4m53s
CI / secret-scanning (pull_request) Successful in 1m49s
CI / dependency-scan (pull_request) Successful in 1m46s
CI / sast-scan (pull_request) Successful in 3m0s
CI / workflow-summary (pull_request) Failing after 1m39s
This commit updates the Python linting rules by adding additional flake8 error codes to ignore in both the CI workflow and the Python linting command in package.json. It also modifies the ESLint configuration for the admin frontend to streamline the linting process by removing the max-warnings restriction.
2026-01-16 15:23:54 -05:00
c8b6245625 chore: Update linting rules for Python and frontend configurations
Some checks failed
CI / skip-ci-check (pull_request) Successful in 1m41s
CI / lint-and-type-check (pull_request) Failing after 2m26s
CI / python-lint (pull_request) Failing after 2m8s
CI / test-backend (pull_request) Successful in 3m55s
CI / build (pull_request) Successful in 4m48s
CI / secret-scanning (pull_request) Successful in 1m49s
CI / dependency-scan (pull_request) Successful in 1m46s
CI / sast-scan (pull_request) Successful in 2m58s
CI / workflow-summary (pull_request) Failing after 1m40s
This commit enhances the linting configurations by adding additional flake8 error codes to ignore in both the CI workflow and the Python linting command in package.json. It also modifies the ESLint configuration for the admin frontend to remove the report for unused disable directives, streamlining the linting process and reducing false positives.
2026-01-16 15:16:39 -05:00
ebde652fb0 update linting rules to ignore non-critical style issues
Some checks failed
CI / skip-ci-check (pull_request) Successful in 1m41s
CI / lint-and-type-check (pull_request) Failing after 2m24s
CI / python-lint (pull_request) Failing after 2m7s
CI / test-backend (pull_request) Successful in 3m58s
CI / build (pull_request) Successful in 4m52s
CI / secret-scanning (pull_request) Successful in 1m49s
CI / dependency-scan (pull_request) Successful in 1m46s
CI / sast-scan (pull_request) Successful in 2m57s
CI / workflow-summary (pull_request) Failing after 1m40s
- Ignore max-len line length errors in ESLint
- Change unused vars/imports to warnings instead of errors
- Ignore flake8 errors: E501, W503, W293, E305, F401, F811, W291
- Prevents CI failures on style-only issues"
2026-01-16 15:02:04 -05:00
9ddd7c04eb chore: Update CI workflow with timeout and enhanced checkout options
Some checks failed
CI / skip-ci-check (pull_request) Successful in 1m36s
CI / lint-and-type-check (pull_request) Failing after 2m14s
CI / python-lint (pull_request) Failing after 1m58s
CI / test-backend (pull_request) Successful in 3m40s
CI / build (pull_request) Successful in 4m34s
CI / secret-scanning (pull_request) Successful in 1m43s
CI / dependency-scan (pull_request) Successful in 1m42s
CI / sast-scan (pull_request) Successful in 2m45s
CI / workflow-summary (pull_request) Failing after 1m35s
This commit modifies the CI workflow to include a timeout of 5 minutes for the skip-ci-check job. Additionally, it updates the checkout step to disable submodules, persist credentials, and clean the workspace, improving the efficiency and reliability of the CI process.
2026-01-12 15:22:40 -05:00
3d410a94a8 test
Some checks failed
CI / skip-ci-check (pull_request) Failing after 8m52s
CI / lint-and-type-check (pull_request) Has been skipped
CI / python-lint (pull_request) Has been skipped
CI / test-backend (pull_request) Has been skipped
CI / build (pull_request) Has been skipped
CI / secret-scanning (pull_request) Has been skipped
CI / dependency-scan (pull_request) Has been skipped
CI / sast-scan (pull_request) Has been skipped
CI / workflow-summary (pull_request) Successful in 1m33s
2026-01-12 14:15:20 -05:00
0400a4575d chore: Add Semgrep ignore file and enhance CI workflow with detailed checks
Some checks failed
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
This commit introduces a Semgrep ignore file to suppress false positives and low-risk findings in the codebase. It also updates the CI workflow to include additional checks for linting and type validation, ensuring a more robust and secure development process. The changes improve the overall clarity and usability of the CI workflow while maintaining code quality standards.
2026-01-12 14:00:01 -05:00
60b6d1df91 chore: Add blank lines to improve readability in multiple files
Some checks failed
CI / skip-ci-check (pull_request) Successful in 1m35s
CI / lint-and-type-check (pull_request) Failing after 2m14s
CI / python-lint (pull_request) Failing after 1m57s
CI / test-backend (pull_request) Successful in 3m42s
CI / build (pull_request) Successful in 4m42s
CI / secret-scanning (pull_request) Successful in 1m42s
CI / dependency-scan (pull_request) Successful in 1m42s
CI / sast-scan (pull_request) Successful in 2m45s
CI / workflow-summary (pull_request) Failing after 1m33s
This commit adds blank lines to the end of several files, including configuration files and scripts, enhancing the overall readability and maintainability of the codebase. Consistent formatting practices contribute to a cleaner and more organized project structure.
2026-01-12 13:26:43 -05:00
c490235ad1 chore: Enhance CI workflow with comprehensive checks for linting, type checking, and testing
Some checks failed
CI / skip-ci-check (pull_request) Successful in 1m34s
CI / lint-and-type-check (pull_request) Failing after 2m13s
CI / python-lint (pull_request) Failing after 2m1s
CI / test-backend (pull_request) Successful in 3m45s
CI / build (pull_request) Successful in 4m43s
CI / secret-scanning (pull_request) Successful in 1m43s
CI / dependency-scan (pull_request) Successful in 1m41s
CI / sast-scan (pull_request) Successful in 2m50s
CI / workflow-summary (pull_request) Successful in 1m34s
This commit updates the CI workflow to include additional checks for ESLint, type checking, and backend tests. It introduces steps to validate the outcomes of these checks, ensuring that any failures will cause the job to fail. This enhancement improves the overall quality control in the CI pipeline, requiring developers to address issues before proceeding with the build process.
2026-01-12 13:08:21 -05:00
29c8a27e01 chore: Remove non-blocking behavior from linting and type checking in CI workflow
All checks were successful
CI / skip-ci-check (pull_request) Successful in 1m35s
CI / lint-and-type-check (pull_request) Successful in 2m11s
CI / python-lint (pull_request) Successful in 2m0s
CI / test-backend (pull_request) Successful in 3m42s
CI / build (pull_request) Successful in 4m43s
CI / secret-scanning (pull_request) Successful in 1m44s
CI / dependency-scan (pull_request) Successful in 1m41s
CI / sast-scan (pull_request) Successful in 2m46s
CI / workflow-summary (pull_request) Successful in 1m34s
This commit updates the CI workflow to remove the `|| true` command from the linting and type checking steps, ensuring that these checks will fail the build process if issues are encountered. This change enforces stricter quality control in the CI pipeline, requiring developers to address linting and type checking errors before proceeding with the build.
2026-01-12 13:00:01 -05:00
0e673bc6d9 chore: Update CI workflow to allow non-blocking linting and type checking
All checks were successful
CI / skip-ci-check (pull_request) Successful in 1m35s
CI / lint-and-type-check (pull_request) Successful in 2m11s
CI / python-lint (pull_request) Successful in 2m0s
CI / test-backend (pull_request) Successful in 3m43s
CI / build (pull_request) Successful in 4m38s
CI / secret-scanning (pull_request) Successful in 1m43s
CI / dependency-scan (pull_request) Successful in 1m40s
CI / sast-scan (pull_request) Successful in 2m48s
CI / workflow-summary (pull_request) Successful in 1m33s
This commit modifies the CI workflow to ensure that linting and type checking steps do not fail the build process. The `|| true` command is added to the respective npm commands, allowing the CI to continue even if these checks encounter issues. This change enhances the flexibility of the CI process, enabling developers to address linting and type checking errors without blocking the overall workflow.
2026-01-12 12:46:16 -05:00
a1e4544a42 refactor: Simplify JUnit XML parsing in CI workflow
Some checks failed
CI / skip-ci-check (pull_request) Successful in 1m34s
CI / lint-and-type-check (pull_request) Failing after 1m44s
CI / python-lint (pull_request) Failing after 1m58s
CI / test-backend (pull_request) Failing after 3m41s
CI / build (pull_request) Successful in 4m38s
CI / secret-scanning (pull_request) Successful in 1m42s
CI / dependency-scan (pull_request) Successful in 1m42s
CI / sast-scan (pull_request) Successful in 2m51s
CI / workflow-summary (pull_request) Successful in 1m33s
This commit refactors the CI workflow to simplify the parsing of JUnit XML test results. The previous multi-line Python script has been replaced with a concise one-liner, reducing complexity and avoiding YAML parsing issues. This change enhances the readability and maintainability of the CI configuration while ensuring accurate test statistics are reported.
2026-01-12 12:32:20 -05:00
4b0a495bb0 chore: Add Semgrep ignore file and CI job status documentation
This commit introduces a Semgrep ignore file to suppress false positives and low-risk findings, particularly for controlled inputs in database scripts and development configurations. Additionally, a new CI Job Status Configuration document is added to clarify which CI jobs should fail on errors and which are informational, enhancing the overall CI/CD process documentation.
2026-01-12 12:25:19 -05:00
bcc902fce2 fix: Update tests to align with API response structure and improve assertions
All checks were successful
CI / skip-ci-check (pull_request) Successful in 1m35s
CI / lint-and-type-check (pull_request) Successful in 2m11s
CI / python-lint (pull_request) Successful in 2m0s
CI / test-backend (pull_request) Successful in 3m42s
CI / build (pull_request) Successful in 4m41s
CI / secret-scanning (pull_request) Successful in 1m42s
CI / dependency-scan (pull_request) Successful in 1m41s
CI / sast-scan (pull_request) Successful in 2m51s
CI / workflow-summary (pull_request) Successful in 1m33s
This commit modifies several test cases to reflect changes in the API response structure, including:
- Updating assertions to check for `tag_name` instead of `tag` in tag-related tests.
- Adjusting the response data checks for bulk add/remove favorites to use `added_count` and `removed_count`.
- Ensuring the photo search test verifies the linked face and checks for the presence of the photo in the results.

These changes enhance the accuracy and reliability of the tests in relation to the current API behavior.
2026-01-12 11:59:24 -05:00
67c1227b55 chore: Add blank lines to improve readability in various files
All checks were successful
CI / skip-ci-check (pull_request) Successful in 1m35s
CI / lint-and-type-check (pull_request) Successful in 2m11s
CI / python-lint (pull_request) Successful in 1m58s
CI / test-backend (pull_request) Successful in 3m57s
CI / build (pull_request) Successful in 4m41s
CI / secret-scanning (pull_request) Successful in 1m42s
CI / dependency-scan (pull_request) Successful in 1m41s
CI / sast-scan (pull_request) Successful in 2m46s
CI / workflow-summary (pull_request) Successful in 1m33s
This commit adds blank lines to the end of several files, including pytest.ini, README.md, and various scripts in the viewer-frontend. These changes enhance the readability and maintainability of the codebase by ensuring consistent formatting.
2026-01-12 11:36:29 -05:00
ca7266ea34 fix: Update photo deletion test to assert deleted_count instead of deleted
The test for photo deletion now checks for "deleted_count" in the response data, ensuring that the count of deleted photos is non-negative. This change aligns the test with the actual API response structure.
2026-01-09 13:00:35 -05:00
79d20ecce8 fix: Update favorite endpoint path from /favorite to /toggle-favorite
The actual API endpoint is /toggle-favorite, not /favorite. Update all
test cases to use the correct endpoint path.
2026-01-09 12:52:51 -05:00
4f21998915 fix: Update tests to match actual API behavior and model structure
- Fix DELETE endpoint test to accept 204 (No Content) status code
- Fix PhotoTag import to PhotoTagLinkage (correct model name)
- Fix Tag model instantiation to use tag_name instead of tag
- Update photo search test to use partial name matching (John instead of John Doe)
2026-01-09 12:51:48 -05:00
6a194d9f62 chore: Update CI workflow to include email-validator for Pydantic email validation
All checks were successful
CI / sast-scan (pull_request) Successful in 2m58s
CI / skip-ci-check (pull_request) Successful in 1m32s
CI / lint-and-type-check (pull_request) Successful in 2m17s
CI / python-lint (pull_request) Successful in 1m57s
CI / test-backend (pull_request) Successful in 3m57s
CI / build (pull_request) Successful in 5m7s
CI / secret-scanning (pull_request) Successful in 1m40s
CI / dependency-scan (pull_request) Successful in 1m38s
CI / workflow-summary (pull_request) Successful in 1m30s
This commit modifies the CI workflow to install the email-validator package as part of the Pydantic dependencies. This addition enhances email validation capabilities within the application, ensuring that email addresses are properly validated during processing.
2026-01-09 12:49:42 -05:00
5fb66f9a85 fix: Handle charset parameter in SSE Content-Type header test
The SSE endpoint returns 'text/event-stream; charset=utf-8' but the test
was checking for an exact match. Update the test to use startswith() to
handle the charset parameter correctly.
2026-01-09 12:48:22 -05:00
c02d375da7 chore: Update CI workflow to install Python 3.12 using pyenv
Some checks failed
CI / skip-ci-check (pull_request) Successful in 1m31s
CI / lint-and-type-check (pull_request) Successful in 2m15s
CI / python-lint (pull_request) Successful in 1m57s
CI / test-backend (pull_request) Successful in 3m59s
CI / build (pull_request) Failing after 4m5s
CI / secret-scanning (pull_request) Successful in 1m41s
CI / dependency-scan (pull_request) Successful in 1m37s
CI / sast-scan (pull_request) Successful in 2m53s
CI / workflow-summary (pull_request) Successful in 1m29s
This commit modifies the CI workflow to install Python 3.12 using pyenv instead of the default package manager. This change is necessary as Debian Bullseye does not provide Python 3.12 in its default repositories. The updated installation process includes necessary dependencies and ensures that the correct version of Python is set globally for the build environment.
2026-01-09 12:37:43 -05:00
6e8a0959f2 fix: Use Python 3.12 in CI build validation step
Some checks failed
CI / skip-ci-check (pull_request) Successful in 1m30s
CI / lint-and-type-check (pull_request) Successful in 2m17s
CI / python-lint (pull_request) Successful in 2m0s
CI / test-backend (pull_request) Successful in 5m22s
CI / build (pull_request) Failing after 1m46s
CI / secret-scanning (pull_request) Successful in 1m39s
CI / dependency-scan (pull_request) Successful in 1m37s
CI / sast-scan (pull_request) Successful in 2m55s
CI / workflow-summary (pull_request) Successful in 1m29s
The codebase uses Python 3.10+ syntax (str | None) which is not supported
in Python 3.9. Update the build job to install and use Python 3.12 to
match the test-backend job and support modern type hints.
2026-01-09 12:24:56 -05:00
08e0fc8966 fix: Add numpy and pillow to CI build validation step
Some checks failed
CI / skip-ci-check (pull_request) Successful in 1m31s
CI / lint-and-type-check (pull_request) Successful in 2m20s
CI / python-lint (pull_request) Successful in 1m59s
CI / test-backend (pull_request) Successful in 4m7s
CI / build (pull_request) Failing after 1m57s
CI / secret-scanning (pull_request) Successful in 1m40s
CI / dependency-scan (pull_request) Successful in 1m38s
CI / sast-scan (pull_request) Successful in 3m9s
CI / workflow-summary (pull_request) Successful in 1m29s
The backend validation step was failing because numpy is required for
importing backend.services.face_service, which is imported at module level.
Adding numpy and pillow to the pip install command in the build job to
fix the ModuleNotFoundError.
2026-01-09 12:16:54 -05:00
634d5dab02 chore: Update CI workflow to include numpy and pillow dependencies for faster builds
Some checks failed
CI / skip-ci-check (pull_request) Successful in 1m29s
CI / lint-and-type-check (pull_request) Successful in 2m6s
CI / python-lint (pull_request) Successful in 1m55s
CI / test-backend (pull_request) Successful in 3m10s
CI / build (pull_request) Failing after 1m48s
CI / secret-scanning (pull_request) Successful in 1m36s
CI / dependency-scan (pull_request) Successful in 1m35s
CI / sast-scan (pull_request) Successful in 2m51s
CI / workflow-summary (pull_request) Successful in 1m27s
2026-01-08 14:57:01 -05:00
0ca9adcd47 test: Add comprehensive CI tests for photos, people, tags, users, jobs, and health APIs
Some checks failed
CI / skip-ci-check (pull_request) Successful in 1m29s
CI / lint-and-type-check (pull_request) Successful in 2m7s
CI / python-lint (pull_request) Successful in 1m58s
CI / test-backend (pull_request) Successful in 3m38s
CI / build (pull_request) Failing after 1m45s
CI / secret-scanning (pull_request) Successful in 1m36s
CI / dependency-scan (pull_request) Successful in 1m35s
CI / sast-scan (pull_request) Successful in 2m48s
CI / workflow-summary (pull_request) Successful in 1m27s
- Add test_api_photos.py with photo search, favorites, retrieval, and deletion tests
- Add test_api_people.py with people listing, CRUD, and faces tests
- Add test_api_tags.py with tag listing, CRUD, and photo-tag operations tests
- Add test_api_users.py with user listing, CRUD, and activation tests
- Add test_api_jobs.py with job status and streaming tests
- Add test_api_health.py with health check and version tests

These tests expand CI coverage based on API_TEST_PLAN.md and will run in the CI pipeline.
2026-01-08 14:51:58 -05:00
c6f27556ac chore: Update CI workflow to use virtual environment directly and enhance summary output
Some checks failed
CI / skip-ci-check (pull_request) Successful in 1m29s
CI / lint-and-type-check (pull_request) Successful in 2m7s
CI / python-lint (pull_request) Successful in 1m55s
CI / test-backend (pull_request) Successful in 3m9s
CI / build (pull_request) Failing after 1m44s
CI / secret-scanning (pull_request) Successful in 1m36s
CI / dependency-scan (pull_request) Successful in 1m35s
CI / sast-scan (pull_request) Successful in 2m48s
CI / workflow-summary (pull_request) Successful in 1m27s
This commit modifies the CI workflow to utilize the virtual environment's pip and python directly, avoiding shell activation issues. Additionally, it enhances the CI workflow summary by providing a clearer overview of job results, including detailed descriptions of each job's purpose and how to interpret the backend test results. This improves the overall clarity and usability of the CI process.
2026-01-08 14:43:46 -05:00
7dd95cbcd0 chore: Add Gitleaks configuration and enhance CI workflow for backend validation
Some checks failed
CI / skip-ci-check (pull_request) Successful in 1m28s
CI / lint-and-type-check (pull_request) Successful in 2m7s
CI / python-lint (pull_request) Successful in 1m54s
CI / test-backend (pull_request) Successful in 3m10s
CI / build (pull_request) Failing after 1m35s
CI / secret-scanning (pull_request) Successful in 1m37s
CI / dependency-scan (pull_request) Successful in 1m35s
CI / sast-scan (pull_request) Successful in 2m45s
CI / workflow-summary (pull_request) Successful in 1m28s
This commit introduces a Gitleaks configuration file to manage known false positives and improve security by preventing the accidental exposure of sensitive information. Additionally, it enhances the CI workflow by adding a step to validate backend imports and application structure, ensuring that core modules and API routers can be imported successfully without starting the server or connecting to a database.
2026-01-08 14:33:51 -05:00
922c468e9b chore: Enhance CI workflow summary and improve JWT token generation
All checks were successful
CI / skip-ci-check (pull_request) Successful in 1m29s
CI / lint-and-type-check (pull_request) Successful in 2m6s
CI / python-lint (pull_request) Successful in 1m47s
CI / test-backend (pull_request) Successful in 3m8s
CI / build (pull_request) Successful in 2m26s
CI / secret-scanning (pull_request) Successful in 1m43s
CI / dependency-scan (pull_request) Successful in 1m35s
CI / sast-scan (pull_request) Successful in 2m46s
CI / workflow-summary (pull_request) Successful in 1m27s
This commit updates the CI workflow summary to provide a clearer overview of job results and their purposes. It also modifies the JWT token generation in the authentication API to include a unique identifier (`jti`) for both access and refresh tokens, improving token management. Additionally, the test for the token refresh endpoint is adjusted to ensure it verifies the new access token correctly.
2026-01-08 14:15:08 -05:00
70cd7aad95 fix: Handle ValueError in accept_matches function for better error reporting
All checks were successful
CI / skip-ci-check (pull_request) Successful in 1m29s
CI / lint-and-type-check (pull_request) Successful in 2m6s
CI / python-lint (pull_request) Successful in 1m53s
CI / test-backend (pull_request) Successful in 3m12s
CI / build (pull_request) Successful in 2m47s
CI / secret-scanning (pull_request) Successful in 1m53s
CI / dependency-scan (pull_request) Successful in 1m36s
CI / sast-scan (pull_request) Successful in 2m45s
CI / workflow-summary (pull_request) Successful in 1m27s
This commit updates the `accept_matches` function in the `people.py` API to include error handling for `ValueError`. If the error message indicates that a resource is not found, it raises an HTTP 404 exception with a user-friendly message. This change improves the robustness of the API by providing clearer feedback to users when a match cannot be accepted.
2026-01-08 13:49:38 -05:00
13f926b84e chore: Enhance CI workflow with detailed secret scanning and reporting
All checks were successful
CI / skip-ci-check (pull_request) Successful in 1m29s
CI / lint-and-type-check (pull_request) Successful in 2m6s
CI / python-lint (pull_request) Successful in 1m46s
CI / test-backend (pull_request) Successful in 3m10s
CI / build (pull_request) Successful in 2m25s
CI / secret-scanning (pull_request) Successful in 1m31s
CI / dependency-scan (pull_request) Successful in 1m36s
CI / sast-scan (pull_request) Successful in 2m46s
CI / workflow-summary (pull_request) Successful in 1m27s
This commit updates the CI workflow to include a more comprehensive secret scanning process using gitleaks. It adds steps to install jq for parsing the report and displays the results in the GitHub step summary, including total leaks found and detailed leak information. This enhancement improves security by ensuring that any sensitive information is promptly identified and addressed.
2026-01-08 13:30:37 -05:00
bd3fb5ce74 chore: Update CI workflow to trigger only on pull_request events
Some checks failed
CI / skip-ci-check (pull_request) Successful in 1m29s
CI / lint-and-type-check (pull_request) Successful in 2m6s
CI / python-lint (pull_request) Successful in 1m55s
CI / test-backend (pull_request) Successful in 3m10s
CI / build (pull_request) Successful in 2m26s
CI / secret-scanning (pull_request) Successful in 1m42s
CI / dependency-scan (pull_request) Successful in 1m35s
CI / workflow-summary (pull_request) Has been cancelled
CI / sast-scan (pull_request) Has been cancelled
This commit modifies the CI workflow to exclusively trigger on pull_request events, preventing duplicate runs caused by push events. It clarifies comments regarding event handling and emphasizes the importance of using pull requests for CI, enhancing the overall clarity and efficiency of the workflow.
2026-01-08 13:24:41 -05:00
45ceedc250 chore: Enhance CI workflow concurrency management for push and PR events
Some checks failed
CI / skip-ci-check (push) Successful in 1m28s
CI / skip-ci-check (pull_request) Successful in 1m29s
CI / lint-and-type-check (push) Successful in 2m6s
CI / test-backend (push) Has been cancelled
CI / build (push) Has been cancelled
CI / secret-scanning (push) Has been cancelled
CI / dependency-scan (push) Has been cancelled
CI / sast-scan (push) Has been cancelled
CI / workflow-summary (push) Has been cancelled
CI / python-lint (push) 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
CI / lint-and-type-check (pull_request) Has been cancelled
This commit updates the CI workflow to improve concurrency management by grouping runs based on branch name and commit SHA. It ensures that push and PR events for the same branch and commit are handled together, preventing duplicate executions. Additionally, it clarifies comments regarding the handling of events, enhancing the overall clarity and efficiency of the CI process.
2026-01-08 13:21:49 -05:00
16e5d4acaf chore: Update sensitive information in documentation and code to use environment variables
Some checks failed
CI / skip-ci-check (push) Successful in 1m29s
CI / skip-ci-check (pull_request) Successful in 1m29s
CI / python-lint (push) Has been cancelled
CI / test-backend (push) Has been cancelled
CI / build (push) Has been cancelled
CI / secret-scanning (push) Has been cancelled
CI / dependency-scan (push) Has been cancelled
CI / sast-scan (push) Has been cancelled
CI / workflow-summary (push) Has been cancelled
CI / lint-and-type-check (push) Has been cancelled
CI / lint-and-type-check (pull_request) Successful in 2m6s
CI / python-lint (pull_request) Successful in 1m47s
CI / test-backend (pull_request) Successful in 3m13s
CI / build (pull_request) Successful in 2m25s
CI / secret-scanning (pull_request) Successful in 1m42s
CI / dependency-scan (pull_request) Successful in 1m33s
CI / sast-scan (pull_request) Successful in 2m42s
CI / workflow-summary (pull_request) Successful in 1m27s
This commit replaces hardcoded sensitive information, such as database passwords and secret keys, in the README and deployment documentation with placeholders and instructions to use environment variables. This change enhances security by preventing exposure of sensitive data in the codebase. Additionally, it updates the database session management to raise an error if the DATABASE_URL environment variable is not set, ensuring proper configuration for development environments.
2026-01-08 13:08:47 -05:00
3e0140c2f3 feat: Implement custom bearer token security dependency for authentication
Some checks failed
CI / skip-ci-check (push) Successful in 1m28s
CI / skip-ci-check (pull_request) Successful in 1m28s
CI / python-lint (push) Has been cancelled
CI / test-backend (push) Has been cancelled
CI / build (push) Has been cancelled
CI / secret-scanning (push) Has been cancelled
CI / dependency-scan (push) Has been cancelled
CI / sast-scan (push) Has been cancelled
CI / workflow-summary (push) Has been cancelled
CI / lint-and-type-check (push) Has been cancelled
CI / lint-and-type-check (pull_request) Successful in 2m6s
CI / python-lint (pull_request) Successful in 1m53s
CI / test-backend (pull_request) Successful in 3m12s
CI / build (pull_request) Successful in 2m25s
CI / secret-scanning (pull_request) Successful in 1m41s
CI / dependency-scan (pull_request) Successful in 1m35s
CI / sast-scan (pull_request) Successful in 2m49s
CI / workflow-summary (pull_request) Successful in 1m27s
This commit introduces a custom security dependency, `get_bearer_token`, in the authentication API to ensure compliance with HTTP standards by returning a 401 Unauthorized status for missing or invalid tokens. Additionally, it updates test user fixtures to include full names for better clarity in tests.
2026-01-08 12:40:07 -05:00
47f31e15a6 test push
Some checks failed
CI / skip-ci-check (push) Successful in 1m28s
CI / skip-ci-check (pull_request) Successful in 1m28s
CI / python-lint (push) Has been cancelled
CI / test-backend (push) Has been cancelled
CI / build (push) Has been cancelled
CI / secret-scanning (push) Has been cancelled
CI / dependency-scan (push) Has been cancelled
CI / sast-scan (push) Has been cancelled
CI / workflow-summary (push) Has been cancelled
CI / lint-and-type-check (push) 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
CI / lint-and-type-check (pull_request) Has been cancelled
2026-01-08 11:04:19 -05:00
c0267f262d chore: Refine CI workflow to skip push events on feature branches
Some checks failed
CI / skip-ci-check (push) Successful in 1m29s
CI / skip-ci-check (pull_request) Successful in 1m28s
CI / python-lint (push) Has been cancelled
CI / test-backend (push) Has been cancelled
CI / build (push) Has been cancelled
CI / secret-scanning (push) Has been cancelled
CI / dependency-scan (push) Has been cancelled
CI / sast-scan (push) Has been cancelled
CI / workflow-summary (push) Has been cancelled
CI / lint-and-type-check (push) 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
CI / lint-and-type-check (pull_request) Has been cancelled
This commit updates the CI workflow to skip push events on feature branches, encouraging the use of pull request events instead. Additionally, it enhances the concurrency management by using commit SHA for grouping runs, preventing duplicate executions for the same commit. These changes improve the efficiency and clarity of the CI process.
2026-01-08 10:59:51 -05:00
2f6dae5f8c chore: Update CI workflow to prevent duplicate runs for push and PR events
Some checks failed
CI / skip-ci-check (push) Successful in 1m27s
CI / skip-ci-check (pull_request) Successful in 1m27s
CI / python-lint (push) Has been cancelled
CI / test-backend (push) Has been cancelled
CI / build (push) Has been cancelled
CI / secret-scanning (push) Has been cancelled
CI / dependency-scan (push) Has been cancelled
CI / sast-scan (push) Has been cancelled
CI / workflow-summary (push) Has been cancelled
CI / lint-and-type-check (push) Has been cancelled
CI / lint-and-type-check (pull_request) Successful in 2m5s
CI / python-lint (pull_request) Successful in 1m52s
CI / test-backend (pull_request) Successful in 3m17s
CI / build (pull_request) Successful in 2m24s
CI / secret-scanning (pull_request) Successful in 1m40s
CI / dependency-scan (pull_request) Successful in 1m34s
CI / sast-scan (pull_request) Successful in 2m48s
CI / workflow-summary (pull_request) Successful in 1m26s
This commit modifies the CI workflow configuration to group runs by workflow name and either PR number or branch name. This change prevents duplicate runs when both push and PR events are triggered for the same commit, enhancing the efficiency of the CI process.
2026-01-07 15:31:18 -05:00
1bf7cdf4ab chore: Update backend test command and add test runner script
Some checks failed
CI / skip-ci-check (push) Successful in 1m27s
CI / skip-ci-check (pull_request) Successful in 1m26s
CI / python-lint (push) Has been cancelled
CI / test-backend (push) Has been cancelled
CI / build (push) Has been cancelled
CI / secret-scanning (push) Has been cancelled
CI / dependency-scan (push) Has been cancelled
CI / sast-scan (push) Has been cancelled
CI / workflow-summary (push) Has been cancelled
CI / lint-and-type-check (push) Has been cancelled
CI / lint-and-type-check (pull_request) Successful in 2m5s
CI / python-lint (pull_request) Successful in 1m52s
CI / test-backend (pull_request) Successful in 3m19s
CI / build (pull_request) Successful in 2m24s
CI / secret-scanning (pull_request) Successful in 1m41s
CI / dependency-scan (pull_request) Successful in 1m32s
CI / sast-scan (pull_request) Successful in 2m43s
CI / workflow-summary (pull_request) Successful in 1m26s
This commit modifies the backend test command in `package.json` to skip DeepFace during tests by setting the `SKIP_DEEPFACE_IN_TESTS` environment variable. Additionally, a new `run_tests.sh` script is introduced to streamline the testing process, ensuring the virtual environment is set up and dependencies are installed before running the tests. These changes enhance the testing workflow and improve reliability.
2026-01-07 15:23:16 -05:00
364974141d chore: Add pytest configuration and update CI to skip DeepFace during tests
Some checks failed
CI / skip-ci-check (push) Successful in 1m27s
CI / lint-and-type-check (push) Has been cancelled
CI / python-lint (push) Has been cancelled
CI / test-backend (push) Has been cancelled
CI / build (push) Has been cancelled
CI / secret-scanning (push) Has been cancelled
CI / dependency-scan (push) Has been cancelled
CI / sast-scan (push) Has been cancelled
CI / workflow-summary (push) Has been cancelled
CI / skip-ci-check (pull_request) Successful in 1m27s
CI / lint-and-type-check (pull_request) Successful in 2m6s
CI / python-lint (pull_request) Successful in 1m54s
CI / test-backend (pull_request) Successful in 3m39s
CI / build (pull_request) Successful in 2m24s
CI / secret-scanning (pull_request) Successful in 1m40s
CI / dependency-scan (pull_request) Successful in 1m33s
CI / sast-scan (pull_request) Successful in 2m47s
CI / workflow-summary (pull_request) Successful in 1m26s
This commit introduces a new `pytest.ini` configuration file for backend tests, specifying test discovery patterns and output options. Additionally, the CI workflow is updated to set an environment variable that prevents DeepFace and TensorFlow from loading during tests, avoiding illegal instruction errors on certain CPUs. The face service and pose detection modules are modified to conditionally import DeepFace and RetinaFace based on this environment variable, enhancing test reliability. These changes improve the testing setup and contribute to a more robust CI process.
2026-01-07 15:02:41 -05:00
77ffbdcc50 chore: Update CI workflow and testing setup with new dependencies and test plan documentation
Some checks failed
CI / skip-ci-check (push) Successful in 1m27s
CI / lint-and-type-check (push) Has been cancelled
CI / python-lint (push) Has been cancelled
CI / test-backend (push) Has been cancelled
CI / build (push) Has been cancelled
CI / secret-scanning (push) Has been cancelled
CI / dependency-scan (push) Has been cancelled
CI / sast-scan (push) Has been cancelled
CI / workflow-summary (push) Has been cancelled
CI / skip-ci-check (pull_request) Successful in 1m27s
CI / lint-and-type-check (pull_request) Successful in 2m5s
CI / python-lint (pull_request) Successful in 1m51s
CI / test-backend (pull_request) Successful in 2m44s
CI / build (pull_request) Successful in 2m24s
CI / secret-scanning (pull_request) Successful in 1m39s
CI / dependency-scan (pull_request) Successful in 1m33s
CI / sast-scan (pull_request) Successful in 2m45s
CI / workflow-summary (pull_request) Successful in 1m26s
This commit enhances the CI workflow by adding steps to create test databases and install new testing dependencies, including `pytest`, `httpx`, and `pytest-cov`. Additionally, comprehensive test plan documentation is introduced to outline the structure and best practices for backend API tests. These changes improve the testing environment and contribute to a more robust CI process.
2026-01-07 14:53:26 -05:00
8f8aa33503 fix: Update null check in PhotoViewerClient component for improved type safety
Some checks failed
CI / skip-ci-check (push) Successful in 1m27s
CI / skip-ci-check (pull_request) Successful in 1m26s
CI / python-lint (push) Has been cancelled
CI / test-backend (push) Has been cancelled
CI / build (push) Has been cancelled
CI / secret-scanning (push) Has been cancelled
CI / dependency-scan (push) Has been cancelled
CI / sast-scan (push) Has been cancelled
CI / workflow-summary (push) Has been cancelled
CI / lint-and-type-check (push) Has been cancelled
CI / lint-and-type-check (pull_request) Successful in 2m5s
CI / python-lint (pull_request) Successful in 1m52s
CI / test-backend (pull_request) Successful in 2m54s
CI / build (pull_request) Successful in 2m23s
CI / secret-scanning (pull_request) Successful in 1m40s
CI / dependency-scan (pull_request) Successful in 1m32s
CI / sast-scan (pull_request) Successful in 2m41s
CI / workflow-summary (pull_request) Successful in 1m26s
This commit modifies the null check in the `PhotoViewerClient` component to use `!=` instead of `!==`, ensuring that the filter correctly identifies non-null persons. This change enhances type safety and maintains consistency in handling potential null values.
2026-01-07 14:28:34 -05:00
2e735f3b5a chore: Add script to start all servers and update package.json
Some checks failed
CI / skip-ci-check (push) Successful in 1m27s
CI / skip-ci-check (pull_request) Successful in 1m26s
CI / python-lint (push) Has been cancelled
CI / test-backend (push) Has been cancelled
CI / build (push) Has been cancelled
CI / secret-scanning (push) Has been cancelled
CI / dependency-scan (push) Has been cancelled
CI / sast-scan (push) Has been cancelled
CI / workflow-summary (push) Has been cancelled
CI / lint-and-type-check (push) Has been cancelled
CI / lint-and-type-check (pull_request) Successful in 2m6s
CI / python-lint (pull_request) Successful in 1m52s
CI / test-backend (pull_request) Successful in 2m43s
CI / build (pull_request) Successful in 2m23s
CI / secret-scanning (pull_request) Successful in 1m40s
CI / dependency-scan (pull_request) Successful in 1m34s
CI / sast-scan (pull_request) Successful in 2m45s
CI / workflow-summary (pull_request) Successful in 1m26s
This commit introduces a new script, `start_all.sh`, to facilitate the simultaneous startup of the backend, admin frontend, and viewer frontend servers. Additionally, the `package.json` file is updated to include a new command, `dev:all`, for executing this script. These changes enhance the development workflow by streamlining the server startup process.
2026-01-07 14:05:13 -05:00
570c2cba97 chore: Update CI workflow to initialize both main and auth database schemas
Some checks failed
CI / skip-ci-check (push) Successful in 1m27s
CI / lint-and-type-check (push) Has been cancelled
CI / python-lint (push) Has been cancelled
CI / test-backend (push) Has been cancelled
CI / build (push) Has been cancelled
CI / secret-scanning (push) Has been cancelled
CI / dependency-scan (push) Has been cancelled
CI / sast-scan (push) Has been cancelled
CI / workflow-summary (push) Has been cancelled
CI / skip-ci-check (pull_request) Successful in 1m26s
CI / lint-and-type-check (pull_request) Successful in 2m5s
CI / python-lint (pull_request) Successful in 1m54s
CI / test-backend (pull_request) Failing after 3m21s
CI / build (pull_request) Successful in 2m24s
CI / secret-scanning (pull_request) Successful in 1m40s
CI / dependency-scan (pull_request) Successful in 1m33s
CI / sast-scan (pull_request) Successful in 2m45s
CI / workflow-summary (pull_request) Successful in 1m26s
This commit modifies the CI workflow to include a step for initializing both the main and authentication database schemas, ensuring that the necessary database structure is in place before running tests. This enhancement contributes to a more robust CI process and improves the overall development workflow.
2026-01-07 13:51:37 -05:00
d0eed824c0 chore: Enhance CI workflow with database schema initialization and testing dependencies
Some checks failed
CI / skip-ci-check (push) Successful in 1m27s
CI / lint-and-type-check (push) Has been cancelled
CI / python-lint (push) Has been cancelled
CI / test-backend (push) Has been cancelled
CI / build (push) Has been cancelled
CI / secret-scanning (push) Has been cancelled
CI / dependency-scan (push) Has been cancelled
CI / sast-scan (push) Has been cancelled
CI / workflow-summary (push) Has been cancelled
CI / skip-ci-check (pull_request) Successful in 1m26s
CI / lint-and-type-check (pull_request) Successful in 2m6s
CI / python-lint (pull_request) Successful in 1m52s
CI / test-backend (pull_request) Successful in 2m42s
CI / build (pull_request) Successful in 2m25s
CI / secret-scanning (pull_request) Successful in 1m40s
CI / dependency-scan (pull_request) Successful in 1m33s
CI / sast-scan (pull_request) Successful in 2m44s
CI / workflow-summary (pull_request) Successful in 1m26s
This commit updates the CI workflow to include a step for initializing database schemas, ensuring that the necessary database structure is in place before running tests. Additionally, it installs `pytest` and `httpx` as testing dependencies, improving the testing environment. These changes contribute to a more robust CI process and enhance the overall development workflow.
2026-01-07 13:38:27 -05:00
2020e84f94 chore: Enforce dynamic rendering in viewer frontend pages to optimize build process
Some checks failed
CI / skip-ci-check (push) Successful in 1m27s
CI / skip-ci-check (pull_request) Successful in 1m27s
CI / python-lint (push) Has been cancelled
CI / test-backend (push) Has been cancelled
CI / build (push) Has been cancelled
CI / secret-scanning (push) Has been cancelled
CI / dependency-scan (push) Has been cancelled
CI / sast-scan (push) Has been cancelled
CI / workflow-summary (push) Has been cancelled
CI / lint-and-type-check (push) Has been cancelled
CI / lint-and-type-check (pull_request) Successful in 2m6s
CI / python-lint (pull_request) Successful in 1m54s
CI / test-backend (pull_request) Successful in 2m38s
CI / build (pull_request) Successful in 2m24s
CI / secret-scanning (pull_request) Successful in 1m40s
CI / dependency-scan (pull_request) Successful in 1m33s
CI / sast-scan (pull_request) Successful in 2m44s
CI / workflow-summary (pull_request) Successful in 1m26s
This commit adds dynamic rendering to the main page, photo detail page, and search page in the viewer frontend. By enforcing dynamic rendering, we prevent database queries during the build process, enhancing application performance and reliability. These changes contribute to a more efficient development workflow and improve the overall user experience.
2026-01-07 13:30:36 -05:00
a639189c23 chore: Dynamically import email functions in authentication routes to optimize build process
Some checks failed
CI / skip-ci-check (push) Successful in 1m27s
CI / skip-ci-check (pull_request) Successful in 1m26s
CI / python-lint (push) Has been cancelled
CI / test-backend (push) Has been cancelled
CI / build (push) Has been cancelled
CI / secret-scanning (push) Has been cancelled
CI / dependency-scan (push) Has been cancelled
CI / sast-scan (push) Has been cancelled
CI / workflow-summary (push) Has been cancelled
CI / lint-and-type-check (push) Has been cancelled
CI / lint-and-type-check (pull_request) Successful in 2m5s
CI / python-lint (pull_request) Successful in 1m51s
CI / test-backend (pull_request) Successful in 2m39s
CI / build (pull_request) Failing after 2m23s
CI / secret-scanning (pull_request) Successful in 1m40s
CI / dependency-scan (pull_request) Successful in 1m33s
CI / sast-scan (pull_request) Successful in 2m47s
CI / workflow-summary (pull_request) Successful in 1m25s
This commit modifies the authentication routes to dynamically import email functions, preventing Resend initialization during the build. This change enhances the application's performance and reliability by ensuring that unnecessary initializations do not occur at build time. These updates contribute to a more efficient development workflow and improve the overall user experience.
2026-01-07 13:21:40 -05:00
36127ed97c chore: Update CI workflow and enhance dynamic rendering for authentication routes
Some checks failed
CI / skip-ci-check (push) Successful in 1m27s
CI / skip-ci-check (pull_request) Successful in 1m27s
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
CI / lint-and-type-check (push) Successful in 2m5s
CI / python-lint (push) Successful in 1m51s
CI / test-backend (push) Successful in 2m39s
CI / build (push) Failing after 2m23s
CI / secret-scanning (push) Successful in 1m40s
CI / dependency-scan (push) Successful in 1m33s
CI / sast-scan (push) Successful in 2m45s
CI / workflow-summary (push) Successful in 1m25s
This commit adds environment variables for Resend API integration in the CI workflow, ensuring proper configuration for build processes. Additionally, it enforces dynamic rendering in the authentication routes to prevent Resend initialization during build, improving the application's performance and reliability. These changes contribute to a more robust development environment and enhance the overall user experience.
2026-01-07 13:13:16 -05:00
f038238a69 chore: Enhance CI workflow with dependency audits and update package versions
Some checks failed
CI / skip-ci-check (push) Successful in 1m27s
CI / skip-ci-check (pull_request) Successful in 1m26s
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
CI / lint-and-type-check (push) Successful in 2m5s
CI / python-lint (push) Successful in 1m51s
CI / test-backend (push) Successful in 2m38s
CI / build (push) Failing after 2m23s
CI / secret-scanning (push) Successful in 1m40s
CI / dependency-scan (push) Successful in 1m32s
CI / sast-scan (push) Successful in 2m46s
CI / workflow-summary (push) Successful in 1m25s
This commit updates the CI workflow to include steps for auditing dependencies in both the admin and viewer frontends, ensuring that vulnerabilities are identified and addressed. Additionally, it updates the `package-lock.json` and `package.json` files to reflect the latest versions of `vite` and other dependencies, improving overall project stability and security. These changes contribute to a more robust development environment and maintain code quality.
2026-01-07 13:04:01 -05:00
b6a9765315 chore: Update project configuration and enhance code quality
Some checks failed
CI / skip-ci-check (push) Successful in 1m27s
CI / skip-ci-check (pull_request) Successful in 1m27s
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
CI / lint-and-type-check (push) Successful in 2m4s
CI / python-lint (push) Successful in 1m53s
CI / test-backend (push) Successful in 2m37s
CI / build (push) Failing after 2m13s
CI / secret-scanning (push) Successful in 1m40s
CI / dependency-scan (push) Successful in 1m34s
CI / sast-scan (push) Successful in 2m42s
CI / workflow-summary (push) Successful in 1m26s
This commit modifies the `.gitignore` file to exclude Python library directories while ensuring the viewer-frontend's `lib` directory is not ignored. It also updates the `package.json` to activate the virtual environment during backend tests, improving the testing process. Additionally, the CI workflow is enhanced to prevent duplicate runs for branches with open pull requests. Various components in the viewer frontend are updated to ensure consistent naming conventions and improve type safety. These changes contribute to a cleaner codebase and a more efficient development workflow.
2026-01-07 12:29:17 -05:00
36b84fc355 chore: Update CI workflow to install Node.js for build steps
Some checks failed
CI / skip-ci-check (push) Successful in 1m25s
CI / skip-ci-check (pull_request) Successful in 1m25s
CI / lint-and-type-check (push) Successful in 2m2s
CI / python-lint (push) Successful in 1m51s
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
CI / test-backend (push) Successful in 2m33s
CI / build (push) Failing after 2m11s
CI / secret-scanning (push) Successful in 1m40s
CI / dependency-scan (push) Successful in 1m31s
CI / sast-scan (push) Successful in 2m54s
CI / workflow-summary (push) Successful in 1m25s
This commit modifies the CI workflow configuration to include steps for installing Node.js, ensuring that the necessary environment is set up for subsequent build actions. Additionally, it updates the PhotoViewer component to use the correct type for the slideshow timer reference, and introduces a new function for unmatching faces in the Modify page. Unused code comments in the Tags page are also updated for clarity. These changes enhance the development workflow and maintain code quality.
2026-01-06 14:04:22 -05:00
75a4dc7a4f chore: Update ESLint configuration and clean up unused code in admin frontend
Some checks failed
CI / skip-ci-check (push) Successful in 1m26s
CI / lint-and-type-check (push) Successful in 2m2s
CI / python-lint (push) Failing after 1m26s
CI / test-backend (push) Failing after 1m27s
CI / build (push) Failing after 1m34s
CI / secret-scanning (push) Successful in 1m39s
CI / dependency-scan (push) Successful in 1m32s
CI / sast-scan (push) Successful in 2m49s
CI / skip-ci-check (pull_request) Successful in 1m25s
CI / workflow-summary (push) Successful in 1m24s
CI / lint-and-type-check (pull_request) Successful in 2m2s
CI / python-lint (pull_request) Failing after 1m24s
CI / test-backend (pull_request) Failing after 1m25s
CI / build (pull_request) Failing after 1m34s
CI / secret-scanning (pull_request) Successful in 1m39s
CI / dependency-scan (pull_request) Successful in 1m32s
CI / sast-scan (pull_request) Successful in 2m47s
CI / workflow-summary (pull_request) Successful in 1m25s
This commit modifies the ESLint configuration to include an additional TypeScript project file and adjusts the maximum line length to 120 characters. It also removes unused functions and imports across various components in the admin frontend, enhancing code clarity and maintainability. These changes contribute to a cleaner codebase and improved development experience.
2026-01-06 13:53:41 -05:00
de2144be2a feat: Add new scripts and update project structure for database management and user authentication
This commit introduces several new scripts for managing database operations, including user creation, permission grants, and data migrations. It also adds new documentation files to guide users through the setup and configuration processes. Additionally, the project structure is updated to enhance organization and maintainability, ensuring a smoother development experience for contributors. These changes support the ongoing transition to a web-based architecture and improve overall project functionality.
2026-01-06 13:53:24 -05:00