From 5a46f569f8f05d91c80432666faef40bc7862e79 Mon Sep 17 00:00:00 2001 From: Meta Vens Date: Tue, 11 Aug 2026 16:43:28 +0200 Subject: [PATCH] Keep daemon actuation under swarm brake --- epiphany-core/src/cultmesh_integration.rs | 25 +++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/epiphany-core/src/cultmesh_integration.rs b/epiphany-core/src/cultmesh_integration.rs index ebe314a4..c523ee44 100644 --- a/epiphany-core/src/cultmesh_integration.rs +++ b/epiphany-core/src/cultmesh_integration.rs @@ -4256,6 +4256,7 @@ pub fn canonical_epiphany_swarm_brake_protected_surfaces() -> Vec { "coordinator.run".to_string(), "persona.public_speech".to_string(), "daemon.tool_invocation".to_string(), + "daemon.lifecycle_poke".to_string(), ] } @@ -10068,6 +10069,30 @@ mod tests { Ok(()) } + #[test] + fn canonical_engagement_protects_daemon_lifecycle_actuation() -> Result<()> { + let temp = tempfile::tempdir()?; + let store = temp.path().join("epiphany-canonical-swarm-brake.ccmp"); + let brake = engage_epiphany_cultmesh_swarm_brake( + &store, + "epiphany-test", + "Hold every consequence surface during shakedown.", + "Idunn", + "2026-08-11T00:00:00Z", + false, + )?; + + assert_eq!(brake.status, "engaged"); + assert_eq!(brake.scope, "all"); + assert!( + brake + .protected_surfaces + .iter() + .any(|surface| surface == "daemon.lifecycle_poke") + ); + Ok(()) + } + #[test] fn swarm_brake_refuses_private_state_or_unreasoned_engagement() -> Result<()> { let temp = tempfile::tempdir()?;