diff --git a/frontend/src/metabase/dashboard/dashboard.js b/frontend/src/metabase/dashboard/dashboard.js
index e07872334d5349dcbbe0b56f1f773c5e65c1010f..7db7bcc72dcb2eecebaa8fabd52fd05d6fd3b2c6 100644
--- a/frontend/src/metabase/dashboard/dashboard.js
+++ b/frontend/src/metabase/dashboard/dashboard.js
@@ -505,6 +505,7 @@ export const navigateToNewCard = createThunkAction(NAVIGATE_TO_NEW_CARD, (card:
         const { dashboardId, dashboards, parameterValues } = getState().dashboard;
         const dashboard = dashboards[dashboardId];
 
+        // $FlowFixMe
         const url = questionUrlWithParameters(card, metadata, dashboard.parameters, parameterValues, dashcard && dashcard.parameter_mappings);
         dispatch(push(url));
     });
diff --git a/frontend/src/metabase/meta/types/Card.js b/frontend/src/metabase/meta/types/Card.js
index 8ab071c4ad67245301abae5d1ef99f183ac29560..7367ef6968697d4e2a28e6ba974c742b9b196ed9 100644
--- a/frontend/src/metabase/meta/types/Card.js
+++ b/frontend/src/metabase/meta/types/Card.js
@@ -15,8 +15,8 @@ export type UnsavedCard = {
 
 export type SavedCardFields = {
     id: CardId,
-    name: ?string,
-    description: ?string,
+    name?: string,
+    description?: string,
 }
 
 export type Card = UnsavedCard & SavedCardFields;
diff --git a/frontend/src/metabase/qb/components/TimeseriesFilterWidget.jsx b/frontend/src/metabase/qb/components/TimeseriesFilterWidget.jsx
index 23a1601f49adf005b5e8c041c8ed18556741d4e8..78587f7b5b6247cec2901fbecd3e67ba200e1157 100644
--- a/frontend/src/metabase/qb/components/TimeseriesFilterWidget.jsx
+++ b/frontend/src/metabase/qb/components/TimeseriesFilterWidget.jsx
@@ -144,8 +144,8 @@ export default class TimeseriesFilterWidget extends Component<*, Props, State> {
                                 } else {
                                     query = Query.addFilter(query, filter);
                                 }
-                                // $FlowFixMe
                                 const datasetQuery: DatasetQuery = {
+                                    // $FlowFixMe
                                     ...card.dataset_query,
                                     query
                                 };
diff --git a/frontend/src/metabase/qb/components/TimeseriesGroupingWidget.jsx b/frontend/src/metabase/qb/components/TimeseriesGroupingWidget.jsx
index c5adb221ad64d8e631cb9c2af8b044f59a937548..9a1c239eb20b46c83f2baabd39ca7af725aa943d 100644
--- a/frontend/src/metabase/qb/components/TimeseriesGroupingWidget.jsx
+++ b/frontend/src/metabase/qb/components/TimeseriesGroupingWidget.jsx
@@ -60,8 +60,8 @@ export default class TimeseriesGroupingWidget extends Component<*, Props, *> {
                                     0,
                                     breakout
                                 );
-                                // $FlowFixMe
                                 const datasetQuery: DatasetQuery = {
+                                    // $FlowFixMe
                                     ...card.dataset_query,
                                     query
                                 };
diff --git a/frontend/src/metabase/qb/components/actions/PivotByAction.jsx b/frontend/src/metabase/qb/components/actions/PivotByAction.jsx
index b5795db7ec7e2ac26b195aa9364a93c1e73048ce..10cfd950168595c5333cabaa4c6b49104e9c53b5 100644
--- a/frontend/src/metabase/qb/components/actions/PivotByAction.jsx
+++ b/frontend/src/metabase/qb/components/actions/PivotByAction.jsx
@@ -29,6 +29,7 @@ export default (name: string, icon: string, fieldFilter: FieldFilter) =>
             !tableMetadata ||
             (clicked &&
                 (clicked.value === undefined ||
+                    // $FlowFixMe
                     clicked.column.source !== "aggregation"))
         ) {
             return [];
diff --git a/frontend/src/metabase/qb/lib/actions.js b/frontend/src/metabase/qb/lib/actions.js
index 12d17e7e556e88dc28c98e81f228d6528264577a..2479250c2713efe6190961c4a39b8c6fc0e449f1 100644
--- a/frontend/src/metabase/qb/lib/actions.js
+++ b/frontend/src/metabase/qb/lib/actions.js
@@ -207,6 +207,7 @@ export const pivot = (
     }
 
     let newCard = startNewCard("query");
+    // $FlowFixMe
     newCard.dataset_query = card.dataset_query;
 
     for (const dimension of dimensions) {
@@ -226,7 +227,6 @@ export const pivot = (
     }
 
     newCard.dataset_query.query = Query.addBreakout(
-        // $FlowFixMe: we know newCard is a StructuredDatasetQuery but flow doesn't
         newCard.dataset_query.query,
         breakout
     );
diff --git a/frontend/src/metabase/visualizations/components/Visualization.jsx b/frontend/src/metabase/visualizations/components/Visualization.jsx
index bbe3ab43ce2d607820dbd2c1387b1ede42ffd6ba..25b0cdb3a72e1784b9af3211d5a6f689276a034d 100644
--- a/frontend/src/metabase/visualizations/components/Visualization.jsx
+++ b/frontend/src/metabase/visualizations/components/Visualization.jsx
@@ -191,7 +191,9 @@ export default class Visualization extends Component<*, Props, State> {
         const seriesIndex = clicked.seriesIndex || 0;
         const card = series[seriesIndex].card;
         const tableMetadata = card && Card.getTableMetadata(card, metadata);
+        // $FlowFixMe
         const mode = getMode(card, tableMetadata);
+        // $FlowFixMe
         return getModeDrills(mode, card, tableMetadata, clicked);
     }
 
@@ -224,15 +226,18 @@ export default class Visualization extends Component<*, Props, State> {
     handleOnChangeCardAndRun = (card: UnsavedCard) => {
         // If the current card is saved, carry that information to the new card for showing lineage
         const { series } = this.state
+        // $FlowFixMe
         const currentlyInSavedCard = series[0] && series[0].card && series[0].card.id
         if (currentlyInSavedCard) {
             const savedCard: CardObject = {
                 ...card,
+                // $FlowFixMe
                 id: series[0].card.id
             };
 
             this.props.onChangeCardAndRun(savedCard)
         } else {
+            // $FlowFixMe
             this.props.onChangeCardAndRun(card)
         }
     }
diff --git a/frontend/src/metabase/visualizations/lib/LineAreaBarRenderer.js b/frontend/src/metabase/visualizations/lib/LineAreaBarRenderer.js
index 58ac0a7970c20ce1b168552eaa1f79627e7b2a86..90c25d218d6fcbd859045243346b14e384af6306 100644
--- a/frontend/src/metabase/visualizations/lib/LineAreaBarRenderer.js
+++ b/frontend/src/metabase/visualizations/lib/LineAreaBarRenderer.js
@@ -417,11 +417,13 @@ function applyChartTooltips(chart, series, isStacked, isScalarSeries, onHoverCha
                     // handle multiseries
                     if (clicked && series.length > 1) {
                         if (card._breakoutColumn) {
+                            // $FlowFixMe
                             clicked.dimensions.push({
                                 value: card._breakoutValue,
                                 column: card._breakoutColumn
                             });
                         } else {
+                            // $FlowFixMe
                             clicked.seriesIndex = seriesIndex;
                         }
                     }