ci: raise test timeout 30m → 40m; align with staging (mc#1099)
CI / Canvas (Next.js) (pull_request) Waiting to run
CI / Shellcheck (E2E scripts) (pull_request) Waiting to run
CI / Canvas Deploy Reminder (pull_request) Blocked by required conditions
Handlers Postgres Integration / Handlers Postgres Integration (pull_request) Blocked by required conditions
Block internal-flavored paths / Block forbidden paths (pull_request) Successful in 33s
CI / Detect changes (pull_request) Successful in 1m14s
E2E API Smoke Test / detect-changes (pull_request) Successful in 1m36s
E2E Staging Canvas (Playwright) / detect-changes (pull_request) Successful in 1m0s
Handlers Postgres Integration / detect-changes (pull_request) Successful in 21s
Lint curl status-code capture / Scan workflows for curl status-capture pollution (pull_request) Successful in 22s
Secret scan / Scan diff for credential-shaped strings (pull_request) Successful in 32s
qa-review / approved (pull_request) Failing after 25s
gate-check-v3 / gate-check (pull_request) Successful in 48s
Runtime PR-Built Compatibility / detect-changes (pull_request) Successful in 1m11s
sop-checklist / all-items-acked (pull_request) Successful in 26s
security-review / approved (pull_request) Failing after 30s
lint-required-no-paths / lint-required-no-paths (pull_request) Successful in 1m35s
Lint workflow YAML (Gitea-1.22.6-hostile shapes) / Lint workflow YAML for Gitea-1.22.6-hostile shapes (pull_request) Successful in 1m45s
sop-tier-check / tier-check (pull_request) Successful in 29s
lint-continue-on-error-tracking / lint-continue-on-error-tracking (pull_request) Successful in 2m43s
Lint pre-flip continue-on-error / Verify continue-on-error flips have run-log proof (pull_request) Successful in 2m46s
lint-mask-pr-atomicity / lint-mask-pr-atomicity (pull_request) Successful in 2m51s
lint-required-context-exists-in-bp / lint-required-context-exists-in-bp (pull_request) Successful in 2m57s
CI / Python Lint & Test (pull_request) Successful in 7m47s
E2E API Smoke Test / E2E API Smoke Test (pull_request) Successful in 15s
E2E Staging Canvas (Playwright) / Canvas tabs E2E (pull_request) Successful in 14s
CI / Platform (Go) (pull_request) Failing after 18m29s
CI / all-required (pull_request) Failing after 18m43s
Runtime PR-Built Compatibility / PR-built wheel + import smoke (pull_request) Successful in 18s

This commit is contained in:
2026-05-15 10:34:09 +00:00
parent 784352605d
commit ff4c0b137a
+8 -9
View File
@@ -145,11 +145,11 @@ jobs:
# the diagnostic step with its own continue-on-error: true (line 203).
# Flip confirmed by CI / Platform (Go) status = success on main HEAD 363905d3.
continue-on-error: false
# Job-level ceiling. The go test step below runs with a per-step 30m timeout;
# this cap catches any step that leaks past that. Set well above 30m so
# Job-level ceiling. The go test step below runs with a per-step 40m timeout;
# this cap catches any step that leaks past that. Set well above 40m so
# the per-step timeout is the active constraint. Raised to 50m
# to account for golangci-lint ~10m on cold runner (--no-config) plus
# test suite ~19m on cold runner (mc#1099).
# test suite ~16-20m on cold runner (mc#1099).
timeout-minutes: 50
defaults:
run:
@@ -199,13 +199,12 @@ jobs:
- if: always()
name: Run tests with race detection and coverage
# Explicit timeout: cold runner cache causes OOM kills at ~4m39s on the
# full ./... suite with race detection + coverage. A 30m per-step timeout
# lets the suite complete on cold cache (~19m observed) while failing
# full ./... suite with race detection + coverage. A 40m per-step timeout
# lets the suite complete on cold cache (~16-20m observed) while failing
# cleanly instead of OOM-killing. The job-level timeout (50m) is a
# backstop. mc#1099: raised 10m → 15m → 20m → 30m. Cold runner:
# golangci-lint ~10m + test suite ~19m = ~29m total. 20m was too tight
# (PR #1151 failed at 19m5s with golangci-lint ~10m + test ~19m).
run: go test -race -timeout 30m -coverprofile=coverage.out ./...
# backstop. mc#1099: raised 10m → 15m → 20m → 30m → 40m. Cold runner:
# golangci-lint ~10m + test suite ~16-20m = ~26-30m total.
run: go test -race -timeout 40m -coverprofile=coverage.out ./...
- if: always()
name: Per-file coverage report