diff --git a/third_party/cq_client/cq.proto b/third_party/cq_client/cq.proto
index 8b1950d..8422873 100644
--- a/third_party/cq_client/cq.proto
+++ b/third_party/cq_client/cq.proto
@@ -93,9 +93,9 @@
   // result is too old (>1 day) it is ignored.
   optional TryJobVerifier try_job = 3;
 
-  // Deprecated. This verifier is only used by some legacy CQs that run
-  // presubmit on the CQ host. Please use a presubmit builder instead.
-  optional PresubmitCheckVerifier presubmit_check = 4;
+  // This verifier is used to ensure that the author has signed Google's
+  // Contributor License Agreement.
+  optional SignCLAVerifier sign_cla = 4;
 
   message ReviewerLgtmVerifier {
     // Required. Name of the project, whose committer list to use. This allows
@@ -123,12 +123,6 @@
   }
 
   message TryJobVerifier {
-    message Property {
-      optional string name = 1;
-      // TODO(sergiyb): Change type to Any on switching to protobuf3.
-      optional string value = 2;
-    }
-
     message Builder {
       // Name of the builder.
       optional string name = 1;
@@ -137,9 +131,6 @@
       // be triggered from another tryjob. Default value is true.
       optional bool triggered = 2;
 
-      // Arbitrary properties passed to the tryjob.
-      repeated Property properties = 3;
-
       // When this field is present, it marks given builder as experimental. It
       // is only executed on a given percentage of the CLs and the outcome does
       // not affect the decicion whether a CL can land or not. This is typically
@@ -159,8 +150,5 @@
     repeated Bucket buckets = 1;
   }
 
-  message PresubmitCheckVerifier {
-    // After this timeout in seconds, the presubmit process will be killed.
-    optional int32 timeout = 1;
-  }
+  message SignCLAVerifier {}
 }
