# Location: ./crates/cpex-orchestration/Cargo.toml
# Copyright 2026
# SPDX-License-Identifier: Apache-2.0
# Authors: Teryl Taylor
#
# Shared async orchestration primitives.
#
# This crate is a leaf utility — no internal workspace dependencies.
# Provides the JoinSet-based concurrent runner that both:
#   * `cpex-core::executor::run_concurrent_phase` — fans out concurrent
#     plugins for one hook
#   * `apl-core::evaluator` — fans out the effects in an APL
#     `parallel:` block
# share.
#
# Speaks generic `Future<Output = T>` + an `is_deny` predicate, not any
# domain types. Each caller adapts its concepts to this surface.

[package]
name = "cpex-orchestration"
description = "Async concurrency primitives shared by the CPEX runtime"
version.workspace = true
edition.workspace = true
license.workspace = true
authors.workspace = true
repository.workspace = true
homepage.workspace = true
keywords.workspace = true
categories.workspace = true
rust-version.workspace = true

[lib]

[dependencies]
tokio   = { workspace = true, features = ["rt", "time", "macros"] }
futures = { workspace = true }

[dev-dependencies]
tokio = { workspace = true, features = ["rt-multi-thread", "macros", "time"] }

[lints]
workspace = true
