chore: remove BMAD framework files and IDE configuration artifacts

Clean up unused BMAD workflow, agent, and command files across all IDE
configurations (.agent, .clinerules, .cursor, .gemini, .github, .kilocode,
.opencode) and internal module files (_bmad/bmb, _bmad/bmm).

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Sepehr
2026-04-25 15:01:09 +02:00
parent 891c4ba436
commit ab5dc7e568
3006 changed files with 279068 additions and 59151 deletions

View File

@@ -6,6 +6,8 @@ use entropyk_solver::system::System;
struct DummyComponent {
ports: Vec<ConnectedPort>,
/// Fluid label used in signature() so input_hash reflects fluid configuration.
fluid_label: String,
}
impl Component for DummyComponent {
@@ -36,22 +38,33 @@ impl Component for DummyComponent {
fn get_ports(&self) -> &[ConnectedPort] {
&self.ports
}
fn signature(&self) -> String {
format!("DummyComponent({})", self.fluid_label)
}
}
fn make_dummy_component() -> Box<dyn Component> {
make_dummy_component_with_fluid("R134a")
}
fn make_dummy_component_with_fluid(fluid: &str) -> Box<dyn Component> {
let inlet = Port::new(
FluidId::new("R134a"),
FluidId::new(fluid),
Pressure::from_pascals(100_000.0),
Enthalpy::from_joules_per_kg(400_000.0),
);
let outlet = Port::new(
FluidId::new("R134a"),
FluidId::new(fluid),
Pressure::from_pascals(100_000.0),
Enthalpy::from_joules_per_kg(400_000.0),
);
let (connected_inlet, connected_outlet) = inlet.connect(outlet).unwrap();
let ports = vec![connected_inlet, connected_outlet];
Box::new(DummyComponent { ports })
Box::new(DummyComponent {
ports,
fluid_label: fluid.to_string(),
})
}
#[test]
@@ -79,3 +92,38 @@ fn test_simulation_metadata_outputs() {
assert_eq!(metadata.solver_version, env!("CARGO_PKG_VERSION"));
assert_eq!(metadata.fluid_backend_version, "0.1.0");
}
/// Same topology (two nodes, two edges) but different fluid → different input_hash.
#[test]
fn test_input_hash_different_fluid_same_topology() {
let mut sys_r134a = System::new();
let n0 = sys_r134a.add_component(make_dummy_component_with_fluid("R134a"));
let n1 = sys_r134a.add_component(make_dummy_component_with_fluid("R134a"));
sys_r134a.add_edge_with_ports(n0, 1, n1, 0).unwrap();
sys_r134a.add_edge_with_ports(n1, 1, n0, 0).unwrap();
sys_r134a.finalize().unwrap();
let mut sys_r410a = System::new();
let n0 = sys_r410a.add_component(make_dummy_component_with_fluid("R410A"));
let n1 = sys_r410a.add_component(make_dummy_component_with_fluid("R410A"));
sys_r410a.add_edge_with_ports(n0, 1, n1, 0).unwrap();
sys_r410a.add_edge_with_ports(n1, 1, n0, 0).unwrap();
sys_r410a.finalize().unwrap();
assert_ne!(
sys_r134a.input_hash(),
sys_r410a.input_hash(),
"input_hash must differ when only fluid configuration differs"
);
}
#[test]
fn test_metadata_to_json() {
use entropyk_solver::SimulationMetadata;
let meta = SimulationMetadata::new("abc123".to_string());
let json = meta.to_json().unwrap();
assert!(json.contains("\"solver_version\""));
assert!(json.contains("\"fluid_backend_version\""));
assert!(json.contains("\"input_hash\""));
assert!(json.contains("abc123"));
}