diff --git a/third_party/cq_client/cq_pb2.py b/third_party/cq_client/cq_pb2.py
index ecfe9cf..ff53364 100644
--- a/third_party/cq_client/cq_pb2.py
+++ b/third_party/cq_client/cq_pb2.py
@@ -27,7 +27,7 @@
 DESCRIPTOR = _descriptor.FileDescriptor(
   name='cq.proto',
   package='',
-  serialized_pb=_b('\n\x08\x63q.proto\"\xf5\x02\n\x06\x43onfig\x12\x0f\n\x07version\x18\x01 \x01(\x05\x12\x0f\n\x07\x63q_name\x18\x02 \x01(\t\x12\x1d\n\tverifiers\x18\x03 \x01(\x0b\x32\n.Verifiers\x12\x15\n\rcq_status_url\x18\x04 \x01(\t\x12!\n\x19hide_ref_in_committed_msg\x18\x05 \x01(\x08\x12\x1a\n\x12\x63ommit_burst_delay\x18\x06 \x01(\x05\x12\x18\n\x10max_commit_burst\x18\x07 \x01(\x05\x12\x15\n\rin_production\x18\x08 \x01(\x08\x12\x1b\n\x08rietveld\x18\t \x01(\x0b\x32\t.Rietveld\x12\x14\n\x0cgit_repo_url\x18\n \x01(\t\x12\x12\n\ntarget_ref\x18\x0b \x01(\t\x12\x14\n\x0csvn_repo_url\x18\x0c \x01(\t\x12\x1c\n\x14server_hooks_missing\x18\r \x01(\x08\x12(\n\x14verifiers_with_patch\x18\x0e \x01(\x0b\x32\n.Verifiers\".\n\x08Rietveld\x12\x0b\n\x03url\x18\x01 \x01(\t\x12\x15\n\rproject_bases\x18\x02 \x03(\t\"\xdd\x05\n\tVerifiers\x12\x36\n\rreviewer_lgtm\x18\x01 \x01(\x0b\x32\x1f.Verifiers.ReviewerLgtmVerifier\x12\x36\n\x0btree_status\x18\x02 \x01(\x0b\x32!.Verifiers.TreeStatusLgtmVerifier\x12*\n\x07try_job\x18\x03 \x01(\x0b\x32\x19.Verifiers.TryJobVerifier\x12:\n\x0fpresubmit_check\x18\x04 \x01(\x0b\x32!.Verifiers.PresubmitCheckVerifier\x1aZ\n\x14ReviewerLgtmVerifier\x12\x16\n\x0e\x63ommitter_list\x18\x01 \x01(\t\x12\x15\n\rmax_wait_secs\x18\x02 \x01(\x05\x12\x13\n\x0bno_lgtm_msg\x18\x03 \x01(\t\x1a\x31\n\x16TreeStatusLgtmVerifier\x12\x17\n\x0ftree_status_url\x18\x01 \x01(\t\x1a\xbd\x02\n\x0eTryJobVerifier\x12\x31\n\x07\x62uckets\x18\x01 \x03(\x0b\x32 .Verifiers.TryJobVerifier.Bucket\x1a\'\n\x08Property\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x1a\x81\x01\n\x07\x42uilder\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x11\n\ttriggered\x18\x02 \x01(\x08\x12\x36\n\nproperties\x18\x03 \x03(\x0b\x32\".Verifiers.TryJobVerifier.Property\x12\x1d\n\x15\x65xperiment_percentage\x18\x04 \x01(\x02\x1aK\n\x06\x42ucket\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x33\n\x08\x62uilders\x18\x02 \x03(\x0b\x32!.Verifiers.TryJobVerifier.Builder\x1a)\n\x16PresubmitCheckVerifier\x12\x0f\n\x07timeout\x18\x01 \x01(\x05')
+  serialized_pb=_b('\n\x08\x63q.proto\"\xf5\x02\n\x06\x43onfig\x12\x0f\n\x07version\x18\x01 \x01(\x05\x12\x0f\n\x07\x63q_name\x18\x02 \x01(\t\x12\x1d\n\tverifiers\x18\x03 \x01(\x0b\x32\n.Verifiers\x12\x15\n\rcq_status_url\x18\x04 \x01(\t\x12!\n\x19hide_ref_in_committed_msg\x18\x05 \x01(\x08\x12\x1a\n\x12\x63ommit_burst_delay\x18\x06 \x01(\x05\x12\x18\n\x10max_commit_burst\x18\x07 \x01(\x05\x12\x15\n\rin_production\x18\x08 \x01(\x08\x12\x1b\n\x08rietveld\x18\t \x01(\x0b\x32\t.Rietveld\x12\x14\n\x0cgit_repo_url\x18\n \x01(\t\x12\x12\n\ntarget_ref\x18\x0b \x01(\t\x12\x14\n\x0csvn_repo_url\x18\x0c \x01(\t\x12\x1c\n\x14server_hooks_missing\x18\r \x01(\x08\x12(\n\x14verifiers_with_patch\x18\x0e \x01(\x0b\x32\n.Verifiers\".\n\x08Rietveld\x12\x0b\n\x03url\x18\x01 \x01(\t\x12\x15\n\rproject_bases\x18\x02 \x03(\t\"\xd5\x04\n\tVerifiers\x12\x36\n\rreviewer_lgtm\x18\x01 \x01(\x0b\x32\x1f.Verifiers.ReviewerLgtmVerifier\x12\x36\n\x0btree_status\x18\x02 \x01(\x0b\x32!.Verifiers.TreeStatusLgtmVerifier\x12*\n\x07try_job\x18\x03 \x01(\x0b\x32\x19.Verifiers.TryJobVerifier\x12,\n\x08sign_cla\x18\x04 \x01(\x0b\x32\x1a.Verifiers.SignCLAVerifier\x1aZ\n\x14ReviewerLgtmVerifier\x12\x16\n\x0e\x63ommitter_list\x18\x01 \x01(\t\x12\x15\n\rmax_wait_secs\x18\x02 \x01(\x05\x12\x13\n\x0bno_lgtm_msg\x18\x03 \x01(\t\x1a\x31\n\x16TreeStatusLgtmVerifier\x12\x17\n\x0ftree_status_url\x18\x01 \x01(\t\x1a\xdb\x01\n\x0eTryJobVerifier\x12\x31\n\x07\x62uckets\x18\x01 \x03(\x0b\x32 .Verifiers.TryJobVerifier.Bucket\x1aI\n\x07\x42uilder\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x11\n\ttriggered\x18\x02 \x01(\x08\x12\x1d\n\x15\x65xperiment_percentage\x18\x04 \x01(\x02\x1aK\n\x06\x42ucket\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x33\n\x08\x62uilders\x18\x02 \x03(\x0b\x32!.Verifiers.TryJobVerifier.Builder\x1a\x11\n\x0fSignCLAVerifier')
 )
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
@@ -231,8 +231,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=666,
-  serialized_end=756,
+  serialized_start=652,
+  serialized_end=742,
 )
 
 _VERIFIERS_TREESTATUSLGTMVERIFIER = _descriptor.Descriptor(
@@ -260,44 +260,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=758,
-  serialized_end=807,
-)
-
-_VERIFIERS_TRYJOBVERIFIER_PROPERTY = _descriptor.Descriptor(
-  name='Property',
-  full_name='Verifiers.TryJobVerifier.Property',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='name', full_name='Verifiers.TryJobVerifier.Property.name', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      options=None),
-    _descriptor.FieldDescriptor(
-      name='value', full_name='Verifiers.TryJobVerifier.Property.value', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      options=None),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  options=None,
-  is_extendable=False,
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=879,
-  serialized_end=918,
+  serialized_start=744,
+  serialized_end=793,
 )
 
 _VERIFIERS_TRYJOBVERIFIER_BUILDER = _descriptor.Descriptor(
@@ -322,14 +286,7 @@
       is_extension=False, extension_scope=None,
       options=None),
     _descriptor.FieldDescriptor(
-      name='properties', full_name='Verifiers.TryJobVerifier.Builder.properties', index=2,
-      number=3, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      options=None),
-    _descriptor.FieldDescriptor(
-      name='experiment_percentage', full_name='Verifiers.TryJobVerifier.Builder.experiment_percentage', index=3,
+      name='experiment_percentage', full_name='Verifiers.TryJobVerifier.Builder.experiment_percentage', index=2,
       number=4, type=2, cpp_type=6, label=1,
       has_default_value=False, default_value=0,
       message_type=None, enum_type=None, containing_type=None,
@@ -346,8 +303,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=921,
-  serialized_end=1050,
+  serialized_start=865,
+  serialized_end=938,
 )
 
 _VERIFIERS_TRYJOBVERIFIER_BUCKET = _descriptor.Descriptor(
@@ -382,8 +339,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1052,
-  serialized_end=1127,
+  serialized_start=940,
+  serialized_end=1015,
 )
 
 _VERIFIERS_TRYJOBVERIFIER = _descriptor.Descriptor(
@@ -403,7 +360,7 @@
   ],
   extensions=[
   ],
