docs: function discardUnusableRecordToDRQ(unusableRecord, batch, toDRQPutRequest, context) {
    if (!unusableRecord) {
      return Promise.resolve(undefined);
    }
  
    const eventID = unusableRecord.eventID;
  
    if (!batch || !batch.isKeyValid()) {
      const errMsg = `Missing valid batch key (${JSON.stringify(batch && batch.key)}) needed to discard unusable record (${eventID})`;
      context.warn(errMsg);
      return Promise.reject(new Error(errMsg));
    }
  
    const kinesis = getKinesis(context);
  
    // Get the stage-qualified version of the DRQ stream name
    const unqualifiedDeadRecordQueueName = context.streamProcessing.deadRecordQueueName;
    const deadRecordQueueName = stages.toStageQualifiedStreamName(unqualifiedDeadRecordQueueName, context.stage, context);
  
    // Discard the unusable record
    const request = toDRQPutRequest(unusableRecord, batch, deadRecordQueueName, context);
  
    return kinesis.putRecord(request).promise().then(
      result => {
        context.debug(`Discarded unusable record (${eventID}) to DRQ (${deadRecordQueueName})`);
        return result;
      },
      err => {
        context.error(`Failed to discard unusable record (${eventID}) to DRQ (${deadRecordQueueName})`, err);
        throw err;
      });
  }