4f11de23a2
* fix(llm): patch _stream/_astream for OpenAI-compatible content flattening _patch_openai_compat_content() only patched _generate/_agenerate but EvoSci CLI uses streaming paths. This extends the content flattening to _stream/_astream so strict OpenAI-compatible relays receive plain string content during streaming calls. Closes #142 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * fix(test): use asyncio.run() instead of pytest-asyncio for CI compat CI does not have pytest-asyncio installed, so async tests must use asyncio.run() wrapper instead of @pytest.mark.asyncio decorator. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * fix(test): use @pytest.mark.anyio for async tests (CI compat) CI does not have pytest-asyncio. Use @pytest.mark.anyio consistent with existing async tests in the project. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>