=== Summary: 675 files | 7 generated | 484 fresh | 4605 untracked | 4268 adopted | 355 marked | 466 validated-ok | 2+0 stale (sig+body) | 0 skipped | 0 failed | elapsed 11:08:11.442 (40091.44s) ===

This commit is contained in:
julian
2026-06-28 02:50:05 -07:00
parent a19fb90902
commit 586f02a2ca
654 changed files with 5260 additions and 0 deletions
@@ -8,6 +8,10 @@ namespace adas_core.Application.Services.Caching
/// CacheService lo usará para evitar condiciones de carrera en GetOrSet.
/// Funciona igual para locks locales o distribuidos.
/// </summary>
/// <!-- aidoc-review:v1 severity=medium kind=missing_param
/// "Constructor parameter 'logger' (ILogger<LockManagerService>) is not documented." -->
/// <!-- aidoc-review:v1 severity=medium kind=missing_param
/// "Constructor parameter 'provider' (ILockProvider) is not documented." -->
public class LockManagerService(
ILogger<LockManagerService> logger,
ILockProvider provider)
@@ -15,6 +19,18 @@ namespace adas_core.Application.Services.Caching
/// <summary>
/// Ejecuta una función que devuelve un valor bajo un lock por clave.
/// </summary>
/// <!-- aidoc-review:v1 severity=medium kind=missing_param
/// "Parameter 'key' is not documented" -->
/// <!-- aidoc-review:v1 severity=medium kind=missing_param
/// "Parameter 'timeout' is not documented" -->
/// <!-- aidoc-review:v1 severity=medium kind=missing_param
/// "Parameter 'action' is not documented" -->
/// <!-- aidoc-review:v1 severity=medium kind=missing_param
/// "Parameter 'cancellationToken' is not documented" -->
/// <!-- aidoc-review:v1 severity=medium kind=missing_returns
/// "Method returns Task<T> via action delegate, but no <returns> tag is present" -->
/// <!-- aidoc-review:v1 severity=medium kind=missing_exception
/// "TimeoutException is thrown when the lock cannot be acquired within the timeout, but no <exception> tag is present" -->
public async Task<T> WithLockAsync<T>(
string key,
TimeSpan timeout,
@@ -57,6 +73,7 @@ namespace adas_core.Application.Services.Caching
/// <summary>
/// Version Task (sin valor).
/// </summary>
/// <!-- aidoc:v1 sig=3facc4e body=59bc0c3 -->
public Task WithLockAsync(
string key,
TimeSpan timeout,
@@ -77,6 +94,7 @@ namespace adas_core.Application.Services.Caching
/// <summary>
/// Libera el lock y registra posibles errores sin interrumpir el flujo.
/// </summary>
/// <!-- aidoc:v1 sig=88f2f04 body=608f118 -->
private async Task SafeReleaseAsync(string key)
{
try