feat(desktop): add redis gui foundation baseline

Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
Senior Frontend Engineer
2026-03-28 10:39:40 +00:00
commit 8d50243d36
56 changed files with 17423 additions and 0 deletions

View File

@@ -0,0 +1,45 @@
mod bootstrap;
mod connection;
mod error;
mod service;
pub use bootstrap::{BackendBootstrap, EntrySurface, PersistenceBoundary, SecretHandling};
pub use connection::{
CommandExecutionResult, ConnectionProfileDraft, ConnectionTarget, ConnectionTestResult,
RedisCommandRequest, RedisConnectionRequest, RedisFieldValueEntry, RedisKeyBrowseRequest,
RedisKeyBrowseResult, RedisKeyMetadata, RedisKeyMetadataRequest, RedisKeyTtl,
RedisKeyTtlUpdate, RedisKeyTtlUpdateRequest, RedisKeyTtlUpdateResult, RedisResponse,
RedisSortedSetEntry, RedisStreamEntry, RedisValueContent, RedisValueData,
RedisValueReadRequest, RedisValueRecord, RedisValueWriteCapability, RedisValueWriteInput,
RedisValueWriteRequest, TlsMode,
};
pub use error::{BackendError, BackendErrorCode};
pub use service::{
browse_keys, execute_command, inspect_key, read_value, test_connection, update_key_ttl,
write_value,
};
#[cfg(test)]
mod tests {
use crate::{BackendBootstrap, ConnectionTarget, TlsMode};
#[test]
fn desktop_bootstrap_keeps_persistence_guardrails_stable() {
let bootstrap = BackendBootstrap::for_desktop();
assert_eq!(bootstrap.persistence.connection_catalog, "not_configured");
assert_eq!(bootstrap.persistence.secrets, "memory_only");
assert_eq!(bootstrap.command_execution, "single_instance_enabled");
assert_eq!(bootstrap.key_browsing, "scan_metadata_enabled");
}
#[test]
fn connection_target_defaults_match_local_redis_expectation() {
let target = ConnectionTarget::default();
assert_eq!(target.host, "127.0.0.1");
assert_eq!(target.port, 6379);
assert_eq!(target.database, 0);
assert_eq!(target.tls_mode, TlsMode::Disabled);
}
}