Expand description
End-to-end encrypted, multi-writer SQLite sync over host-selected storage.
The host owns its SQLite schema and domain. Coven owns the connection, captures host writes, stores protocol state, and synchronizes rows and blobs. Hosts use the crate-root API; implementation modules remain private.
ⓘ
let _ = coven::store_sync::StoreSync::connect;Re-exports§
pub use coven_database::rusqlite;
Structs§
- Activated
Continuation - Exact durable state required to continue an activated Store device.
- Affected
Row - One table/primary-key identity affected by the shared part of a write.
- Authorize
Request - An authorization request the host drives itself: the URL to open plus the
PKCE verifier and state value coven checks during exchange. For hosts that
capture the redirect outside coven’s localhost callback server — e.g. a
mobile OS auth session (ASWebAuthenticationSession / Custom Tabs)
redirecting to a custom URI scheme, where binding a localhost port and
open::thatdon’t apply. - Blob
Body - A blob as a sized stream of already-final bytes: sealed chunks for an
encrypted home, plaintext for a browsable one. Encryption-agnostic and
concrete (no
dyn Stream).next_parthands the bytes to a streaming upload in bounded windows so a large blob is never held whole in memory; the onlycollectis the single-request path for blobs at or below a provider’s multipart threshold. - Blob
Decl - Where a blob-bearing table’s blob columns live, declared by the host so coven
can derive every blob a row references without a runtime callback. Resolved
against the live schema into the database’s
BlobDeclseach cycle. - Blob
File Failure - A local blob file that failed to unwind after a host write failed. Names the blob so a host learns which files are left behind, not just that some were.
- Blob
File Failures - Every blob that failed to unwind, in the order they were attempted.
- BlobRef
- A blob a row references: its cloud identity, encryption scope, and the two
declared properties (
provenance+fill). coven derives it from the row’s declared columns (crate::synced_schema::BlobDecl) via the database’sBlobDecls. Where its bytes live depends on its locality and provenance: a user-provided Local blob is the user’s file at its path; a host-provided Local blob is in coven’s local store (storage/local/<namespace>/<id>); a Remote blob’s device-local copy is a cache copy (storage/pinned/<namespace>/<locator-hash>/storage/cache/<namespace>/<locator-hash>, built from the validated namespace + exact locator hash — seeblob::cache). - Blob
Stream - One opened blob, ready to serve ranges. Held by a host that is streaming or seeking a blob (playback probing a codec header, then a tail, then decoding forward) rather than loading it whole.
- Circle
- One Circle as
Circles::listreports it: its id, display name, the local identity’s role when it holds active access, and the derived state. The name is absent for a Circle with no resolved metadata (inactive, conflicted, or deleted); the role is present only when the local identity holds active roster membership. - Circle
Close Participant - One participant in an in-flight epoch close and its slot settlement.
- Circle
Close Status - The read-only status of a Circle’s in-flight epoch close: which participant slots hold responses, exclusions, or nothing.
- Circle
Control Coord - Exact coordinate of one signed circle control entry.
- Circle
Epoch Close Id - The stable identity of one Circle epoch close, derived from the durable
operation that opened it. It names the close a
Circles::close_statusinspects and the reserved response and outcome slots that settle it; a close’s identity is fixed for its lifetime and survives cancellation and retry. - Circle
Id - A self-certifying 128-bit circle identity encoded as canonical lowercase base32.
- Circle
Member Info - Circle
Operation Id - Circle
Operation Info - Circles
- The
coven.circles()namespace. Borrowed from its Store Circle owner. - Cloud
Home Config - The cloud home: which provider backs sync and its per-provider settings. One cohesive unit — connecting picks a provider and fills its fields; disconnecting resets the whole thing to default.
- Cloud
KitAccepted Share Record - Cloud
KitAtomic Create Batch - Cloud
KitProvider Identity - Cloud
KitRecord Create - Cloud
KitRecord Version - Cloud
KitShare - Cloud
Object Version - Opaque provider revision for an exact mutable object.
- Cloud
Outbox Live Query - A committed view of coven’s durable cloud work.
- Cloud
Outbox Snapshot - Cloud
Versioned Object - Commit
Frontier - Exact materialized cut across author streams.
- Config
- Sync + storage configuration for one store.
- Connected
Cloud Home - A cloud-home setup that Coven has connected and committed.
- Coven
- Coven
Builder - Coven
Config - Coven
Handle - The cipher a store’s app-data sealing runs under, resolved from
custody. - Coven
Read Handle - A read-only handle over one coven store, for a same-store secondary reader.
- Cross
Principal Probe Receipt - Device
Activity - Activity summary for a single remote device.
- Device
Join Abandonment - Device
Join Activation - Device
Join Attempt Id - Device
Join Journal Database - Durable role journal. Each row stores a closed progress value; SQLite’s compare-and-swap update rejects stale or skipped transitions.
- Device
Join Journal Record - Device
Join Offer Bundle - The out-of-band kickoff: the offer plus everything the transport needs to carry the rest of the exchange. The host encodes this however it delivers a join code; coven does not choose that encoding.
- Device
Join Readiness - Device
Join Transport Params - The slots and seal key one attempt’s artifacts travel through.
- Device
Join Transport Timing - How often to look for a counterpart’s artifact, and how long to keep looking before giving up on it.
- Device
Pairing Host - A listener behind the one QR code shown by the existing device. It accepts one exact signed identity, survives client reconnects, and returns the same sealed invitation on every retry.
- Device
Pairing Offer - The one code an existing device displays. Possession of this code grants access only to this pairing session; Store credentials remain sealed to the joining identity the existing device approves.
- Device
Pairing Request - The identity submitted after scanning an owner’s offer. The whole signed request is sealed to that offer’s ephemeral key before it crosses the LAN.
- Eager
Cache Fill Progress - Encryption
Service - Manages encryption keys and provides XChaCha20-Poly1305 encryption/decryption
- Exact
Object Ref - Exact stored representation of one immutable object.
- Exact
Slot Probe Receipt - Exact
Upload - One immutable exact object together with a replayable source for its final stored bytes. Provider adapters derive their own native checksums from this source and can reopen it after an ambiguous create response.
- External
Blob - An external user-owned file a blob id resolves to, read back from a
local_blob_refsrow. The blob’s plaintext lives atpath(an absolute file Coven references but does not own);sizeis its registered plaintext length, combined with the row’s signed content hash to validate the exact file. - Fixed
Clock - Every
now()returns the same instant. - Held
Store Position - InMemory
Cloud Home - In-memory CloudHome backed by a HashMap.
Cloneshares one backing store, so clones act as separate devices reading and writing the same cloud bucket, and a test can keep its own handle for direct at-rest assertions while each device owns an exact cloud-home clone. - Joined
Store - KeyFingerprint
- Stable wire identity of one 32-byte encryption key: its full SHA-256 digest, serialized as exactly 64 lowercase hex digits.
- Live
Query - A query over the store’s reader that runs initially and whenever a committed row change can affect its result.
- Live
Query Closed - Live
Query Requests - Changes the absolute request evaluated by a reconfigurable live query.
- Live
Query Revision - Identifies an absolute request accepted by a reconfigurable live query.
- Make
Remote Root - Master
Keyring - A store’s master key material: every key it holds. This is the value custody
implementations store, unlock, and re-protect — never a cipher. coven builds
the
EncryptionServicecipher from it internally; custody never touches cipher machinery. - Member
Info - Membership
Conflict Choice - Migration
- One ordered step in the host’s synced-schema ladder.
- Migration
Context - Host SQL inside one schema-migration transaction.
- OAuth
Client Creds - OAuth client credentials for one provider — the consuming app’s registered OAuth application. coven ships no app credentials of its own.
- OAuth
Clients - The consuming app’s OAuth clients. Each Coven builder retains its own value, so unrelated apps in one process never share credentials.
- OAuth
Tokens - Tokens returned from an OAuth authorization or refresh.
- Object
Hash - Object
Slot - Exact logical and physical location persisted before an immutable write.
- Outbox
Failure - Owner
Recovery Authority - Exact Owner grant and recovery-stream authority used to create a replacement device when no activated device continuation survives.
- Passphrase
- A memorized secret that wraps a payload under Argon2id. Held zeroizing — the whole struct is cleared on drop, so no copy of the passphrase outlives it.
- Pending
Write - Durable write information returned by
CovenHandle::pending_writes. - Prepared
Device Pairing - The joining device’s retained side of a pairing attempt. It owns no secret key bytes; the pending identity stays in the configured key custody and is addressed by the signed request’s public key until the join commits.
- Prepared
External Blob - A user-owned file whose plaintext size and SHA-256 digest Coven read in one pass. Its content facts stay private and can only be consumed by external blob registration.
- Provider
Admin Grant Id - Provider
Admin Grant Record - Provider
Capability Proof - Provider
Device Binding - Provider
Ready Device Bootstrap - Provisional
Device Bootstrap - Published
Position - Exact position that made a write visible to peers.
- Queued
Delete - One cloud object the durable queue is holding a tombstone for.
- Queued
Make Remote - Queued
Upload - One upload the durable cloud queue is holding, as a host renders it.
- Read
- A database read that starts when awaited.
- Reconfigurable
Live Query - A tracked query whose absolute request can change without replacing the subscription.
- Reconfigurable
Live Query Event - One query result and the exact request used to produce it.
- Resolved
Provider Binding - Restore
Code Info - UI-ready info from a decoded restore code.
- Restore
Source - Cloud provider source for restore: the join info a restore code carries
plus the extras it can’t (
RestoreCodeomits OAuth tokens because they expire — the user re-authenticates on restore — and holds no live CloudKit driver). - RowBlob
Ref - One exact blob-bearing row version. A reference becomes stale when the live row stamp or any declared blob value changes.
- RowChange
- One row change extracted from a changeset.
- S3Cloud
Home - S3-backed cloud home.
- Sealed
Device Pairing Request - Sequential
IdProvider - Deterministic but unique:
"{prefix}-0","{prefix}-1", … Preserves the per-entity uniqueness invariant while being reproducible across runs. - SqlContext
- Host SQL inside one journaled write transaction.
- SqlRead
Context - Host SQL against Coven’s retained database connection.
- Store
Batch Commit Ref - Exact identity of one signed Store commit candidate.
- Store
Commit Coord - Closed coordinate of one Store commit in its author stream.
- Store
Device Id - The stable identity of one device in a Store, derived from the Store root and
the device’s registration origin. It names a device across the protocol — in
membership, commit authorship, and epoch-close participation — and is what
Circles::exclude_close_deviceandCircles::close_statusaddress. - Store
Dir - Typed wrapper for a store directory path.
- Store
Keys - One store’s key material: the encryption master key, cloud-home credentials,
and OAuth tokens, each stored under a store-scoped keyring account
(
{base}:{store_id}). The store’s signing identity is not here — it goes throughcrate::identity_custody::IdentityCustody, the same way the master key goes throughcrate::custody::KeyCustody. - Store
Layout - The host’s on-disk layout for stores: which directory they live under.
One rule shared by create, open, join, and restore, so a host that wants
libraries/<id>instead of coven’s defaultstores/<id>names it once here rather than each flow hardwiring (or working around) coven’s own choice. - Store
Member Provider Access Grant Ref - Stuck
Reclaim Operation - A journalled reclaim operation whose last run failed with an error that running it again cannot change.
- Sync
Loop Alerts - Sync
Loop Success - Synced
Table - A table that participates in changeset sync, declared at startup by the host
and passed to
CovenBuilder::synced_tables. - System
Clock - Production clock: real wall time.
- Timestamp
- A parsed HLC timestamp.
- Transfer
Limits - How many blob transfers coven runs at once in each of its two transfer loops:
the upload drain and the pin/download loop. An
open-time blob-engine tunable the host sets on the builder,
carried on the
Databasealongside the other open-time blob config and read back by each loop, which holds&Database. - Upload
Control - One exact upload’s progress reporting and absolute pause state. Provider request bodies consult this before yielding each network chunk, so pausing stops the active request without closing its upload session; resuming lets that same request continue from the next byte.
- Upload
Failure - Upload
Failures - User
Keypair - Ed25519 keypair for signing changesets and membership changes. The same seed can derive an X25519 keypair for key wrapping.
- Uuid
Provider - Production provider: random v4 UUIDs.
- Write
Batch - WriteId
- Stable identity of one successfully committed host transaction.
- Write
Receipt - Result of one successful host transaction and its durable publication identity.
- Write
Retraction Witness - Durable proof that a previously published write cannot activate.
Enums§
- Admitting
Device Join Progress - The existing device’s current user-visible operation while admitting the joining device.
- Approve
Device Pairing Error - Audience
- The one audience a synced row belongs to.
- AwsPrincipal
- Blob
Cache Error - Why a blob-cache operation failed.
- Blob
Replacement - A blob’s replacement story: whether the row carrying it may ever be repointed at
a different blob. Orthogonal to
ProvenanceandCacheFill; a blob declares all three. - Blob
Scope - Which key encrypts a blob, as a host names it on a
BlobRef. - Blocked
Operation - One durable operation a successful cycle left waiting on a person.
- Blocked
Operation Id - Names one blocked operation for a retry, whichever kind it is.
- Bootstrap
Error - Why joining or restoring a store failed. Both are the same operation — bootstrap a store from the cloud — differing only in their entry data (an admission that wraps the store key vs a restore code that carries the bucket credentials), so they share one error shape rather than two that duplicate most of their variants and then have to map between each other.
- Cache
Fill - A blob’s Remote story: how a device gets the bytes once the blob is Remote.
A cache-mechanism setting — it describes a blob only while Remote — that applies
to ANY blob regardless of
Provenance. Orthogonal to provenance; a blob declares both. - Change
Op - The operation type for a changeset entry.
- Circle
Close Settlement - The settlement of one participant device’s create-once epoch-close response slot: it published its own applied frontier, an Owner excluded it, or the slot is still empty.
- Circle
Error - Why a Circle command or query failed. Maps the internal typed refusals 1:1 with
stable identifiers and carries the ids a caller needs to display or retry.
Write-path outcomes (a durable write’s local/published/blocked/conflicted
status) are not here — those stay on
WriteStatus/WriteBlock. - Circle
Operation Block - Why a durable Circle operation cannot currently publish. One variant per production block site; each future block site adds its own.
- Circle
Operation Kind - Circle
Operation State - Circle
Role - Circle
State - The public derived state of one Circle. Mapped once from the internal current
state;
Circles::listreports it per Circle. - Cloud
Access Outcome - Cloud
Access State - Cloud
Cipher - How a cloud home protects its objects at rest. An
Encryptedhome seals every object under the store key (the default); aPlaintexthome stores objects in the clear so the bucket is browsable, and drops the.encsuffix. - Cloud
File Read Error - Cloud
Home Credentials - Credentials for the cloud home, stored as a single JSON keyring entry.
- Cloud
Home Error - Errors from raw cloud storage operations.
- Cloud
Home Join Info - Information needed to join a cloud home from another device.
- Cloud
Home KeyState - Whether the selected cloud-home storage needs an available master key.
- Cloud
Home Rollback Error - Which durable key material could not be restored after setup failed.
- Cloud
Home Setup Error - Why a proposed cloud home was not installed.
- Cloud
Home Setup Failure - Cloud
Home Unlock Error - Why a returning opaque cloud home could not be unlocked and connected.
- Cloud
KitEnvironment - Cloud
KitScope - Cloud
KitShare Acceptance - Cloud
KitShare Permission - Cloud
Provider - Cloud home provider selection.
- Conditional
Write Outcome - Config
Error - Configuration errors.
- Coven
Error - Coven
Migration Error - Coven
Migration Policy - DbError
- An error from the owned database.
- Device
Admission Error - Device
Join Action - Device
Join Approval - Device
Join Approval Policy - Whether the driver approves an access request, and on whose say-so.
- Device
Join Drive Outcome - How a driven join ended for the admitting side.
- Device
Join Error - Device
Join Role - The two sides of a join. One device admits — it answers the access request, prepares the storage grant, signs the approval, registers the device and activates it — and the other is the device being admitted.
- Device
Join Status - Derived from a journal record on demand and never stored, so it carries no wire form of its own.
- Device
Join Transport Error - Why a transfer through the transport failed.
- Device
Join Transport Kind - One artifact kind in transit. Every kind has exactly one producing role in the protocol and exactly one slot per attempt.
- Device
Join Transport Outcome - How a join driven through the transport ended for the joining device.
- Device
Pairing Error - Device
Pairing Phase - The durable user-visible phase of one joining-device enrollment. Invitation bytes remain private because they contain the sealed Store admission; callers only need the operation they can resume.
- Device
Pairing Transport Error - Device
Provider Admission Completion - Device
Provider Readiness - Device
Registration Request - A same-provider registration needs no second signature: the joining device’s access request already signed the complete registration. A cross-provider registration additionally signs the response slot allocated after the administrator publishes its challenge.
- Drain
Outcome - Eager
Cache Fill Error - Eager
Cache Fill Status - Encryption
Error - Exact
Create Outcome - Exact
Upload Source - Exact
Upload Verification - How an exact cloud write proves that the stored bytes match their declared object reference. This is local host policy and is never accepted from an invitation or another device.
- Google
Drive Corpus - Held
Store Coordinate - Held
Store Position Reason - Home
Storage - How a cloud home stores its objects: opaque (encrypted, unreadable to anyone who can read the bucket) or browsable (stored in the clear at readable paths). This is not about who can reach the bucket — the storage provider’s own access control applies either way; it is about whether what they store is legible. The host picks it once, when it creates the home; it cannot change later (it determines how every object is written). One choice drives two mechanisms together:
- Identity
Custody - How a store’s device-signing identity is protected. Selected on the
builder, resolved once per store — the identity sibling of
crate::custody::KeyCustody, same shape. - Identity
Error - Why a host’s
initialize_identitycall failed. - Joining
Device Join Progress - The joining device’s current user-visible operation. These values describe the work actually executing or the exact counterpart artifact being awaited; hosts render them directly instead of collapsing the whole join into one indeterminate state.
- KeyCustody
- How a store’s master key is protected. The builder accepts this and never
sees a cipher again — coven resolves the selection into a
MasterKeyCustodyand builds every cipher from what it supplies. - KeyError
- Make
Local Error - Why a make_local could not complete.
- Make
Remote Error - Why a make_remote (or its cancel) could not be started.
- Make
Remote Progress - How far a gated root’s make-remote transition has got, as its durable intent records it. The write id a publication carries is bookkeeping the transition owns, so it is not part of this.
- Master
KeyError - Why importing or staging a master key failed.
- Member
Role - Membership
Conflict Info - Migration
Error - Why running the synced-schema ladder failed. Carried as its own arm of
OpenErrorat theDatabase::openboundary — not flattened into aDbErrorstring — so the variants stay typed for the engine’s own tests, the snapshot bootstrap gate, and hosts matchingMigrationError::SchemaTooNewto prompt an app update. - Migration
Step - How a migration applies its change to the synced schema.
- OAuth
Client Creds Error - An OAuth client set is missing a provider or names a provider that does not use OAuth.
- OAuth
Error - Outbox
Failure Kind - Physical
Object Locator - Provider-specific physical address for a caller-reserved immutable slot.
- Provenance
- A blob’s Local story: where its bytes live while the blob is Local, and
whether bringing it back from Remote needs a destination path. Orthogonal to
CacheFill(the Remote story) — a blob declares both. - Provider
Access Locator - Stable provider authority that can be withdrawn without rediscovering a member by mutable account metadata.
- Provider
Access Withdrawal - Provider
Principal Id - Queued
Upload Phase - Reclaim
Target - The exact object a reclaim authorizes the deletion of, together with the kind-specific locator needed to physically delete it and confirm its absence. Every kind shares one signed evidence → authorization → receipt chain; the kind selects only the eligibility proof and the readback prefix.
- Reconfigurable
Live Query Cause - Why a reconfigurable live query produced an event.
- Restore
Authority - The closed authority a restore operation may exercise.
- Restore
Code Error - Retry
Blocked Operation Error - Why one blocked operation could not be handed back to the sync loop.
- Retry
Stuck Reclaim Error - Why the sync loop could not return a stuck reclaim operation to its journal.
- RowBlob
Authority - The authority state that determines where one row version’s blob lives.
A remote-audience blob remains
PendingRemotewhile its verified plaintext is local and no cloud object has been created;Remotecarries the exact package authority needed to open its committed object. - RowIdentity
- How
(table, id)names one logical row across every device. - S3Endpoint
Binding - Seal
Error - Why sealing or opening a host’s app-data failed.
- Start
Device Pairing Error - Storage
Error - Store
Provider Binding - Provider namespace/corpus facts signed once by the Store root.
- Sync
Error - Sync
Loop Failure - Sync
Loop Status - A sync-loop status the host renders. The loop reports provider reachability,
publication, and one terminal status.
Blockedis a successful storage cycle with durable operations waiting on a person;Synchronizedhas none, whileFailedmeans the cycle itself failed. The in-progress marker is the variant itself, so there is no separate “syncing” flag. - Upload
Failure Cause - Write
Block - A semantic write fault. Retrying transport cannot change this result.
- Write
Error - A failed atomic write, tagged with whether the write had already committed.
- Write
Resolution - Write
Status - Current durable state of one host transaction.
Constants§
- CHUNK_
SIZE - 64KB plaintext chunks
Traits§
- Blob
Transition Observer - Notified about coven’s blob transitions, for host-specific bookkeeping and UI: per-blob upload progress while a make_remote uploads, per-blob materialize progress while a make_local copies files back, and the synchronous make-local completion the host turns into its own UI event.
- Clock
- Wall-clock source. Returns a full
DateTime<Utc>; callers derive.timestamp()/.to_rfc3339()as they need. - Cloud
Home - Cloud
KitOps - Synchronous interface for raw CloudKit record operations. Implemented by a host bridge to its platform CloudKit driver. Methods block the calling thread while CloudKit async operations complete.
- Device
Identity Custody - A device’s signing identity’s custody FOR ONE STORE: who unlocks it,
where a newly established one is written, and how it is removed. The
signing-key sibling of
MasterKeyCustody, same three-method shape and the same per-store selection, overUserKeypairinstead of a store’s master keyring. - Device
Provider Access Administrator - Exact
Cloud Home - A cloud home admitted to sync: raw object operations and exact immutable slots are one provider capability, so callers cannot open the home and then ask it to hand back a second provider object.
- Exact
Slot Storage - Low-level cloud storage. Implementations handle a single store.
- IdProvider
- Identifier source. Yields a fresh unique id per call.
- Master
KeyCustody - A store’s master keyring’s custody: who unlocks it, where a newly established or rotated one is written, and how it is removed. Implemented once per protection policy (the OS keyring, a passphrase-wrapped file, an in-memory session value, or a host’s own).
- Part
Sink - The one per-provider streaming-upload surface: a session that accepts ordered
parts and commits. The central
write_blobdriver opens one of these for a large blob and pumpsBlobBodyparts into it — no backend writes its own upload loop, collect, or progress call.
Functions§
- content_
hash - The content hash a blob-bearing row carries: the lowercase-hex SHA-256 of the blob’s plaintext bytes, computed at import and stored in the row’s blob columns alongside the declared size. The row is carried in a signed changeset (and in a signed snapshot), so this hash is signed by the row’s author — that is what makes it authoritative: on download coven hashes the decrypted plaintext and requires equality with the row’s hash, so the bytes are pinned by the author, not by the cloud key they happened to arrive under. A host computes this over a blob’s plaintext at import and writes it into the row’s declared hash column, the same way it writes the plaintext length into the size column.
- decode_
restore_ code_ info - Decode a restore code and return UI-ready info.
- fetch_
account_ email - install_
test_ keyring_ service - join_
with_ device_ pairing - Complete the joining side after scanning the existing device’s one pairing code. The local session returns the invitation sealed to this attempt; the existing Store transport then performs registration and bootstrap. The caller’s Coven migration policy controls every writer open during bootstrap.
- keyring_
service - The registered keyring service name.
Errwhen the host never ran the startupset_keyring_servicecall — surfaced so a mis-ordered host gets a typed error, not a panic deep inside a key operation. - no_
progress - A progress sink that discards its reports. For
writecalls whose payload is a small control file (head pointers, the snapshot) where no per-file progress bar is driven — only the blob outbox surfaces progress. - prepare_
external_ blob - Stream a user-owned file once and prepare its opaque content identity for
registration.
progressreceives the cumulative bytes consumed after each read. - restore_
from_ cloud - Restore a store from cloud storage.
- restore_
from_ code - Restore a store from a restore code string.
- set_
keyring_ service - Register the process-wide keyring: the service name every entry is stored
under, and the platform keyring store that backs it. Both are one-time
startup registration and must run before any key operation. The store is
installed before the name is recorded, so a failed installation leaves no
registration behind. Re-registering the same name is a no-op; a different
name is a startup contradiction and fails. Fails with
KeyError::UnsupportedKeyringPlatformon a target with no bundled store. - write_
atomic - Install
bytesas the complete contents ofpath. - write_
cloud_ object_ stream
Type Aliases§
- BoxPart
Sink - A boxed
PartSinkborrowing its home for'a. - Clock
Ref - Shared handle to a clock. Held by
Clonetypes (CovenHandle,CovenReadHandle) so they clone the handle, not the implementation. - Cloud
Object Stream - Coven
Result - Device
Join Offer - Device
Provider Access Request - Device
Provider Admission Approval - Download
Progress - Reports how many bytes of a cloud object have arrived from the provider. The count is cumulative and advances once per received stream buffer.
- IdRef
- Shared handle to an id provider. Held by
Clonetypes that need to share one id source, so they clone the handle, not the implementation. - Joining
Device Join Progress Observer - A joining device’s retained progress sink. Provider reads keep a clone while their response stream is active, so every received buffer reaches the host.
- Upload
Progress - Reports how many bytes of a
writehave reached the backend so far. Called with the cumulative byte count as the body uploads; backends that can’t observe sub-call progress call it once at the end with the full size. The count is of the bytes handed towrite(the encrypted payload).