custom fields on Metadata is not copied after forked node (broken after v5 update) #821

Closed
opened 2026-02-20 17:41:56 -05:00 by yindo · 1 comment
Owner

Originally created by @junan-trustarc on GitHub (Jul 18, 2025).

Checked other resources

  • This is a bug, not a usage question. For questions, please use the LangChain Forum (https://forum.langchain.com/).
  • I added a clear and detailed title that summarizes the issue.
  • I read what a minimal reproducible example is (https://stackoverflow.com/help/minimal-reproducible-example).
  • I included a self-contained, minimal example that demonstrates the issue INCLUDING all the relevant imports. The code run AS IS to reproduce the issue.

Example Code

This is langgraph endpoint to fork message


POST /threads/6b04b488-43c2-4423-a719-baa174d79950/state

payload:
{
    "values": [
        [
            {
                "messages": [
                    {
                        "id": "565eb1c5-9a1e-461c-bac7-9fa7fd147515",
                        "content": "hi22",
                        "role": "human",
                        "type": "human"
                    }
                ]
            },
            "__start__"
        ]
    ],
    "checkpoint": {
        "checkpoint_id": "1f064309-5fde-655a-bfff-28685f1b6580",
        "thread_id": "6b04b488-43c2-4423-a719-baa174d79950",
        "checkpoint_ns": ""
    },
    "as_node": "__copy__"
}

Error Message and Stack Trace (if applicable)


Description

I have filtering thread & messages by "userId" and "assistantId" in order only each user to see their own threads for security.
After forked the user's question by using above endpoint, forked record doesn't copy custom fields on metadata from original record.
When I look up data returns from history endpoint, custom fields ("userId", "assistantId") is missing in metadata.

This is generated after forked.
 {
        "values": {
            "messages": []
        },
        "next": [
            "__start__"
        ],
        "tasks": [
            {
                "id": "6738b1df-f011-e86b-926b-f89fa4c40d0e",
                "name": "__start__",
                "path": [
                    "__pregel_pull",
                    "__start__"
                ],
                "error": null,
                "interrupts": [],
                "checkpoint": null,
                "state": null,
                "result": {
                    "messages": [
                        {
                            "id": "565eb1c5-9a1e-461c-bac7-9fa7fd147515",
                            "content": "hi22",
                            "role": "human",
                            "type": "human"
                        }
                    ]
                }
            }
        ],
        "metadata": {
            "graph_id": "arc",
            "user-agent": "langgraph-sdk-py/0.1.73",
            "x-request-id": "ee941062-62cf-435c-808e-a57ccdd1deec",
            "langgraph_auth_user_id": "",
            "langgraph_request_id": "ee941062-62cf-435c-808e-a57ccdd1deec",
            "thread_id": "6b04b488-43c2-4423-a719-baa174d79950",
            "checkpoint_id": "1f064309-5fde-655a-bfff-28685f1b6580",
            "checkpoint_ns": "",
            "source": "fork",
            "step": 0,
            "parents": {}
        },
        "created_at": "2025-07-18T23:40:46.955733+00:00",
        "checkpoint": {
            "checkpoint_id": "1f06430a-0eca-68a2-bfff-7e2829536ae4",
            "thread_id": "6b04b488-43c2-4423-a719-baa174d79950",
            "checkpoint_ns": ""
        },
        "parent_checkpoint": null,
        "checkpoint_id": "1f06430a-0eca-68a2-bfff-7e2829536ae4",
        "parent_checkpoint_id": null
    },

v4 was fine, broken after version 5.
That is why the fork feature for looking up previous message is not working anymore. (fork feature as below screenshot)
Image

custom metadata must be copied over from original node when node is copied.

System Info

System Information

OS: Darwin
OS Version: Darwin Kernel Version 24.5.0: Tue Apr 22 19:53:27 PDT 2025; root:xnu-11417.121.6~2/RELEASE_ARM64_T6041
Python Version: 3.12.7 (main, May 20 2025, 23:37:41) [Clang 17.0.0 (clang-1700.0.13.3)]

Package Information

langchain_core: 0.3.69
langchain: 0.3.26
langchain_community: 0.3.27
langsmith: 0.4.8
langchain_anthropic: 0.3.17
langchain_cohere: 0.4.4
langchain_experimental: 0.3.4
langchain_google_genai: 2.1.8
langchain_mcp_adapters: 0.1.9
langchain_openai: 0.3.28
langchain_pinecone: 0.2.9
langchain_tests: 0.3.20
langchain_text_splitters: 0.3.8
langchain_voyageai: 0.1.6
langgraph_api: 0.2.96
langgraph_cli: 0.3.5
langgraph_license: Installed. No version info available.
langgraph_runtime: Installed. No version info available.
langgraph_runtime_inmem: 0.6.0
langgraph_sdk: 0.1.73

Optional packages not installed

langserve

Other Dependencies

aiohttp<4.0.0,>=3.8.3: Installed. No version info available.
anthropic<1,>=0.57.0: Installed. No version info available.
async-timeout<5.0.0,>=4.0.0;: Installed. No version info available.
blockbuster<2.0.0,>=1.5.24: Installed. No version info available.
click>=8.1.7: Installed. No version info available.
cloudpickle>=3.0.0: Installed. No version info available.
cohere: 5.14.2
cryptography<45.0,>=42.0.0: Installed. No version info available.
dataclasses-json<0.7,>=0.5.7: Installed. No version info available.
filetype: 1.2.0
google-ai-generativelanguage: 0.6.18
httpx: 0.28.1
httpx-sse<1.0.0,>=0.4.0: Installed. No version info available.
httpx<1,>=0.25.0: Installed. No version info available.
httpx>=0.25.0: Installed. No version info available.
httpx>=0.25.2: Installed. No version info available.
jsonpatch<2.0,>=1.33: Installed. No version info available.
jsonschema-rs<0.30,>=0.20.0: Installed. No version info available.
langchain-anthropic;: Installed. No version info available.
langchain-aws;: Installed. No version info available.
langchain-azure-ai;: Installed. No version info available.
langchain-cohere;: Installed. No version info available.
langchain-community;: Installed. No version info available.
langchain-core<0.4,>=0.3.36: Installed. No version info available.
langchain-core<1.0.0,>=0.3.29: Installed. No version info available.
langchain-core<1.0.0,>=0.3.34: Installed. No version info available.
langchain-core<1.0.0,>=0.3.51: Installed. No version info available.
langchain-core<1.0.0,>=0.3.63: Installed. No version info available.
langchain-core<1.0.0,>=0.3.66: Installed. No version info available.
langchain-core<1.0.0,>=0.3.68: Installed. No version info available.
langchain-core>=0.3.64: Installed. No version info available.
langchain-deepseek;: Installed. No version info available.
langchain-fireworks;: Installed. No version info available.
langchain-google-genai;: Installed. No version info available.
langchain-google-vertexai;: Installed. No version info available.
langchain-groq;: Installed. No version info available.
langchain-huggingface;: Installed. No version info available.
langchain-mistralai;: Installed. No version info available.
langchain-ollama;: Installed. No version info available.
langchain-openai;: Installed. No version info available.
langchain-openai>=0.3.11: Installed. No version info available.
langchain-perplexity;: Installed. No version info available.
langchain-tests<1.0.0,>=0.3.7: Installed. No version info available.
langchain-text-splitters<1.0.0,>=0.3.8: Installed. No version info available.
langchain-together;: Installed. No version info available.
langchain-xai;: Installed. No version info available.
langchain<1.0.0,>=0.3.26: Installed. No version info available.
langgraph-api<0.3.0,>=0.2.67;: Installed. No version info available.
langgraph-checkpoint>=2.0.23: Installed. No version info available.
langgraph-checkpoint>=2.0.25: Installed. No version info available.
langgraph-runtime-inmem<0.7,>=0.6.0: Installed. No version info available.
langgraph-runtime-inmem>=0.6.0;: Installed. No version info available.
langgraph-sdk>=0.1.0;: Installed. No version info available.
langgraph-sdk>=0.1.71: Installed. No version info available.
langgraph>=0.2: Installed. No version info available.
langgraph>=0.3.27: Installed. No version info available.
langsmith-pyo3: Installed. No version info available.
langsmith>=0.1.125: Installed. No version info available.
langsmith>=0.1.17: Installed. No version info available.
langsmith>=0.3.45: Installed. No version info available.
mcp>=1.9.2: Installed. No version info available.
numpy>=1.26.2;: Installed. No version info available.
numpy>=1.26.4: Installed. No version info available.
numpy>=2.1.0;: Installed. No version info available.
openai-agents: Installed. No version info available.
openai<2.0.0,>=1.86.0: Installed. No version info available.
opentelemetry-api: Installed. No version info available.
opentelemetry-exporter-otlp-proto-http: Installed. No version info available.
opentelemetry-sdk: Installed. No version info available.
orjson: 3.11.0
orjson>=3.10.1: Installed. No version info available.
orjson>=3.9.7: Installed. No version info available.
packaging: 24.2
packaging>=23.2: Installed. No version info available.
pinecone[asyncio]<8.0.0,>=6.0.0: Installed. No version info available.
pydantic: 2.11.7
pydantic-settings<3.0.0,>=2.4.0: Installed. No version info available.
pydantic<3,>=2: Installed. No version info available.
pydantic<3.0.0,>=2.7.4: Installed. No version info available.
pydantic>=2.7.4: Installed. No version info available.
pyjwt>=2.9.0: Installed. No version info available.
pytest: 8.4.1
pytest-asyncio<1,>=0.20: Installed. No version info available.
pytest-benchmark: 5.1.0
pytest-codspeed: 4.0.0
pytest-recording: 0.13.4
pytest-socket<1,>=0.6.0: Installed. No version info available.
pytest<9,>=7: Installed. No version info available.
python-dotenv>=0.8.0;: Installed. No version info available.
PyYAML>=5.3: Installed. No version info available.
requests: 2.32.4
requests-toolbelt: 1.0.0
requests<3,>=2: Installed. No version info available.
rich: 14.0.0
SQLAlchemy<3,>=1.4: Installed. No version info available.
sse-starlette<2.2.0,>=2.1.0: Installed. No version info available.
sse-starlette>=2: Installed. No version info available.
starlette>=0.37: Installed. No version info available.
starlette>=0.38.6: Installed. No version info available.
structlog<26,>=24.1.0: Installed. No version info available.
structlog>23: Installed. No version info available.
syrupy<5,>=4: Installed. No version info available.
tenacity!=8.4.0,<10,>=8.1.0: Installed. No version info available.
tenacity!=8.4.0,<10.0.0,>=8.1.0: Installed. No version info available.
tenacity>=8.0.0: Installed. No version info available.
tiktoken<1,>=0.7: Installed. No version info available.
truststore>=0.1: Installed. No version info available.
types-pyyaml: 6.0.12.20250516
typing-extensions>=4.14.0: Installed. No version info available.
typing-extensions>=4.7: Installed. No version info available.
uvicorn>=0.26.0: Installed. No version info available.
vcrpy>=7.0: Installed. No version info available.
voyageai<1,>=0.3.2: Installed. No version info available.
watchfiles>=0.13: Installed. No version info available.
zstandard: 0.23.0

Originally created by @junan-trustarc on GitHub (Jul 18, 2025). ### Checked other resources - [x] This is a bug, not a usage question. For questions, please use the LangChain Forum (https://forum.langchain.com/). - [x] I added a clear and detailed title that summarizes the issue. - [x] I read what a minimal reproducible example is (https://stackoverflow.com/help/minimal-reproducible-example). - [x] I included a self-contained, minimal example that demonstrates the issue INCLUDING all the relevant imports. The code run AS IS to reproduce the issue. ### Example Code ```python This is langgraph endpoint to fork message POST /threads/6b04b488-43c2-4423-a719-baa174d79950/state payload: { "values": [ [ { "messages": [ { "id": "565eb1c5-9a1e-461c-bac7-9fa7fd147515", "content": "hi22", "role": "human", "type": "human" } ] }, "__start__" ] ], "checkpoint": { "checkpoint_id": "1f064309-5fde-655a-bfff-28685f1b6580", "thread_id": "6b04b488-43c2-4423-a719-baa174d79950", "checkpoint_ns": "" }, "as_node": "__copy__" } ``` ### Error Message and Stack Trace (if applicable) ```shell ``` ### Description I have filtering thread & messages by "userId" and "assistantId" in order only each user to see their own threads for security. After forked the user's question by using above endpoint, forked record doesn't copy custom fields on metadata from original record. When I look up data returns from history endpoint, custom fields ("userId", "assistantId") is missing in metadata. ``` This is generated after forked. { "values": { "messages": [] }, "next": [ "__start__" ], "tasks": [ { "id": "6738b1df-f011-e86b-926b-f89fa4c40d0e", "name": "__start__", "path": [ "__pregel_pull", "__start__" ], "error": null, "interrupts": [], "checkpoint": null, "state": null, "result": { "messages": [ { "id": "565eb1c5-9a1e-461c-bac7-9fa7fd147515", "content": "hi22", "role": "human", "type": "human" } ] } } ], "metadata": { "graph_id": "arc", "user-agent": "langgraph-sdk-py/0.1.73", "x-request-id": "ee941062-62cf-435c-808e-a57ccdd1deec", "langgraph_auth_user_id": "", "langgraph_request_id": "ee941062-62cf-435c-808e-a57ccdd1deec", "thread_id": "6b04b488-43c2-4423-a719-baa174d79950", "checkpoint_id": "1f064309-5fde-655a-bfff-28685f1b6580", "checkpoint_ns": "", "source": "fork", "step": 0, "parents": {} }, "created_at": "2025-07-18T23:40:46.955733+00:00", "checkpoint": { "checkpoint_id": "1f06430a-0eca-68a2-bfff-7e2829536ae4", "thread_id": "6b04b488-43c2-4423-a719-baa174d79950", "checkpoint_ns": "" }, "parent_checkpoint": null, "checkpoint_id": "1f06430a-0eca-68a2-bfff-7e2829536ae4", "parent_checkpoint_id": null }, ``` v4 was fine, broken after version 5. That is why the fork feature for looking up previous message is not working anymore. (fork feature as below screenshot) <img width="130" height="36" alt="Image" src="https://github.com/user-attachments/assets/e6f806ca-8741-476f-9ab0-0a04502071fe" /> custom metadata must be copied over from original node when node is copied. ### System Info System Information ------------------ > OS: Darwin > OS Version: Darwin Kernel Version 24.5.0: Tue Apr 22 19:53:27 PDT 2025; root:xnu-11417.121.6~2/RELEASE_ARM64_T6041 > Python Version: 3.12.7 (main, May 20 2025, 23:37:41) [Clang 17.0.0 (clang-1700.0.13.3)] Package Information ------------------- > langchain_core: 0.3.69 > langchain: 0.3.26 > langchain_community: 0.3.27 > langsmith: 0.4.8 > langchain_anthropic: 0.3.17 > langchain_cohere: 0.4.4 > langchain_experimental: 0.3.4 > langchain_google_genai: 2.1.8 > langchain_mcp_adapters: 0.1.9 > langchain_openai: 0.3.28 > langchain_pinecone: 0.2.9 > langchain_tests: 0.3.20 > langchain_text_splitters: 0.3.8 > langchain_voyageai: 0.1.6 > langgraph_api: 0.2.96 > langgraph_cli: 0.3.5 > langgraph_license: Installed. No version info available. > langgraph_runtime: Installed. No version info available. > langgraph_runtime_inmem: 0.6.0 > langgraph_sdk: 0.1.73 Optional packages not installed ------------------------------- > langserve Other Dependencies ------------------ > aiohttp<4.0.0,>=3.8.3: Installed. No version info available. > anthropic<1,>=0.57.0: Installed. No version info available. > async-timeout<5.0.0,>=4.0.0;: Installed. No version info available. > blockbuster<2.0.0,>=1.5.24: Installed. No version info available. > click>=8.1.7: Installed. No version info available. > cloudpickle>=3.0.0: Installed. No version info available. > cohere: 5.14.2 > cryptography<45.0,>=42.0.0: Installed. No version info available. > dataclasses-json<0.7,>=0.5.7: Installed. No version info available. > filetype: 1.2.0 > google-ai-generativelanguage: 0.6.18 > httpx: 0.28.1 > httpx-sse<1.0.0,>=0.4.0: Installed. No version info available. > httpx<1,>=0.25.0: Installed. No version info available. > httpx>=0.25.0: Installed. No version info available. > httpx>=0.25.2: Installed. No version info available. > jsonpatch<2.0,>=1.33: Installed. No version info available. > jsonschema-rs<0.30,>=0.20.0: Installed. No version info available. > langchain-anthropic;: Installed. No version info available. > langchain-aws;: Installed. No version info available. > langchain-azure-ai;: Installed. No version info available. > langchain-cohere;: Installed. No version info available. > langchain-community;: Installed. No version info available. > langchain-core<0.4,>=0.3.36: Installed. No version info available. > langchain-core<1.0.0,>=0.3.29: Installed. No version info available. > langchain-core<1.0.0,>=0.3.34: Installed. No version info available. > langchain-core<1.0.0,>=0.3.51: Installed. No version info available. > langchain-core<1.0.0,>=0.3.63: Installed. No version info available. > langchain-core<1.0.0,>=0.3.66: Installed. No version info available. > langchain-core<1.0.0,>=0.3.68: Installed. No version info available. > langchain-core>=0.3.64: Installed. No version info available. > langchain-deepseek;: Installed. No version info available. > langchain-fireworks;: Installed. No version info available. > langchain-google-genai;: Installed. No version info available. > langchain-google-vertexai;: Installed. No version info available. > langchain-groq;: Installed. No version info available. > langchain-huggingface;: Installed. No version info available. > langchain-mistralai;: Installed. No version info available. > langchain-ollama;: Installed. No version info available. > langchain-openai;: Installed. No version info available. > langchain-openai>=0.3.11: Installed. No version info available. > langchain-perplexity;: Installed. No version info available. > langchain-tests<1.0.0,>=0.3.7: Installed. No version info available. > langchain-text-splitters<1.0.0,>=0.3.8: Installed. No version info available. > langchain-together;: Installed. No version info available. > langchain-xai;: Installed. No version info available. > langchain<1.0.0,>=0.3.26: Installed. No version info available. > langgraph-api<0.3.0,>=0.2.67;: Installed. No version info available. > langgraph-checkpoint>=2.0.23: Installed. No version info available. > langgraph-checkpoint>=2.0.25: Installed. No version info available. > langgraph-runtime-inmem<0.7,>=0.6.0: Installed. No version info available. > langgraph-runtime-inmem>=0.6.0;: Installed. No version info available. > langgraph-sdk>=0.1.0;: Installed. No version info available. > langgraph-sdk>=0.1.71: Installed. No version info available. > langgraph>=0.2: Installed. No version info available. > langgraph>=0.3.27: Installed. No version info available. > langsmith-pyo3: Installed. No version info available. > langsmith>=0.1.125: Installed. No version info available. > langsmith>=0.1.17: Installed. No version info available. > langsmith>=0.3.45: Installed. No version info available. > mcp>=1.9.2: Installed. No version info available. > numpy>=1.26.2;: Installed. No version info available. > numpy>=1.26.4: Installed. No version info available. > numpy>=2.1.0;: Installed. No version info available. > openai-agents: Installed. No version info available. > openai<2.0.0,>=1.86.0: Installed. No version info available. > opentelemetry-api: Installed. No version info available. > opentelemetry-exporter-otlp-proto-http: Installed. No version info available. > opentelemetry-sdk: Installed. No version info available. > orjson: 3.11.0 > orjson>=3.10.1: Installed. No version info available. > orjson>=3.9.7: Installed. No version info available. > packaging: 24.2 > packaging>=23.2: Installed. No version info available. > pinecone[asyncio]<8.0.0,>=6.0.0: Installed. No version info available. > pydantic: 2.11.7 > pydantic-settings<3.0.0,>=2.4.0: Installed. No version info available. > pydantic<3,>=2: Installed. No version info available. > pydantic<3.0.0,>=2.7.4: Installed. No version info available. > pydantic>=2.7.4: Installed. No version info available. > pyjwt>=2.9.0: Installed. No version info available. > pytest: 8.4.1 > pytest-asyncio<1,>=0.20: Installed. No version info available. > pytest-benchmark: 5.1.0 > pytest-codspeed: 4.0.0 > pytest-recording: 0.13.4 > pytest-socket<1,>=0.6.0: Installed. No version info available. > pytest<9,>=7: Installed. No version info available. > python-dotenv>=0.8.0;: Installed. No version info available. > PyYAML>=5.3: Installed. No version info available. > requests: 2.32.4 > requests-toolbelt: 1.0.0 > requests<3,>=2: Installed. No version info available. > rich: 14.0.0 > SQLAlchemy<3,>=1.4: Installed. No version info available. > sse-starlette<2.2.0,>=2.1.0: Installed. No version info available. > sse-starlette>=2: Installed. No version info available. > starlette>=0.37: Installed. No version info available. > starlette>=0.38.6: Installed. No version info available. > structlog<26,>=24.1.0: Installed. No version info available. > structlog>23: Installed. No version info available. > syrupy<5,>=4: Installed. No version info available. > tenacity!=8.4.0,<10,>=8.1.0: Installed. No version info available. > tenacity!=8.4.0,<10.0.0,>=8.1.0: Installed. No version info available. > tenacity>=8.0.0: Installed. No version info available. > tiktoken<1,>=0.7: Installed. No version info available. > truststore>=0.1: Installed. No version info available. > types-pyyaml: 6.0.12.20250516 > typing-extensions>=4.14.0: Installed. No version info available. > typing-extensions>=4.7: Installed. No version info available. > uvicorn>=0.26.0: Installed. No version info available. > vcrpy>=7.0: Installed. No version info available. > voyageai<1,>=0.3.2: Installed. No version info available. > watchfiles>=0.13: Installed. No version info available. > zstandard: 0.23.0
yindo added the bugpending labels 2026-02-20 17:41:56 -05:00
yindo closed this issue 2026-02-20 17:41:56 -05:00
Author
Owner

@junan-trustarc commented on GitHub (Jul 19, 2025):

I can see that I need to use configurable from config instead of metadata object on v5.

Image Image

I am clsoing ticket

@junan-trustarc commented on GitHub (Jul 19, 2025): I can see that I need to use configurable from config instead of metadata object on v5. <img width="659" height="536" alt="Image" src="https://github.com/user-attachments/assets/e91582af-2bf9-4874-8eec-6a296fbc4d14" /> <img width="669" height="396" alt="Image" src="https://github.com/user-attachments/assets/61336abe-b86f-4949-8eb2-e7dbceb81b06" /> I am clsoing ticket
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: langchain-ai/langgraph#821