# tools/matrix-constraints.txt - the freeze-time pin lock (GOV-08, F2; VERSION-COMPAT S4).
#
# GENERATED from the committed uv.lock by tools/matrix_constraints.py - do not edit by
# hand. Regenerate with `python tools/matrix_constraints.py --write` in the same commit as
# any uv.lock refresh; `--check` (run by tests/test_matrix_constraints.py in every CI
# cell) fails when the two files skew.
#
# Every pip-installing CI job passes this file to `pip install -c`, so a matrix cell,
# the DoD job, the docs job and the pip-editable job resolve their dependencies to the
# versions the locked jobs run, instead of to whatever the index serves that day (the
# build job's clean-venv wheel smoke and the --pre cell's substrate resolve deliberately
# stay fresh). Distributions the cells pin to *different* versions are never constrained
# here - the compat-cell extras are their single source of truth; a family member
# appears below only when every extra that pins it agrees on one version and the lock
# resolved exactly that version (pydantic, langchain-protocol today). Anything else the
# lock resolves per cell is left to the cell and named below. A constraints line binds
# only when the named distribution is selected; it never installs anything by itself.
#
# Excluded from constraint, with reasons:
#   gebra - the project itself, installed editable by every job
#   langchain-core - substrate family - pinned per cell by the compat-cell extras
#   langgraph - substrate family - pinned per cell by the compat-cell extras
#   langgraph-checkpoint - substrate family - pinned per cell by the compat-cell extras
#   langgraph-prebuilt - substrate family - pinned per cell by the compat-cell extras
#   langgraph-sdk - substrate family - pinned per cell by the compat-cell extras
#   packaging - cell-dependent resolution (uv conflict markers) - left to the cell

annotated-doc==0.0.5
annotated-types==0.8.0
anyio==4.14.2
ast-serialize==0.6.0
certifi==2026.7.22
charset-normalizer==3.4.9
colorama==0.4.6
coverage==7.15.2
distro==1.9.0
exceptiongroup==1.3.1
h11==0.16.0
httpcore==1.0.9
httpx==0.28.1
hypothesis==6.164.0
idna==3.18
iniconfig==2.3.0
jsonpatch==1.33
jsonpointer==3.1.1
langchain-protocol==0.0.18
langsmith==0.10.12
librt==0.13.0
markdown-it-py==4.2.0
mdurl==0.1.2
mypy==2.3.0
mypy-extensions==1.1.0
networkx==3.4.2 ; (python_full_version < '3.11')
networkx==3.6.1 ; (python_full_version >= '3.15') or (python_full_version >= '3.11' and python_full_version < '3.15')
orjson==3.11.9
ormsgpack==1.12.2
pathspec==1.1.1
pluggy==1.6.0
pydantic==2.13.4
pydantic-core==2.46.4
pygments==2.20.0
pytest==9.1.1
pytest-cov==7.1.0
pyyaml==6.0.3
requests==2.34.2
requests-toolbelt==1.0.0
rich==15.0.0
ruff==0.16.0
shellingham==1.5.4
sniffio==1.3.1
sortedcontainers==2.4.0
tenacity==9.1.4
tomli==2.4.1
typer==0.27.0
types-pyyaml==6.0.12.20260724
typing-extensions==4.16.0
typing-inspection==0.4.2
urllib3==2.7.0
uuid-utils==0.17.0
websockets==15.0.1
xxhash==3.8.1
zstandard==0.25.0
