mirror of
https://github.com/hwchase17/langchain.git
synced 2026-07-11 18:18:51 +00:00
a2e53fda733c3ccc180b85fbbdb48893d770549f
9447 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
a2e53fda73 |
feat(text-splitters): replace mypy by ty for type checking (#38658)
Switches type checking for `langchain-text-splitters` from `mypy` to [`ty`](https://docs.astral.sh/ty/), which is much faster. The `ollama` package already [switched to `ty`](https://github.com/langchain-ai/langchain/pull/36571). ## What changed The core of this PR is the config swap (`[tool.mypy]` → `[tool.ty.rules]`/`[tool.ty.analysis]`, `Makefile`, and the `typing` dependency group). Because `ty` runs with `all = "error"`, a few modules also needed source-level adjustments to satisfy the stricter analysis. These are **behavior-preserving refactors** except for one intentional fix, called out below so reviewers know where to look. ### Behavioral change (intentional fix) - `SentenceTransformersTokenTextSplitter` now raises a clear `ValueError` when the underlying model reports no maximum sequence length **and** no `tokens_per_chunk` was provided. Previously this combination reached a `None > None` comparison and surfaced as an opaque `TypeError`. As a consequence, the public `maximum_tokens_per_chunk` attribute is now honestly typed as `int | None` — it can remain `None` when the caller supplies `tokens_per_chunk` explicitly for a model without a limit. ### Behavior-preserving refactors (no user-visible change) - `TokenTextSplitter.from_tiktoken_encoder` is now an explicit override rather than the base method dispatching on `issubclass(cls, TokenTextSplitter)`. The shared length-function logic moved into a private helper. Public signatures and return types are unchanged. - `NLTKTextSplitter` builds its tokenizer once at construction, so `_tokenizer` is now always a `Callable[[str], list[str]]`. The private attributes `_language` and `_use_span_tokenize` are no longer stored — flagging in case any downstream code read those (they are underscore-private). Tokenization output is unchanged. - `HTMLSemanticPreservingSplitter` text extraction was rewritten from a `cast`-based check to `isinstance(element, Tag)` narrowing; output is equivalent for tags, text nodes, and comments. --------- Co-authored-by: Mason Daugherty <github@mdrxy.com> |
||
|
|
4d4dab80bb |
feat(model-profiles): wrap multi-provider build_summary output in <details> toggles (#38664)
`build_summary` in `langchain_model_profiles._summary` now wraps each
provider section in a `<details>` toggle when more than one provider has
changes, making multi-provider refresh PR summaries skimmable.
Single-provider summaries are unchanged.
---
When the `refresh_model_profiles` workflow refreshes data for multiple
partner integrations at once, the resulting PR summary can be long and
hard to skim — every provider's added/removed/changed rows are rendered
flat, one after another. This wraps each provider section in a
`<details>`/`<summary>` toggle when more than one provider has changes,
so reviewers can expand only the providers they care about.
Single-provider summaries stay flat since there's nothing to collapse.
The per-provider `### {provider}` heading is stripped inside toggles so
the `<summary>` tag is the sole label — no duplicated provider name.
Also includes two smaller changes that were staged alongside:
- The `refresh_model_profiles` and `_refresh_model_profiles` workflow
PR-body templates now link to the workflow file instead of bare-text
referencing it.
- `AGENTS.md` and `CLAUDE.md` document the LangSmith integration test
tracing setup: the env vars CI sets, the pytest plugin that bridges
`LANGSMITH_TAGS`/`LANGSMITH_METADATA` into `tracing_context`, and the
unit-test isolation approach.
---------
Signed-off-by: Mason Daugherty <github@mdrxy.com>
Co-authored-by: open-swe[bot] <215916821+open-swe[bot]@users.noreply.github.com>
|
||
|
|
8146596e0a |
chore(model-profiles): refresh model profile data (#38663)
Automated refresh of model profile data for all in-monorepo partner integrations via `langchain-profiles refresh`. 🤖 Generated by the `refresh_model_profiles` workflow. ## Summary of changes **35 added · 8 removed · 33 changed** across 6 provider(s). ### anthropic **➕ 1 added** - `claude-sonnet-5` — 1,000,000 ctx, 128,000 out, text+image+pdf in, reasoning, tools **➖ 2 removed** - `claude-3-5-haiku-20241022` - `claude-3-5-haiku-latest` ### fireworks-ai **➕ 1 added** - `accounts/fireworks/routers/glm-5p2-fast` — 1,048,575 ctx, 131,072 out, reasoning, tools **✏️ 1 changed** - `accounts/fireworks/models/glm-5p2`: max input tokens 1,048,576 → 1,048,575 ### groq **✏️ 1 changed** - `openai/gpt-oss-safeguard-20b`: last updated `2025-10-29` → `2026-06-29` ### huggingface **➕ 26 added** - `MiniMaxAI/MiniMax-M2` — 204,800 ctx, 128,000 out, reasoning, tools - `MiniMaxAI/MiniMax-M3` — 524,288 ctx, 128,000 out, text+image in, reasoning, tools - `Qwen/Qwen3-235B-A22B` — 40,960 ctx, 16,384 out, reasoning, tools - `Qwen/Qwen3-32B` — 131,072 ctx, 16,384 out, reasoning, tools - `Qwen/Qwen3-Coder-30B-A3B-Instruct` — 262,144 ctx, 65,536 out, tools - `Qwen/Qwen3.5-122B-A10B` — 262,144 ctx, 65,536 out, text+image in, reasoning, tools - `Qwen/Qwen3.5-27B` — 262,144 ctx, 65,536 out, text+image in, reasoning, tools - `Qwen/Qwen3.5-35B-A3B` — 262,144 ctx, 65,536 out, text+image in, reasoning, tools - `Qwen/Qwen3.5-9B` — 262,144 ctx, 65,536 out, text+image in, reasoning, tools - `Qwen/Qwen3.6-27B` — 262,144 ctx, 65,536 out, text+image in, reasoning, tools - `Qwen/Qwen3.6-35B-A3B` — 262,144 ctx, 65,536 out, text+image in, reasoning, tools - `XiaomiMiMo/MiMo-V2.5-Pro` — 1,048,576 ctx, 131,072 out, reasoning, tools - `deepseek-ai/DeepSeek-R1` — 64,000 ctx, 32,768 out, reasoning, tools - `deepseek-ai/DeepSeek-V4-Flash` — 1,048,576 ctx, 384,000 out, reasoning, tools - `google/gemma-4-26B-A4B-it` — 262,144 ctx, 32,768 out, text+image in, reasoning, tools - `google/gemma-4-31B-it` — 262,144 ctx, 32,768 out, text+image in, reasoning, tools - `meta-llama/Llama-3.3-70B-Instruct` — 131,072 ctx, 4,096 out, tools - `moonshotai/Kimi-K2.7-Code` — 262,144 ctx, 262,144 out, text+image in, reasoning, tools - `openai/gpt-oss-120b` — 131,072 ctx, 32,768 out, reasoning, tools - `stepfun-ai/Step-3.5-Flash` — 262,144 ctx, 256,000 out, reasoning, tools - `stepfun-ai/Step-3.7-Flash` — 262,144 ctx, 256,000 out, text+image in, reasoning, tools - `zai-org/GLM-4.5` — 131,072 ctx, 98,304 out, reasoning, tools - `zai-org/GLM-4.5-Air` — 131,072 ctx, 98,304 out, reasoning, tools - `zai-org/GLM-4.5V` — 65,536 ctx, 16,384 out, text+image in, reasoning, tools - `zai-org/GLM-4.6` — 204,800 ctx, 131,072 out, reasoning, tools - …and 1 more ### mistral **✏️ 1 changed** - `mistral-medium-latest`: last updated `2025-08-12` → `2026-04-29`; added open weights; added reasoning; release date `2025-08-12` → `2026-04-29`; added structured output ### openrouter **➕ 7 added** - `anthropic/claude-fable-5` — 1,000,000 ctx, 128,000 out, text+image+pdf in, reasoning, tools - `anthropic/claude-sonnet-5` — 1,000,000 ctx, 128,000 out, text+image+pdf in, reasoning, tools - `google/gemini-3.1-flash-lite-image` — 65,536 ctx, 66,000 out, text+image in, reasoning - `poolside/laguna-xs-2.1` — 262,144 ctx, 32,768 out, reasoning, tools - `poolside/laguna-xs-2.1:free` — 262,144 ctx, 32,768 out, reasoning, tools - `sakana/fugu-ultra` — 1,000,000 ctx, 128,000 out, text+image in, reasoning, tools - `z-ai/glm-5v-turbo` — 202,752 ctx, 131,072 out, text+image+video in, reasoning, tools **➖ 6 removed** - `anthropic/claude-opus-4.6-fast` - `essentialai/rnj-1-instruct` - `microsoft/phi-4-mini-instruct` - `nex-agi/nex-n2-pro:free` - `openrouter/owl-alpha` - `prime-intellect/intellect-3` **✏️ 30 changed** - `arcee-ai/trinity-large-thinking`: removed structured output - `deepseek/deepseek-v4-flash`: max input tokens 1,000,000 → 1,048,576; max output tokens 65,536 → 16,384 - `google/gemini-2.5-flash-image`: max output tokens 8,192 → 32,768 - `google/gemini-3.1-flash-image`: max input tokens 65,536 → 131,072; max output tokens 65,536 → 32,768 - `google/gemma-4-26b-a4b-it:free`: added structured output - `minimax/minimax-m2`: max input tokens 196,608 → 204,800; max output tokens 196,608 → 131,072 - `minimax/minimax-m2.1`: max input tokens 196,608 → 204,800; max output tokens 196,608 → 131,072; removed structured output - `minimax/minimax-m2.7`: max output tokens 131,072 → 196,608 - `moonshotai/kimi-k2`: max output tokens 32,768 → 100,352 - `moonshotai/kimi-k2-0905`: max output tokens 262,144 → 100,352 - `moonshotai/kimi-k2-thinking`: max output tokens 262,144 → 100,352 - `moonshotai/kimi-k2.5`: max output tokens 262,144 → 256,000 - `moonshotai/kimi-k2.6`: max output tokens 65,535 → 262,144 - `moonshotai/kimi-k2.7-code`: max output tokens 262,144 → 16,384 - `nvidia/nemotron-3-super-120b-a12b`: max output tokens 262,144 → 16,384 - `openai/gpt-oss-120b`: max output tokens 32,768 → 131,072; display name `gpt-oss-120b` → `GPT OSS 120B` - `qwen/qwen3-235b-a22b-thinking-2507`: max input tokens 262,144 → 131,072; removed structured output - `qwen/qwen3-30b-a3b-thinking-2507`: max input tokens 131,072 → 81,920; max output tokens 131,072 → 32,768; removed structured output - `qwen/qwen3-8b`: max input tokens 40,960 → 131,072; removed structured output - `qwen/qwen3.5-35b-a3b`: max output tokens 262,144 → 81,920 - `qwen/qwen3.5-397b-a17b`: max output tokens 65,536 → 64,000 - `stepfun/step-3.5-flash`: max output tokens 16,384 → 65,536 - `thedrummer/rocinante-12b`: removed structured output; removed tool calling - `x-ai/grok-4.3`: added PDF input - `xiaomi/mimo-v2.5`: max input tokens 1,048,576 → 32,000 - …and 5 more --------- Co-authored-by: mdrxy <61371264+mdrxy@users.noreply.github.com> Co-authored-by: Mason Daugherty <github@mdrxy.com> |
||
|
|
0501325e6c |
chore: bump langsmith from 0.8.18 to 0.9.5 in /libs/partners/huggingface (#38592)
Bumps [langsmith](https://github.com/langchain-ai/langsmith-sdk) from 0.8.18 to 0.9.5. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langsmith-sdk/releases">langsmith's releases</a>.</em></p> <blockquote> <h2>v0.9.5</h2> <h2>What's Changed</h2> <ul> <li>chore: sync langsmith_api by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3126">langchain-ai/langsmith-sdk#3126</a></li> <li>chore: bump _MIN_BACKEND_VERSION to 0.16.9rc1 by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3127">langchain-ai/langsmith-sdk#3127</a></li> <li>fix(sandbox): wrap all WS handshake failures as SandboxConnectionError by <a href="https://github.com/asrira428"><code>@asrira428</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3130">langchain-ai/langsmith-sdk#3130</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.4...v0.9.5">https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.4...v0.9.5</a></p> <h2>v0.9.4</h2> <h2>What's Changed</h2> <ul> <li>fix(google_adk): capture LLM inputs after before_model_callback runs [LSDK-279] by <a href="https://github.com/harisaiharish"><code>@harisaiharish</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3094">langchain-ai/langsmith-sdk#3094</a></li> <li>release(js): bump js sdk version to 0.7.13 by <a href="https://github.com/langchain-infra"><code>@langchain-infra</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3104">langchain-ai/langsmith-sdk#3104</a></li> <li>chore: sync langsmith_api by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3105">langchain-ai/langsmith-sdk#3105</a></li> <li>doc: improve resource comments by <a href="https://github.com/QuentinBrosse"><code>@QuentinBrosse</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3108">langchain-ai/langsmith-sdk#3108</a></li> <li>fix(client): apply anonymizer to run error field by <a href="https://github.com/paarth-a"><code>@paarth-a</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3100">langchain-ai/langsmith-sdk#3100</a></li> <li>feat(client): expose datasets v2 resource + experiment-runs integration tests [langchainplus#28358] by <a href="https://github.com/GowriH-1"><code>@GowriH-1</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3106">langchain-ai/langsmith-sdk#3106</a></li> <li>fix(google-adk): set tool span as active tracing context in wrap_tool_run_async by <a href="https://github.com/navarra-lisandro"><code>@navarra-lisandro</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3111">langchain-ai/langsmith-sdk#3111</a></li> <li>fix(client): apply anonymizer to run error field (JS) by <a href="https://github.com/paarth-a"><code>@paarth-a</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3110">langchain-ai/langsmith-sdk#3110</a></li> <li>fix(python): use current project issues endpoint by <a href="https://github.com/khankaholic"><code>@khankaholic</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3064">langchain-ai/langsmith-sdk#3064</a></li> <li>chore: sync langsmith_api by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3120">langchain-ai/langsmith-sdk#3120</a></li> <li>fix(js): Avoid setting usage_metadata on parent chain runs for Claude Agent SDK runs by <a href="https://github.com/jacoblee93"><code>@jacoblee93</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3119">langchain-ai/langsmith-sdk#3119</a></li> <li>feat(client): expose projects resource accessor on Python and JS clients by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3109">langchain-ai/langsmith-sdk#3109</a></li> <li>release(js): bump to 0.7.14 by <a href="https://github.com/dqbd"><code>@dqbd</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3121">langchain-ai/langsmith-sdk#3121</a></li> <li>release(python): bump py version to 0.9.4 by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3124">langchain-ai/langsmith-sdk#3124</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/navarra-lisandro"><code>@navarra-lisandro</code></a> made their first contribution in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3111">langchain-ai/langsmith-sdk#3111</a></li> <li><a href="https://github.com/khankaholic"><code>@khankaholic</code></a> made their first contribution in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3064">langchain-ai/langsmith-sdk#3064</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.3...v0.9.4">https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.3...v0.9.4</a></p> <h2>v0.9.3</h2> <h2>What's Changed</h2> <ul> <li>release(js): bump js sdk version to 0.7.12 by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3089">langchain-ai/langsmith-sdk#3089</a></li> <li>feat(sandbox): do not gate dataplane ops on sandbox status by <a href="https://github.com/ramon-langchain"><code>@ramon-langchain</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3090">langchain-ai/langsmith-sdk#3090</a></li> <li>chore: sync langsmith_api by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3095">langchain-ai/langsmith-sdk#3095</a></li> <li>ci: pin all GitHub Actions to immutable SHA pins by <a href="https://github.com/jkennedyvz"><code>@jkennedyvz</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3093">langchain-ai/langsmith-sdk#3093</a></li> <li>chore(deps-dev): bump vcrpy from 8.1.1 to 8.2.1 in /python by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3074">langchain-ai/langsmith-sdk#3074</a></li> <li>chore(deps): bump pydantic-settings from 2.13.1 to 2.14.2 in /python by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3075">langchain-ai/langsmith-sdk#3075</a></li> <li>feat(sandbox): expose registries via generated v2 client by <a href="https://github.com/langchain-infra"><code>@langchain-infra</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3087">langchain-ai/langsmith-sdk#3087</a></li> <li>fix(client): lazily initialize sync OpenAPI client by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3099">langchain-ai/langsmith-sdk#3099</a></li> <li>release(python): bump py version to 0.9.3 by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3101">langchain-ai/langsmith-sdk#3101</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.2...v0.9.3">https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.2...v0.9.3</a></p> <h2>v0.9.2</h2> <h2>What's Changed</h2> <ul> <li>release(js): bump js sdk version to 0.7.11 by <a href="https://github.com/sineha-mani"><code>@sineha-mani</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3079">langchain-ai/langsmith-sdk#3079</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
a21a0e3fc2 |
chore: bump pytest from 9.1.0 to 9.1.1 in /libs/partners/huggingface (#38591)
Bumps [pytest](https://github.com/pytest-dev/pytest) from 9.1.0 to 9.1.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pytest/releases">pytest's releases</a>.</em></p> <blockquote> <h2>9.1.1</h2> <h1>pytest 9.1.1 (2026-06-19)</h1> <h2>Bug fixes</h2> <ul> <li><a href="https://redirect.github.com/pytest-dev/pytest/issues/14220">#14220</a>: Fixed a logic bug in <code>pytest.RaisesGroup</code> which would might cause it to display incorrect "It matches <!-- raw HTML omitted -->FooError()<!-- raw HTML omitted --> which was paired with <!-- raw HTML omitted -->BarError<!-- raw HTML omitted -->" messages.</li> <li><a href="https://redirect.github.com/pytest-dev/pytest/issues/14591">#14591</a>: Fixed a regression in pytest 9.1.0 which caused overriding a parametrized fixture with an indirect <!-- raw HTML omitted --><a href="https://github.com/pytest"><code>@pytest</code></a>.mark.parametrize<!-- raw HTML omitted --> to fail with "duplicate parametrization of '<fixture name>'".</li> <li><a href="https://redirect.github.com/pytest-dev/pytest/issues/14606">#14606</a>: Fixed <code>list-item</code> typing errors from mypy in <code>@pytest.mark.parametrize <pytest.mark.parametrize ref></code> <code>argvalues</code> parameter.</li> <li><a href="https://redirect.github.com/pytest-dev/pytest/issues/14608">#14608</a>: Fixed a regression in pytest 9.1.0 where <code>conftest.py</code> files located in <code><invocation dir>/test*</code> were no longer loaded as initial conftests when invoked without arguments. This could cause certain hooks (like <code>pytest_addoption</code>) in these files to not fire.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
b064f3b8ec |
chore: bump transformers from 5.2.0 to 5.3.0 in /libs/partners/huggingface (#38593)
Bumps [transformers](https://github.com/huggingface/transformers) from 5.2.0 to 5.3.0. <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
91e24a547c |
chore: bump pytest from 9.1.0 to 9.1.1 in /libs/partners/fireworks (#38594)
Bumps [pytest](https://github.com/pytest-dev/pytest) from 9.1.0 to 9.1.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pytest/releases">pytest's releases</a>.</em></p> <blockquote> <h2>9.1.1</h2> <h1>pytest 9.1.1 (2026-06-19)</h1> <h2>Bug fixes</h2> <ul> <li><a href="https://redirect.github.com/pytest-dev/pytest/issues/14220">#14220</a>: Fixed a logic bug in <code>pytest.RaisesGroup</code> which would might cause it to display incorrect "It matches <!-- raw HTML omitted -->FooError()<!-- raw HTML omitted --> which was paired with <!-- raw HTML omitted -->BarError<!-- raw HTML omitted -->" messages.</li> <li><a href="https://redirect.github.com/pytest-dev/pytest/issues/14591">#14591</a>: Fixed a regression in pytest 9.1.0 which caused overriding a parametrized fixture with an indirect <!-- raw HTML omitted --><a href="https://github.com/pytest"><code>@pytest</code></a>.mark.parametrize<!-- raw HTML omitted --> to fail with "duplicate parametrization of '<fixture name>'".</li> <li><a href="https://redirect.github.com/pytest-dev/pytest/issues/14606">#14606</a>: Fixed <code>list-item</code> typing errors from mypy in <code>@pytest.mark.parametrize <pytest.mark.parametrize ref></code> <code>argvalues</code> parameter.</li> <li><a href="https://redirect.github.com/pytest-dev/pytest/issues/14608">#14608</a>: Fixed a regression in pytest 9.1.0 where <code>conftest.py</code> files located in <code><invocation dir>/test*</code> were no longer loaded as initial conftests when invoked without arguments. This could cause certain hooks (like <code>pytest_addoption</code>) in these files to not fire.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
e06252d5db |
chore: bump langsmith from 0.8.18 to 0.9.5 in /libs/partners/fireworks (#38595)
Bumps [langsmith](https://github.com/langchain-ai/langsmith-sdk) from 0.8.18 to 0.9.5. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langsmith-sdk/releases">langsmith's releases</a>.</em></p> <blockquote> <h2>v0.9.5</h2> <h2>What's Changed</h2> <ul> <li>chore: sync langsmith_api by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3126">langchain-ai/langsmith-sdk#3126</a></li> <li>chore: bump _MIN_BACKEND_VERSION to 0.16.9rc1 by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3127">langchain-ai/langsmith-sdk#3127</a></li> <li>fix(sandbox): wrap all WS handshake failures as SandboxConnectionError by <a href="https://github.com/asrira428"><code>@asrira428</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3130">langchain-ai/langsmith-sdk#3130</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.4...v0.9.5">https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.4...v0.9.5</a></p> <h2>v0.9.4</h2> <h2>What's Changed</h2> <ul> <li>fix(google_adk): capture LLM inputs after before_model_callback runs [LSDK-279] by <a href="https://github.com/harisaiharish"><code>@harisaiharish</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3094">langchain-ai/langsmith-sdk#3094</a></li> <li>release(js): bump js sdk version to 0.7.13 by <a href="https://github.com/langchain-infra"><code>@langchain-infra</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3104">langchain-ai/langsmith-sdk#3104</a></li> <li>chore: sync langsmith_api by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3105">langchain-ai/langsmith-sdk#3105</a></li> <li>doc: improve resource comments by <a href="https://github.com/QuentinBrosse"><code>@QuentinBrosse</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3108">langchain-ai/langsmith-sdk#3108</a></li> <li>fix(client): apply anonymizer to run error field by <a href="https://github.com/paarth-a"><code>@paarth-a</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3100">langchain-ai/langsmith-sdk#3100</a></li> <li>feat(client): expose datasets v2 resource + experiment-runs integration tests [langchainplus#28358] by <a href="https://github.com/GowriH-1"><code>@GowriH-1</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3106">langchain-ai/langsmith-sdk#3106</a></li> <li>fix(google-adk): set tool span as active tracing context in wrap_tool_run_async by <a href="https://github.com/navarra-lisandro"><code>@navarra-lisandro</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3111">langchain-ai/langsmith-sdk#3111</a></li> <li>fix(client): apply anonymizer to run error field (JS) by <a href="https://github.com/paarth-a"><code>@paarth-a</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3110">langchain-ai/langsmith-sdk#3110</a></li> <li>fix(python): use current project issues endpoint by <a href="https://github.com/khankaholic"><code>@khankaholic</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3064">langchain-ai/langsmith-sdk#3064</a></li> <li>chore: sync langsmith_api by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3120">langchain-ai/langsmith-sdk#3120</a></li> <li>fix(js): Avoid setting usage_metadata on parent chain runs for Claude Agent SDK runs by <a href="https://github.com/jacoblee93"><code>@jacoblee93</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3119">langchain-ai/langsmith-sdk#3119</a></li> <li>feat(client): expose projects resource accessor on Python and JS clients by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3109">langchain-ai/langsmith-sdk#3109</a></li> <li>release(js): bump to 0.7.14 by <a href="https://github.com/dqbd"><code>@dqbd</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3121">langchain-ai/langsmith-sdk#3121</a></li> <li>release(python): bump py version to 0.9.4 by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3124">langchain-ai/langsmith-sdk#3124</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/navarra-lisandro"><code>@navarra-lisandro</code></a> made their first contribution in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3111">langchain-ai/langsmith-sdk#3111</a></li> <li><a href="https://github.com/khankaholic"><code>@khankaholic</code></a> made their first contribution in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3064">langchain-ai/langsmith-sdk#3064</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.3...v0.9.4">https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.3...v0.9.4</a></p> <h2>v0.9.3</h2> <h2>What's Changed</h2> <ul> <li>release(js): bump js sdk version to 0.7.12 by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3089">langchain-ai/langsmith-sdk#3089</a></li> <li>feat(sandbox): do not gate dataplane ops on sandbox status by <a href="https://github.com/ramon-langchain"><code>@ramon-langchain</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3090">langchain-ai/langsmith-sdk#3090</a></li> <li>chore: sync langsmith_api by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3095">langchain-ai/langsmith-sdk#3095</a></li> <li>ci: pin all GitHub Actions to immutable SHA pins by <a href="https://github.com/jkennedyvz"><code>@jkennedyvz</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3093">langchain-ai/langsmith-sdk#3093</a></li> <li>chore(deps-dev): bump vcrpy from 8.1.1 to 8.2.1 in /python by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3074">langchain-ai/langsmith-sdk#3074</a></li> <li>chore(deps): bump pydantic-settings from 2.13.1 to 2.14.2 in /python by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3075">langchain-ai/langsmith-sdk#3075</a></li> <li>feat(sandbox): expose registries via generated v2 client by <a href="https://github.com/langchain-infra"><code>@langchain-infra</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3087">langchain-ai/langsmith-sdk#3087</a></li> <li>fix(client): lazily initialize sync OpenAPI client by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3099">langchain-ai/langsmith-sdk#3099</a></li> <li>release(python): bump py version to 0.9.3 by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3101">langchain-ai/langsmith-sdk#3101</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.2...v0.9.3">https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.2...v0.9.3</a></p> <h2>v0.9.2</h2> <h2>What's Changed</h2> <ul> <li>release(js): bump js sdk version to 0.7.11 by <a href="https://github.com/sineha-mani"><code>@sineha-mani</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3079">langchain-ai/langsmith-sdk#3079</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
9ece1e3455 |
chore: bump langsmith from 0.8.18 to 0.9.5 in /libs/partners/chroma (#38596)
Bumps [langsmith](https://github.com/langchain-ai/langsmith-sdk) from 0.8.18 to 0.9.5. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langsmith-sdk/releases">langsmith's releases</a>.</em></p> <blockquote> <h2>v0.9.5</h2> <h2>What's Changed</h2> <ul> <li>chore: sync langsmith_api by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3126">langchain-ai/langsmith-sdk#3126</a></li> <li>chore: bump _MIN_BACKEND_VERSION to 0.16.9rc1 by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3127">langchain-ai/langsmith-sdk#3127</a></li> <li>fix(sandbox): wrap all WS handshake failures as SandboxConnectionError by <a href="https://github.com/asrira428"><code>@asrira428</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3130">langchain-ai/langsmith-sdk#3130</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.4...v0.9.5">https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.4...v0.9.5</a></p> <h2>v0.9.4</h2> <h2>What's Changed</h2> <ul> <li>fix(google_adk): capture LLM inputs after before_model_callback runs [LSDK-279] by <a href="https://github.com/harisaiharish"><code>@harisaiharish</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3094">langchain-ai/langsmith-sdk#3094</a></li> <li>release(js): bump js sdk version to 0.7.13 by <a href="https://github.com/langchain-infra"><code>@langchain-infra</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3104">langchain-ai/langsmith-sdk#3104</a></li> <li>chore: sync langsmith_api by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3105">langchain-ai/langsmith-sdk#3105</a></li> <li>doc: improve resource comments by <a href="https://github.com/QuentinBrosse"><code>@QuentinBrosse</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3108">langchain-ai/langsmith-sdk#3108</a></li> <li>fix(client): apply anonymizer to run error field by <a href="https://github.com/paarth-a"><code>@paarth-a</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3100">langchain-ai/langsmith-sdk#3100</a></li> <li>feat(client): expose datasets v2 resource + experiment-runs integration tests [langchainplus#28358] by <a href="https://github.com/GowriH-1"><code>@GowriH-1</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3106">langchain-ai/langsmith-sdk#3106</a></li> <li>fix(google-adk): set tool span as active tracing context in wrap_tool_run_async by <a href="https://github.com/navarra-lisandro"><code>@navarra-lisandro</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3111">langchain-ai/langsmith-sdk#3111</a></li> <li>fix(client): apply anonymizer to run error field (JS) by <a href="https://github.com/paarth-a"><code>@paarth-a</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3110">langchain-ai/langsmith-sdk#3110</a></li> <li>fix(python): use current project issues endpoint by <a href="https://github.com/khankaholic"><code>@khankaholic</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3064">langchain-ai/langsmith-sdk#3064</a></li> <li>chore: sync langsmith_api by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3120">langchain-ai/langsmith-sdk#3120</a></li> <li>fix(js): Avoid setting usage_metadata on parent chain runs for Claude Agent SDK runs by <a href="https://github.com/jacoblee93"><code>@jacoblee93</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3119">langchain-ai/langsmith-sdk#3119</a></li> <li>feat(client): expose projects resource accessor on Python and JS clients by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3109">langchain-ai/langsmith-sdk#3109</a></li> <li>release(js): bump to 0.7.14 by <a href="https://github.com/dqbd"><code>@dqbd</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3121">langchain-ai/langsmith-sdk#3121</a></li> <li>release(python): bump py version to 0.9.4 by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3124">langchain-ai/langsmith-sdk#3124</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/navarra-lisandro"><code>@navarra-lisandro</code></a> made their first contribution in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3111">langchain-ai/langsmith-sdk#3111</a></li> <li><a href="https://github.com/khankaholic"><code>@khankaholic</code></a> made their first contribution in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3064">langchain-ai/langsmith-sdk#3064</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.3...v0.9.4">https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.3...v0.9.4</a></p> <h2>v0.9.3</h2> <h2>What's Changed</h2> <ul> <li>release(js): bump js sdk version to 0.7.12 by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3089">langchain-ai/langsmith-sdk#3089</a></li> <li>feat(sandbox): do not gate dataplane ops on sandbox status by <a href="https://github.com/ramon-langchain"><code>@ramon-langchain</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3090">langchain-ai/langsmith-sdk#3090</a></li> <li>chore: sync langsmith_api by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3095">langchain-ai/langsmith-sdk#3095</a></li> <li>ci: pin all GitHub Actions to immutable SHA pins by <a href="https://github.com/jkennedyvz"><code>@jkennedyvz</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3093">langchain-ai/langsmith-sdk#3093</a></li> <li>chore(deps-dev): bump vcrpy from 8.1.1 to 8.2.1 in /python by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3074">langchain-ai/langsmith-sdk#3074</a></li> <li>chore(deps): bump pydantic-settings from 2.13.1 to 2.14.2 in /python by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3075">langchain-ai/langsmith-sdk#3075</a></li> <li>feat(sandbox): expose registries via generated v2 client by <a href="https://github.com/langchain-infra"><code>@langchain-infra</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3087">langchain-ai/langsmith-sdk#3087</a></li> <li>fix(client): lazily initialize sync OpenAPI client by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3099">langchain-ai/langsmith-sdk#3099</a></li> <li>release(python): bump py version to 0.9.3 by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3101">langchain-ai/langsmith-sdk#3101</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.2...v0.9.3">https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.2...v0.9.3</a></p> <h2>v0.9.2</h2> <h2>What's Changed</h2> <ul> <li>release(js): bump js sdk version to 0.7.11 by <a href="https://github.com/sineha-mani"><code>@sineha-mani</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3079">langchain-ai/langsmith-sdk#3079</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
8235577a38 |
chore: bump pytest from 9.1.0 to 9.1.1 in /libs/partners/chroma (#38597)
Bumps [pytest](https://github.com/pytest-dev/pytest) from 9.1.0 to 9.1.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pytest/releases">pytest's releases</a>.</em></p> <blockquote> <h2>9.1.1</h2> <h1>pytest 9.1.1 (2026-06-19)</h1> <h2>Bug fixes</h2> <ul> <li><a href="https://redirect.github.com/pytest-dev/pytest/issues/14220">#14220</a>: Fixed a logic bug in <code>pytest.RaisesGroup</code> which would might cause it to display incorrect "It matches <!-- raw HTML omitted -->FooError()<!-- raw HTML omitted --> which was paired with <!-- raw HTML omitted -->BarError<!-- raw HTML omitted -->" messages.</li> <li><a href="https://redirect.github.com/pytest-dev/pytest/issues/14591">#14591</a>: Fixed a regression in pytest 9.1.0 which caused overriding a parametrized fixture with an indirect <!-- raw HTML omitted --><a href="https://github.com/pytest"><code>@pytest</code></a>.mark.parametrize<!-- raw HTML omitted --> to fail with "duplicate parametrization of '<fixture name>'".</li> <li><a href="https://redirect.github.com/pytest-dev/pytest/issues/14606">#14606</a>: Fixed <code>list-item</code> typing errors from mypy in <code>@pytest.mark.parametrize <pytest.mark.parametrize ref></code> <code>argvalues</code> parameter.</li> <li><a href="https://redirect.github.com/pytest-dev/pytest/issues/14608">#14608</a>: Fixed a regression in pytest 9.1.0 where <code>conftest.py</code> files located in <code><invocation dir>/test*</code> were no longer loaded as initial conftests when invoked without arguments. This could cause certain hooks (like <code>pytest_addoption</code>) in these files to not fire.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
c20747e79e |
chore: bump langsmith from 0.8.18 to 0.9.5 in /libs/partners/xai (#38598)
Bumps [langsmith](https://github.com/langchain-ai/langsmith-sdk) from 0.8.18 to 0.9.5. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langsmith-sdk/releases">langsmith's releases</a>.</em></p> <blockquote> <h2>v0.9.5</h2> <h2>What's Changed</h2> <ul> <li>chore: sync langsmith_api by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3126">langchain-ai/langsmith-sdk#3126</a></li> <li>chore: bump _MIN_BACKEND_VERSION to 0.16.9rc1 by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3127">langchain-ai/langsmith-sdk#3127</a></li> <li>fix(sandbox): wrap all WS handshake failures as SandboxConnectionError by <a href="https://github.com/asrira428"><code>@asrira428</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3130">langchain-ai/langsmith-sdk#3130</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.4...v0.9.5">https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.4...v0.9.5</a></p> <h2>v0.9.4</h2> <h2>What's Changed</h2> <ul> <li>fix(google_adk): capture LLM inputs after before_model_callback runs [LSDK-279] by <a href="https://github.com/harisaiharish"><code>@harisaiharish</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3094">langchain-ai/langsmith-sdk#3094</a></li> <li>release(js): bump js sdk version to 0.7.13 by <a href="https://github.com/langchain-infra"><code>@langchain-infra</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3104">langchain-ai/langsmith-sdk#3104</a></li> <li>chore: sync langsmith_api by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3105">langchain-ai/langsmith-sdk#3105</a></li> <li>doc: improve resource comments by <a href="https://github.com/QuentinBrosse"><code>@QuentinBrosse</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3108">langchain-ai/langsmith-sdk#3108</a></li> <li>fix(client): apply anonymizer to run error field by <a href="https://github.com/paarth-a"><code>@paarth-a</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3100">langchain-ai/langsmith-sdk#3100</a></li> <li>feat(client): expose datasets v2 resource + experiment-runs integration tests [langchainplus#28358] by <a href="https://github.com/GowriH-1"><code>@GowriH-1</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3106">langchain-ai/langsmith-sdk#3106</a></li> <li>fix(google-adk): set tool span as active tracing context in wrap_tool_run_async by <a href="https://github.com/navarra-lisandro"><code>@navarra-lisandro</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3111">langchain-ai/langsmith-sdk#3111</a></li> <li>fix(client): apply anonymizer to run error field (JS) by <a href="https://github.com/paarth-a"><code>@paarth-a</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3110">langchain-ai/langsmith-sdk#3110</a></li> <li>fix(python): use current project issues endpoint by <a href="https://github.com/khankaholic"><code>@khankaholic</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3064">langchain-ai/langsmith-sdk#3064</a></li> <li>chore: sync langsmith_api by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3120">langchain-ai/langsmith-sdk#3120</a></li> <li>fix(js): Avoid setting usage_metadata on parent chain runs for Claude Agent SDK runs by <a href="https://github.com/jacoblee93"><code>@jacoblee93</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3119">langchain-ai/langsmith-sdk#3119</a></li> <li>feat(client): expose projects resource accessor on Python and JS clients by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3109">langchain-ai/langsmith-sdk#3109</a></li> <li>release(js): bump to 0.7.14 by <a href="https://github.com/dqbd"><code>@dqbd</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3121">langchain-ai/langsmith-sdk#3121</a></li> <li>release(python): bump py version to 0.9.4 by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3124">langchain-ai/langsmith-sdk#3124</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/navarra-lisandro"><code>@navarra-lisandro</code></a> made their first contribution in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3111">langchain-ai/langsmith-sdk#3111</a></li> <li><a href="https://github.com/khankaholic"><code>@khankaholic</code></a> made their first contribution in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3064">langchain-ai/langsmith-sdk#3064</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.3...v0.9.4">https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.3...v0.9.4</a></p> <h2>v0.9.3</h2> <h2>What's Changed</h2> <ul> <li>release(js): bump js sdk version to 0.7.12 by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3089">langchain-ai/langsmith-sdk#3089</a></li> <li>feat(sandbox): do not gate dataplane ops on sandbox status by <a href="https://github.com/ramon-langchain"><code>@ramon-langchain</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3090">langchain-ai/langsmith-sdk#3090</a></li> <li>chore: sync langsmith_api by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3095">langchain-ai/langsmith-sdk#3095</a></li> <li>ci: pin all GitHub Actions to immutable SHA pins by <a href="https://github.com/jkennedyvz"><code>@jkennedyvz</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3093">langchain-ai/langsmith-sdk#3093</a></li> <li>chore(deps-dev): bump vcrpy from 8.1.1 to 8.2.1 in /python by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3074">langchain-ai/langsmith-sdk#3074</a></li> <li>chore(deps): bump pydantic-settings from 2.13.1 to 2.14.2 in /python by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3075">langchain-ai/langsmith-sdk#3075</a></li> <li>feat(sandbox): expose registries via generated v2 client by <a href="https://github.com/langchain-infra"><code>@langchain-infra</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3087">langchain-ai/langsmith-sdk#3087</a></li> <li>fix(client): lazily initialize sync OpenAPI client by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3099">langchain-ai/langsmith-sdk#3099</a></li> <li>release(python): bump py version to 0.9.3 by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3101">langchain-ai/langsmith-sdk#3101</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.2...v0.9.3">https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.2...v0.9.3</a></p> <h2>v0.9.2</h2> <h2>What's Changed</h2> <ul> <li>release(js): bump js sdk version to 0.7.11 by <a href="https://github.com/sineha-mani"><code>@sineha-mani</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3079">langchain-ai/langsmith-sdk#3079</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
a9f6ffbae1 |
chore: bump pytest from 9.1.0 to 9.1.1 in /libs/partners/xai (#38599)
Bumps [pytest](https://github.com/pytest-dev/pytest) from 9.1.0 to 9.1.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pytest/releases">pytest's releases</a>.</em></p> <blockquote> <h2>9.1.1</h2> <h1>pytest 9.1.1 (2026-06-19)</h1> <h2>Bug fixes</h2> <ul> <li><a href="https://redirect.github.com/pytest-dev/pytest/issues/14220">#14220</a>: Fixed a logic bug in <code>pytest.RaisesGroup</code> which would might cause it to display incorrect "It matches <!-- raw HTML omitted -->FooError()<!-- raw HTML omitted --> which was paired with <!-- raw HTML omitted -->BarError<!-- raw HTML omitted -->" messages.</li> <li><a href="https://redirect.github.com/pytest-dev/pytest/issues/14591">#14591</a>: Fixed a regression in pytest 9.1.0 which caused overriding a parametrized fixture with an indirect <!-- raw HTML omitted --><a href="https://github.com/pytest"><code>@pytest</code></a>.mark.parametrize<!-- raw HTML omitted --> to fail with "duplicate parametrization of '<fixture name>'".</li> <li><a href="https://redirect.github.com/pytest-dev/pytest/issues/14606">#14606</a>: Fixed <code>list-item</code> typing errors from mypy in <code>@pytest.mark.parametrize <pytest.mark.parametrize ref></code> <code>argvalues</code> parameter.</li> <li><a href="https://redirect.github.com/pytest-dev/pytest/issues/14608">#14608</a>: Fixed a regression in pytest 9.1.0 where <code>conftest.py</code> files located in <code><invocation dir>/test*</code> were no longer loaded as initial conftests when invoked without arguments. This could cause certain hooks (like <code>pytest_addoption</code>) in these files to not fire.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
4e208f1e40 |
chore: bump the minor-and-patch group across 3 directories with 11 updates (#38587)
Bumps the minor-and-patch group with 7 updates in the /libs/model-profiles directory: | Package | From | To | | --- | --- | --- | | [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) | `1.3.0` | `1.4.0` | | [pytest-socket](https://github.com/miketheman/pytest-socket) | `0.7.0` | `0.8.0` | | [syrupy](https://github.com/syrupy-project/syrupy) | `5.2.0` | `5.3.4` | | [ruff](https://github.com/astral-sh/ruff) | `0.15.13` | `0.15.20` | | [langsmith](https://github.com/langchain-ai/langsmith-sdk) | `0.8.18` | `0.9.4` | | [uuid-utils](https://github.com/aminalaee/uuid-utils) | `0.15.0` | `0.16.2` | | [langgraph](https://github.com/langchain-ai/langgraph) | `1.2.5` | `1.2.7` | Bumps the minor-and-patch group with 7 updates in the /libs/standard-tests directory: | Package | From | To | | --- | --- | --- | | [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) | `1.3.0` | `1.4.0` | | [pytest-socket](https://github.com/miketheman/pytest-socket) | `0.7.0` | `0.8.0` | | [syrupy](https://github.com/syrupy-project/syrupy) | `5.2.0` | `5.3.4` | | [ruff](https://github.com/astral-sh/ruff) | `0.15.13` | `0.15.20` | | [langsmith](https://github.com/langchain-ai/langsmith-sdk) | `0.8.18` | `0.9.4` | | [uuid-utils](https://github.com/aminalaee/uuid-utils) | `0.15.0` | `0.16.2` | | [langchain-protocol](https://github.com/langchain-ai/agent-protocol) | `0.0.17` | `0.0.18` | Bumps the minor-and-patch group with 9 updates in the /libs/text-splitters directory: | Package | From | To | | --- | --- | --- | | [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) | `1.3.0` | `1.4.0` | | [pytest-socket](https://github.com/miketheman/pytest-socket) | `0.7.0` | `0.8.0` | | [ruff](https://github.com/astral-sh/ruff) | `0.15.13` | `0.15.20` | | [langsmith](https://github.com/langchain-ai/langsmith-sdk) | `0.8.18` | `0.9.4` | | [uuid-utils](https://github.com/aminalaee/uuid-utils) | `0.15.0` | `0.16.2` | | [langchain-protocol](https://github.com/langchain-ai/agent-protocol) | `0.0.17` | `0.0.18` | | [beautifulsoup4](https://www.crummy.com/software/BeautifulSoup/bs4/) | `4.14.3` | `4.15.0` | | [transformers](https://github.com/huggingface/transformers) | `5.8.1` | `5.12.1` | | [sentence-transformers](https://github.com/huggingface/sentence-transformers) | `5.5.0` | `5.6.0` | Updates `pytest-asyncio` from 1.3.0 to 1.4.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pytest-asyncio/releases">pytest-asyncio's releases</a>.</em></p> <blockquote> <h2>pytest-asyncio v1.4.0</h2> <h1><a href="https://github.com/pytest-dev/pytest-asyncio/tree/1.4.0">1.4.0</a> - 2026-05-26</h1> <h2>Deprecated</h2> <ul> <li>Overriding the <em>event_loop_policy</em> fixture is deprecated. Use the <code>pytest_asyncio_loop_factories</code> hook instead. (<a href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1419">#1419</a>)</li> </ul> <h2>Added</h2> <ul> <li> <p>Added the <code>pytest_asyncio_loop_factories</code> hook to parametrize asyncio tests with custom event loop factories.</p> <p>The hook returns a mapping of factory names to loop factories, and <code>pytest.mark.asyncio(loop_factories=[...])</code> selects a subset of configured factories per test. When a single factory is configured, test names are unchanged.</p> <p>Synchronous <code>@pytest_asyncio.fixture</code> functions now see the correct event loop when custom loop factories are configured, even when test code disrupts the current event loop (e.g., via <code>asyncio.run()</code> or <code>asyncio.set_event_loop(None)</code>). (<a href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1164">#1164</a>)</p> </li> </ul> <h2>Changed</h2> <ul> <li>Improved the readability of the warning message that is displayed when <code>asyncio_default_fixture_loop_scope</code> is unset (<a href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1298">#1298</a>)</li> <li>Only import <code>asyncio.AbstractEventLoopPolicy</code> for type checking to avoid raising a DeprecationWarning. (<a href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1394">#1394</a>)</li> <li>Updated minimum supported pytest version to v8.4.0. (<a href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1397">#1397</a>)</li> </ul> <h2>Fixed</h2> <ul> <li>Fixed a <code>ResourceWarning: unclosed event loop</code> warning that could occur when a synchronous test called <code>asyncio.run()</code> or otherwise unset the current event loop after pytest-asyncio had run an async test or fixture. (<a href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/724">#724</a>)</li> </ul> <h2>Notes for Downstream Packagers</h2> <ul> <li>Added dependency on <code>sphinx-tabs >= 3.5</code> to organize documentation examples into tabs. (<a href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1395">#1395</a>)</li> </ul> <h2>pytest-asyncio v1.4.0a2</h2> <h1><a href="https://github.com/pytest-dev/pytest-asyncio/tree/1.4.0a2">1.4.0a2</a> - 2026-05-02</h1> <h2>Deprecated</h2> <ul> <li>Overriding the <em>event_loop_policy</em> fixture is deprecated. Use the <code>pytest_asyncio_loop_factories</code> hook instead. (<a href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1419">#1419</a>)</li> </ul> <h2>Added</h2> <ul> <li> <p>Added the <code>pytest_asyncio_loop_factories</code> hook to parametrize asyncio tests with custom event loop factories.</p> <p>The hook returns a mapping of factory names to loop factories, and <code>pytest.mark.asyncio(loop_factories=[...])</code> selects a subset of configured factories per test. When a single factory is configured, test names are unchanged on pytest 8.4+.</p> <p>Synchronous <code>@pytest_asyncio.fixture</code> functions now see the correct event loop when custom loop factories are configured, even when test code disrupts the current event loop (e.g., via <code>asyncio.run()</code> or <code>asyncio.set_event_loop(None)</code>). (<a href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1164">#1164</a>)</p> </li> </ul> <h2>Changed</h2> <ul> <li>Improved the readability of the warning message that is displayed when <code>asyncio_default_fixture_loop_scope</code> is unset (<a href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1298">#1298</a>)</li> <li>Only import <code>asyncio.AbstractEventLoopPolicy</code> for type checking to avoid raising a DeprecationWarning. (<a href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1394">#1394</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
8a2f1a9445 | chore(anthropic): update docstring following sonnet-5 release (#38577) | ||
|
|
a6612179da | release(openrouter): 0.2.5 (#38553) | ||
|
|
7725ccec03 |
fix(openrouter): deduplicate repeated finish metadata (#38552)
Closes #38226 --- OpenRouter can emit more than one terminal streaming chunk for a single response. Before this change, LangChain treated each terminal chunk as independent final metadata, so repeated string fields could be merged into corrupted values like `stopstop`. This updates `ChatOpenRouter` streaming so repeated terminal chunks are interpreted as parts of the same response ending. Usage metadata is still captured, later chunks can fill in terminal details that were missing from earlier chunks, and already-seen terminal fields are not duplicated. The regression coverage exercises sync and async generation with duplicate finish chunks, including the case where usage and additional terminal metadata arrive on the later chunk. |
||
|
|
e7a9a9a728 |
fix(anthropic): ignore LangSmith requests in VCR cassettes (#38547)
Anthropic integration tests can run with LangSmith tracing enabled in scheduled CI, which sends LangSmith API requests while VCR cassettes are active. Ignore LangSmith ingest endpoints in the Anthropic VCR config so cassette playback only matches Anthropic traffic. ## Changes - Add `api.smith.langchain.com` to the Anthropic VCR `ignore_hosts` configuration while preserving any hosts from the shared base config. - Keep existing Anthropic cassette serialization, request redaction, and response redaction behavior unchanged. |
||
|
|
1e35d8f7a9 |
chore(standard-tests): add sandbox integration test for offloading large execute results (#38537)
|
||
|
|
c863b92b9e |
docs(fireworks): clarify prompt-cache session affinity guidance (#38522)
Clarifies the Fireworks chat model documentation around prompt-cache session affinity. The example now focuses on the supported `x-session-affinity` header and presents `prompt_cache_key` as the typed SDK alternative without mixing in multi-turn trajectory guidance. ## Changes - Tightened the `extra_headers` example so prompt-cache reuse is explained through `x-session-affinity` only. - Clarified that `prompt_cache_key` is the preferred typed alternative to passing the raw session-affinity header. AI-agent assistance was used in preparing this contribution. |
||
|
|
933adb0c95 |
test(fireworks): cover request-level extra headers (#38518)
Fireworks chat users can pass request-specific headers to the SDK, but the integration did not have targeted coverage or examples for session-affinity and multi-turn headers. This adds explicit coverage for sync, async, and streaming calls, and documents the supported invocation patterns. ## Changes - Documented `ChatFireworks` request-level `extra_headers` examples for session affinity and multi-turn sessions, plus the SDK-level `prompt_cache_key` alternative. - Added `TestExtraHeaders` coverage showing `extra_headers` reach top-level SDK kwargs for sync and streaming calls rather than being folded into `extra_body`. - Covered the async `ainvoke` path so request-specific headers are verified across the main call modes. |
||
|
|
e495651fef | release(anthropic): 1.4.8 (#38490) | ||
|
|
bfc65cc04f |
fix(anthropic): keep initial text on content_block_start (#38442)
## Summary - Fix `ChatAnthropic._make_message_chunk_from_anthropic_event` dropping the first text chunk of an assistant turn when Anthropic carries the opening text on the `content_block_start` event rather than a following `text_delta`. This most often hits the assistant turn right after a tool result. - The dropped content streams to clients but never reaches the aggregated `AIMessage`, so anything reading message history back (e.g. a checkpointer) sees a truncated message (`Here's the answer.` → `'s the answer.`). Reported via Pylon 25478 (Zip), whose `<canvaspreview>` parser broke because the dropped chunk was the opening `<can` tag. - Add a `content_block_start` branch for `text` and `thinking` blocks: emit non-empty start-event content on both the string (`coerce_content_to_string=True`) and structured content paths; empty starts still emit no chunk (preserving prior behavior) and update `block_start_event` so following deltas resolve against the current block. --------- Co-authored-by: Mason Daugherty <mason@langchain.dev> Co-authored-by: Mason Daugherty <github@mdrxy.com> |
||
|
|
00ad96ce85 |
chore: bump langgraph-checkpoint from 4.1.0 to 4.1.1 in /libs/partners/huggingface (#38478)
Bumps [langgraph-checkpoint](https://github.com/langchain-ai/langgraph) from 4.1.0 to 4.1.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langgraph/releases">langgraph-checkpoint's releases</a>.</em></p> <blockquote> <h2>langgraph-checkpoint==4.1.1</h2> <p>Changes since checkpoint==4.1.0</p> <ul> <li>release(checkpoint): 4.1.1 (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7890">#7890</a>)</li> <li>fix(checkpoint): restrict lc:2 envelope revival to default constructor (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7892">#7892</a>)</li> <li>chore(deps): bump idna from 3.11 to 3.15 in /libs/checkpoint (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7860">#7860</a>)</li> <li>chore(deps): bump langsmith from 0.7.31 to 0.8.0 in /libs/checkpoint (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7784">#7784</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
e7c3834e40 |
chore: bump langgraph-checkpoint from 4.0.3 to 4.1.1 in /libs/langchain (#38477)
Bumps [langgraph-checkpoint](https://github.com/langchain-ai/langgraph) from 4.0.3 to 4.1.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langgraph/releases">langgraph-checkpoint's releases</a>.</em></p> <blockquote> <h2>langgraph-checkpoint==4.1.1</h2> <p>Changes since checkpoint==4.1.0</p> <ul> <li>release(checkpoint): 4.1.1 (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7890">#7890</a>)</li> <li>fix(checkpoint): restrict lc:2 envelope revival to default constructor (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7892">#7892</a>)</li> <li>chore(deps): bump idna from 3.11 to 3.15 in /libs/checkpoint (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7860">#7860</a>)</li> <li>chore(deps): bump langsmith from 0.7.31 to 0.8.0 in /libs/checkpoint (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7784">#7784</a>)</li> </ul> <h2>langgraph-checkpoint==4.1.0</h2> <p>Changes since checkpoint==4.1.0a4</p> <ul> <li>release: bump alpha packages to official versions (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7775">#7775</a>)</li> <li>chore(deps): bump urllib3 from 2.6.3 to 2.7.0 in /libs/checkpoint (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7762">#7762</a>)</li> <li>chore(deps): bump langchain-core from 1.3.2 to 1.3.3 in /libs/checkpoint (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7752">#7752</a>)</li> <li>feat(checkpoint): force delta channel snapshot after max supersteps since last snapshot (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7746">#7746</a>)</li> <li>fix(checkpoint): specify allowed_objects in Reviver (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7743">#7743</a>)</li> <li>chore: remove keepset helper (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7745">#7745</a>)</li> <li>chore(langgraph): add guide/conformance for delta channel checkpointer (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7736">#7736</a>)</li> <li>docs(checkpoint): mark DeltaChannel and delta-history APIs as beta (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7732">#7732</a>)</li> <li>chore(deps): bump the minor-and-patch group across 1 directory with 3 updates (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7670">#7670</a>)</li> <li>chore: "chore: minor clean up around checkpoint and delta channel" (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7706">#7706</a>)</li> <li>chore: minor clean up around checkpoint and delta channel (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7705">#7705</a>)</li> </ul> <h2>langgraph-checkpoint==4.1.0a4</h2> <p>Changes since checkpoint==4.1.0a3</p> <ul> <li>release: alpha bump (a4) for langgraph, checkpoint, checkpoint-postgres (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7701">#7701</a>)</li> <li>feat: public get_writes_history saver API + delta cadence rework (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7699">#7699</a>)</li> </ul> <h2>langgraph-checkpoint==4.1.0a3</h2> <p>Changes since checkpoint==4.1.0a2</p> <ul> <li>release: alpha bump (a3) for langgraph, checkpoint, checkpoint-postgres (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7678">#7678</a>)</li> <li>chore(langgraph): use two phase read to avoid unnecessary data transport (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7660">#7660</a>)</li> <li>release: alpha for timers (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7647">#7647</a>)</li> <li>feat(langgraph): <code>DeltaChannel</code>: store sentinel in blobs, reconstruct from checkpoint_writes (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7586">#7586</a>)</li> <li>chore: dynamic push-task timeouts (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7646">#7646</a>)</li> <li>chore: update x links to langchain_oss (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7645">#7645</a>)</li> <li>release(checkpoint): 4.0.3 (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7625">#7625</a>)</li> <li>fix(checkpoint): revive lc=2 JSON blobs for safe types without allowlist (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7582">#7582</a>)</li> </ul> <h2>langgraph-checkpoint==4.1.0a2</h2> <p>Changes since checkpoint==4.1.0a1</p> <h2>langgraph-checkpoint==4.1.0a1</h2> <p>Changes since checkpoint==4.0.3</p> <ul> <li>release: alpha for timers (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7647">#7647</a>)</li> <li>feat(langgraph): <code>DeltaChannel</code>: store sentinel in blobs, reconstruct from checkpoint_writes (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7586">#7586</a>)</li> <li>chore: dynamic push-task timeouts (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7646">#7646</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
9b245de32e |
chore: bump langgraph-checkpoint from 4.1.0 to 4.1.1 in /libs/partners/openai (#38476)
Bumps [langgraph-checkpoint](https://github.com/langchain-ai/langgraph) from 4.1.0 to 4.1.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langgraph/releases">langgraph-checkpoint's releases</a>.</em></p> <blockquote> <h2>langgraph-checkpoint==4.1.1</h2> <p>Changes since checkpoint==4.1.0</p> <ul> <li>release(checkpoint): 4.1.1 (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7890">#7890</a>)</li> <li>fix(checkpoint): restrict lc:2 envelope revival to default constructor (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7892">#7892</a>)</li> <li>chore(deps): bump idna from 3.11 to 3.15 in /libs/checkpoint (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7860">#7860</a>)</li> <li>chore(deps): bump langsmith from 0.7.31 to 0.8.0 in /libs/checkpoint (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7784">#7784</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
0a71a1d40e |
chore: bump langgraph-sdk from 0.3.13 to 0.3.15 in /libs/langchain (#38475)
Bumps [langgraph-sdk](https://github.com/langchain-ai/langgraph) from 0.3.13 to 0.3.15. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langgraph/releases">langgraph-sdk's releases</a>.</em></p> <blockquote> <h2>langgraph-sdk==0.3.15</h2> <p>Changes since sdk==0.3.14</p> <ul> <li>release(checkpoint): 4.1.1 (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7890">#7890</a>)</li> <li>release(sdk-py): 0.3.15 (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7891">#7891</a>)</li> <li>fix(sdk-py): percent-encode caller-supplied identifiers in URL paths (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7893">#7893</a>)</li> <li>release(langgraph): 1.2.1 (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7883">#7883</a>)</li> <li>chore(deps): bump idna from 3.11 to 3.15 in /libs/sdk-py (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7863">#7863</a>)</li> <li>chore(deps): bump urllib3 from 2.6.3 to 2.7.0 in /libs/sdk-py (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7764">#7764</a>)</li> <li>chore(deps): bump langsmith from 0.7.31 to 0.8.0 in /libs/sdk-py (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7789">#7789</a>)</li> <li>release: bump alpha packages to official versions (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7775">#7775</a>)</li> <li>chore(langgraph): bump langchain-core to 1.4.0 (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7767">#7767</a>)</li> <li>feat(sdk-py): support metadata filter for crons search/count (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7737">#7737</a>)</li> <li>chore(deps): bump ty from 0.0.23 to 0.0.33 in /libs/sdk-py (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7666">#7666</a>)</li> </ul> <h2>langgraph-sdk==0.3.14</h2> <p>Changes since sdk==0.3.13</p> <ul> <li>release(sdk-py): 0.3.14 (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7712">#7712</a>)</li> <li>feat(sdk-py): add return_minimal to threads update (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7704">#7704</a>)</li> <li>release: alpha bump (a4) for langgraph, checkpoint, checkpoint-postgres (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7701">#7701</a>)</li> <li>release: alpha bump langgraph 1.2.0a6 (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7697">#7697</a>)</li> <li>release: alpha bump prebuilt 1.1.0a2, langgraph 1.2.0a5 (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7682">#7682</a>)</li> <li>release: alpha bump prebuilt 1.1.0a1, langgraph 1.2.0a4 (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7679">#7679</a>)</li> <li>feat(langgraph): dispatch stream_events(version='v3') on Pregel (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7677">#7677</a>)</li> <li>release: alpha bump (a3) for langgraph, checkpoint, checkpoint-postgres (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7678">#7678</a>)</li> <li>release: alpha for timers (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7647">#7647</a>)</li> <li>chore: update x links to langchain_oss (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7645">#7645</a>)</li> <li>feat(langgraph): add streaming transformer infrastructure and tests (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7519">#7519</a>)</li> <li>chore(deps): bump the minor-and-patch group across 1 directory with 4 updates (ty held back) (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7635">#7635</a>)</li> <li>release(prebuilt): 1.0.12, langgraph 1.1.10 (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7623">#7623</a>)</li> <li>release(checkpoint): 4.0.3 (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7625">#7625</a>)</li> <li>release(prebuilt): 1.0.11 (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7610">#7610</a>)</li> <li>feat(prebuilt): allow ToolNode tools to return list[Command | ToolMessage] (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7596">#7596</a>)</li> <li>chore(langgraph): bump version 1.1.8 -> 1.1.9 (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7563">#7563</a>)</li> <li>release(langgraph): 1.1.8 (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7545">#7545</a>)</li> <li>release(prebuilt): 1.0.10 (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7541">#7541</a>)</li> <li>release(langgraph): 1.1.7 (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7540">#7540</a>)</li> <li>chore(deps): bump langsmith from 0.7.20 to 0.7.31 in /libs/sdk-py (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7528">#7528</a>)</li> <li>release(checkpoint): 4.0.2 (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7518">#7518</a>)</li> <li>chore(deps-dev): bump pytest from 9.0.2 to 9.0.3 in /libs/sdk-py (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7504">#7504</a>)</li> <li>release(langgraph): 1.1.7a2 (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7511">#7511</a>)</li> <li>chore: allow passing some metadata only for tracing purposes (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7383">#7383</a>)</li> <li>release(langgraph): 1.1.7a1 (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7476">#7476</a>)</li> <li>chore(deps): bump langchain-core from 1.2.22 to 1.2.28 in /libs/sdk-py (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7449">#7449</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
5f99048308 |
chore: bump langgraph-checkpoint from 4.1.0 to 4.1.1 in /libs/model-profiles (#38474)
Bumps [langgraph-checkpoint](https://github.com/langchain-ai/langgraph) from 4.1.0 to 4.1.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langgraph/releases">langgraph-checkpoint's releases</a>.</em></p> <blockquote> <h2>langgraph-checkpoint==4.1.1</h2> <p>Changes since checkpoint==4.1.0</p> <ul> <li>release(checkpoint): 4.1.1 (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7890">#7890</a>)</li> <li>fix(checkpoint): restrict lc:2 envelope revival to default constructor (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7892">#7892</a>)</li> <li>chore(deps): bump idna from 3.11 to 3.15 in /libs/checkpoint (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7860">#7860</a>)</li> <li>chore(deps): bump langsmith from 0.7.31 to 0.8.0 in /libs/checkpoint (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7784">#7784</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
3e6f1e30b1 |
chore: bump langgraph-checkpoint from 4.1.0 to 4.1.1 in /libs/partners/anthropic (#38479)
Bumps [langgraph-checkpoint](https://github.com/langchain-ai/langgraph) from 4.1.0 to 4.1.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langgraph/releases">langgraph-checkpoint's releases</a>.</em></p> <blockquote> <h2>langgraph-checkpoint==4.1.1</h2> <p>Changes since checkpoint==4.1.0</p> <ul> <li>release(checkpoint): 4.1.1 (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7890">#7890</a>)</li> <li>fix(checkpoint): restrict lc:2 envelope revival to default constructor (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7892">#7892</a>)</li> <li>chore(deps): bump idna from 3.11 to 3.15 in /libs/checkpoint (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7860">#7860</a>)</li> <li>chore(deps): bump langsmith from 0.7.31 to 0.8.0 in /libs/checkpoint (<a href="https://redirect.github.com/langchain-ai/langgraph/issues/7784">#7784</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
d3eb2296e7 |
fix(core): avoid dict shadowing in language models (#38480)
Fixes #37835 --- When Pydantic collects fields for a `BaseLanguageModel` subclass that defines a `dict()` method, inherited annotations can resolve `dict` against the subclass namespace instead of the builtin. With Pydantic 2.14.0a1 this caused `BaseLanguageModel.metadata: dict[str, Any] | None` to fail during rebuild/import with `'function' object is not subscriptable`. This qualifies the inherited `metadata` field annotation as `builtins.dict[...]`, matching the existing pattern in chat models, and documents why the runtime import cannot move behind `TYPE_CHECKING`. It also adds a regression test that rebuilds a `BaseLanguageModel` subclass with a `dict()` method so core catches this failure before partner packages hit it at import time. Related to #37924, which hardens `_create_subset_model_v2`; this PR fixes the `BaseLanguageModel` class-construction failure directly. |
||
|
|
20ba43df9c | release(fireworks): 1.4.3 | ||
|
|
57c83d44bc |
fix(openrouter): strip Responses reasoning IDs (#38383)
Closes #37777 --- OpenRouter can return OpenAI Responses reasoning item IDs such as `rs_*` in assistant reasoning details. Those IDs are not reliably resolvable on a later OpenRouter turn, so replaying them can make otherwise-valid multi-turn conversations fail with a provider 404. This keeps the useful reasoning payload while removing only the ephemeral Responses item IDs before serializing `reasoning_details` back into request history. Non-Responses IDs and reasoning text are left intact. |
||
|
|
95fe150ad2 |
fix(core): _parse_google_docstring mishandling continuation lines with colons (#35680)
## Description
`_parse_google_docstring` incorrectly parses multi-line argument
descriptions when a continuation line contains a colon. The continuation
line is treated as a new argument definition instead of being appended
to the current argument's description.
### Example
```python
def search(query: str, top_k: int = 5) -> str:
"""Search the knowledge base.
Args:
query: The search query to use
for finding things: important ones
top_k: Number of results to return
"""
```
**Before (broken):** The parser creates 3 args: `query`, `for finding
things`, `top_k`
**After (fixed):** The parser correctly creates 2 args: `query` (with
full description including "for finding things: important ones"),
`top_k`
### Root Cause
The parser used `if ":" in line` to detect new argument lines without
considering indentation. In Google-style docstrings, continuation lines
have deeper indentation than argument definition lines.
### Fix
Detect the base indentation level from the first argument line and treat
any line with deeper indentation as a continuation of the current
argument's description, regardless of whether it contains a colon.
## Issue
Fixes #35679
## Dependencies
None.
## Testing
Added 4 unit tests in
`test_function_calling.py::TestParseGoogleDocstring`:
- `test_continuation_line_with_colon` — the core bug scenario
- `test_simple_args_still_work` — regression check for basic args
- `test_continuation_line_without_colon` — multi-line descriptions
without colons
- `test_multiple_continuation_lines_with_colons` — multiple continuation
lines each containing colons
All tests pass locally with Python 3.12.
---------
Co-authored-by: gambletan <ethanchang32@gmail.com>
Co-authored-by: Mason Daugherty <github@mdrxy.com>
|
||
|
|
64177b6fc5 |
chore(langchain): add types in agent middleware tests (#38188)
Co-authored-by: Mason Daugherty <github@mdrxy.com> Co-authored-by: Mason Daugherty <mason@langchain.dev> |
||
|
|
18fe3473a5 | release(openrouter): 0.2.4 (#38381) | ||
|
|
6188e9270e |
chore(openrouter): bump openrouter floor to 0.9.2, drop file workaround (#38216)
`ChatOpenRouter` users sending PDF/file content blocks previously relied on a workaround: the OpenRouter Python SDK's `ChatContentItems` discriminated union didn't include a `file` tag, so file parts failed Pydantic validation. To work around it, `langchain-openrouter` wrapped message dicts with `model_construct()` to bypass SDK validation while still producing correct JSON. The SDK fixed this in `openrouter` 0.9.2 by adding `file` to the `ChatContentItems` union (verified against OpenRouterTeam/python-sdk#38). This PR raises the dependency floor to `openrouter>=0.9.2` and removes the now-unnecessary `_wrap_messages_for_sdk` / `_has_file_content_blocks` helpers, passing plain message dicts straight to the SDK so file parts go through the normal validated path. The old workaround's unit tests are replaced with a test asserting the SDK now validates a `file` content part natively, guarding against a regression if the floor is ever lowered. The existing `file`-block conversion helpers and their tests are unchanged. _This change was authored with the help of an AI agent._ Made by [Open SWE](https://openswe.vercel.app/agents/9f95ffe6-2298-1045-9316-935f55d00fa7) Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com> |
||
|
|
237bb61692 |
test(openrouter): cover cache_control passthrough on tool defs (#38215)
The OpenRouter SDK preserves `cache_control` on tool definitions, and `ChatOpenRouter` forwards full tool dicts unchanged. This adds a regression test confirming a top-level `cache_control` on a tool dict passed to `bind_tools` survives into the SDK request payload. Made by [Open SWE](https://openswe.vercel.app/agents/5059cee2-c2de-1ca4-200d-c3fdb8c5814e) --------- Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com> |
||
|
|
a5a8f8db78 |
fix(core): add messages to bare raise ValueError calls (#38158)
Closes #35727 --- Several internal code paths raised a bare `ValueError` with no message, so when one of these conditions tripped, users saw a traceback with no explanation of what actually went wrong. This adds descriptive messages to each of those `raise ValueError` calls: - `FewShotPromptWithTemplates._get_examples` / `_aget_examples` — when neither `examples` nor `example_selector` is set. - Prompt `loading` — when a referenced template file uses an unsupported (non-`.txt`) format. - The LangSmith document loader — when both `client` and `client_kwargs` are supplied. - The Anthropic file-search middleware brace expansion — for unbalanced or empty brace patterns. Made by [Open SWE](https://openswe.vercel.app) --------- Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com> |
||
|
|
dae4e5de9d |
feat(openrouter): surface parallel_tool_calls on bind_tools (#38214)
`ChatOpenRouter.bind_tools()` now accepts a `parallel_tool_calls` argument to disable parallel tool use. --- Users binding tools to `ChatOpenRouter` previously had to know that arbitrary kwargs were forwarded to the OpenRouter SDK in order to disable parallel tool use (e.g. `model.bind(parallel_tool_calls=False)`). This made the option hard to discover. This exposes `parallel_tool_calls` as an explicit keyword-only argument on `ChatOpenRouter.bind_tools()`, matching the ergonomics of `langchain-openai`. When set, it is forwarded to the request exactly as before; when left as `None` it is omitted, preserving existing behavior. No change to the underlying request payload or SDK floor — purely an API/discoverability improvement. Made by [Open SWE](https://openswe.vercel.app/agents/053b59c8-baf4-84e1-c003-425e349e014d) Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com> |
||
|
|
3b48f48458 |
fix(core): use asyncio.get_running_loop() in async contexts (#38157)
Closes #35726 --- Several async functions called `asyncio.get_event_loop()`, which has been deprecated since Python 3.10. Inside `async def` bodies the loop is always running, so `asyncio.get_running_loop()` is the correct, warning-free replacement with no behavior change. This updates the call in `_ahandle_event_for_handler` (core callbacks), `_render_mermaid_using_pyppeteer` (core runnables graph), and `async_api_key_wrapper` (`langchain-openai` client utils). Users running on modern Python no longer see `DeprecationWarning`s from these paths. Made by [Open SWE](https://openswe.vercel.app) Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com> |
||
|
|
f7e87f7ab8 |
feat(model-profiles): plain-English summary for profile refresh PRs (#38218)
Automated model-profile refresh PRs (e.g. #38210) ship a static template body, so a reviewer has to open *Files changed* and read large blocks of generated data to learn what actually moved. Because the underlying profile data is fully structured, we can describe the changes deterministically — no LLM, no hallucination risk. This adds a `langchain-profiles summarize` subcommand that compares the working-tree `_profiles.py` files against a git ref and renders a skimmable Markdown summary: models added (with a short capability descriptor), models removed, and per-field capability changes (context/output tokens, modalities, tool calling, reasoning, etc.), grouped by provider and capped so huge refreshes stay readable. Profiles are read with `ast.literal_eval` rather than imported, so the generated data file is never executed. Example output for a refresh that adds a model and bumps an output limit: ``` ## Summary of changes **1 added · 0 removed · 1 changed** across 1 provider(s). ### openai **➕ 1 added** - `gpt-6-preview` — 1,000,000 ctx, 128,000 out, text+image+audio in, reasoning, tools **✏️ 1 changed** - `gpt-3.5-turbo`: max output tokens 4,096 → 16,384 ``` Made by [Open SWE](https://openswe.vercel.app/agents/9bcbf182-effc-ba9b-0df3-afac620ad152) --------- Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com> |
||
|
|
c669da7662 |
fix(groq): use qwen for tool choice integration tests (#38380)
Groq's `openai/gpt-oss-20b` can return reasoning content instead of honoring forced tool choice in live integration tests. The forced tool-choice coverage now uses Groq's recommended `qwen/qwen3.6-27b` replacement with reasoning disabled, while leaving gpt-oss coverage in place for reasoning-specific tests. ## Changes - Add a dedicated tool-calling model constant for forced tool-choice integration coverage. - Update sync and async tool-choice tests to use `qwen/qwen3.6-27b` with `reasoning_effort="none"`. - Remove stale xfail markers from streaming tool-call tests and assert the normalized aggregated stream output, including preserved tool-call IDs. |
||
|
|
844cef444b |
test(openai): clarify async API key sync failure trace (#38379)
Clarifies why the async callable API-key integration test intentionally creates a failed `ChatOpenAI` run in scheduled LangSmith traces. The sync invocation is expected to fail because async API-key callables are only valid for async model methods. |
||
|
|
83e824922a | release(langchain): 1.3.11 (#38377) | ||
|
|
6dd45c90f6 | hotfix(anthropic): regenerate cassette (#38376) | ||
|
|
4a837567c8 | release(openai): 1.3.3 (#38375) | ||
|
|
792c1a743e |
fix(openai): drop response item ids when store is false (#38372)
Some Responses API conversations can safely replay prior response item IDs because the server stored those items. That assumption breaks when `store=False`: prior `rs_*` reasoning items and `msg_*` assistant message IDs are not available on the server for the next turn, so replaying them can crash with `Item with id 'rs_...' not found` or similar item lookup errors. This updates the Responses API payload builder to treat `store=False` as a stateless replay mode. The visible assistant text is still preserved in history, but server-side response item IDs are not sent back unless they are usable without server persistence. In practical terms: - Bare `rs_*` reasoning items are dropped for `store=False` because they only reference server-side state that was not stored. - Reasoning items with `encrypted_content` are preserved because OpenAI uses them as the stateless/ZDR way to carry reasoning context forward. - Prior assistant `msg_*` IDs are omitted for `store=False`; the assistant message is replayed as ordinary assistant text instead of as a reference to a stored server item. Dropping `msg_*` IDs in this case should not remove useful user-visible context: the text content remains in the request. It only removes an item identity that the server cannot reliably resolve when `store=False`. Persisted `store=True` Responses flows continue to replay item IDs as before. The regression test mirrors the minimal user story: make one Responses/Codex call, reuse the returned `AIMessage` in a follow-up request, and verify the next payload keeps the visible assistant message and encrypted reasoning context while omitting unresolvable bare item references. |
||
|
|
9f7e46fd70 | release(anthropic): 1.4.7 (#38373) | ||
|
|
9ef324c9ab |
fix(langchain,openai): only set strict=True on tools for OpenAI-compatible models in ProviderStrategy (#38370)
When using `ProviderStrategy`, `create_agent` unnecessarily sets `strict=True` on tools for all providers. This is only needed for OpenAI / chat completions. Here we unset `strict`. For OpenAI: 1. We set it in `BaseChatOpenAI.bind_tools` (as a convenience to users calling `model.bind_tools` directly) 2. We (redundantly) special-case OpenAI in the `create_agent` factory logic so that things will not break for users who upgrade `langchain` but not `langchain-openai`. Note: payloads for OpenAI are tested here and appear unchanged: https://github.com/langchain-ai/langchain/blob/master/libs/langchain_v1/tests/unit_tests/agents/test_response_format_integration.py Quick test: ```python from langchain.agents import create_agent from langchain.agents.structured_output import ProviderStrategy from pydantic import BaseModel class Weather(BaseModel): temperature: float condition: str def weather_tool(location: str) -> str: """Get the weather at a location.""" return "Sunny and 75 degrees F." for model in [ "anthropic:claude-sonnet-4-6", "openai:gpt-5.4", "google_genai:gemini-3.5-flash", ]: agent = create_agent( model=model, tools=[weather_tool], response_format=ProviderStrategy(Weather), ) result = agent.invoke({ "messages": [{"role": "user", "content": "What's the weather in SF?"}] }) print(result["structured_response"]) ``` |
||
|
|
8e81774870 |
test(groq): xfail flaky tool choice test (#38365)
Groq's standard integration suite already treats several tool-calling checks as flaky because provider behavior is inconsistent. The forced `tool_choice` check now hits the same provider-side `tool_use_failed` 400 on generic prompts, so the Groq-specific suite marks that case as expected flaky instead of failing scheduled integration runs. ## Changes - Add a Groq-specific `test_tool_choice` override that retries and xfails the shared standard test. - Keep the rest of the Groq tool-calling coverage unchanged, including the existing xfail/retry behavior for related standard tests. |
||
|
|
946fbbbead |
fix(groq): replace deprecated Groq llama models (#38363)
Groq is deprecating `llama-3.1-8b-instant` and `llama-3.3-70b-versatile` (shutdown 08/16/26, per [Groq's deprecation notice](https://console.groq.com/docs/deprecations#august-16-2026-llama318binstant-and-llama3370bversatile)). This migrates the `langchain-groq` docstring examples and tests to the recommended replacements: `openai/gpt-oss-20b` (for 8b-instant) and `openai/gpt-oss-120b` (for 70b-versatile). The strict-output unit test uses `qwen/qwen3.6-27b` since it requires a model that does not support strict JSON schema. The auto-generated `data/_profiles.py` is left untouched (reference data, not usage). Made by [Open SWE](https://openswe.vercel.app/agents/22845b4e-674d-346e-c594-612a8cbcedbd) --------- Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com> |