Skip to main content

Crate galata_vault

Crate galata_vault 

Source

Re-exports§

pub use crate::client::Api;
pub use crate::client::Events;
pub use crate::client::Method;
pub use crate::client::NoEvents;
pub use crate::client::Progress;
pub use crate::client::Request;
pub use crate::client::Response;
pub use crate::client::Transport;
pub use crate::client::TransportError;
pub use crate::client::Warning;
pub use crate::client::BuildError;
pub use crate::client::ClientBuilder;
pub use crate::client::HttpTransport;
pub use crate::proto::api::Scope;
pub use crate::proto::api::VaultStatus;
pub use crate::proto::api::VersionMeta;
pub use crate::proto::audit::Actor;
pub use crate::proto::audit::ChainHead;
pub use crate::proto::path::EnvPath;
pub use crate::seal::ConfigFormat;
pub use audit::AuditEntry;
pub use audit::AuditReport;
pub use audit::Unverifiable;
pub use state::FileStateStore;
pub use state::LocalState;
pub use state::StateStore;
pub use store::KeyName;
pub use store::KeyStore;
pub use store::StoreError;

Modules§

audit
Audit verification against a persisted head.
backend
Storage for the server: the Store interface, and a SQLite (WAL) implementation of it.
cli
The gv client, as a binary and as a library.
client
The galata-vault client transport: the layer the SDK (galata-vault) and the MCP server (galata-vault-mcp) share.
code
The codes this crate raises itself, beside the server’s own (token_expired, precondition_failed, …).
embedded
The in-process backend (feature embedded): the server’s rules inside this process, over a data directory, with no server to run.
keys
Client-side key material that is not a secret value: the project and environment key tree, owner signing and box keys, token keys, writer keys, owner-signed bundles, and the name key that indexes and encrypts record names.
mcp
A metadata-only MCP server over stdio: list_secrets, diff_envs, audit and status.
owner
The owner API: every operation gv performs as a project’s owner, as data in and data out.
proto
The wire protocol: types, framing and the route table. Every build has it. The shared vocabulary of the galata-vault protocol: string formats (gvk1_, gvt1_, paths), the framing convention, API types, descriptors, record contexts, proof-of-work and audit-chain hashing.
seal
The only crate that can read a secret value: age v1 encryption to a descriptor’s public keys, decryption with a generation’s private keys, signed records, and the rotation batch that re-encrypts a whole vault.
server
The galata-vault HTTP server (/v1): an axum shell over galata-vault-server-core.
server_core
The server’s rules, as a synchronous library.
state
Local bookkeeping, supplied by the caller.
store
Key storage, supplied by the caller.
testing
For adversarial test harnesses only (feature test-util, never enabled by a shipped crate): the per-vault protocol without local state, so a test can set up a vault, forge what a malicious server would serve, and aim an attack at the owner’s side of the protocol directly.

Structs§

ConfigDocument
A decrypted config document.
DescriptorPin
The descriptor generation a client saw, and its hash.
Entry
A record’s latest version, as listed. Never its value.
Expiry
When things expire, as data: printing a warning is the caller’s choice.
LeakReport
What reporting a leaked token did.
NewConfig
A config document to write.
Pins
What a client remembers to detect rollback: the descriptor it last verified, and the latest version it saw of each record. A caller that persists these across runs gets regression detection across runs.
SecretSet
Several secrets, fetched all-or-nothing.
SecretValue
A decrypted secret.
Vault
One environment’s vault. Opened with a token it is a token client; an crate::owner::Environment derefs to one for its record operations. Send + Sync: one handle serves every thread.

Enums§

Error
Every failure this crate returns. Send, Sync and Clone.
ErrorKind
What kind of failure a code is. The Python package raises one exception class per kind.
Expect
What a write expects the record to be, checked by the server: a stale write fails with a conflict naming both versions, and is never retried.
Expected
What a write expected the record to be, in a conflict.
IntegrityFailure
A protocol verification failure: what the server served does not verify.
TokenFileCheck
How a token file’s permissions are established before it is read.

Constants§

EXPIRY_WARNING_SECS
A response announcing a vault expiry closer than this is reported to the handle’s crate::Events (once per handle).
REVIEW_STATUS
The review-status statement, word for word as the README, the Python package’s description and the gv --help footer carry it. It is replaced by a link to the report only once an external review is published in the repository’s audit/.

Functions§

kind_of
The kind a code belongs to: one table for Rust and Python.
kind_of_status
The kind a refusal’s HTTP status implies: how a server code this client does not know is classified (docs/spec/http-api.md#7).
report_leaked_token
Report a leaked token so its server revokes it, by proving possession. The token string is never sent: only a signature made with it is.
scan_literals
Refuse a body holding a credential literal: a checksum-valid gvt1_ token or gvk1_ key, a PEM private key, or 0x and exactly 64 hex digits (an EVM private key’s shape).
validate
Refuse a body that is not UTF-8, or that does not parse as toml or json when declared so. yaml and text are checked for UTF-8 only.