Skip to main content

Crate acyclic_fs

Crate acyclic_fs 

Source
Expand description

§acyclic-fs

Immutable, versioned workspaces with embedded and hosted backends. Generations are stable identities; mutations produce new generations instead of rewriting history.

cargo add acyclic-fs

Choose the backend for your deployment: embedded storage for local durability, hosted authority and Objects for a remote workspace, or embedded native mount integration. Transactions stage edits before commit; forks branch from a generation. The provider determines persistence, isolation, and mount guarantees.

Start with the embedded workspace example, the hosted example, or the Rust API. The v2 protocol defines compatibility.

Re-exports§

pub use async_storage::AsyncAuthorityStore;
pub use async_storage::AsyncObjectStore;
pub use async_storage::GenerationFork;
pub use async_storage::GenerationForkSource;
pub use async_storage::ImmediateAuthorityStore;
pub use async_storage::ImmediateObjectStore;
pub use cache::CachedObjectStore;
pub use cache::ObjectCacheConfigError;
pub use cache::ObjectCacheOptions;
pub use cache::ObjectCacheStats;
pub use cancellation::CancellationError;
pub use cancellation::CancellationToken;
pub use cancellation::Cancelled;
pub use core_state::LocalCoreStateStore;
pub use core_state::LocalCoreStateStoreError;
pub use distributed::ProviderObjectStore;
pub use distributed::StreamAuthorityStore;
pub use facade::AuthoredLiveMutationResult;
pub use facade::AuthoredMutation;
pub use facade::AuthoredTransactionResult;
pub use facade::Checkout;
pub use facade::CheckoutCommitOutcome;
pub use facade::ContentStager;
pub use facade::DetachedFile;
pub use facade::DirectoryBindingChange;
pub use facade::DirectoryPageRequest;
pub use facade::DirectoryRecordEntry;
pub use facade::DirectoryRecordPage;
pub use facade::EmbeddedCapabilities;
pub use facade::FileCloneRequest;
pub use facade::FileDescription;
pub use facade::FileRecordChange;
pub use facade::Fs;
pub use facade::FsError;
pub use facade::FsReceipt;
pub use facade::FsResult;
pub use facade::GenerationDiff;
pub use facade::LiveMutationOutcome;
pub use facade::MergeConflict;
pub use facade::MergePreparation;
pub use facade::NamedAttributeWriteMode;
pub use facade::PathMetadataLookup;
pub use facade::PinnedReader;
pub use facade::ResolvedDirectoryEntry;
pub use facade::ResolvedDirectoryPage;
pub use facade::ResolvedFile;
pub use facade::ResolvedFileRangeReadRequest;
pub use facade::StagedContent;
pub use facade::Volume;
pub use facade::LocalAuthorityBackend;
pub use facade::LocalFs;
pub use facade::LocalGarbageCollection;
pub use facade::LocalObjectBackend;
pub use facade::LocalOperationWindowStore;
pub use facade::LocalOptions;
pub use facade::LocalVolume;
pub use facade::MemoryAuthorityBackend;
pub use facade::MemoryFs;
pub use facade::MemoryObjectBackend;
pub use foundation::AUTHORITY_COMMIT_DIGEST_ENVELOPE_BYTES;
pub use foundation::AuthorityId;
pub use foundation::CheckoutId;
pub use foundation::Digest;
pub use foundation::DurableCommit;
pub use foundation::Epoch;
pub use foundation::FileId;
pub use foundation::GenerationId;
pub use foundation::Head;
pub use foundation::MountId;
pub use foundation::OperationId;
pub use foundation::ProposedCommit;
pub use foundation::Sequence;
pub use foundation::VolumeId;
pub use foundation::WatchId;
pub use foundation::authority_commit_digest;
pub use git_compat::GitBisectResult;
pub use git_compat::GitBisectState;
pub use git_compat::GitBlameLine;
pub use git_compat::GitBranch;
pub use git_compat::GitCaptureAuthenticationError;
pub use git_compat::GitCaptureError;
pub use git_compat::GitCaptureProof;
pub use git_compat::GitCapturedGeneration;
pub use git_compat::GitCommand;
pub use git_compat::GitCommandOutput;
pub use git_compat::GitCommit;
pub use git_compat::GitCommitId;
pub use git_compat::GitCompatError;
pub use git_compat::GitCompatRepository;
pub use git_compat::GitCompatRunError;
pub use git_compat::GitCompatState;
pub use git_compat::GitCompatStore;
pub use git_compat::GitDiffCounts;
pub use git_compat::GitDirtyState;
pub use git_compat::GitFilesystemAction;
pub use git_compat::GitFilesystemExecutor;
pub use git_compat::GitFilesystemResult;
pub use git_compat::GitGenerationRef;
pub use git_compat::GitGrepMatch;
pub use git_compat::GitGrepResult;
pub use git_compat::GitIgnorePolicy;
pub use git_compat::GitObjectName;
pub use git_compat::GitPatchError;
pub use git_compat::GitPendingMutation;
pub use git_compat::GitPendingTransition;
pub use git_compat::GitPublicationRecord;
pub use git_compat::GitResetMode;
pub use git_compat::GitStatus;
pub use git_compat::GitTransitionId;
pub use git_compat::GitTreeEntry;
pub use git_compat::GitTreeRef;
pub use git_compat::IntoGitTreeRef;
pub use git_compat::MemoryGitCompatStore;
pub use git_compat::apply_git_patch;
pub use git_compat::apply_git_patch_with_permit;
pub use git_compat::blame_git_generations;
pub use git_compat::capture_git_compatible_generation;
pub use git_compat::capture_git_compatible_generation_at;
pub use git_compat::capture_git_compatible_generation_incremental;
pub use git_compat::git_compatible_diff_counts;
pub use git_compat::grep_git_generation;
pub use git_compat::walk_git_tree;
pub use hosted::HostedFs;
pub use hosted::HostedFsError;
pub use hosted::HostedFsOptions;
pub use hosted::HostedGeneration;
pub use hosted::HostedS3Access;
pub use hosted::HostedS3AccessOptions;
pub use hosted::HostedTransaction;
pub use hosted::HostedWorkspace;
pub use kernel::GenerationExportManifest;
pub use kernel::GenerationExportManifestError;
pub use kernel::decode_generation_export_manifest;
pub use kernel::encode_generation_export_manifest;
pub use lazy_workspace::LazyDirectoryCursor;
pub use lazy_workspace::LazyDirectoryEntry;
pub use lazy_workspace::LazyDirectoryPage;
pub use lazy_workspace::LazyLookup;
pub use lazy_workspace::LazyOverlay;
pub use lazy_workspace::LazyOverlayId;
pub use lazy_workspace::LazySeekTarget;
pub use lazy_workspace::LazyShadow;
pub use lazy_workspace::LazyShadowId;
pub use lazy_workspace::LazySnapshotId;
pub use lazy_workspace::LazySnapshotRef;
pub use lazy_workspace::LazyStat;
pub use lazy_workspace::LazyWorkspace;
pub use lazy_workspace::LazyWorkspaceError;
pub use lazy_workspace::LazyWorkspaceState;
pub use lazy_workspace::LazyWorkspaceStore;
pub use lazy_workspace::MemoryLazyWorkspaceStore;
pub use lineage::MemoryWorkspaceLineageStore;
pub use lineage::MemoryWorkspaceLineageStoreError;
pub use lineage::WorkspaceGraph;
pub use lineage::WorkspaceLineageError;
pub use lineage::WorkspaceLineageRecord;
pub use lineage::WorkspaceLineageStore;
pub use materializer::JournaledMaterializer;
pub use materializer::MaterializationBackend;
pub use materializer::MaterializationEdit;
pub use materializer::MaterializationError;
pub use materializer::MaterializationJournal;
pub use materializer::MaterializationJournalStore;
pub use materializer::MaterializationPhase;
pub use materializer::MaterializationPlan;
pub use materializer::MaterializationPreimage;
pub use materializer::MaterializationRecovery;
pub use materializer::MemoryMaterializationJournalStore;
pub use materializer::MemoryMaterializationJournalStoreError;
pub use materializer::NativeTreeMaterializationBackend;
pub use materializer::NativeTreeMaterializationError;
pub use materializer::NativeWorkspacePublication;
pub use materializer::NativeWorkspacePublicationError;
pub use materializer::publish_native_generation_transition;
pub use materializer::publish_native_workspace_generation;
pub use merge_driver::AttributeRule;
pub use merge_driver::CachedMergeResolution;
pub use merge_driver::ConflictKey;
pub use merge_driver::ConflictKind;
pub use merge_driver::ConflictSide;
pub use merge_driver::ConflictValue;
pub use merge_driver::ConflictView;
pub use merge_driver::DefaultTextMergeDriver;
pub use merge_driver::DriverError;
pub use merge_driver::DriverRegistrationError;
pub use merge_driver::MemoryMergeResolutionCache;
pub use merge_driver::MergeDriver;
pub use merge_driver::MergeDriverMode;
pub use merge_driver::MergeDriverRegistry;
pub use merge_driver::MergePlan;
pub use merge_driver::MergePlanResolutionError;
pub use merge_driver::MergeResolution;
pub use merge_driver::MergeResolutionCache;
pub use merge_driver::ResolutionKey;
pub use merge_driver::UnpublishedMergeCandidate;
pub use merge_driver::resolve_merge_plan;
pub use mount::MountError;
pub use mount::MountedCheckout;
pub use mount::MountedGeneration;
pub use mount::MountedView;
pub use mount::MountedViewBuilder;
pub use mount::MountedViewSnapshot;
pub use mount::RoutedCheckout;
pub use multi_root::LineageMultiRootPublicationAuthorizationError;
pub use multi_root::LineageMultiRootPublicationAuthorizer;
pub use multi_root::MaterializingWorkspaceMultiRootPublisher;
pub use multi_root::MaterializingWorkspaceMultiRootPublisherError;
pub use multi_root::MemoryMultiRootPublicationStore;
pub use multi_root::MemoryMultiRootPublicationStoreError;
pub use multi_root::MultiRootConflictFinish;
pub use multi_root::MultiRootFence;
pub use multi_root::MultiRootMaterializer;
pub use multi_root::MultiRootMergeCandidate;
pub use multi_root::MultiRootMergePlan;
pub use multi_root::MultiRootMergeRoot;
pub use multi_root::MultiRootPublication;
pub use multi_root::MultiRootPublicationAuthorizer;
pub use multi_root::MultiRootPublicationCoordinator;
pub use multi_root::MultiRootPublicationError;
pub use multi_root::MultiRootPublicationPhase;
pub use multi_root::MultiRootPublicationStore;
pub use multi_root::MultiRootPublishRoot;
pub use multi_root::MultiRootPublisher;
pub use multi_root::Publication;
pub use multi_root::WorkspaceMultiRootPublisher;
pub use multi_root::WorkspaceMultiRootPublisherError;
pub use multi_root::WorkspaceResolver;
pub use native_capture::CaptureError;
pub use native_capture::CaptureOptions;
pub use native_capture::CapturePolicy;
pub use native_capture::CaptureReceipt;
pub use native_capture::WatchCaptureReceipt;
pub use native_capture::capture_baseline;
pub use native_capture::capture_baseline_with_policy;
pub use native_capture::capture_paths;
pub use native_capture::capture_paths_with_policy;
pub use native_capture::capture_root_identity;
pub use native_capture::capture_subtree;
pub use native_capture::capture_subtree_with_policy;
pub use native_capture::capture_subtrees_with_policy;
pub use native_capture::capture_watch_batch;
pub use native_capture::capture_watch_batch_with_policy;
pub use native_capture::host_path_to_namespace;
pub use native_capture::namespace_to_host_path;
pub use native_exchange::NativeExchangeError;
pub use native_exchange::NativeExchangeJournal;
pub use native_exchange::NativeExchangeOutcome;
pub use native_exchange::NativeExchangePhase;
pub use native_exchange::exchange_native_entries;
pub use native_exchange::prepare_native_exchange;
pub use native_exchange::prepare_native_exchange_with_recovery;
pub use native_exchange::publish_native_exchange;
pub use native_exchange::recover_native_exchange;
pub use native_mount::CheckoutMountSource;
pub use native_mount::HostPathReplacement;
pub use native_mount::HostPathRestore;
pub use native_mount::LazyMount;
pub use native_mount::LazyWorkingSet;
pub use native_mount::MaterializationReceipt;
pub use native_mount::MaterializeError;
pub use native_mount::MaterializeOptions;
pub use native_mount::Mount;
pub use native_mount::MountAttributePage;
pub use native_mount::MountDirectoryEntry;
pub use native_mount::MountDirectoryPage;
pub use native_mount::MountFilesystem;
pub use native_mount::MountLifecycleError;
pub use native_mount::MountLookup;
pub use native_mount::MountNode;
pub use native_mount::MountNodeKind;
pub use native_mount::MountOpenFile;
pub use native_mount::MountOptions;
pub use native_mount::MountPath;
pub use native_mount::MountPublication;
pub use native_mount::MountRangeAllocation;
pub use native_mount::MountSeekTarget;
pub use native_mount::MountSourceError;
pub use native_mount::MountSparseRange;
pub use native_mount::MountSparseSpan;
pub use native_mount::MountViewLease;
pub use native_mount::NativeBlockCloneAccelerationEvidence;
pub use native_mount::NativeMountCapabilities;
pub use native_mount::NativeMountError;
pub use native_mount::NativeMountKind;
pub use native_mount::NativeMountRequest;
pub use native_mount::NativeMountSession;
pub use native_mount::NativeMountSessionIsolation;
pub use native_mount::NativeSparseAccelerationEvidence;
pub use native_mount::NativeStorageAccelerationError;
pub use native_mount::NativeStorageAccelerationEvidence;
pub use native_mount::NativeStorageCapabilities;
pub use native_mount::NativeStorageCapabilityError;
pub use native_mount::RoutedMountSource;
pub use native_mount::SharedCheckout;
pub use native_mount::SharedCheckoutState;
pub use native_mount::detach_native_mount_destination_after_crash;
pub use native_mount::materialize_checkout;
pub use native_mount::materialize_checkout_host_path;
pub use native_mount::materialize_checkout_path;
pub use native_mount::materialize_checkout_paths;
pub use native_mount::mount_native;
pub use native_mount::mount_native_over_existing;
pub use native_mount::probe_native_mount;
pub use native_mount::probe_native_storage_accelerations;
pub use native_mount::probe_native_storage_capabilities;
pub use native_mount::reclaim_native_mount_destination_fence;
pub use native_mount::reclaim_stale_native_mount_destination_fences;
pub use native_mount::recover_native_mount_destination;
pub use native_mount::restore_checkout_host_path;
pub use native_mount::seal_checkout;
pub use native_mount::seal_checkout_with_permit;
pub use notification::AsyncNotificationStore;
pub use notification::ImmediateNotificationStore;
pub use notification::MemoryNotificationStore;
pub use notification::NotificationError;
pub use notification::NotificationPoll;
pub use notification::NotificationResult;
pub use notification::NotificationStore;
pub use operation_window::MemoryOperationWindowStore;
pub use operation_window::OperationLease;
pub use operation_window::OperationLeaseId;
pub use operation_window::OperationReconcileLimits;
pub use operation_window::OperationWindowCoordinator;
pub use operation_window::OperationWindowError;
pub use operation_window::OperationWindowFinish;
pub use operation_window::OperationWindowLease;
pub use operation_window::OperationWindowPhase;
pub use operation_window::OperationWindowReconcile;
pub use operation_window::OperationWindowSnapshot;
pub use operation_window::OperationWindowStore;
pub use operation_window::StreamOperationWindowStore;
pub use operation_window::StreamOperationWindowStoreError;
pub use operation_window::WorkspaceOperationFinish;
pub use performance::MeasuredResult;
pub use performance::OperationFailure;
pub use performance::OperationReceipt;
pub use performance::WorkBudget;
pub use performance::WorkCounters;
pub use performance::WorkError;
pub use s3::S3Error;
pub use s3::S3List;
pub use s3::S3ListCursor;
pub use s3::S3ListOptions;
pub use s3::S3MultipartOptions;
pub use s3::S3MultipartUpload;
pub use s3::S3Object;
pub use s3::S3ObjectHead;
pub use s3::S3Workspace;
pub use simulation::ScheduledSimulationFault;
pub use simulation::SimulatedAuthorityStore;
pub use simulation::SimulatedObjectStore;
pub use simulation::Simulation;
pub use simulation::SimulationError;
pub use simulation::SimulationFault;
pub use simulation::SimulationOperation;
pub use simulation::SimulationOptions;
pub use simulation::SimulationTrace;
pub use source::ReconcileOutcome;
pub use source::Source;
pub use source::SourceError;
pub use source::SourceMode;
pub use source::SourceOptions;
pub use source::SourceState;
pub use speculation::ObjectResidency;
pub use speculation::PromotionAdmission;
pub use speculation::PromotionCandidate;
pub use speculation::PromotionDestination;
pub use speculation::PromotionExecutor;
pub use speculation::PromotionMetrics;
pub use speculation::PromotionPlan;
pub use speculation::PromotionRejection;
pub use speculation::PromotionSpeculator;
pub use speculation::PromotionSpeculatorError;
pub use speculation::PromotionSpeculatorOptions;
pub use speculation::ResidencyAdmission;
pub use speculation::ResidencyCandidate;
pub use speculation::ResidencyHint;
pub use speculation::ResidencyMetrics;
pub use speculation::ResidencyPermit;
pub use speculation::ResidencyReason;
pub use speculation::ResidencyRejection;
pub use speculation::ResidencySpeculator;
pub use speculation::ResidencySpeculatorError;
pub use speculation::ResidencySpeculatorOptions;
pub use speculation::SpeculationController;
pub use speculation::SpeculationControllerError;
pub use speculation::SpeculationMetrics;
pub use speculation::SpeculationOptions;
pub use speculation::SpeculationPreemption;
pub use speculation::StorageLocationId;
pub use speculation::StorageTier;
pub use speculation::StorePromotionExecutor;
pub use speculation::StorePromotionExecutorError;
pub use speculation::execute_promotion;
pub use speculation::execute_residency;
pub use storage::AppendOutcome;
pub use storage::AuthorityFailure;
pub use storage::AuthorityReceipt;
pub use storage::AuthorityResult;
pub use storage::AuthorityStore;
pub use storage::AuthorityStoreError;
pub use storage::ByteRange;
pub use storage::CreateAuthorityOutcome;
pub use storage::FenceOutcome;
pub use storage::GuardedAppend;
pub use storage::OBJECT_DIGEST_ENVELOPE_BYTES;
pub use storage::ObjectFailure;
pub use storage::ObjectId;
pub use storage::ObjectKind;
pub use storage::ObjectRead;
pub use storage::ObjectReadRequest;
pub use storage::ObjectReadRetention;
pub use storage::ObjectReceipt;
pub use storage::ObjectResult;
pub use storage::ObjectStore;
pub use storage::ObjectStoreError;
pub use storage::PublicationPermit;
pub use storage::PublicationReservation;
pub use storage::ReplayLimit;
pub use storage::ReservationOutcome;
pub use storage::object_digest;
pub use streams_record::STREAMS_AUTHORITY_RECORD_HEADER_BYTES;
pub use streams_record::StreamsAuthorityRecord;
pub use streams_record::StreamsAuthorityRecordError;
pub use streams_record::StreamsDurableRecord;
pub use watch::NativeWatch;
pub use watch::NativeWatchBackend;
pub use watch::NativeWatchCapabilities;
pub use watch::NativeWatchError;
pub use watch::NativeWatchOptions;
pub use watch::WatchBatch;
pub use watch::WatchChange;
pub use watch::WatchEpoch;
pub use watch::WatchInvalidationReason;
pub use watch::WatchSequence;
pub use watch::native_watch_capabilities;
pub use workspace::ApplyOptions;
pub use workspace::ChangeSet;
pub use workspace::ChangedPath;
pub use workspace::Checkpoint;
pub use workspace::DrivenJoinError;
pub use workspace::ForkOptions;
pub use workspace::Generation;
pub use workspace::GenerationPin;
pub use workspace::IdempotencyKey;
pub use workspace::JoinBuilder;
pub use workspace::JoinHistory;
pub use workspace::JoinOutcome;
pub use workspace::JoinPlan;
pub use workspace::Transaction;
pub use workspace::TransactionCommit;
pub use workspace::TransactionConflict;
pub use workspace::TransactionConflictRegion;
pub use workspace::TransactionDependencyUse;
pub use workspace::TransactionRebase;
pub use workspace::TransactionSparseSeek;
pub use workspace::Workspace;
pub use workspace::WorkspaceDelete;
pub use workspace::WorkspaceDirectoryEntry;
pub use workspace::WorkspaceDirectoryPage;
pub use workspace::WorkspaceError;
pub use workspace::WorkspaceExtentKind;
pub use workspace::WorkspaceExtentPlan;
pub use workspace::WorkspaceExtentSpan;
pub use workspace::WorkspaceId;
pub use workspace::WorkspaceMetadata;
pub use workspace::WorkspaceName;
pub use workspace::WorkspaceNameError;
pub use workspace::WorkspacePathApply;
pub use workspace::WorkspacePathConflict;
pub use workspace::WorkspaceRebase;
pub use workspace::WorkspaceRestore;
pub use workspace::WorkspaceStat;
pub use workspace::WorkspaceSync;
pub use workspace_context::MemoryWorkspaceContextStore;
pub use workspace_context::MemoryWorkspaceContextStoreError;
pub use workspace_context::WorkspaceContext;
pub use workspace_context::WorkspaceContextDiscardOutcome;
pub use workspace_context::WorkspaceContextError;
pub use workspace_context::WorkspaceContextId;
pub use workspace_context::WorkspaceContextRegistry;
pub use workspace_context::WorkspaceContextRoot;
pub use workspace_context::WorkspaceContextState;
pub use workspace_context::WorkspaceContextStore;
pub use workspace_context::WorkspaceRootId;
pub use workspace_context::WorkspaceRoute;
pub use workspace_context::WorkspaceRouteKind;

