18fb5f8ac2
refactor(find): use polymorphic outputs for not found cases
...
Replace not-found exceptions in Arcadia find/show flows with typed outputs (Found*/NotFoundOutput) and map not-found results in presenters/responses while preserving HTTP 404 problem details.
Adjust architecture and unit tests to cover concrete output classes, and remove obsolete Arcadia not-found exception classes and their tests.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-05 15:50:01 +02:00
d63723a113
feat(inco): add description field to IncoShort projection and OpenAPI schema
2026-09-16 10:18:00 +02:00
d94f78dace
test(unit): update application and infra unit tests with Pagination VOs and GWT format
2026-09-15 12:49:03 +02:00
7312289811
feat(employees): rename ArcadiaEmployeeId to SiRhMatricule and expose matricule in api responses
2026-08-31 17:29:18 +02:00
71f97b16e3
refactor(string): centralize string encoding and normalization in StringEncoder & StringHelper, normalize BrandName to titleCase
2026-08-31 15:36:16 +02:00
46ab5e4325
feat(health): add Arcadia database conformity check with diff hashing and synchronous alerting
2026-08-28 14:12:33 +02:00
197aedbc5e
refactor(health): remove toArray from HealthCheckResult DTO and encapsulate serialization in HealthCheckResponse
2026-08-27 15:19:36 +02:00
e31767cfd0
refactor(brand): make ArcadiaId strictly string value extending EntityId
2026-08-24 21:45:04 +02:00
4421d34a43
feat(health): implement strictly-typed health check subsystem with DB, cache, and SMTP checks
2026-08-21 16:47:14 +02:00
891b21ba61
test(security): add unit tests for audit entities, presenter, and ClientConsoleResolver
2026-08-21 16:16:26 +02:00
1df3a27c98
feat(config): introduce typed configuration objects, dedicated value objects and enforce global class referencing
2026-08-21 15:01:36 +02:00
0063727790
refactor(tests): fix IncoSheets directory casing
2026-08-21 14:31:14 +02:00
a82a1558bd
feat(security): add arcadia:security:audit-logs CLI command with CSV export and typed audit details
2026-08-21 14:30:20 +02:00
62289d2222
refactor(domain): introduce Domain Builders for IncoComposition and IncoSheet
2026-08-21 10:13:43 +02:00
abe60df95f
feat(event): implement BrandCreated event and listeners
...
- Added BrandCreated event to encapsulate brand creation details.
- Created LogBrandCreated listener to log brand creation events.
- Updated BrandResolver to dispatch BrandCreated event upon new brand creation.
- Introduced EventServiceProvider to register event listeners.
- Added unit tests for BrandCreated event and LogBrandCreated listener.
2026-08-21 09:45:06 +02:00
8f933db9fa
feat(inco): migrate to IncoBrand VO, BrandResolver domain service and BrandCode filtering
2026-08-20 18:16:31 +02:00
1f8f03e6d8
feat(brand): add Brand use cases, API v1 endpoints, console command, OpenAPI spec and Bruno collection
2026-08-20 17:35:47 +02:00
6be00bb21e
refactor(domain): make read-only entity constructors private and introduce hydrate static methods
2026-08-20 15:05:33 +02:00
4d68a97889
feat(security): derive client createdAt from UUIDv7 and add HasTimestampIdentifier interface
2026-08-20 12:53:07 +02:00
bad76036f1
feat(security): add FindClient use case with Paginated search and anticipate in console commands
2026-08-18 17:45:42 +02:00
d3786aaed6
feat(console): add CreateClient command and enforce unique slug for ApiClient
2026-08-18 17:31:29 +02:00
43758922ad
feat(console): add ToggleClientStatus command and related logic
...
- Implemented command to toggle client status via console.
- Introduced SetClientStatus use case for managing client activation.
- Added presenters and views for command output.
- Created tests for command functionality and edge cases.
2026-08-18 16:56:15 +02:00
e7f5f71005
feat(arcadia): add dedicated NotFound exceptions for Employee, IncoSheet and IncoComposition
2026-08-18 12:09:35 +02:00
fa86b9c4e6
feat(security): implement security bounded context entities, value objects, ports, use cases and unit tests
2026-08-18 12:03:25 +02:00
5c10d51fba
feat(infra): add in-memory directory and repository doubles with unit tests and refactor usecase tests to pure black-box
2026-08-18 11:54:47 +02:00
1fdf7ea9cc
refactor(application): move usecases under Application\Arcadia\Usecase and NotFoundException to Application\Shared\Exceptions
2026-08-17 11:18:53 +02:00
8f82f86966
refactor(application): unify filter and sorter VOs between Application and Domain layers
2026-08-14 16:28:44 +02:00
2900c85b33
test(IncoSheets): add test for PaginatedShortIncoSheet instantiation
...
Added a test to verify the correct instantiation of PaginatedShortIncoSheet
from the IncoShortSheet domain entity.
2026-08-14 16:26:08 +02:00
bfe0b0010c
feat(IncoSheets): introduce IncoShortSheet entity and IncoShortSheetDirectory with SQL select optimization and search pagination
2026-08-14 16:15:49 +02:00
91114cb67b
feat(inco-compositions): add IncoCompositionShow feature
...
- Implemented IncoCompositionShowController to handle requests for inco composition details.
- Created IncoCompositionDto for response data structure.
- Added IncoCompositionShowRequest for request validation.
- Developed IncoCompositionShowResponse for formatting API responses.
- Introduced IncoCompositionShowPresenter and IncoCompositionShowView for presentation logic.
- Added tests for IncoCompositionShow feature and OpenAPI conformance.
2026-08-14 15:56:58 +02:00
f667532ff7
refactor(domain): regroup Inco entities and Value Objects under Inco/ and Inco/Composition/
2026-08-14 15:38:10 +02:00
753456368c
style: format code for consistency and readability
...
Refactor code formatting for improved consistency across multiple files.
2026-08-14 11:50:26 +02:00
152ee2b5a2
feat(api): add IncoSheets feature with DDD clean architecture, tests & OpenAPI spec
...
- Use cases: FindAllIncoSheets & FindIncoSheet (filters, pagination, short projection)
- Presentation: controllers, FormRequests with scalar validation, DTOs (camelCase)
- Ports & Adapters: IncoSheetDirectory & EloquentIncoSheetDirectory
- Tests: Pest 4 unit, integration, OpenAPI spectator conformance, dynamic arch tests
- Docs: updated Bruno collection and OpenAPI spec
2026-08-14 11:33:05 +02:00
53b0dd9f1e
feat(employees): implement filtering and sorting for employee retrieval
...
Added Filter and Sorter classes to handle employee filtering and sorting criteria. Updated FindAllEmployees use case to utilize these new classes for improved employee data retrieval.
2026-08-14 09:30:21 +02:00