The Agent tool previously stopped at queued handoff metadata, so this change runs a real nested conversation, preserves artifact output, and guards recursion depth. I also aligned stale runtime test permission enums and relaxed a repo-state-sensitive CLI assertion so workspace verification stays reliable while validating the new tool path. Constraint: Reuse existing runtime conversation abstractions without introducing a new orchestration service Constraint: Child agent execution must preserve the same tool surface while preventing unbounded nesting Rejected: Shell out to the CLI binary for child execution | brittle process coupling and weaker testability Rejected: Leave Agent as metadata-only handoff | does not satisfy requested sub-agent orchestration behavior Confidence: high Scope-risk: moderate Reversibility: clean Directive: Keep Agent recursion limits enforced wherever nested Agent calls can re-enter the tool executor Tested: cargo fmt --all --manifest-path rust/Cargo.toml; cargo test --manifest-path rust/Cargo.toml; cargo clippy --manifest-path rust/Cargo.toml --workspace --all-targets -- -D warnings Not-tested: Live Anthropic-backed child agent execution against production credentials
18 lines
447 B
TOML
18 lines
447 B
TOML
[package]
|
|
name = "tools"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
publish.workspace = true
|
|
|
|
[dependencies]
|
|
api = { path = "../api" }
|
|
runtime = { path = "../runtime" }
|
|
reqwest = { version = "0.12", default-features = false, features = ["blocking", "rustls-tls"] }
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1"
|
|
tokio = { version = "1", features = ["rt-multi-thread"] }
|
|
|
|
[lints]
|
|
workspace = true
|