Modules/businessdev.ALbuild.Environments/Private/Test-BcEnvironmentExpired.ps1

function Test-BcEnvironmentExpired {
    <#
    .SYNOPSIS
        Returns whether an environment's expiry timestamp is in the past.
    .DESCRIPTION
        Internal, pure helper. Parses an ISO-8601 'expiresAt' value and compares it to a reference
        time (default: now). Unparseable values are treated as not expired (fail safe).
    #>

    [CmdletBinding()]
    [OutputType([bool])]
    param(
        [AllowNull()] [AllowEmptyString()] [string] $ExpiresAt,
        [datetime] $ReferenceTime = (Get-Date)
    )

    if ([string]::IsNullOrWhiteSpace($ExpiresAt)) { return $false }
    [datetime] $parsed = [datetime]::MinValue
    if (-not [datetime]::TryParse($ExpiresAt, [ref] $parsed)) { return $false }
    return $parsed -lt $ReferenceTime
}