feat: Document completed tasks for KMS, Cryptography, and Plugin Libraries
- Added detailed task completion records for KMS interface implementation and CLI support for file-based keys. - Documented security enhancements including Argon2id password hashing, audit event contracts, and rate limiting configurations. - Included scoped service support and integration updates for the Plugin platform, ensuring proper DI handling and testing coverage.
This commit is contained in:
@@ -39,6 +39,7 @@ using StellaOps.Auth.Abstractions;
|
||||
using StellaOps.Auth.Client;
|
||||
using StellaOps.Auth.ServerIntegration;
|
||||
using StellaOps.Aoc;
|
||||
using StellaOps.Aoc.AspNetCore.Results;
|
||||
using StellaOps.Concelier.WebService.Contracts;
|
||||
using StellaOps.Concelier.Core.Aoc;
|
||||
using StellaOps.Concelier.Core.Raw;
|
||||
@@ -869,39 +870,9 @@ static DateTimeOffset? ParseDateTime(string? value)
|
||||
|
||||
IResult MapAocGuardException(HttpContext context, ConcelierAocGuardException exception)
|
||||
{
|
||||
var violations = exception.Violations
|
||||
.Select(v => new
|
||||
{
|
||||
code = v.ErrorCode,
|
||||
path = v.Path,
|
||||
message = v.Message
|
||||
})
|
||||
.ToArray();
|
||||
|
||||
var status = MapErrorCodeToStatus(exception.PrimaryErrorCode);
|
||||
var extensions = new Dictionary<string, object?>(StringComparer.Ordinal)
|
||||
{
|
||||
["code"] = exception.PrimaryErrorCode,
|
||||
["violations"] = violations
|
||||
};
|
||||
|
||||
return Problem(
|
||||
context,
|
||||
"Aggregation-Only Contract violation",
|
||||
status,
|
||||
ProblemTypes.Validation,
|
||||
$"AOC guard rejected the request with {exception.PrimaryErrorCode}.",
|
||||
extensions);
|
||||
var guardException = new AocGuardException(exception.Result);
|
||||
return AocHttpResults.Problem(context, guardException);
|
||||
}
|
||||
|
||||
static int MapErrorCodeToStatus(string errorCode) => errorCode switch
|
||||
{
|
||||
"ERR_AOC_003" => StatusCodes.Status409Conflict,
|
||||
"ERR_AOC_004" => StatusCodes.Status422UnprocessableEntity,
|
||||
"ERR_AOC_005" => StatusCodes.Status422UnprocessableEntity,
|
||||
"ERR_AOC_006" => StatusCodes.Status403Forbidden,
|
||||
_ => StatusCodes.Status400BadRequest,
|
||||
};
|
||||
|
||||
static KeyValuePair<string, object?>[] BuildJobMetricTags(string jobKind, string trigger, string outcome)
|
||||
=> new[]
|
||||
|
||||
Reference in New Issue
Block a user