Bound MlosAiClient with explicit connect and read timeouts

Fixkamo-shared-library
Ya
22 Julai 2026, 18:02 UTC
Mwandishi
Kamo
Ahadi ya
3845553

The client field-initialized a bare `new RestTemplate()`, so no timeout applied on any AI call and no builder could reach it. A hung provider blocked the caller indefinitely — and PDF rate-sheet ingest made up to 12 sequential vision calls, previously inside an open database transaction. Connect 10s: this is an in-cluster ClusterIP hop, so a connection that will not be accepted means the service is down, not busy. Read 180s: transcribing a rendered 150-DPI page of a dense numeric grid is genuinely slow inference, and a seconds-scale timeout would abandon healthy reads and misreport them as "no provider answered" — while three minutes is past the real slow tail, so anything beyond it is a hung provider rather than a slow one. Kept as a static factory in the field initializer, so the no-arg construction used by callers and tests is unchanged and no version bump is needed.

Mabadiliko yote

Je, unaona nini kuhusu usafiri?

Kila moja ya hizi updates ardhi katika nafasi yako ya kazi moja kwa moja. Kuanza bure na kuangalia kukua wiki baada ya wiki.

Kuwa Huru MileleMtazamo wa bei