-  nested_types=[_VERIFIERS_TRYJOBVERIFIER_PROPERTY, _VERIFIERS_TRYJOBVERIFIER_BUILDER, _VERIFIERS_TRYJOBVERIFIER_BUCKET, ],
+  nested_types=[_VERIFIERS_TRYJOBVERIFIER_BUILDER, _VERIFIERS_TRYJOBVERIFIER_BUCKET, ],
   enum_types=[
   ],
   options=None,
@@ -411,24 +368,17 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=810,
-  serialized_end=1127,
+  serialized_start=796,
+  serialized_end=1015,
 )
 
-_VERIFIERS_PRESUBMITCHECKVERIFIER = _descriptor.Descriptor(
-  name='PresubmitCheckVerifier',
-  full_name='Verifiers.PresubmitCheckVerifier',
+_VERIFIERS_SIGNCLAVERIFIER = _descriptor.Descriptor(
+  name='SignCLAVerifier',
+  full_name='Verifiers.SignCLAVerifier',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
   fields=[
-    _descriptor.FieldDescriptor(
-      name='timeout', full_name='Verifiers.PresubmitCheckVerifier.timeout', index=0,
-      number=1, type=5, cpp_type=1, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      options=None),
   ],
   extensions=[
   ],
@@ -440,8 +390,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1129,
-  serialized_end=1170,
+  serialized_start=1017,
+  serialized_end=1034,
 )
 
 _VERIFIERS = _descriptor.Descriptor(
@@ -473,7 +423,7 @@
       is_extension=False, extension_scope=None,
       options=None),
     _descriptor.FieldDescriptor(
-      name='presubmit_check', full_name='Verifiers.presubmit_check', index=3,
+      name='sign_cla', full_name='Verifiers.sign_cla', index=3,
       number=4, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
@@ -482,7 +432,7 @@
   ],
   extensions=[
   ],
-  nested_types=[_VERIFIERS_REVIEWERLGTMVERIFIER, _VERIFIERS_TREESTATUSLGTMVERIFIER, _VERIFIERS_TRYJOBVERIFIER, _VERIFIERS_PRESUBMITCHECKVERIFIER, ],
+  nested_types=[_VERIFIERS_REVIEWERLGTMVERIFIER, _VERIFIERS_TREESTATUSLGTMVERIFIER, _VERIFIERS_TRYJOBVERIFIER, _VERIFIERS_SIGNCLAVERIFIER, ],
   enum_types=[
   ],
   options=None,
@@ -491,7 +441,7 @@
   oneofs=[
   ],
   serialized_start=437,
-  serialized_end=1170,
+  serialized_end=1034,
 )
 
 _CONFIG.fields_by_name['verifiers'].message_type = _VERIFIERS
@@ -499,18 +449,16 @@
 _CONFIG.fields_by_name['verifiers_with_patch'].message_type = _VERIFIERS
 _VERIFIERS_REVIEWERLGTMVERIFIER.containing_type = _VERIFIERS
 _VERIFIERS_TREESTATUSLGTMVERIFIER.containing_type = _VERIFIERS
