qubit-fs 0.2.2

Provider-neutral synchronous and asynchronous filesystem abstraction for Rust
Documentation
// =============================================================================
//    Copyright (c) 2025 - 2026 Haixing Hu.
//
//    SPDX-License-Identifier: Apache-2.0
//
//    Licensed under the Apache License, Version 2.0.
// =============================================================================
//! Recovery states for failed synchronous writes.

/// Provider-confirmed recovery state when a write commit fails.
///
/// # Examples
///
/// ```rust
/// use qubit_fs::write::WriteFailureState;
///
/// assert!(matches!(WriteFailureState::NotPublished, WriteFailureState::NotPublished));
/// ```
#[derive(Clone, Copy, Debug, Eq, PartialEq)]
pub enum WriteFailureState {
    /// Publication can be retried using the retained session.
    RetryableNotPublished,
    /// The target was not published and only cleanup remains possible.
    NotPublished,
    /// The target was published and only cleanup remains possible.
    Published,
    /// The provider cannot determine whether publication occurred.
    Indeterminate,
}