L1nSn0w
dd7be50645
docs(llm): trim first-token timeout comments to the essentials
...
Keep only the non-obvious constraints (unit contract, daemon no-keep-alive
assumption, ContextVar fail-open threading, replace-not-narrow intent) and
cut prose that restates the code. The module docstring in
first_token_timeout.py stays the single canonical description of the path.
2026-07-17 11:18:31 +08:00
L1nSn0w
8f1504bf95
chore(llm): improve timeout observability and pin the graphon transform contract
...
Name the configured window in the mid-stream stall message so a read
timeout after the first token is traceable to first_token_timeout_ms; log
invalid values ignored at the pop point; state honestly in _read_timeout_for
that the budget replaces (not narrows) the operator read timeout; pin with a
test that FirstTokenTimeoutError passes graphon's _transform_invoke_error
unchanged, and cover the converter's defensive drop.
2026-07-17 11:18:31 +08:00
L1nSn0w
d77df0b0a4
feat(llm): enforce first-token timeout in the plugin transport
...
The timeout is carried to the plugin-daemon transport through a ContextVar
(core.plugin.impl.first_token_timeout) and applied as httpx's per-request
read timeout in BasePluginClient._stream_request. The daemon withholds the
response headers until the model's first token, so the read timeout measures
time-to-first-token directly; a ReadTimeout before the first line surfaces as
FirstTokenTimeoutError (dify-local, subclassing graphon's InvokeError), while
a later stall stays a plain transport error. A non-positive budget disables
the gate.
2026-07-17 11:18:31 +08:00
QuantumGhost
f0b34bdeb4
feat(api): LLM polling support ( #37462 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: WH-2099 <wh2099@pm.me >
2026-06-17 23:34:33 +00:00
Evan
99351d2f98
refactor: convert remaining isinstance chains to match/case (part 9) ( #35902 ) ( #37340 )
2026-06-11 16:14:30 +00:00
Tim Ren
0ce0127e7e
fix(security): reject path traversal sequences before plugin daemon forward (GHSA-gvc6-fh3x-89xh) ( #35796 )
...
Co-authored-by: Ido Shani <ido@zafran.io >
Co-authored-by: -LAN- <laipz8200@outlook.com >
2026-05-25 16:17:39 +00:00
Yunlu Wen
3193e8a712
chore: reorg imports ( #35308 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-04-16 08:50:02 +00:00
99
8f9dbf269e
chore(api): align Python support with 3.12 ( #34419 )
...
Co-authored-by: Asuka Minato <i@asukaminato.eu.org >
2026-04-02 05:07:32 +00:00
wangxiaolei
57f358a96b
perf: use global httpx client instead of per request create new one ( #34311 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-04-01 01:19:32 +00:00
99
40591a7c50
refactor(api): use standalone graphon package ( #34209 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-03-27 21:05:32 +00:00
wangxiaolei
689761bfcb
feat: return correct dify-plugin-daemon error message ( #34171 )
2026-03-27 06:02:29 +00:00
99
52e7492cbc
refactor(api): rename dify_graph to graphon ( #34095 )
2026-03-25 21:58:56 +08:00
-LAN-
4fd6b52808
refactor(api): move model_runtime into dify_graph ( #32858 )
2026-03-02 20:15:32 +08:00
wangxiaolei
0f1db88dcb
fix: fix dify-plugin-daemon error message ( #31218 )
2026-01-19 16:00:44 +08:00
Byron.wang
5362f69083
feat(refactoring): Support Structured Logging (JSON) ( #30170 )
2026-01-04 11:46:46 +08:00
huku
eb5a444d3d
fix: plugin execution timeout not respecting PLUGIN_MAX_EXECUTION_TIMEOUT ( #29785 )
...
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com >
2025-12-18 15:11:01 +08:00
Yeuoly
b76e17b25d
feat: introduce trigger functionality ( #27644 )
...
Signed-off-by: lyzno1 <yuanyouhuilyz@gmail.com >
Co-authored-by: Stream <Stream_2@qq.com >
Co-authored-by: lyzno1 <92089059+lyzno1@users.noreply.github.com >
Co-authored-by: zhsama <torvalds@linux.do >
Co-authored-by: Harry <xh001x@hotmail.com >
Co-authored-by: lyzno1 <yuanyouhuilyz@gmail.com >
Co-authored-by: yessenia <yessenia.contact@gmail.com >
Co-authored-by: hjlarry <hjlarry@163.com >
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: WTW0313 <twwu@dify.ai >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-11-12 17:59:37 +08:00
Asuka Minato
32c715c4d0
rm type ignore ( #25715 )
...
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: -LAN- <laipz8200@outlook.com >
2025-10-21 11:26:58 +08:00
Eric Guo
59ad6e02ce
Add timeout so any plugin daemon call (including the SSE path) that legitimately takes longer than 5s would right. ( #26852 )
2025-10-14 09:23:27 +08:00
Yuto Yamada
dfc03bac9f
Fix typo: reponse to response ( #26792 )
2025-10-13 10:04:19 +08:00
Asuka Minato
bb6a331490
change all to httpx ( #26119 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com >
2025-10-10 23:41:16 +08:00
Asuka Minato
ab2eacb6c1
use model_validate ( #26182 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com >
2025-10-10 17:30:13 +09:00
Bowen Liang
7b379e2a61
chore: apply ty checks on api code with script and ci action ( #24653 )
2025-09-02 16:05:13 +08:00
Yongtao Huang
fa753239ad
Refactor: use logger = logging.getLogger(__name__) in logging ( #24515 )
...
Co-authored-by: Yongtao Huang <99629139+hyongtao-db@users.noreply.github.com >
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com >
2025-08-26 18:10:31 +08:00
znn
ab78e12089
enhancing logging ( #23332 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-05 10:36:48 +08:00
Bowen Liang
888cd86afd
chore: prepare the plugin daemon base url to yarl URL ahead intstead of in every invocation ( #20541 )
2025-06-03 17:01:35 +08:00
Bowen Liang
eee88a8012
chore: improve error logging for requests to plugin daemon ( #20328 )
2025-05-29 17:12:27 +08:00
Yeuoly
ff0feaf34e
fix: handle EndpointSetupFailedError in BasePluginClient ( #19613 )
2025-05-15 13:59:43 +08:00
Yeuoly
abafa68647
refactor: rename plugin manager to plugin client and rename path from manager to impl ( #18876 )
2025-04-27 14:22:25 +08:00