Skip to main content

Crate graphforge_filesystem

Crate graphforge_filesystem 

Source
Expand description

Audited native filesystem primitives used by GraphForge’s durability protocol.

Cache-release I/O and platform operations have private owners; common capability types and public entrypoints remain at the crate root.

Re-exports§

pub use observation::ObservedSync;

Modules§

observation
Optional, process-wide diagnostic work counters. Process-wide counters for an explicit diagnostic capture. Never reset them.

Structs§

DirectoryValidationError
Native validation failure with a typed stage and original I/O diagnostic.
DurableFileCacheWriter
File writer that synchronizes and releases completed page-cache windows.
FileCacheReleaseEvidence
Content-free evidence emitted by a durable cache-bounded writer.
FileCacheReleaseTracker
Shared evidence and deferred-error channel for cache-releasing readers.
FileCacheReleasingReader
Owned sequential reader that releases completed, already-consumed windows.
FileIdentity
Stable filesystem identity suitable for Windows and Unix filesystems.
FileSpaceUsage
Logical and physically allocated byte counts for one retained file handle.
OpenedDirectoryHandle
Directory handle opened with this crate’s native no-follow and sharing policy. Private construction prevents an arbitrary File from claiming that policy.
StableDirectory
Retained directory capability whose children are opened without following links or reparse points.
UnpublishedArtifactGuard
Single-owner capability for one exclusively created, unpublished child.

Enums§

DirectoryValidationStage
Stage of a failed retained-directory validation. Policy owners may preserve their own diagnostics without duplicating native identity checks.
FileCacheReleaseOutcome
Result of one file-level page-cache release request.
ReplaceFileError
Failure classification for an attempted atomic replacement.

Constants§

DEFAULT_CACHE_RELEASE_WINDOW_BYTES
Default maximum dirty/file-cache window retained by one durable writer.

Functions§

cache_release_window_for_streams
Derive one non-zero per-stream window from the shared 1 GiB operation budget.
create_private_directory
Create a durability-probe directory that is private to the current user.
file_identity
Return the stable native volume/file identity of an open handle.
file_link_count
Return the native hard-link count of an open file handle.
file_space_usage
Return logical and physically allocated bytes for a retained regular-file handle.
install_new_file
Atomically install a new regular file without replacing an existing entry.
is_link_or_reparse
Whether metadata denotes a symlink or native reparse point.
open_directory_handle
Open a directory handle using the platform’s no-follow and sharing policy. The caller must validate directory kind and retained/named identity before treating it as authority; prefer StableDirectory::open for a capability.
path_identity
Return the stable native volume/file identity of a non-followed path.
path_link_count
Return the native hard-link count of a non-followed path.
release_file_cache
Release one clean file range from the operating-system page cache.
rename_no_replace
Atomically move a file or directory without replacing any existing destination.
replace_file
Atomically replace an existing regular file with another regular file in the same directory.
validate_cache_release_operation_windows
Validate the aggregate configured windows of the streams actually opened by one operation.