pub fn gate_decision(
capability_id: impl Into<String>,
outcome: CapabilityGateOutcomeV1,
lifecycle: Vec<ToolLifecycleStateV1>,
executable_this_turn: bool,
reason_codes: Vec<String>,
) -> CapabilityGateDecisionV1pub fn gate_decision(
capability_id: impl Into<String>,
outcome: CapabilityGateOutcomeV1,
lifecycle: Vec<ToolLifecycleStateV1>,
executable_this_turn: bool,
reason_codes: Vec<String>,
) -> CapabilityGateDecisionV1