The Making of a TypeScript Feature: Inferring Type Predicates | Hacker News Reader