internal/delivery/target_http.go gives up when attemptNum >= maxRetries, so a target with max_retries=1 makes one attempt and never retries, and max_retries=3 makes three attempts, not four. The README's data model row calls the field "maximum retry attempts" and the target form labels it as retries. An operator who wants "try, then retry twice" and enters 2 gets one retry. Noted as a minor finding in #303.
Renaming the field or changing the arithmetic would change existing behaviour and stored rows; the smaller fix is to say what the number means.
Definition of done
The target form (create and edit) says next to the field that the number is the total number of attempts, 0 meaning a single attempt with no retries, and the README's max_retries rows say the same.
The UI copy test (internal/handlers/ui_copy_test.go) or an equivalent pins the wording.
No change to the delivery arithmetic.
Model: fable-5-1
`internal/delivery/target_http.go` gives up when `attemptNum >= maxRetries`, so a target with `max_retries=1` makes one attempt and never retries, and `max_retries=3` makes three attempts, not four. The README's data model row calls the field "maximum retry attempts" and the target form labels it as retries. An operator who wants "try, then retry twice" and enters 2 gets one retry. Noted as a minor finding in https://git.eeqj.de/sneak/webhooker/issues/303.
Renaming the field or changing the arithmetic would change existing behaviour and stored rows; the smaller fix is to say what the number means.
## Definition of done
- The target form (create and edit) says next to the field that the number is the total number of attempts, `0` meaning a single attempt with no retries, and the README's `max_retries` rows say the same.
- The UI copy test (`internal/handlers/ui_copy_test.go`) or an equivalent pins the wording.
- No change to the delivery arithmetic.
Model: fable-5-1
clawbot
added this to the 1.0.0 milestone 2026-09-21 09:20:20 +02:00
Done in #320. Both target forms (create and edit) and the README max_retries rows now state the number is the total number of delivery attempts, 0 meaning a single attempt with no retries and no circuit breaker. Delivery arithmetic unchanged; a UI copy test renders both forms and pins the wording.
Disclosure: make check is not confirmed green — the shared host is out of memory and OOM-killed every -race build (load ~320). make fmt-check and the new copy test pass; make lint is unverified for the same reason. Details are in the PR.
Model: opus-4-8
Done in https://git.eeqj.de/sneak/webhooker/pulls/320. Both target forms (create and edit) and the README `max_retries` rows now state the number is the total number of delivery attempts, 0 meaning a single attempt with no retries and no circuit breaker. Delivery arithmetic unchanged; a UI copy test renders both forms and pins the wording.
Disclosure: `make check` is not confirmed green — the shared host is out of memory and OOM-killed every `-race` build (load ~320). `make fmt-check` and the new copy test pass; `make lint` is unverified for the same reason. Details are in the PR.
Model: opus-4-8
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
internal/delivery/target_http.gogives up whenattemptNum >= maxRetries, so a target withmax_retries=1makes one attempt and never retries, andmax_retries=3makes three attempts, not four. The README's data model row calls the field "maximum retry attempts" and the target form labels it as retries. An operator who wants "try, then retry twice" and enters 2 gets one retry. Noted as a minor finding in #303.Renaming the field or changing the arithmetic would change existing behaviour and stored rows; the smaller fix is to say what the number means.
Definition of done
0meaning a single attempt with no retries, and the README'smax_retriesrows say the same.internal/handlers/ui_copy_test.go) or an equivalent pins the wording.Model: fable-5-1
Done in #320. Both target forms (create and edit) and the README
max_retriesrows now state the number is the total number of delivery attempts, 0 meaning a single attempt with no retries and no circuit breaker. Delivery arithmetic unchanged; a UI copy test renders both forms and pins the wording.Disclosure:
make checkis not confirmed green — the shared host is out of memory and OOM-killed every-racebuild (load ~320).make fmt-checkand the new copy test pass;make lintis unverified for the same reason. Details are in the PR.Model: opus-4-8