Repository navigation
[Fix] Reject a non-finite timeout_s passed in code; real-server deadline evidence for #36 - #53
Conversation
S1A_DECISION_TIMEOUT_S already rejects nan, inf and values <= 0; a deadline passed as JevModel.from_env(timeout_s=...) skipped that check. JevDecisionsClient now applies the same guard. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ontend at 5 s, 30 s and 1 s Open-Jev-9B behind omni-jev on one A40, three runs with only S1A_DECISION_TIMEOUT_S changing; the native Open-Jev-27B worker's out-of-memory log on the same GPU; the export's measured time and memory; scripts as run. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…9B, one A40) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Birfy
left a comment
There was a problem hiding this comment.
Review of current head 389f3463024d6e64683d7ec8486e738417873c38 against 9790b52ef4d78a2215e8dd5a526d3a8daea9875a.
I found no blocking code issue in this focused fix. JevDecisionsClient now rejects non-finite and non-positive explicit timeout_s values before constructing the httpx client, reports a configuration error naming timeout_s, and the regression test covers zero, negative, NaN and both infinities. The real-server deadline evidence is also recorded with the runs and environment details. Core 3.11, 3.13, Windows 3.11 and full CI pass; browser is skipped by configuration.
Disposition: no code findings from this review. This is a narrow bug fix with reproducible trace evidence; I do not consider a separate feature recording necessary here.
Birfy
left a comment
There was a problem hiding this comment.
Reviewed current head 5bfd358b80f09996d29b81e1d8f2dda9d66712d8 against base 5d89f85e702fc8dbdb7b719721e3cb0dda0bef4f.
The fix closes the explicit-timeout validation gap: JevDecisionsClient rejects non-finite and non-positive timeout_s values before creating the httpx client, and reports a configuration error naming the parameter. Regression coverage includes zero, negative, NaN and both infinities. Normal timeout/deadline behavior is unchanged. The real-server evidence records the 1 s, default 5 s and 30 s cases with run artifacts and environment details.
I found no blocking code issues. Core 3.11, core 3.13, Windows core and full CI pass; browser is skipped by configuration. Approved.
Follow-up to #36.
Fix (from the [Feat] Make the decision deadline configurable for slower local System One servers #36 review): S1A_DECISION_TIMEOUT_S rejects nan, inf and values <= 0, but a deadline passed in code (JevModel.from_env(timeout_s=...)) skipped that check. JevDecisionsClient now applies the same guard and raises MODEL_SERVICE_CONFIG_ERROR naming timeout_s. New test: 0, -3, nan, inf, -inf. (c0b20d7)
Real-server evidence for [Feat] Make the decision deadline configurable for slower local System One servers #36, no injected delay: the Flights agent at the default 5 s, at S1A_DECISION_TIMEOUT_S=30 and at =1, on one NVIDIA A40.
Each folder has the records, the commits, the hardware and the scripts as run; see its README.
Verification: ruff and ty clean; 648 passed. One failure (test_decision_models_laya.py::TestFromEnv::test_an_agent_without_system_one_is_a_config_error_naming_the_method) fails the same on main on this machine.