Prepare for typescript 5.0

The relevant breaking change is Forbidden Implicit Coercions in
Relational Operators such as:

`if (myStringOrNumber > number) { ... }`

Since "foo" > 5 evaluates to false, the current behavior is
preserved by adding clauses that fail for the string cases.

More reading:
https://devblogs.microsoft.com/typescript/announcing-typescript-5-0/#forbidden-implicit-coercions-in-relational-operators

Release-Notes: skip
Change-Id: Iedce049534a8268a49e1834a7a1bc7caeb746605
diff --git a/web/code-owners-service.ts b/web/code-owners-service.ts
index 17b16ba..8f747d8 100644
--- a/web/code-owners-service.ts
+++ b/web/code-owners-service.ts
@@ -333,12 +333,18 @@
   private isOnNewerPatchset(patchsetId: number) {
     if (this.change.current_revision === undefined) return false;
     const latestRevision = this.change.revisions![this.change.current_revision];
+    if (latestRevision._number === 'edit') {
+      return false;
+    }
     return patchsetId > latestRevision._number;
   }
 
   private isOnOlderPatchset(patchsetId: number) {
     if (this.change.current_revision === undefined) return false;
     const latestRevision = this.change.revisions![this.change.current_revision];
+    if (latestRevision._number === 'edit') {
+      return false;
+    }
     return patchsetId < latestRevision._number;
   }