diff --git a/gr-checks/gr-checks-change-list-header-view.html b/gr-checks/gr-checks-change-list-header-view.html
index 9ddc13a..efdf442 100644
--- a/gr-checks/gr-checks-change-list-header-view.html
+++ b/gr-checks/gr-checks-change-list-header-view.html
@@ -1,11 +1,11 @@
 <dom-module id="gr-checks-change-list-header-view">
-  <style>
-    :host {
-      display: table-cell;
-      padding: 0 3px;
-    }
-  </style>
   <template>
+    <style>
+      :host {
+        display: table-cell;
+        padding: 0 3px;
+      }
+    </style>
     Checks
   </template>
 
diff --git a/gr-checks/gr-checks-change-list-item-cell-view.html b/gr-checks/gr-checks-change-list-item-cell-view.html
index 61af378..8536a66 100644
--- a/gr-checks/gr-checks-change-list-item-cell-view.html
+++ b/gr-checks/gr-checks-change-list-item-cell-view.html
@@ -1,12 +1,12 @@
 <dom-module id="gr-checks-change-list-item-cell-view">
-  <style>
-    :host {
-      display: inline-block;
-      text-align: center;
-      width: 100%;
-    }
-  </style>
   <template>
+    <style>
+      :host {
+        display: inline-block;
+        text-align: center;
+        width: 100%;
+      }
+    </style>
   </template>
 
   <script src="gr-checks-change-list-item-cell-view.js"></script>
diff --git a/gr-checks/gr-checks-chip-view.html b/gr-checks/gr-checks-chip-view.html
index 2a59cba..e4358b5 100644
--- a/gr-checks/gr-checks-chip-view.html
+++ b/gr-checks/gr-checks-chip-view.html
@@ -4,6 +4,7 @@
 
       :host {
         display: inline-block;
+        cursor: pointer;
       }
 
       .chip {
diff --git a/gr-checks/gr-checks-chip-view.js b/gr-checks/gr-checks-chip-view.js
index 94b94f8..3ed66e1 100644
--- a/gr-checks/gr-checks-chip-view.js
+++ b/gr-checks/gr-checks-chip-view.js
@@ -88,6 +88,24 @@
       '_fetchChecks(change, revision, getChecks)',
     ],
 
+    listeners: {
+      'tap': 'showChecksTable'
+    },
+
+    showChecksTable() {
+      this.dispatchEvent(
+        new CustomEvent(
+          'show-checks-table',
+          {
+            bubbles: true,
+            composed: true,
+            detail: {
+              tab: 'change-view-tab-content-checks'
+            }
+          })
+        );
+    },
+
     /**
      * @param {!Defs.Change} change
      * @param {!Defs.Revision} revision
diff --git a/java/com/google/gerrit/plugins/checks/CheckerUuid.java b/java/com/google/gerrit/plugins/checks/CheckerUuid.java
index f34ab7d..c3609b4 100644
--- a/java/com/google/gerrit/plugins/checks/CheckerUuid.java
+++ b/java/com/google/gerrit/plugins/checks/CheckerUuid.java
@@ -147,12 +147,12 @@
   }
 
   @Override
-  public String toString() {
+  public final String toString() {
     return get();
   }
 
   @Override
-  public int compareTo(CheckerUuid o) {
+  public final int compareTo(CheckerUuid o) {
     return get().compareTo(o.get());
   }
 }
diff --git a/java/com/google/gerrit/plugins/checks/CombinedCheckStateCache.java b/java/com/google/gerrit/plugins/checks/CombinedCheckStateCache.java
index c348550..bcbd429 100644
--- a/java/com/google/gerrit/plugins/checks/CombinedCheckStateCache.java
+++ b/java/com/google/gerrit/plugins/checks/CombinedCheckStateCache.java
@@ -87,8 +87,9 @@
               new Description("Latency for reloading combined check state")
                   .setCumulative()
                   .setUnit(Units.MILLISECONDS),
-              Field.ofBoolean(
-                  "updated", "whether reloading resulted in updating the cached value"));
+              Field.ofBoolean("updated")
+                  .description("whether reloading resulted in updating the cached value")
+                  .build());
       reloadCount = AtomicLongMap.create();
     }
 
