namespace Svrnty.CQRS.Altcha.Abstractions;
///
/// Outcome of an Altcha solution verification.
///
public sealed class AltchaVerifyResult
{
public required bool Ok { get; init; }
///
/// Diagnostic only — not surfaced to end users. Suggested values:
/// signature-invalid, expired, pow-incorrect,
/// replayed, redis-unreachable, malformed.
///
public string? Reason { get; init; }
public static AltchaVerifyResult Success { get; } = new() { Ok = true };
public static AltchaVerifyResult Fail(string reason) => new() { Ok = false, Reason = reason };
}