Commit 6b13ca2
authored
fix(aenv): pin transitive deps to coexist (#76)
….x + pydantic 2.11.x)
aenv's PyPI metadata previously left fastmcp / mcp / pydantic
upper-bounds open, so pip's resolver pulls:
* fastmcp 3.x → pydantic-settings>=2.5 (latest) → pydantic 2.13.x
* mcp >= 1.17 → pydantic-settings>=2.5.2 (forced)
That cascades to pydantic-core 2.41.x and breaks asap-service's LLM
gateway which still relies on openai 1.78.1 + pydantic 2.11.10
+ pydantic-core 2.33.2 (openai 2.x SSE schema is incompatible).
Pin four deps to ranges that coexist with the asap pin set without
sacrificing aenv's runtime contract:
* pydantic >= 2.7, < 2.12 (asap is on 2.11.10)
* pydantic-settings >= 2.0 (explicit so it isn't pulled by mcp alone)
* mcp >= 1.0, < 2 (block future 2.x ABI break)
* fastmcp >= 2.13, < 3 (block 3.x's stricter pydantic chain)
Local verification (asap-service Python env, OSX miniconda 3.12):
* pip install aenvironment-0.1.6.whl -> openai 1.78.1 unchanged,
pydantic 2.11.10 unchanged, pydantic-core 2.33.2 unchanged, fastmcp
resolves to 2.14.7.
* from aenv import Environment -> OK
* AEnvSandboxService._import_environment() ->
aenv.core.environment.Environment
* pytest biz/flash_game_agent/tests -m 'not integration' -> 11 passed.
openai-agents stays under [project.optional-dependencies].agents.1 parent 992b2fb commit 6b13ca2
1 file changed
Lines changed: 4 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
27 | | - | |
| 27 | + | |
| 28 | + | |
28 | 29 | | |
29 | 30 | | |
30 | 31 | | |
31 | | - | |
| 32 | + | |
32 | 33 | | |
33 | 34 | | |
34 | 35 | | |
35 | | - | |
| 36 | + | |
36 | 37 | | |
37 | 38 | | |
38 | 39 | | |
| |||
0 commit comments