- Python SDK: remove 60s minimum timeout enforcement, respect
requested timeout with 5s network buffer
- Rust executor: cap timeout at MAX_TIMEOUT_SECS instead of
falling back to default when exceeded
- WASM wrapper: use RAII guard for nesting depth to prevent
leak on panic
Addresses Gemini review feedback on PR #408.
Co-Authored-By: Claude Opus 4.6 <[email protected]>
- Fix WASM tool_invoke production wiring: change tool_executor to a
shared Arc<std::sync::RwLock> slot with lazy resolution so WASM tools
registered during build_all() can access the executor set afterward
- Add nesting_depth field to ToolCallRequest and propagate it through
the orchestrator's tool_call_handler into JobContext
- Add ptc_script built-in tool: runs Python scripts with ironclaw_tools
SDK pre-imported, env-scrubbed subprocess, structured output support
- Copy Python SDK into Docker worker image at dist-packages path
Co-Authored-By: Claude Opus 4.6 <[email protected]>