noCV
BPROXY-107 · Manage connections

Avoid unsafe automatic replay after partial request transmission

Practice briefTaskAdvanced

The proxy retries a POST after its connection breaks, potentially duplicating a write.

Focused work estimate
3h + prerequisites
Priority in the scenario
High
Engineering practice
HTTP retries · Consistency

Estimated field mix

  • Networking40%
  • API design30%
  • Distributed systems30%

Field percentages are editorial estimates of the ticket's engineering focus. They total 100%; they are not measured time, proficiency scores, or ownership evidence.

Your next step

Review it, then add it to your workspace.

The board opens an editable draft; nothing is saved until you confirm it. Sign-in and workspace permissions apply, and Demo boards remain ephemeral.

Project context

A fictional reporting API sits behind a reverse proxy. Clients see intermittent disconnects and incorrect origins after changes to keep-alive and forwarding headers.

Setup prerequisites

  • Create two loopback HTTP services and a local proxy with synthetic requests; no public scanning or external traffic.

Preceding work

Complete these dependencies, or supply their agreed outputs before taking this ticket.

Acceptance criteria

  • Distinguish retryable methods and declared idempotent operations.
  • Track whether request transmission may have occurred.
  • Return unknown outcome when safe replay cannot be established.

Implementation constraints

  • Do not infer idempotency from an empty response.

Verification to include

  • Retry a safe read after a stale connection.
  • Break a write after transmission and prevent blind replay.

Deliverables

  • Proxy retry policy.

Rollout and recovery

Disable automatic write retries until application identity semantics are explicit.

Value of the work

For the engineer: Practice HTTP intermediaries, connection lifetimes, and network failure isolation.

For the team: Provide a proxy contract that preserves request identity and releases resources predictably.

Evidence boundaries

Outcome Evidence: Tests, patches, and runbooks are requested deliverables. They become Outcome Evidence only through a qualified Mission and immutable Evidence IDs.

Ownership Evidence: Independent adaptation must be observed under a declared verification policy and cite immutable Evidence IDs. Completing a planning ticket establishes no Ownership Evidence.