greatmengqi
edf345cd72
refactor(config): eliminate global mutable state, wire DeerFlowContext into runtime
...
- Freeze all config models (AppConfig + 15 sub-configs) with frozen=True
- Purify from_file() — remove 9 load_*_from_dict() side-effect calls
- Replace mtime/reload/push/pop machinery with single ContextVar + init_app_config()
- Delete 10 sub-module globals and their getters/setters/loaders
- Migrate 50+ consumers from get_*_config() to get_app_config().xxx
- Expand DeerFlowContext: app_config + thread_id + agent_name (frozen dataclass)
- Wire into Gateway runtime (worker.py) and DeerFlowClient via context= parameter
- Remove sandbox_id from runtime.context — flows through ThreadState.sandbox only
- Middleware/tools access runtime.context directly via Runtime[DeerFlowContext] generic
- resolve_context() retained at server entry points for LangGraph Server fallback
2026-04-14 01:18:19 +08:00
..
2026-04-10 20:40:30 +08:00
2026-04-14 01:18:19 +08:00
2026-04-01 11:42:12 +08:00
2026-03-31 22:19:27 +08:00
2026-04-02 15:39:41 +08:00
2026-04-14 01:18:19 +08:00
2026-03-26 17:44:25 +08:00
2026-04-06 22:14:12 +08:00
2026-04-06 22:14:12 +08:00
2026-04-14 01:18:19 +08:00
2026-04-14 01:18:19 +08:00
2026-04-08 21:04:20 +08:00
2026-03-30 07:41:18 +08:00
2026-04-07 18:21:22 +08:00
2026-03-29 21:03:58 +08:00
2026-03-29 21:03:58 +08:00
2026-04-14 01:18:19 +08:00
2026-04-09 16:07:16 +08:00
2026-04-14 01:18:19 +08:00
2026-03-14 22:55:52 +08:00
2026-03-29 15:31:18 +08:00
2026-04-06 16:47:19 +08:00
2026-03-22 22:39:50 +08:00
2026-04-14 01:18:19 +08:00
2026-03-26 00:20:08 +08:00
2026-04-14 01:18:19 +08:00
2026-04-11 17:48:04 +08:00
2026-03-31 22:19:27 +08:00
2026-04-10 17:43:39 +08:00
2026-04-14 01:18:19 +08:00
2026-04-06 22:14:12 +08:00
2026-04-04 14:25:08 +08:00
2026-04-14 01:18:19 +08:00
2026-04-01 23:21:32 +08:00
2026-04-14 01:18:19 +08:00
2026-03-14 22:55:52 +08:00
2026-04-14 01:18:19 +08:00
2026-04-14 01:18:19 +08:00
2026-04-14 01:18:19 +08:00
2026-04-14 01:18:19 +08:00
2026-04-14 01:18:19 +08:00
2026-04-14 01:18:19 +08:00
2026-04-02 10:12:17 +08:00
2026-04-14 01:18:19 +08:00
2026-03-29 21:31:29 +08:00
2026-04-14 01:18:19 +08:00
2026-04-14 01:18:19 +08:00
2026-03-14 22:55:52 +08:00
2026-03-14 22:55:52 +08:00
2026-03-26 14:20:18 +08:00
2026-04-03 11:21:58 +08:00
2026-04-14 01:18:19 +08:00
2026-04-01 16:45:29 +08:00
2026-04-14 01:18:19 +08:00
2026-04-14 01:18:19 +08:00
2026-04-05 16:23:00 +08:00
2026-03-22 20:39:26 +08:00
2026-04-14 01:18:19 +08:00
2026-04-09 16:07:16 +08:00
2026-03-20 17:18:59 +08:00
2026-03-26 15:07:05 +08:00
2026-04-14 01:18:19 +08:00
2026-04-10 20:40:30 +08:00
2026-04-10 20:40:30 +08:00
2026-03-14 22:55:52 +08:00
2026-03-14 22:55:52 +08:00
2026-03-31 22:22:30 +08:00
2026-04-09 17:56:36 +08:00
2026-04-07 17:15:24 +08:00
2026-04-09 17:21:23 +08:00
2026-04-09 17:21:23 +08:00
2026-04-14 01:18:19 +08:00
2026-04-14 01:18:19 +08:00
2026-04-14 01:18:19 +08:00
2026-03-30 16:02:23 +08:00
2026-03-26 14:20:18 +08:00
2026-04-10 17:43:39 +08:00
2026-04-14 01:18:19 +08:00
2026-03-25 16:28:33 +08:00
2026-04-14 01:18:19 +08:00
2026-03-26 17:39:16 +08:00
2026-04-06 22:07:11 +08:00
2026-04-01 23:08:30 +08:00
2026-03-27 20:20:31 +08:00
2026-03-30 16:02:23 +08:00
2026-04-06 14:51:10 +08:00
2026-04-08 11:46:06 +08:00
2026-03-25 10:20:16 +08:00
2026-04-09 16:12:34 +08:00
2026-04-14 01:18:19 +08:00
2026-04-04 21:19:35 +08:00
2026-04-14 01:18:19 +08:00
2026-04-14 01:18:19 +08:00
2026-03-24 00:36:08 +08:00
2026-04-14 01:18:19 +08:00
2026-04-14 01:18:19 +08:00
2026-03-26 00:20:50 +08:00
2026-04-14 01:18:19 +08:00
2026-03-14 22:55:52 +08:00
2026-04-06 15:09:57 +08:00
2026-04-14 01:18:19 +08:00
2026-04-02 13:06:10 +08:00
2026-04-02 13:06:10 +08:00
2026-03-26 17:39:16 +08:00
2026-04-14 01:18:19 +08:00
2026-03-27 17:37:44 +08:00
2026-04-06 15:18:34 +08:00
2026-04-10 20:49:28 +08:00