49dfabc141
An Applied+Degraded ack keeps NodeDeploymentState.Status = Applied with FailureReason 'Applied degraded: <reason>' (no enum/migration change). The deployment still seals (the revision is running; latest-sealed drives drift) but Deployment.FailureReason names the degraded nodes and the seal logs at Warning. Recovered from the DB on singleton failover. Old-node acks (no field, DPS JSON or gRPC) behave exactly as before. Claude-Session: https://claude.ai/code/session_01Ef2ozxS7QPanGT8uoATbTe