One received record. ack confirms it to the broker (Kafka offset commit, Redis XACK); nack gives it up without confirming, so the broker's own redelivery applies (a Kafka offset that is never committed, a Redis entry that stays pending).
Whether the backend has record keys. A keyed record's key must equal the decoded message's aggregate ID (a missing key does not); Redis Streams records are not keyed.