From 1a133723897eee744fd6b11cd92b47c4957537b1 Mon Sep 17 00:00:00 2001 From: Annyfee <2287551746@qq.com> Date: Sat, 3 Jan 2026 16:57:36 +0800 Subject: [PATCH] refactor(ch8): align filenames and update corresponding README sections --- ...te_node_edge.py => s01_state_node_edge.py} | 0 ...gsmith_trace.py => s02_langsmith_trace.py} | 0 ...al_router.py => s03_conditional_router.py} | 0 ...ith_memory.py => s04_agent_with_memory.py} | 0 m08_langgraph_basics/workflow.png | Bin 6746 -> 6595 bytes 5 files changed, 0 insertions(+), 0 deletions(-) rename m08_langgraph_basics/{state_node_edge.py => s01_state_node_edge.py} (100%) rename m08_langgraph_basics/{langsmith_trace.py => s02_langsmith_trace.py} (100%) rename m08_langgraph_basics/{conditional_router.py => s03_conditional_router.py} (100%) rename m08_langgraph_basics/{agent_with_memory.py => s04_agent_with_memory.py} (100%) diff --git a/m08_langgraph_basics/state_node_edge.py b/m08_langgraph_basics/s01_state_node_edge.py similarity index 100% rename from m08_langgraph_basics/state_node_edge.py rename to m08_langgraph_basics/s01_state_node_edge.py diff --git a/m08_langgraph_basics/langsmith_trace.py b/m08_langgraph_basics/s02_langsmith_trace.py similarity index 100% rename from m08_langgraph_basics/langsmith_trace.py rename to m08_langgraph_basics/s02_langsmith_trace.py diff --git a/m08_langgraph_basics/conditional_router.py b/m08_langgraph_basics/s03_conditional_router.py similarity index 100% rename from m08_langgraph_basics/conditional_router.py rename to m08_langgraph_basics/s03_conditional_router.py diff --git a/m08_langgraph_basics/agent_with_memory.py b/m08_langgraph_basics/s04_agent_with_memory.py similarity index 100% rename from m08_langgraph_basics/agent_with_memory.py rename to m08_langgraph_basics/s04_agent_with_memory.py diff --git a/m08_langgraph_basics/workflow.png b/m08_langgraph_basics/workflow.png index 775f134d8ea12d01f0fdab47c5f7e5e3d2ed5c8f..1bdd33e0f84f6cb4ff64ddd706082dd0330fc34a 100644 GIT binary patch literal 6595 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 literal 6746 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