diff --git a/packages/component-faraday-ui/src/contextualBoxes/ReviewerReportForm.js b/packages/component-faraday-ui/src/contextualBoxes/ReviewerReportForm.js
index acd472f65bebb023a945a626abc54357b33555d7..27a9917dc42060ebe0e8784d19ad17d87ba56444 100644
--- a/packages/component-faraday-ui/src/contextualBoxes/ReviewerReportForm.js
+++ b/packages/component-faraday-ui/src/contextualBoxes/ReviewerReportForm.js
@@ -3,6 +3,7 @@ import styled from 'styled-components'
 import { th } from '@pubsweet/ui-toolkit'
 import { required } from 'xpub-validators'
 import { Button, FilePicker, Menu, Spinner, ValidatedField } from '@pubsweet/ui'
+import { initial } from 'lodash'
 
 import {
   Row,
@@ -51,7 +52,9 @@ const ReviewerReportForm = ({
         >
           <Label required>Recommendation</Label>
           <ValidatedField
-            component={input => <Menu {...input} options={recommendations} />}
+            component={input => (
+              <Menu {...input} options={initial(recommendations)} />
+            )}
             name="recommendation"
             validate={[required]}
           />
diff --git a/packages/component-faraday-ui/src/manuscriptDetails/ManuscriptEicDecision.js b/packages/component-faraday-ui/src/manuscriptDetails/ManuscriptEicDecision.js
index 9d1e9b3d88350004f2f2365eb15aabf1637ca706..07fcac0087453c6943265160174beb18b23f95f0 100644
--- a/packages/component-faraday-ui/src/manuscriptDetails/ManuscriptEicDecision.js
+++ b/packages/component-faraday-ui/src/manuscriptDetails/ManuscriptEicDecision.js
@@ -1,5 +1,5 @@
 import React from 'react'
-import { get, last } from 'lodash'
+import { get, initial } from 'lodash'
 import { compose, withProps } from 'recompose'
 import styled from 'styled-components'
 import { reduxForm } from 'redux-form'
@@ -33,24 +33,23 @@ const eicDecisions = [
     modalTitle: 'Publish Manuscript',
     modalSubtitle: 'A publish decision is final',
   },
-  {
-    value: 'revision',
-    label: 'Request Revision',
-    modalTitle: 'Request Revision',
-    modalSubtitle: 'A request revision decision is final',
-  },
   {
     value: 'reject',
     label: 'Reject',
     modalTitle: 'Reject Manuscript',
     modalSubtitle: 'A rejection decision is final',
   },
+  {
+    value: 'revision',
+    label: 'Request Revision',
+    modalTitle: 'Request Revision',
+  },
 ]
 
 const filterOptions = (eicDecisions, status) => {
   if (status === 'submitted') return eicDecisions.slice(2)
-  if (status === 'pendingApproval') return eicDecisions
-  return [last(eicDecisions)]
+  if (status === 'pendingApproval') return initial(eicDecisions)
+  return eicDecisions.slice(2, 3)
 }
 const ManuscriptEicDecision = ({
   status,
@@ -69,7 +68,7 @@ const ManuscriptEicDecision = ({
     {...rest}
   >
     <Root>
-      <Row justify="flex-start">
+      <Row justify="flex-start" pl={1} pt={1}>
         <ItemOverrideAlert flex={0} vertical>
           <Label required>Decision</Label>
           <ValidatedField
@@ -81,7 +80,7 @@ const ManuscriptEicDecision = ({
       </Row>
 
       {decision !== 'publish' && (
-        <Row mt={2}>
+        <Row mt={2} pl={1} pr={1}>
           <Item vertical>
             <Label required={decision !== 'reject'}>
               {messagesLabel[get(formValues, 'decision', 'reject')]}
@@ -95,7 +94,7 @@ const ManuscriptEicDecision = ({
         </Row>
       )}
 
-      <Row justify="flex-end" mt={4}>
+      <Row justify="flex-end" mt={1} pr={1}>
         <Button onClick={handleSubmit} primary size="medium">
           SUBMIT DECISION
         </Button>
diff --git a/packages/component-helper-service/src/services/Collection.js b/packages/component-helper-service/src/services/Collection.js
index ece6c1339e26542a0509c2f0606ded4b2f7e92e4..e95d5e8666a94464384fac61f693d199fe3c154b 100644
--- a/packages/component-helper-service/src/services/Collection.js
+++ b/packages/component-helper-service/src/services/Collection.js
@@ -93,7 +93,8 @@ class Collection {
     const allCollectionInvitations = flatMap(
       allCollectionFragments,
       fragment => fragment.invitations,
-    )
+    ).filter(Boolean)
+
     const allNumberedInvitationsForUser = allCollectionInvitations
       .filter(invite => invite.userId === userId)
       .filter(invite => invite.reviewerNumber)
@@ -134,7 +135,9 @@ class Collection {
 
     if (lastEditorRecommendation.recommendation === 'minor') {
       return this.hasAtLeastOneReviewReport(fragments)
-    } else if (lastEditorRecommendation.recommendation === 'major') {
+    } else if (
+      ['major', 'revision'].includes(lastEditorRecommendation.recommendation)
+    ) {
       return fragmentHelper.hasReviewReport()
     }