-_VERIFIERS_TRYJOBVERIFIER_PROPERTY.containing_type = _VERIFIERS_TRYJOBVERIFIER
-_VERIFIERS_TRYJOBVERIFIER_BUILDER.fields_by_name['properties'].message_type = _VERIFIERS_TRYJOBVERIFIER_PROPERTY
 _VERIFIERS_TRYJOBVERIFIER_BUILDER.containing_type = _VERIFIERS_TRYJOBVERIFIER
 _VERIFIERS_TRYJOBVERIFIER_BUCKET.fields_by_name['builders'].message_type = _VERIFIERS_TRYJOBVERIFIER_BUILDER
 _VERIFIERS_TRYJOBVERIFIER_BUCKET.containing_type = _VERIFIERS_TRYJOBVERIFIER
 _VERIFIERS_TRYJOBVERIFIER.fields_by_name['buckets'].message_type = _VERIFIERS_TRYJOBVERIFIER_BUCKET
 _VERIFIERS_TRYJOBVERIFIER.containing_type = _VERIFIERS
-_VERIFIERS_PRESUBMITCHECKVERIFIER.containing_type = _VERIFIERS
+_VERIFIERS_SIGNCLAVERIFIER.containing_type = _VERIFIERS
 _VERIFIERS.fields_by_name['reviewer_lgtm'].message_type = _VERIFIERS_REVIEWERLGTMVERIFIER
 _VERIFIERS.fields_by_name['tree_status'].message_type = _VERIFIERS_TREESTATUSLGTMVERIFIER
 _VERIFIERS.fields_by_name['try_job'].message_type = _VERIFIERS_TRYJOBVERIFIER
-_VERIFIERS.fields_by_name['presubmit_check'].message_type = _VERIFIERS_PRESUBMITCHECKVERIFIER
+_VERIFIERS.fields_by_name['sign_cla'].message_type = _VERIFIERS_SIGNCLAVERIFIER
 DESCRIPTOR.message_types_by_name['Config'] = _CONFIG
 DESCRIPTOR.message_types_by_name['Rietveld'] = _RIETVELD
 DESCRIPTOR.message_types_by_name['Verifiers'] = _VERIFIERS
@@ -547,13 +495,6 @@
 
   TryJobVerifier = _reflection.GeneratedProtocolMessageType('TryJobVerifier', (_message.Message,), dict(
 
-    Property = _reflection.GeneratedProtocolMessageType('Property', (_message.Message,), dict(
-      DESCRIPTOR = _VERIFIERS_TRYJOBVERIFIER_PROPERTY,
-      __module__ = 'cq_pb2'
-      # @@protoc_insertion_point(class_scope:Verifiers.TryJobVerifier.Property)
-      ))
-    ,
-
     Builder = _reflection.GeneratedProtocolMessageType('Builder', (_message.Message,), dict(
       DESCRIPTOR = _VERIFIERS_TRYJOBVERIFIER_BUILDER,
       __module__ = 'cq_pb2'
@@ -573,10 +514,10 @@
     ))
   ,
 
-  PresubmitCheckVerifier = _reflection.GeneratedProtocolMessageType('PresubmitCheckVerifier', (_message.Message,), dict(
-    DESCRIPTOR = _VERIFIERS_PRESUBMITCHECKVERIFIER,
+  SignCLAVerifier = _reflection.GeneratedProtocolMessageType('SignCLAVerifier', (_message.Message,), dict(
+    DESCRIPTOR = _VERIFIERS_SIGNCLAVERIFIER,
     __module__ = 'cq_pb2'
-    # @@protoc_insertion_point(class_scope:Verifiers.PresubmitCheckVerifier)
+    # @@protoc_insertion_point(class_scope:Verifiers.SignCLAVerifier)
     ))
   ,
   DESCRIPTOR = _VERIFIERS,
@@ -587,10 +528,9 @@
 _sym_db.RegisterMessage(Verifiers.ReviewerLgtmVerifier)
 _sym_db.RegisterMessage(Verifiers.TreeStatusLgtmVerifier)
 _sym_db.RegisterMessage(Verifiers.TryJobVerifier)
-_sym_db.RegisterMessage(Verifiers.TryJobVerifier.Property)
 _sym_db.RegisterMessage(Verifiers.TryJobVerifier.Builder)
 _sym_db.RegisterMessage(Verifiers.TryJobVerifier.Bucket)
-_sym_db.RegisterMessage(Verifiers.PresubmitCheckVerifier)
+_sym_db.RegisterMessage(Verifiers.SignCLAVerifier)
 
 
 # @@protoc_insertion_point(module_scope)
