feat(core): add core module with mixins, services, and background jobs

- Add Model Mixins: TimestampMixin, SoftDeleteMixin, AuditMixin, etc.
- Add Base Services: BaseService, BulkOperationsMixin, QueryOptimizerMixin
- Add Base ViewSets with bulk operations
- Add BackgroundJob model for Celery task tracking
- Add BaseAppCommand for management commands
- Add permissions, pagination, filters, cache, logging
- Migrate tests to factory_boy + faker
- Add CHANGELOG.md
- 297 tests passing
This commit is contained in:
2026-01-21 11:47:26 +01:00
parent 06b30fca02
commit f121445313
72 changed files with 9258 additions and 594 deletions

View File

@@ -5,17 +5,17 @@ repos:
- id: ruff
name: ruff lint (src only)
files: ^src/.*\.py$
args: [--config=ruff.toml, --fix, --exit-non-zero-on-fix]
args: [--fix, --exit-non-zero-on-fix]
exclude: |
(?x)^(
src/.*/migrations/.*|
src/.*/__pycache__/.*
)$
- id: ruff-format
name: ruff format (src only)
files: ^src/.*\.py$
args: [--config=ruff.toml]
args: []
exclude: |
(?x)^(
src/.*/migrations/.*|
@@ -28,18 +28,18 @@ repos:
- id: trailing-whitespace
name: check trailing whitespace (src only)
files: ^src/.*\.(py|txt|md|yaml|yml)$
- id: end-of-file-fixer
name: fix end of file (src only)
files: ^src/.*\.(py|txt|md|yaml|yml)$
- id: check-yaml
name: check yaml syntax (src only)
files: ^src/.*\.ya?ml$
- id: check-added-large-files
name: check large files
args: ['--maxkb=500']
args: ["--maxkb=500"]
- repo: local
hooks:
@@ -53,4 +53,4 @@ repos:
(?x)^(
src/.*/migrations/.*|
src/.*/__pycache__/.*
)$
)$