Commit Graph

78 Commits

Author SHA1 Message Date
Sam Chau
dd77d1af35 refactor: replace PowerShell regex testing with parser service integration 2026-01-19 20:21:15 +10:30
Sam Chau
c476775bc2 feat: add SQL validation method to PCDCache and integrate it into writeOperation as final lod 2026-01-19 10:41:21 +10:30
Sam Chau
221d0fffb4 chore: formatting 2026-01-19 09:54:41 +10:30
Sam Chau
6ffc9cd5ce refactor: the great ID purge of 2026 2026-01-19 07:45:03 +10:30
Sam Chau
4f565ebd6f fix: use name+tmdbid primary key instead of auto incmremented id 2026-01-19 04:12:37 +10:30
Sam Chau
95930edc53 feat(conditions): add per-condition arr_type support 2026-01-19 03:37:26 +10:30
Sam Chau
9b2f0d393c feat(arr): add logs page for viewing Radarr/Sonarr logs 2026-01-19 02:39:59 +10:30
Sam Chau
d11e060c91 feat: flexible response parsing in HTTP client (allows text now) 2026-01-19 02:28:32 +10:30
Sam Chau
8d3e20d3c3 refactor: use base http client for notifications, parser, autocomp 2026-01-19 02:26:12 +10:30
Sam Chau
f6d99bc267 feat: run history for rename jobs 2026-01-19 01:52:26 +10:30
Sam Chau
99c5046ed8 feat: upgrade improvements - more compact settings page, improved filter builder, clearer buttons, searching / filtering, improved run history, notifications 2026-01-19 01:27:28 +10:30
Sam Chau
0ab315d4a9 feat: add summary notifs for rename jobs, rename original to rich notifs 2026-01-18 02:24:18 +10:30
Sam Chau
de39481d4d feat: renaminatorr logic, jobs, long notif support 2026-01-18 02:06:51 +10:30
Sam Chau
47ba9dd7e9 feat: manual incoming changes handling
- Enhanced Git class to include method for fetching incoming changes from remote repository.
- Implemented logic to retrieve and display incoming commits in the changes page.
- Updated API routes to handle incoming changes and pull requests.
- Modified UI components to show incoming changes and allow users to pull updates.
- Improved actions bar to disable commit actions when there are incoming changes.
- Added sync button to refresh repository status and check for updates.
2026-01-17 15:25:24 +10:30
Sam Chau
b13ec91e32 fix: set last sync after *every* sync, not just when changes are pulled 2026-01-17 14:33:46 +10:30
Sam Chau
3d1e55e46c feat: backend support for manifest/readme updates 2026-01-17 00:40:03 +10:30
Sam Chau
656a3e3114 feat: enhance entity testing with auto import releases functionality 2026-01-16 19:05:57 +10:30
Sam Chau
55c5886125 feat: remove 'none' trigger from sync strategies, add dirty tracking / unsaved changes to sync page 2026-01-15 15:39:55 +10:30
Sam Chau
cabf1ff815 fix: handle empty response body in HTTP client 2026-01-15 15:20:02 +10:30
Sam Chau
f35a01f111 feat: sync transformers and quality profile handling
- Introduced new sync transformers for custom formats and quality profiles.
- Implemented the `transformQualityProfile` function to convert PCD quality profile data to ARR API format.
- Added functions to fetch quality profiles and custom formats from PCD cache.
- Enhanced `BaseArrClient` with methods for managing custom formats and quality profiles.
- Updated types to include custom format specifications and quality profile payloads.
- Modified sync page server logic to calculate next run time for scheduled syncs.
2026-01-15 15:14:54 +10:30
Sam Chau
27835c3426 feat: add next_run_at column to sync config tables and update job schedules to cron expressions 2026-01-15 15:14:21 +10:30
Sam Chau
74b38df686 feat: add entity and release management components
- Created EntityTable component for displaying test entities with expandable rows for releases.
- Implemented ReleaseTable component to manage and display test releases with actions for editing and deleting.
- Added ReleaseModal component for creating and editing releases
- Introduced types for TestEntity, TestRelease, and related evaluations
- Enhanced general settings page to include TMDB API configuration with connection testing functionality.
- Added TMDBSettings component for managing TMDB API access token with reset and test connection features.
2026-01-14 23:50:20 +10:30
Sam Chau
aec6d79695 feat: updateLanguages, updateQualities functionality 2026-01-14 16:03:14 +10:30
Sam Chau
f4b531b61a feat: Refactor quality profile management and scoring
- Removed unsaved changes modal and related logic from qualities page.
- Enhanced scoring page with improved state management and save functionality.
- Introduced a new GeneralForm component for creating and editing quality profiles.
- Added server-side validation for duplicate quality profile names.
- Implemented delete confirmation modals for both quality profiles and regular expressions.
- Improved handling of custom format scores and enabled states in scoring table.
- Added new page for creating quality profiles with appropriate server-side logic.
- Updated regular expressions to check for duplicate names during creation and editing.
2026-01-05 01:40:23 +10:30
Sam Chau
8deef25c9e feat: add create and delete custom format functionality
- Implemented `create.ts` for creating custom formats with associated tags.
- Added `delete.ts` for deleting custom formats with cascading deletes for related entities.
- Updated `index.ts` to export new create and delete functions.
- Enhanced the server-side logic in `+page.server.ts` for handling new custom format creation.
- Created a new Svelte component `GeneralForm.svelte` for managing custom format details.
- Updated the UI in `+page.svelte` for creating new custom formats and handling form submissions.
- Integrated dirty state management for form inputs in `TestForm.svelte` and `GeneralForm.svelte`.
- Added delete functionality in the UI for custom formats with confirmation modals.
2026-01-03 04:07:08 +10:30
Sam Chau
08710ffcb4 feat: implement condition management with draft support and layer permissions
- Added server-side actions for updating conditions with layer permissions.
- Enhanced the conditions page to handle draft conditions and validation.
- Introduced a modal for selecting save targets based on user permissions.
- Refactored condition and draft condition components to emit changes immutably.
- Updated general page to manage form data more reactively and validate inputs.
2026-01-03 03:22:29 +10:30
Sam Chau
3462c8b84d feat(custom-formats): add updateGeneral functionality and integrate with the general page 2026-01-03 02:17:02 +10:30
Sam Chau
e44228d147 feat(logging): implement change tracking and logging for media settings and naming updates 2026-01-03 02:01:38 +10:30
Sam Chau
e79a2babe9 feat(delay-profiles, regular-expressions): add created_at and updated_at fields to profiles and expressions 2026-01-02 23:43:24 +10:30
Sam Chau
897cfa6b06 feat(logging): add logging for regular expression updates and creation actions 2026-01-02 23:35:04 +10:30
Sam Chau
1a9b2bb1c6 feat(delay-profiles): implement explicit ordering for delay profiles and add info modal for user guidance 2026-01-02 22:24:38 +10:30
Sam Chau
1ff6208ba7 refactor(logging): change log level from info to debug for upgrade logging 2026-01-02 22:16:11 +10:30
Sam Chau
bc55d0c7bb feat(migrations): add app_info table and change default log level to DEBUG
refactor(logging): update logging levels and improve log messages across jobs
feat(jobs): enhance job initialization and sync with database
2026-01-02 22:13:04 +10:30
Sam Chau
8c12de7f89 feat(cache): enhance cache build process with detailed stats and improve logging 2026-01-02 20:41:25 +10:30
Sam Chau
bca25af6dc refactor(scoring): remove debug logging from scoring query 2026-01-02 20:29:06 +10:30
Sam Chau
77237b54ac feat(logging): enhance logging for delay profile updates and write operations 2026-01-02 20:20:55 +10:30
Sam Chau
95795d5f0e feat: add conditions management for custom formats
- Introduced a new `listConditions` query to fetch conditions for custom formats.
- Created a new `ConditionListItem` type for better type safety.
- Added a new route for managing conditions under custom formats.
- Implemented UI components for displaying and managing conditions, including `ConditionCard` and `DraftConditionCard`.
- Enhanced the layout to include a new tab for conditions.
- Added support for various condition types and their respective options.
2025-12-31 16:40:41 +10:30
Sam Chau
56cf061a4b feat(customFormats): implement general queries and update related types and components 2025-12-31 03:31:59 +10:30
Sam Chau
445ebf1a39 feat(tests): add test count to custom formats in list and views 2025-12-31 03:13:53 +10:30
Sam Chau
5d82cc910b feat: add testing functionality for custom formats
- Implemented server-side logic for loading and managing tests in custom formats.
- Created new page for editing existing tests with form handling.
- Developed a reusable TestForm component for creating and editing test cases.
- Added functionality to create new tests with validation and error handling.
- Integrated layer permission checks for writing to base layer.
- Enhanced user experience with modals for save and delete actions.
2025-12-31 03:05:09 +10:30
Sam Chau
af269b030f feat(cache): implement regex101 cache table and queries for API response caching 2025-12-31 00:58:17 +10:30
Sam Chau
5c26d6d7b2 feat(parser): implement C# parser microservice with regex-based title parsing
- Added RegexReplace class for handling regex replacements.
- Created ReleaseGroupParser for extracting release groups from titles.
- Developed TitleParser for parsing movie titles, including editions and IDs.
- Introduced QualitySource, Resolution, QualityModifier enums and QualityResult class for quality metadata.
- Set up Dockerfile and docker-compose for containerized deployment.
- Implemented ASP.NET Core web API for parsing requests.
- Added TypeScript client for interacting with the parser service.
- Enhanced configuration to support dynamic parser service URL.
2025-12-30 10:33:52 +10:30
Sam Chau
8a3f266593 feat(custom-formats): implement custom formats management with list, detail views, and search functionality 2025-12-30 08:23:36 +10:30
Sam Chau
bd702f126c feat(media-management): enhance MediaManagementSyncer to support multiple config types and improve sync functionality 2025-12-30 07:15:44 +10:30
Sam Chau
4aa914664e feat(media-management): add Quality Definitions, Media, Naming sections for Radarr and Sonarr
- Implemented QualityDefinitionsSection component to manage quality definitions for Radarr and Sonarr.
- Added server-side logic for loading and updating quality definitions in Radarr and Sonarr.
- Created new pages for Radarr and Sonarr media management, integrating the QualityDefinitionsSection.
- Enhanced media settings and naming settings management for both Radarr and Sonarr.
- Introduced validation and logging for media settings updates.
2025-12-30 04:56:54 +10:30
Sam Chau
7e7561e35a feat: Implement regular expression management features
- Add server-side logic for loading, updating, and deleting regular expressions in +page.server.ts.
- Create a new Svelte component for editing regular expressions, including form handling and validation.
- Introduce a RegexPatternField component for managing regex patterns and associated unit tests.
- Develop a RegularExpressionForm component for both creating and editing regex entries.
- Implement a SearchFilterAction component for filtering regex entries.
- Add new routes for creating and managing regular expressions, including a preset feature for common patterns.
- Enhance the UI with CardView and TableView components for displaying regex entries in different formats.
- Integrate markdown parsing for descriptions in the UI.
2025-12-29 21:06:49 +10:30
Sam Chau
8035820156 feat(ops): implement natural sorting for uncommitted operation files 2025-12-29 21:06:17 +10:30
Sam Chau
912861abca fix(writer): improve SQL query conversion to handle multiple placeholders correctly 2025-12-29 21:06:00 +10:30
Sam Chau
54e64a2ed4 feat(config): enhance base path logic to use executable directory as fallback 2025-12-29 19:00:12 +10:30
Sam Chau
1e8fc7a42d feat(sync): implement sync functionality for delay profiles
- Added syncArrJob to handle syncing of PCD profiles and settings to arr instances.
- Created syncArr logic to process pending syncs and log results.
- Introduced BaseSyncer class for common sync operations and specific syncers for delay profiles
- Implemented fetch, transform, and push methods for delay profiles
- Added manual sync actions in the UI for delay profiles
- Enhanced logging for sync operations and error handling.
2025-12-29 05:37:55 +10:30