Public Access
Implements: DEVX-164 REQ-1..3 - get_vikunja_task_title retries list_project_tasks up to 4 attempts with backoff on APIError/RequestException — a Vikunja restart window (404/502) no longer strands an otherwise-valid PR - merge HTTP 405 now fetches PR reviews and, when no APPROVED review exists, explains the same-user self-approval rejection and the remediation (approve via a non-author account) - regression tests for retry-then-success, retry exhaustion, missing task, and all three 405 review states
35 lines
1.3 KiB
Markdown
35 lines
1.3 KiB
Markdown
# DEVX-164: Increase HTTP 500 retry count and backoff for docker push
|
|
|
|
## Problem
|
|
The HTTP 500 retry logic (DEVX-162, DEVX-163) works correctly — 3 retry
|
|
attempts are made. But all 3 attempts fail because the Gitea registry's
|
|
"offset mismatch" race condition needs more than ~15s to recover. The
|
|
current backoff is 5s-20s with 3 attempts (total ~15s of waiting).
|
|
|
|
## Approach
|
|
Increase retry count from 3 to 5 and backoff from 5-20s to 10-60s,
|
|
giving the registry up to ~2 minutes to recover. Add visible logging
|
|
between retry attempts so the CI logs show the retry happening.
|
|
|
|
REQ-1: Increase retry count from 3 to 5
|
|
REQ-2: Increase backoff from 5-20s to 10-60s exponential
|
|
REQ-3: Add visible logging between retry attempts (click.echo)
|
|
REQ-4: All tests pass with 100% coverage
|
|
|
|
## Test Plan
|
|
- Unit tests verify retry count and backoff parameters
|
|
- Unit tests verify logging output on retry
|
|
- Manual: trigger build-images workflow and verify retries visible in logs
|
|
|
|
## Deploy Plan
|
|
- Merge to master
|
|
|
|
## Rollback Plan
|
|
- Revert the merge commit
|
|
|
|
## Acceptance Criteria
|
|
- [x] REQ-1: Increase retry count from 3 to 5
|
|
- [x] REQ-2: Increase backoff from 5-20s to 10-60s exponential
|
|
- [x] REQ-3: Add visible logging between retry attempts (click.echo)
|
|
- [x] REQ-4: All tests pass with 100% coverage
|