Closed ikarakayali closed 1 month ago
The recent changes enhance the Amorphie workflow application by introducing new features for logging, encryption, and schema management, along with various refactorings for improved maintainability. Key updates include the addition of Elastic APM support, new utility classes like AesHelper
for encryption, and improved logging strategies. The codebase is streamlined with clearer structure and formatting, ensuring better readability and organization across multiple namespaces.
Files | Change Summary |
---|---|
amorphie.workflow.core/Constants/ElasticApmKeys.cs |
Introduced ElasticApmKeys class with a constant for TraceParent to standardize tracing keys. |
amorphie.workflow.core/Dtos/... |
Removed NewStates from WorkflowCreateDto ; added properties to PostStateDefinitionRequest and PostTransitionDefinitionRequest . |
amorphie.workflow.core/Helper/AesHelper.cs |
Implemented encryption and decryption methods for strings and JSON using AES; added methods for key creation. |
amorphie.workflow.core/Logging/... |
Introduced LoggingHelper and LoggingMiddleware for improved logging capabilities; updated logging options. |
amorphie.workflow.service/... |
Added JsonSchemaService for handling JSON schemas; refactored service classes for clarity and efficiency. |
amorphie.workflow.data/Migrations/... |
Introduced database migrations for adding TraceId to the Instances table; updated model snapshot accordingly. |
amorphie.workflow.hub/MFATypeHub.cs |
Enhanced logging and transaction tracking in connection management methods. |
amorphie.workflow.test/... |
Added unit tests for AesHelper and LoggingHelper , enhancing test coverage for encryption and data redaction functionalities. |
workflow.sln |
Added a new test project configuration for improved testing capabilities within the solution. |
sequenceDiagram
participant Client
participant WorkflowAPI
participant AesHelper
Client->>WorkflowAPI: Request to encrypt data
WorkflowAPI->>AesHelper: Call EncryptString with data
AesHelper-->>WorkflowAPI: Return encrypted data
WorkflowAPI-->>Client: Respond with encrypted data
π In the meadow, hops a rabbit bright,
With logs and keys, oh what a delight!
Encryption dances, tracing in stride,
In Amorphieβs world, we take pride.
From workflows to schemas, changes abound,
In this code garden, joy can be found! πΌ
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
Failed conditions
C Reliability Rating on New Code (required β₯ A)
See analysis details on SonarCloud
Catch issues before they fail your Quality Gate with our IDE extension SonarLint
Summary by CodeRabbit
New Features
ElasticApmKeys
class for consistent tracing in Elastic APM.TraceId
property to theInstance
class for improved tracking.AesHelper
for AES encryption and decryption of strings and JSON data.Improvements
JsonSchemaService
.Bug Fixes
Documentation
Tests
AesHelper
andLoggingHelper
to ensure functionality and data security.