chore: publish clean community baseline
CI / Rust Checks (push) Successful in 4m56s
CI / UI Checks (push) Successful in 5s
CI / Deployment Manifests (push) Successful in 3s
CI / Frontend E2E (push) Successful in 4m55s
Deploy / deploy (push) Failing after 3m52s

This commit is contained in:
github-ops
2026-06-17 06:15:46 +00:00
commit 5c9d87c413
317 changed files with 72908 additions and 0 deletions
+45
View File
@@ -0,0 +1,45 @@
use std::sync::Arc;
use async_trait::async_trait;
use crate::{RuntimeCacheConfig, RuntimeCacheStoreInitError, RuntimeCacheStores};
#[async_trait]
pub trait CacheBackendFactory: Send + Sync {
async fn build(
&self,
config: &RuntimeCacheConfig,
) -> Result<RuntimeCacheStores, RuntimeCacheStoreInitError>;
}
pub type SharedCacheBackendFactory = Arc<dyn CacheBackendFactory>;
#[derive(Clone, Copy, Debug, Default)]
pub struct BuiltinCacheBackendFactory;
#[async_trait]
impl CacheBackendFactory for BuiltinCacheBackendFactory {
async fn build(
&self,
config: &RuntimeCacheConfig,
) -> Result<RuntimeCacheStores, RuntimeCacheStoreInitError> {
RuntimeCacheStores::from_config(config).await
}
}
#[cfg(test)]
mod tests {
use crate::{CacheBackendFactory, RuntimeCacheConfig};
use super::BuiltinCacheBackendFactory;
#[tokio::test]
async fn builtin_factory_builds_default_memory_stores() {
let stores = BuiltinCacheBackendFactory
.build(&RuntimeCacheConfig::default())
.await
.unwrap();
assert_eq!(stores.backend, crank_core::CacheBackend::Memory);
}
}