release 1.13.8: monpages TOP meta failures are WARN only

Missing sticky top meta (generated / version-link / taler-mon-page) and
empty/truncated race bodies no longer ERROR the suite (self-red mid-run).
Set MONPAGES_TOP_STRICT=1 to keep hard ERROR.
This commit is contained in:
Hernâni Marques 2026-07-19 03:45:43 +02:00
parent 2a20def806
commit 99ad23f9af
No known key found for this signature in database
GPG key ID: CB5738652768F7E9
3 changed files with 31 additions and 5 deletions

View file

@ -356,8 +356,14 @@ validate_mon_content() {
pct=$(_progress_max_pct "$f")
if [ "$top_ok" != "1" ]; then
# TOP missing is WARN-only (v1.13.8+): mid-run races and incomplete
# /monitoring stubs used to self-red the next HTML. Hard ERROR still for
# missing page / code 21 / non-suite body. Override: MONPAGES_TOP_STRICT=1.
_MON_CONTENT_MSG="TOP: $_MON_CONTENT_MSG"
return 1
if [ "${MONPAGES_TOP_STRICT:-0}" = "1" ]; then
return 1
fi
return 2
fi
if [ "$body_ok" != "1" ]; then
_MON_CONTENT_MSG="BODY: $_MON_CONTENT_MSG"
@ -495,9 +501,17 @@ check_one() {
return 0
;;
2)
# mid-run: bottom may be incomplete — not ERROR
warn "public mon page mid-run" "$url -> ${_MON_CONTENT_MSG}"
ok "public mon page" "$url -> HTTP 200 suite HTML (mid-run bottom relaxed)"
# soft: TOP incomplete / mid-run bottom — WARN, never hard fail
case "${_MON_CONTENT_MSG}" in
TOP:*)
warn "public mon page content" \
"$url -> ${_MON_CONTENT_MSG} (WARN only; set MONPAGES_TOP_STRICT=1 to ERROR)"
;;
*)
warn "public mon page mid-run" "$url -> ${_MON_CONTENT_MSG}"
ok "public mon page" "$url -> HTTP 200 suite HTML (mid-run bottom relaxed)"
;;
esac
rm -f "$body"
return 0
;;
@ -508,6 +522,17 @@ check_one() {
sleep "$sleep_s" 2>/dev/null || sleep 1
continue
fi
# TOP failures should already be soft (return 2); belt-and-braces:
case "${_MON_CONTENT_MSG}" in
TOP:*)
if [ "${MONPAGES_TOP_STRICT:-0}" != "1" ]; then
warn "public mon page content" \
"$url -> ${_MON_CONTENT_MSG} (WARN only; set MONPAGES_TOP_STRICT=1 to ERROR)"
rm -f "$body"
return 0
fi
;;
esac
# Pre-publish inventory in host-agent PHASES: WARN only (post-check is hard)
if [ "$pre_pub" = "1" ] || [ "$soft" = "1" ]; then
warn "public mon page content" \