Modules§

async_storage
Runtime-neutral asynchronous storage contracts for browser and remote use.
cache
Bounded disposable immutable-object caching and single-flight reads.
cancellation
Runtime-independent cooperative cancellation for native and browser work.
compat_wire
Versioned JSON envelopes for immutable merge and publication values.
core_state
Journaled local persistence for filesystem control-plane state.
demand
Bounded, versioned access to unresolved filesystem sources.
distributed
Filesystem storage bindings over the canonical public service providers.
facade
Thin embedded Fs/Volume/Checkout composition over the two durable stores.
foundation
Portable identities and authority contracts.
git_compat
Git-shaped compatibility state over distributed filesystem generations.
hosted
Idiomatic handles over the canonical hosted Filesystem transport.
kernel
Canonical authenticated filesystem page formats and sparse algorithms.
lazy_workspace
Source-backed sparse workspaces.
lineage
Durable direct-parent workspace lineage.
materializer
Journaled pathwise application and crash recovery.
merge_driver
Declarative merge-driver boundary over immutable conflict inputs.
model
Explicit, backend-independent volume and checkout semantics.
mount
Composition of independent volume checkouts at distinct mount paths.
multi_root
Durable all-roots publication decisions.
native_capture
Bounded host-state capture into one atomic sparse checkout transaction.
native_exchange
Crash-recoverable whole-tree publication for native consumers.
native_mount
Native Linux FUSE, macOS NFS, and Windows ProjFS projection boundary.
notification
Disposable authority-head notification acceleration.
operation_window
Durable operation windows for stable mounted-tool execution.
path
Strict portable absolute paths used at the volume boundary.
performance
Exact implementation-work budgets and receipts for complexity qualification.
s3
Strongly consistent S3-shaped view over one canonical workspace.
simulation
Deterministic bounded fault simulator for authority and immutable-object backends.
source
Native directory sources over the canonical checkout and watcher engines.
speculation
Disposable, correctness-inert residency and storage-promotion speculation.
storage
Pluggable authority and immutable object storage interfaces.
streams_record
Canonical authority record envelope for the native Streams v1 service.
text_merge
Pure bounded three-way text merge shared by every filesystem consumer.
watch
Bounded native change notifications for materialized checkouts.
wire
Generated public gRPC schema and client/server bindings.
workspace
Customer workspace identities and immutable generation handles.
workspace_context
Durable, agent-neutral composition of recursively forked workspaces.

