diff options
| author | Yuriy Andamasov <yuriy@vyos.io> | 2026-07-22 18:53:45 +0300 |
|---|---|---|
| committer | Yuriy Andamasov <yuriy@vyos.io> | 2026-07-22 18:53:45 +0300 |
| commit | cef13a0cd6aa64ab2a9b30fe1199d60939846357 (patch) | |
| tree | 968729918bd9f5e11ef1b4dbd2752fd7be52eeef /docs/configuration/service/https.md | |
| parent | 95b8a4115439826e7dff767bf3515684535d0783 (diff) | |
| download | vyos-documentation-cef13a0cd6aa64ab2a9b30fe1199d60939846357.tar.gz vyos-documentation-cef13a0cd6aa64ab2a9b30fe1199d60939846357.zip | |
docs-gates: hard-bound the smoke deadline (cap probe timeout + inter-round sleep to remaining budget)
Codex adversarial finding: DEADLINE_SECONDS was only checked BEFORE each op, so a
probe or sleep starting at 479s could overshoot to ~510s — 480 was a soft target,
not a hard bound.
Make it hard: run() now computes an absolute deadline = start + DEADLINE_SECONDS
plus a _remaining() helper. The per-probe socket timeout is capped to
min(PROBE_TIMEOUT_SECONDS, max(1, remaining)) — the previously hardcoded 30 is now
the PROBE_TIMEOUT_SECONDS constant; a probe with < 1s of budget is skipped and
counted unresolved. The inter-round sleep is capped to
min(RETRY_SLEEP_SECONDS, remaining) and is skipped entirely when the budget is
exhausted (falling into the existing deadline path). No body-read-level deadline is
added — pages are small, so the socket-op timeout bounds reads adequately.
Deadline-path failure accounting is unchanged. Tests: the probe timeout is capped
to the remaining budget (fake opener records the timeout it was opened with); the
inter-round sleep is capped to the remaining budget (sleep spy); the existing suite
stays green.
🤖 Generated by [robots](https://vyos.io)
Diffstat (limited to 'docs/configuration/service/https.md')
0 files changed, 0 insertions, 0 deletions
