diff options
| author | Yuriy Andamasov <yuriy@vyos.io> | 2026-07-22 17:27:20 +0300 |
|---|---|---|
| committer | Yuriy Andamasov <yuriy@vyos.io> | 2026-07-22 17:27:20 +0300 |
| commit | f1dcd5ac53decfb3b11c7eb281ddfb3ea4c94d12 (patch) | |
| tree | f9487f63167d25738e30b6636d6bc3bd6a9dbd90 /.github/codeql/codeql-config.yml | |
| parent | 2c696df25168c654cf6af657e4407ac7fae27c75 (diff) | |
| download | vyos-documentation-f1dcd5ac53decfb3b11c7eb281ddfb3ea4c94d12.tar.gz vyos-documentation-f1dcd5ac53decfb3b11c7eb281ddfb3ea4c94d12.zip | |
docs-gates: round-based smoke retries + deadline; contain HTTPError read crash; dedup index probe (review round 1)
Adversarial round (Codex + agy, both REQUEST CHANGES) on the per-probe retry
model shipped in the prior commit — reworked:
Round-based retries (both providers' critical): probe the whole plan once, then
re-probe ONLY the still-failing probes each round (up to MAX_ROUNDS=3, one
RETRY_SLEEP_SECONDS=20 gap between rounds). A probe passing in any round passes.
This keeps the full per-probe failure enumeration (diagnostic value) that a
fail-fast retry would lose, while bounding added time to at most 2 sleeps.
DEADLINE_SECONDS=480 (time.monotonic from run() start, checked before each probe
AND before each inter-round sleep) caps total wall-clock; on breach a single
SMOKE-DEADLINE line is logged and every unresolved probe counts as failed.
Intermediate not-ok logs "SMOKE-RETRY <path>: round <n> ..."; the JSON
{"failures": n} summary and exit contract are unchanged.
Contain HTTPError read crash (agy critical): a transport error DURING e.read()
inside the HTTPError branch previously escaped the outer catch and crashed the
gate. _probe_once now nests the open/HTTPError handling so ANY exception on the
open OR body-read path yields a retryable transport-error result, never a
traceback.
Dedup index probe (agy): critical-pages.txt lists index.html, so
/en/<slug>/index.html was probed twice. probe_plan now filters index.html out of
the critical list; plan[0] stays the single index (and sole search-mount) probe.
ua-policy.json intentionally left unchanged (pushback recorded: fail-open plus
block-precedence make an allow entry non-protective).
Tests reworked for round semantics: transport-error recovery across rounds,
HTTPError-read containment, one-sleep-per-inter-round-gap spy, round scoping
(only the failed path re-probed), run() JSON + exit contract, zero-deadline
path, and index-probe dedup.
🤖 Generated by [robots](https://vyos.io)
Diffstat (limited to '.github/codeql/codeql-config.yml')
0 files changed, 0 insertions, 0 deletions
