Glossary

Dbusiness

Duplicate delivery

The same logical file arriving more than once, usually because a retry raced a success.

How it works

Importers that are not idempotent post two invoices. A content hash or an idempotency key makes the second a no-op. Logs should show both attempts and one accept.

A webhook retries a 500 MB landing. The importer creates two orders. Adding a unique file id drops the second. The bytes were identical. The business event was not supposed to be.

How it differs

Duplicate delivery is not versioning. Versions are intentional history. Duplicates are accidents.

Deleting the duplicate after import can orphan a record that pointed at it.

Deduplicate before import.

On the ticket

  • The practical close is a log line: time, actor, byte count, result.
  • Without that line the transfer is a story.
  • With it, the next person can see whether this door did what the ticket claimed.
  • If the path is shared, say so in the partner profile so a later change does not silently pick a different limit, key, or region.
  • On a real ticket, write down the door, the byte count, and the clock.
  • For duplicate delivery, that means naming the host or bucket, the expected size, and the time the other side must have a complete file.
  • A progress bar is not that record.
  • A 200 response that arrives before the complete call is not that record.
  • If a retry is allowed, say how many and whether it resumes.
  • If a person must approve the send, name the person.
  • Partners who receive duplicate delivery files should match on hash or size before they import.
  • A same-length corrupt file passes a size check and fails a hash.
  • Keep the published hash off the only channel an attacker can edit, or treat it as a corruption check rather than a substitution check.
  • When the path changes, new key, new region, new cap, update the profile the same day so the next run does not use a stale limit.