Structs§

CredentialGrantRequest
Fully validated scope passed to the authenticated deployment edge.
DistributedFs
Shared constructors for the semantic handles of one filesystem deployment.
FilesystemWireLimits
Hard bounds and explicitly available optional hosted capabilities.
FilesystemWireService
One SDK-owned protocol adapter over the canonical filesystem engine.
HostedSourceOperation
Stable operation identity for a hosted source mutation.
HostedSourceResult
One provider result, optionally naming the exact resulting generation.
HostedSourceScope
Deployment-owned source identity after the SDK authenticates its workspace.
LocalObjectsLimits
Exact durable-local capacity contract. Reopening requires the same capacity limits; durability is a per-open policy.
LocalStreamLimits
Explicit local retention and recovery bounds.
NativeRootIdentity
Stable native identity of one held filesystem root.

Enums§

CredentialGrant
Deployment-produced scoped credential material.
CredentialKind
Deployment-owned credential surface selected after SDK validation.
HostedSourceInvalidation
Why a hosted source can no longer prove a contiguous change interval.
HostedSourceState
Canonical state returned by a deployment source provider.
LocalObjectsDurability
How journal frames and immutable bodies are made durable before they become observable.
LocalStreamDurability
How the journal is made durable before a mutation becomes observable.
RenameMode
Destination behavior for one durable rename.

Constants§

FILE_DESCRIPTOR_SET
Canonical public descriptor set used by compatibility and conformance gates.

Traits§

FilesystemCredentialIssuer
Authenticated deployment extension for private credential issuance.
FilesystemSourceProvider
Deployment extension for a remotely owned attached source.

Functions§

durable_rename
Renames one filesystem entry and durably publishes the affected namespace.