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