* test: fix two Windows-host failures (subprocess encoding, budget-boundary epsilon)
- test_env_file: pin PYTHONIOENCODING=utf-8 in the stripped child env;
without it the child writes stderr in the host's ANSI codepage while
the UTF-8-mode parent decodes it, the reader thread dies on the first
non-ASCII byte, and stderr comes back None;
- test_jina_retries: give the budget-cap assertion a 1e-9 tolerance —
deadline = now + budget rounds, so the cap lands a few ulps above the
exact 0.05 (observed 0.05000000000291038).
Fixes#6626
* test: pin both sides of the capture and use an uptime-proof budget tolerance
- test_env_file: the parent's capture decodes with the host locale when
pytest runs without the Makefile's UTF-8 pins, so the child-side pin
alone mirrored the crash rather than eliminating it. Pin the capture
explicitly (encoding=utf-8, errors=replace, per the
test_local_sandbox_encoding.py precedent) and carry both suite pins in
the child env (PYTHONUTF8=1 + PYTHONIOENCODING=utf-8).
- test_jina_retries: the float error scales with loop-time magnitude
(host uptime), not with 0.05; a 1e-9 absolute slack leaves a ~389-day-
uptime flake window. Use a relative tolerance instead.
---------
Co-authored-by: xiaodu55 <xiaodu55@users.noreply.github.com>
* feat(jina): honor bounded Retry-After recovery
Closes#6237
Honor server-directed waits for 503 and validly hinted 429 responses within the existing attempt and time budgets. Preserve cancellation, default single-attempt behavior and the tool schema. Add deterministic protocol regressions and stabilize mock setup in the real deadline test.
Signed-off-by: 97three <2212371308@qq.com>
* test(jina): pin local backoff for hinted 502 and 504
Signed-off-by: 97three <2212371308@qq.com>
---------
Signed-off-by: 97three <2212371308@qq.com>
* feat(community): add bounded retries for Jina web fetch
Closes#6116
Keep retries opt-in and share a total deadline across requests and backoff. Preserve cancellation and the existing Error contract. Include offline DNS and local-wheel fixture corrections needed to run the complete backend suite in the isolated verifier.
Signed-off-by: 97three <2212371308@qq.com>
* docs(community): scope Jina retry guidance to its provider
Signed-off-by: 97three <2212371308@qq.com>
* fix(community): jitter bounded Jina retry backoff
* docs(community): apply provider-scoped Jina guidance
Signed-off-by: 97three <2212371308@qq.com>
---------
Signed-off-by: 97three <2212371308@qq.com>
Co-authored-by: Willem Jiang <willem.jiang@gmail.com>