Skip to content

Commit b5501f5

Browse files
author
Test User
committed
fix(rlm): wire firecracker feature with local fcctl-core + terraphim-firecracker dependencies
Added path dependencies for fcctl-core (firecracker-rust repo) and terraphim-firecracker (workspace member). Fixed FirecrackerExecutor::new() constructor calls in tests to pass validator=None. Builds with --features firecracker: 152 tests pass.
1 parent 6ca3e16 commit b5501f5

2 files changed

Lines changed: 10 additions & 9 deletions

File tree

crates/terraphim_rlm/Cargo.toml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,8 @@ terraphim_mcp_search = { version = "0.1.0", registry = "terraphim", optional = t
4040
# Firecracker-rust core for VM and snapshot management (private repo).
4141
# Uncomment when building with --features firecracker on a machine with
4242
# access to the private firecracker-rust repository.
43-
# fcctl-core = { git = "https://github.com/terraphim/firecracker-rust", branch = "main", optional = true }
43+
fcctl-core = { path = "/home/alex/projects/terraphim/firecracker-rust/fcctl-core", optional = true }
44+
terraphim-firecracker = { path = "../../terraphim_firecracker", optional = true, package = "terraphim-firecracker" }
4445

4546
# Async utilities
4647
tokio-util = "0.7"
@@ -85,7 +86,7 @@ kg-validation = ["dep:terraphim_automata", "dep:terraphim_types", "dep:terraphim
8586
supervision = ["dep:terraphim_agent_supervisor"]
8687
llm-bridge = ["dep:hyper", "dep:hyper-util"]
8788
docker-backend = ["dep:bollard"]
88-
firecracker = []
89+
firecracker = ["dep:fcctl-core", "dep:terraphim-firecracker"]
8990
e2b-backend = ["dep:reqwest"]
9091
mcp = ["dep:rmcp", "dep:terraphim_mcp_search", "dep:terraphim_types"]
9192
cli = ["dep:clap", "dep:env_logger"]

crates/terraphim_rlm/src/executor/firecracker.rs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -841,7 +841,7 @@ mod tests {
841841
}
842842

843843
let config = RlmConfig::default();
844-
let executor = FirecrackerExecutor::new(config).unwrap();
844+
let executor = FirecrackerExecutor::new(config, None).unwrap();
845845

846846
assert!(executor.has_capability(Capability::VmIsolation));
847847
assert!(executor.has_capability(Capability::Snapshots));
@@ -857,7 +857,7 @@ mod tests {
857857
}
858858

859859
let config = RlmConfig::default();
860-
let result = FirecrackerExecutor::new(config);
860+
let result = FirecrackerExecutor::new(config, None);
861861
assert!(result.is_err());
862862
}
863863

@@ -869,7 +869,7 @@ mod tests {
869869
}
870870

871871
let config = RlmConfig::default();
872-
let executor = FirecrackerExecutor::new(config).unwrap();
872+
let executor = FirecrackerExecutor::new(config, None).unwrap();
873873
let session_id = SessionId::new();
874874

875875
// Initially no VM assigned
@@ -898,7 +898,7 @@ mod tests {
898898
}
899899

900900
let config = RlmConfig::default();
901-
let executor = FirecrackerExecutor::new(config).unwrap();
901+
let executor = FirecrackerExecutor::new(config, None).unwrap();
902902
let session_id = SessionId::new();
903903

904904
// Initially no current snapshot
@@ -924,7 +924,7 @@ mod tests {
924924
}
925925

926926
let config = RlmConfig::default();
927-
let executor = FirecrackerExecutor::new(config).unwrap();
927+
let executor = FirecrackerExecutor::new(config, None).unwrap();
928928
let session_id = SessionId::new();
929929

930930
// Rollback without any snapshot should be no-op
@@ -940,7 +940,7 @@ mod tests {
940940
}
941941

942942
let config = RlmConfig::default();
943-
let executor = FirecrackerExecutor::new(config).unwrap();
943+
let executor = FirecrackerExecutor::new(config, None).unwrap();
944944

945945
// Health check should fail if not initialized
946946
let result = executor.health_check().await.unwrap();
@@ -955,7 +955,7 @@ mod tests {
955955
}
956956

957957
let config = RlmConfig::default();
958-
let executor = FirecrackerExecutor::new(config).unwrap();
958+
let executor = FirecrackerExecutor::new(config, None).unwrap();
959959

960960
let session_id1 = SessionId::new();
961961
let session_id2 = SessionId::new();

0 commit comments

Comments
 (0)