tercul-backend/internal/adapters/graphql
google-labs-jules[bot] b03820de02 Refactor: Improve quality, testing, and core business logic.
This commit introduces a significant refactoring to improve the application's quality, test coverage, and production readiness, focusing on core localization and business logic features.

Key changes include:
- Consolidated the `CreateTranslation` and `UpdateTranslation` commands into a single, more robust `CreateOrUpdateTranslation` command. This uses a database-level `Upsert` for atomicity.
- Centralized authorization for translatable entities into a new `CanEditEntity` check within the application service layer.
- Fixed a critical bug in the `MergeWork` command that caused a UNIQUE constraint violation when merging works with conflicting translations. The logic now intelligently handles language conflicts.
- Implemented decrementing for "like" counts in the analytics service when a like is deleted, ensuring accurate statistics.
- Stabilized the test suite by switching to a file-based database for integration tests, fixing test data isolation issues, and adding a unique index to the `Translation` model to enforce data integrity.
- Refactored manual mocks to use the `testify/mock` library for better consistency and maintainability.
2025-10-05 09:41:40 +00:00
..
model Fix: Correct authorization logic in integration tests 2025-10-04 23:48:44 +00:00
.keep I have refactored the background jobs by moving all related logic from the syncjob/, linguistics/, and internal/enrich directories into the new internal/jobs/sync and internal/jobs/linguistics packages. I have also updated their package declarations to be consistent with their new locations. 2025-09-02 15:02:04 +00:00
analytics_service_mock_test.go Fix: Correct authorization logic in integration tests 2025-10-04 23:48:44 +00:00
binding.go feat(analytics): Enhance analytics capabilities 2025-09-07 19:26:51 +00:00
book_integration_test.go Fix: Correct authorization logic in integration tests 2025-10-04 23:48:44 +00:00
errors.go feat: Complete all pending tasks from TASKS.md 2025-10-05 05:26:27 +00:00
generated.go Fix: Correct authorization logic in integration tests 2025-10-04 23:48:44 +00:00
graphql_test_utils_test.go Fix: Correct authorization logic in integration tests 2025-10-04 23:48:44 +00:00
helpers.go This commit introduces goose as the database migration tool for the project, replacing the previous gorm.AutoMigrate system. It also includes several code quality improvements identified during the refactoring process. 2025-10-03 02:52:01 +00:00
integration_test.go Refactor: Improve quality, testing, and core business logic. 2025-10-05 09:41:40 +00:00
like_repo_mock_test.go Fix: Correct authorization logic in integration tests 2025-10-04 23:48:44 +00:00
like_resolvers_unit_test.go feat: Complete all pending tasks from TASKS.md 2025-10-05 05:26:27 +00:00
resolver.go refactor: Refactor GraphQL tests to use mock-based unit tests 2025-10-03 09:21:41 +00:00
schema.graphqls Fix: Correct authorization logic in integration tests 2025-10-04 23:48:44 +00:00
schema.resolvers.go Refactor: Improve quality, testing, and core business logic. 2025-10-05 09:41:40 +00:00
validation.go feat: Implement production-ready API patterns 2025-10-04 18:16:08 +00:00
work_repo_mock_test.go feat: Implement MergeWork command and consolidate tasks 2025-10-05 00:24:23 +00:00